Продолжение серии статей “OpenCart для разработчиков”. Напомню, в предыдущей статье были описания основных классов OpenCart. В этой статье будут кратко описаны функции моделей каталога.

Содержание

Аккаунт account/

account/address.php | ModelAccountAddress #

# Загрузка модели:
$this->load->model('account/address');
# Использование:
$this->model_account_address->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function addAddress($data) // Добавление адреса
public function editAddress($address_id, $data) // Редактирование адреса
public function deleteAddress($address_id) // Удаление адреса
public function getAddress($address_id) // Получение адреса
public function getAddresses() // Получение списка адресов
public function getTotalAddresses() // Получение кол-ва адресов

account/customer.php | ModelAccountCustomer #

# Загрузка модели:
$this->load->model('account/customer');
# Использование:
$this->model_account_customer->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function addCustomer($data) //Добавление нового пользователя
public function editCustomer($data) // Редактирование данных пользователя
public function editPassword($email, $password) //Смена пароля
public function editNewsletter($newsletter) //Редактирование подписки
public function getCustomer($customer_id) //Получение информации о покупателе
public function getCustomerByEmail($email) //Получение информации о покупателе
public function getCustomerByToken($token) //Получение информации о покупателе
public function getCustomers($data = array()) //Получение списка покупателей (поиск с фильтром)
public function getTotalCustomersByEmail($email) //Получение кол-ва клиентов по email
public function getIps($customer_id) //Получение IP адресов клиента
public function isBanIp($ip) //Запрос IP из списка забаненых

account/customer_group.php | ModelAccountCustomerGroup #

 

# Загрузка модели:
$this->load->model('account/customer_group');
# Использование:
$this->model_account_customer_group->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function getCustomerGroup($customer_group_id) //Получение группы пользователя
public function getCustomerGroups() //Получение списка групп пользователей магазина

 

account/download.php | ModelAccountDownload #

 

# Загрузка модели:
$this->load->model('account/download');
# Использование:
$this->model_account_download->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function getDownload($order_download_id) //Получение загрузки, привязанной к заказу, где remaning > 0
public function getDownloads($start = 0, $limit = 20) //Получение списка доступных клиенту загрузок, где remaning > 0
public function updateRemaining($order_download_id) //Уменьшение remaning на 1
public function getTotalDownloads() //Получение кол-ва доступных покупателю загрузок, где remaning > 0

 

account/newslettersubscribe.php | ModelAccountnewslettersubscribe #

 

# Загрузка модели:
$this->load->model('account/newslettersubscribe');
# Использование:
$this->model_account_newslettersubscribe->function_name($params);
# Функции:
public function checkmailid($data) //Проверяет есть ли в списке подписанных $data['subscribe_email']
public function checkRegisteredUser($data) //Проверяет есть ли $data['subscribe_email'] в списке зарегистрированных
public function UpdateRegisterUsers($data,$status) //Редактирование статуса подписки зарегистрированного пользователя(покупателя)
public function subscribe($data) //Подписка email адреса на рассылку
public function unsubscribe($data)//Отписка email адреса от рассылки
public function check_db() //Проверяет наличие таблицы со списком email для рассылок, если ее нет, то создает

 

account/order.php | ModelAccountOrder #

 

# Загрузка модели:
$this->load->model('account/order');
# Использование:
$this->model_account_order->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function getOrder($order_id) //Получение данных заказа
public function getOrders($start = 0, $limit = 20) //Получение списка заказов текущего пользователя(покупателя)
public function getOrderProducts($order_id) //Получение списка товаров из заказа
public function getOrderOptions($order_id, $order_product_id) //Получение опций заказа
public function getOrderVouchers($order_id) //Получение подарочных сертификатов
public function getOrderTotals($order_id) //Получение итогов
public function getOrderHistories($order_id) //Получение истории заказа (статусы)
public function getOrderDownloads($order_id) //Получение списка загрузок заказа
public function getTotalOrders() //Получение кол-ва заказов пользователя(покупателя)
public function getTotalOrderProductsByOrderId($order_id) //Получение кол-ва товаров заказа
public function getTotalOrderVouchersByOrderId($order_id) //Получение кол-ва сертификатов, используемых в заказе

 

