Часть 2.
Продолжение серии статей “OpenCart для разработчиков”. Напомню, в предыдущей статье были описания основных классов OpenCart. В этой статье будут кратко описаны функции моделей каталога.
Содержание
- Аккаунт account/
- Адреса account/address.php | ModelAccountAddress
- Покупатель account/customer.php | ModelAccountCustomer
- Группа покупателей account/customer_group.php | ModelAccountCustomerGroup
- Загрузки account/download.php | ModelAccountDownload
- Подписчики account/newslettersubscribe.php | ModelAccountnewslettersubscribe
- Заказ account/order.php | ModelAccountOrder
- Кредитование account/recurring.php | ModelAccountRecurring
- Возврат товаров account/return.php | ModelAccountReturn
- Бонусные баллы account/reward.php | ModelAccountReward
- Транзакции account/transaction.php | ModelAccountTransaction
- Партнеры affiliate/
- Каталог catalog/
- Категории catalog/category.php | ModelCatalogCategory
- Информация(статьи) catalog/information.php | ModelCatalogInformation
- Производители catalog/manufacturer.php | ModelCatalogManufacturer
- Товар catalog/product.php | ModelCatalogProduct
- Отзывы catalog/review.php | ModelCatalogReview
- Купоны checkout/coupon.php | ModelCheckoutCoupon
- Обман checkout/fraud.php | ModelCheckoutFraud
- Оформление заказа checkout/
- Заказ checkout/order.php | ModelCheckoutOrder
- Кредитование checkout/recurring.php | ModelCheckoutRecurring
- Подарочные сертификаты checkout/voucher.php | ModelCheckoutVoucher
- Оформление сертификатов checkout/voucher_theme.php | ModelCheckoutVoucherTheme
- Схемы design/
- Локализация localisation/
- Страна localisation/country.php | ModelLocalisationCountry
- Валюта localisation/currency.php | ModelLocalisationCurrency
- Язык localisation/language.php | ModelLocalisationLanguage
- Причины возврата localisation/return_reason.php | ModelLocalisationReturnReason
- Регионы localisation/zone.php | ModelLocalisationZone
- Оплата заказа payment/
- Доставка заказа shipping/
- Бесплатно shipping/free.php | ModelShippingFree
- Конфигурация setting/
- Расширения(модули) setting/extension.php | ModelSettingExtension
- Настройки setting/setting.php | ModelSettingSetting
- Магазин setting/store.php | ModelSettingStore
- Инструменты tool/
- Изображения tool/image.php | ModelToolImage
- Посетители онлайн tool/online.php | ModelToolOnline
- Учитывать в заказе (оформление заказа) total/
- Купоны total/coupon.php | ModelTotalCoupon
- Кредитование total/credit.php | ModelTotalCredit
- Оплата обработки заказа total/handling.php | ModelTotalHandling
- Дополнительная оплата при мелких заказах total/low_order_fee.php | ModelTotalLowOrderFee
- Бонусные баллы total/reward.php | ModelTotalReward
- Доставка total/shipping.php | ModelTotalShipping
- Сумма total/sub_total.php | ModelTotalSubTotal
- Налоги total/tax.php | ModelTotalTax
- Итого total/total.php | ModelTotalTotal
- Подарочные сертификаты total/voucher.php | ModelTotalVoucher
Аккаунт 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) //Подтверждение применения сертификата