account/recurring.php | ModelAccountRecurring #

 

# Загрузка модели:
$this->load->model('account/recurring');
# Использование:
$this->model_account_recurring->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function getProfile($id) //Получение платежного профиля
public function getProfileByRef($ref) //Получение платежного профиля по reference (ссылке)
public function getProfileTransactions($id) //Получение списка транзакций платежного профиля
public function getAllProfiles($start = 0, $limit = 20) //Получение списка всех доступных пользователю платежных профилей
public function getTotalRecurring() //так и не перевел

 

account/return.php | ModelAccountReturn #

 

# Загрузка модели:
$this->load->model('account/return');
# Использование:
$this->model_account_return->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function addReturn($data) //Добавление возврата товара
public function getReturn($return_id) //Получение данных о возврате товара
public function getReturns($start = 0, $limit = 20) //Получение списка возвратов текущего пользователя
public function getTotalReturns() //Получение кол-ва возвратов
public function getReturnHistories($return_id) //Получение истории возвратов (статусов)

 

account/reward.php | ModelAccountReward #

 

# Загрузка модели:
$this->load->model('account/reward');
# Использование (выполняются от имени авторизованного клиента($this->customer)):
$this->model_account_reward->function_name($params);
# Функции:
public function getRewards($data = array()) //Получение списка бонусов пользователя
public function getTotalRewards() //Получение кол-ва бонусов пользователя
public function getTotalPoints() //Получение кол-ва бонусных баллов пользователя

 

account/transaction.php | ModelAccountTransaction #

 

# Загрузка модели:
$this->load->model('account/transaction');
# Использование:
$this->model_account_transaction->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function getTransactions($data = array()) // Получение списка транзакций текущего пользователя(покупателя)
public function getTotalTransactions() //Получение кол-ва транзакций текущего пользователя(покупателя)
public function getTotalAmount() //Получение суммы всех транзакций

 

Партнеры affiliate/

affiliate/affiliate.php | ModelAffiliateAffiliate #

 

 

# Загрузка модели:
$this->load->model('affiliate/affiliate');
# Использование:
$this->model_affiliate_affiliate->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function addAffiliate($data) //Добавление нового партнера
public function editAffiliate($data) //Редактирование данных партнера
public function editPayment($data) //Редактирование платежной информации партнера
public function editPassword($email, $password) //Изменение пароля
public function getAffiliate($affiliate_id) //Получение данных партнера
public function getAffiliateByEmail($email) //Получение данных партнера по email
public function getAffiliateByCode($code) //Получение данных партнера по коду
public function getTotalAffiliatesByEmail($email) //Получение кол-ва партнеров по email

 

affiliate/transaction.php | ModelAffiliateTransaction #

 

# Загрузка модели:
$this->load->model('affiliate/transaction');
# Использование:
$this->model_affiliate_transaction->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function getTransactions($data = array()) //Получение списка транзакций партнера
public function getTotalTransactions() //Получение общего кол-ва транзакций
public function getBalance() //Получение суммы выплат всех транзакций

 

Каталог catalog/

catalog/category.php | ModelCatalogCategory #

 

# Загрузка модели:
$this->load->model('catalog/category');
# Использование:
$this->model_catalog_category->function_name($params);
# Функции:
public function getCategory($category_id) //Получение категории
public function getCategories($parent_id = 0) //Получение списка категорий
public function getCategoryFilters($category_id) //Получение фильтров для катгории
public function getCategoryLayoutId($category_id) //Получение схемы категории
public function getTotalCategoriesByCategoryId($parent_id = 0) //Получение кол-ва подкатегорий

 

catalog/information.php | ModelCatalogInformation #

 

# Загрузка модели:
$this->load->model('catalog/information');
# Использование:
$this->model_catalog_information->function_name($params);
# Функции:
public function getInformation($information_id) //Получение статьи
public function getInformations() //Получение списка всех статей
public function getInformationLayoutId($information_id) //Получение схемы статьи

 

catalog/manufacturer.php | ModelCatalogManufacturer #

 

# Загрузка модели:
$this->load->model('catalog/manufacturer');
# Использование:
$this->model_catalog_manufacturer->function_name($params);
# Функции:
public function getManufacturer($manufacturer_id) //Получение данных производителя
public function getManufacturers($data = array()) //Получение списка производителей

 

catalog/product.php | ModelCatalogProduct #

 

# Загрузка модели:
$this->load->model('catalog/product');
# Использование:
$this->model_catalog_product->function_name($params);
# Функции:
public function updateViewed($product_id) //Обновление кол-ва просмотров
public function getProduct($product_id) //Получение данных товара
public function getProducts($data = array()) //Получение товаров (фильтр)
public function getProductSpecials($data = array()) // Получение спецпредложений
public function getLatestProducts($limit) //Получение новинок
public function getPopularProducts($limit) //Получение популярных товаров (по просмотру)
public function getBestSellerProducts($limit) //Получение лидеров продаж
public function getProductAttributes($product_id) //Получение списка групп атрибутов и атрибутов товара
public function getProductOptions($product_id) //Получение опций товара
public function getProductDiscounts($product_id) //Получение данных о скидке на товар
public function getProductImages($product_id) //Получение дополнительных изображений товара
public function getProductRelated($product_id) //Получение рекомендуемых товаров (ьех, что привязаны к товару)
public function getProductLayoutId($product_id) //Получение схемы товара
public function getCategories($product_id) //Получение списка категорий, в которых находится товар
public function getTotalProducts($data = array()) //Аналогичен функции getProducts, только считает кол-во
public function getProfiles($product_id) //Получение платежных профилей
public function getProfile($product_id, $profile_id) //Получение данных платежного профиля, привязанного к товару.
public function getTotalProductSpecials() //Получение кол-ва товаров, на которых действует скидка/акция

 

catalog/review.php | ModelCatalogReview #

 

# Загрузка модели:
$this->load->model('catalog/review');
# Использование:
$this->model_catalog_review->function_name($params);
# Функции (выполняются от имени авторизованного клиента($this->customer)):
public function addReview($product_id, $data) //Добавление отзыва
public function getReviewsByProductId($product_id, $start = 0, $limit = 20) //Получение отзывов о товаре
public function getTotalReviewsByProductId($product_id) //Получение кол-ва отзывов о товаре

 

Оформление заказа checkout/

checkout/coupon.php | ModelCheckoutCoupon #

 

# Загрузка модели:
$this->load->model('checkout/coupon');
# Использование:
$this->model_checkout_coupon->function_name($params);
# Функции:
public function getCoupon($code) //Проверка действительности купона
public function redeem($coupon_id, $order_id, $customer_id, $amount) //Обновление истории купона

 

checkout/fraud.php | ModelCheckoutFraud #

 

# Загрузка модели:
$this->load->model('checkout/fraud');
# Использование:
$this->model_checkout_fraud->function_name($params);
# Функции:
public function getFraudScore($data) //Получить степень риска
public function getFraud($order_id) //Получение данных о мошенническом заказе

 

checkout/order.php | ModelCheckoutOrder #

 

# Загрузка модели:
$this->load->model('checkout/order');
# Использование:
$this->model_checkout_order->function_name($params);
# Функции:
public function addOrder($data) //Добавление заказа
public function getOrder($order_id) //Получение заказа
public function confirm($order_id, $order_status_id, $comment = '', $notify = false) // Подтверждение  заказа
public function update($order_id, $order_status_id, $comment = '', $notify = false) // Обновление статуса заказа

 

checkout/recurring.php | ModelCheckoutRecurring #

 

# Загрузка модели:
$this->load->model('checkout/recurring');
# Использование:
$this->model_checkout_recurring->function_name($params);
# Функции:
public function create($item, $order_id, $description) //Создание возврата
public function addReference($recurring_id, $ref) //Добавление причин возврата

 

checkout/voucher.php | ModelCheckoutVoucher #

# Загрузка модели:
$this->load->model('checkout/voucher');
# Использование:
$this->model_checkout_voucher->function_name($params);
# Функции:
public function addVoucher($order_id, $data) //Применение сертификата к заказу
public function getVoucher($code) //Получение сертификата
public function confirm($order_id) //Подтверждение применения к заказу
public function redeem($voucher_id, $order_id, $amount) //Обновление истории сертификата

 

checkout/voucher_theme.php | ModelCheckoutVoucherTheme #

 

# Загрузка модели:
$this->load->model('checkout/voucher_theme');
# Использование:
$this->model_checkout_voucher_theme->function_name($params);
# Функции:
public function getVoucherTheme($voucher_theme_id) //Получение темы подарочного сертификата
public function getVoucherThemes($data = array()) //Получение списка тем сертификатов

 

Схемы design/

design/banner.php | ModelDesignBanner #

 

# Загрузка модели:
$this->load->model('design/banner');
# Использование:
$this->model_design_banner->function_name($params);
# Функции:
public function getBanner($banner_id) //Получение баннера

 

design/layout.php | ModelDesignLayout #

 

# Загрузка модели:
$this->load->model('design/layout');
# Использование:
$this->model_design_layout->function_name($params);
# Функции:
public function getLayout($route) //Получение текущей схемы, относительно route. В предыдущей статье рассматривался правильный способ получения 

 

Локализация localisation/

localisation/country.php | ModelLocalisationCountry #

 

# Загрузка модели:
$this->load->model('localisation/country');
# Использование:
$this->model_localisation_country->function_name($params);
# Функции:
public function getCountry($country_id) //Получение названия страны
public function getCountries() //Получение всех стран

 

localisation/currency.php | ModelLocalisationCurrency #

 

# Загрузка модели:
$this->load->model('localisation/currency');
# Использование:
$this->model_localisation_currency->function_name($params);
# Функции:
public function getCurrencyByCode($currency) //Получение валюты по коду
public function getCurrencies() //Получение данных всех валют

 

localisation/language.php | ModelLocalisationLanguage #

 

# Загрузка модели:
$this->load->model('localisation/language');
# Использование:
$this->model_localisation_language->function_name($params);
# Функции:
public function getLanguage($language_id) //Получение языка
public function getLanguages() //Получение списка всех языков

 

localisation/return_reason.php | ModelLocalisationReturnReason

 

# Загрузка модели:
$this->load->model('localisation/return_reason');
# Использование:
$this->model_localisation_return_reason->function_name($params);
# Функции:
public function addReturnReason($data) //Добавляет причину возврата
public function editReturnReason($return_reason_id, $data) //Редактирует причину возврата
public function deleteReturnReason($return_reason_id) //Удаляет причину возврата
public function getReturnReason($return_reason_id) //Получение причины возврата
public function getReturnReasons($data = array()) //Получение причин возврата
public function getReturnReasonDescriptions($return_reason_id) //Получение опиания причин возврата
public function getTotalReturnReasons() //Получение кол-ва причин возврата

 

localisation/zone.php | ModelLocalisationZone #

 

# Загрузка модели:
$this->load->model('localisation/zone');
# Использование:
$this->model_localisation_zone->function_name($params);
# Функции:
public function getZone($zone_id) //Получение зоны (региона/области) 
public function getZonesByCountryId($country_id) //Получения списка зон страны

 

Оплата заказа payment/

payment/free_checkout.php | ModelPaymentFreeCheckout #

 

# Загрузка модели:
$this->load->model('payment/free_checkout');
# Использование:
$this->model_payment_free_checkout->function_name($params);
# Функции:
public function getMethod($address, $total) //Получение данных о способе оплаты (код, название, порядок сортировки)

 

Доставка заказа shipping/

shipping/free.php | ModelShippingFree #

 

# Загрузка модели:
$this->load->model('shipping/free');
# Использование:
$this->model_shipping_free->function_name($params);
# Функции:
function getQuote($address) //Проверка(разрешенных адресов) и получение данных о способе доставки

 

Конфигурация setting/

setting/extension.php | ModelSettingExtension #

 

# Загрузка модели:
$this->load->model('setting/extension');
# Использование:
$this->model_setting_extension->function_name($params);
# Функции:
function getExtensions($type) //Получение расширений (модуль, доставка, оплата, учитывать в заказе)

 

setting/setting.php | ModelSettingSetting #

 

# Загрузка модели:
$this->load->model('setting/setting');
# Использование:
$this->model_setting_setting->function_name($params);
# Функции:
public function getSetting($group, $store_id = 0) //Получение настроек из таблицы setting

 

setting/store.php | ModelSettingStore #

 

# Загрузка модели:
$this->load->model('setting/store');
# Использование:
$this->model_setting_store->function_name($params);
# Функции:
public function getStores($data = array()) //Получение списка магазинов

 

Инструменты tool/

tool/image.php | ModelToolImage #

 

# Загрузка модели:
$this->load->model('tool/image');
# Использование:
$this->model_tool_image->function_name($params);
# Функции:
public function resize($filename, $width, $height, $type = "") //Ресайз изображения

 

tool/online.php | ModelToolOnline #

 

# Загрузка модели:
$this->load->model('tool/online');
# Использование:
$this->model_tool_online->function_name($params);
# Функции:
public function whosonline($ip, $customer_id, $url, $referer) //Обновления статуса клиента при изменившемся статусе (онлайн/оффлайн)

 

Учитывать в заказе (оформление заказа) total/

total/coupon.php | ModelTotalCoupon #

 

# Загрузка модели:
$this->load->model('total/coupon');
# Использование:
$this->model_total_coupon->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Применение купона
public function confirm($order_info, $order_total) //Подтверждение применения купона

 

total/credit.php | ModelTotalCredit #

 

# Загрузка модели:
$this->load->model('total/credit');
# Использование:
$this->model_total_credit->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Применение кредита
public function confirm($order_info, $order_total) //Подтверждение применения кредита

 

total/handling.php | ModelTotalHandling #

 

# Загрузка модели:
$this->load->model('total/handling');
# Использование:
$this->model_total_handling->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Применение оплаты при обработки заказа

 

total/low_order_fee.php | ModelTotalLowOrderFee #

 

# Загрузка модели:
$this->load->model('total/low_order_fee');
# Использование:
$this->model_total_low_order_fee->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Применение оплаты при обработки мелких заказов

 

total/reward.php | ModelTotalReward #

 

# Загрузка модели:
$this->load->model('total/reward');
# Использование:
$this->model_total_reward->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Применение бонусных баллов 
public function confirm($order_info, $order_total) //Подтверждение применения бонусных баллов

 

total/shipping.php | ModelTotalShipping #

 

# Загрузка модели:
$this->load->model('total/shipping');
# Использование:
$this->model_total_shipping->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Применение доставки

 

total/sub_total.php | ModelTotalSubTotal #

 

# Загрузка модели:
$this->load->model('total/sub_total');
# Использование:
$this->model_total_sub_total->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Суммирование

 

total/tax.php | ModelTotalTax #

 

# Загрузка модели:
$this->load->model('total/tax');
# Использование:
$this->model_total_tax->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Применение налогов

 

total/total.php | ModelTotalTotal #

 

# Загрузка модели:
$this->load->model('total/total');
# Использование:
$this->model_total_total->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Итого

 

total/voucher.php | ModelTotalVoucher #

 

# Загрузка модели:
$this->load->model('total/voucher');
# Использование:
$this->model_total_voucher->function_name($params);
# Функции:
public function getTotal(&$total_data, &$total, &$taxes) //Применение сертификата
public function confirm($order_info, $order_total) //Подтверждение применения сертификата

 

 

 

 

 

account/download.php | ModelAccountDownload #