Docs For Class Models_Catalog

Models_Catalog

Описание

Модель: Catalog

Класс Models_Catalog реализует логику работы с каталогом товаров.

Методы класса
array addPropertyToProduct() Метод добавляет к массиву продуктов информацию о характеристиках для каждого продукта.
string addToCsvLine() Добавляет продукт в CSV выгрузку.
array exportToCsv() Выгружает содержание всего каталога в CSV файл.
array filterPublic() Метод для обработки фильтрации товаров в каталоге.
array getCategoryArray() Получает массив всех категорий магазина.
bool getCurrentCategory() Записывает в переменную класса массив содержащий ссылку и название текущей, открытой категории товаров.
void getExampleCategoryCSV() Возвращает пример загружаемого файла, содержащего информацию о категориях.
void getExampleCSV() Возвращает пример загружаемого каталога.
void getExampleCsvUpdate() Возвращает пример CSV файла для обновления цен товаров.
array getList() Возвращает список товаров и пейджер для постраничной навигации.
array getListByUserFilter() Получает список продуктов в соответствии с выбранными параметрами фильтра.
array getListProductByKeyWord() Возвращает список найденных продуктов соответствующих поисковой фразе.
float getMaxPrice() Получает максимальную цену из всех стоимостей товаров (варианты тоаров не учитываются).
float getMinPrice() Получает минимальную цену из всех стоимостей товаров (варианты тоаров не учитываются).
void rowCsvPrintToFile() Записывает построчно CSV выгрузку в файл data_csv_m_d_Y.csv в корневую папку сайта.
Описание методов и примеры их использования

Метод

array addPropertyToProduct (array $arrayProducts, [bool $mgadmin = false], [bool $changePic = true])

Параметры

  • $arrayProducts: массив с продуктами
  • $mgadmin: если из админки
  • $changePic: заменять изображение

Описание

Метод добавляет к массиву продуктов информацию о характеристиках для каждого продукта.

Пример использования

  1.  $catalog new Models_Catalog;
  2.  $products $catalog->addPropertyToProduct($products);

Метод

string addToCsvLine (array $row, [bool $variant = false])

Параметры

  • $row: - продукт.
  • $variant: - есть ли варианты этого продукта.

Описание

Добавляет продукт в CSV выгрузку.

Пример использования

  1.  $model new Models_Product;
  2.  $product $model->getProduct(5);
  3.  echo Models_Catalog::addToCsvLine($product);

Метод

array exportToCsv ([array $listProductId = array()])

Параметры

  • $listProductId: массив id товаров

Описание

Выгружает содержание всего каталога в CSV файл.

Пример использования

  1.  $listProductId array(12525);
  2.  $catalog new Models_Catalog();
  3.  $result $catalog->exportToCsv($listProductId);
  4.  viewData($result);

Метод

array filterPublic ([bool $noneAjax = true], [bool $onlyInCount = false], [bool $onlyActive = true], [array $sortFields = array( 'price_course|-1'=>'цене, сначала недорогие', 'price_course|1'=>'цене, сначала дорогие', 'id|1'=>'новизне', 'count_buy|1'=>'популярности', 'recommend|1'=>'сначала рекомендуемые', 'new|1'=>'сначала новинки', 'old_price|1'=>'сначала распродажа', 'sort|-1'=>'порядку', 'count|1'=>'наличию', 'count|-1' => 'возрастанию количества', 'title|-1' => 'наименованию А-Я', 'title|1' => 'наименованию Я-А', )], [string $baseSort = 'sort|-1'])

Параметры

  • $noneAjax: построение HTML для использования AJAX запросов.
  • $onlyInCount: учитывать только товары в наличии,
  • $onlyActive: учитывать только активные товары,
  • $sortFields: массив доступных сортировок товаров.
  • $baseSort: сортировка по умолчанию,

Описание

Метод для обработки фильтрации товаров в каталоге.

Пример использования

  1.  $catalog new Models_Catalog();
  2.  $result $catalog->filterPublic();
  3.  viewData($result);

Метод

array getCategoryArray ()

Описание

Получает массив всех категорий магазина.

Пример использования

  1.  $catalog new Models_Catalog();
  2.  $categoryArray $catalog->getCategoryArray();
  3.  viewData($categoryArray);

Метод

bool getCurrentCategory ()

Описание

Записывает в переменную класса массив содержащий ссылку и название текущей, открытой категории товаров.

Пример использования

  1.  $catalog new Models_Catalog;
  2.  $catalog->getCurrentCategory();

Метод

void getExampleCategoryCSV ()

Описание

Возвращает пример загружаемого файла, содержащего информацию о категориях.

Пример использования

Метод

void getExampleCSV ()

Описание

Возвращает пример загружаемого каталога.

Пример использования

Метод

void getExampleCsvUpdate ()

Описание

Возвращает пример CSV файла для обновления цен товаров.

Пример использования

Метод

array getList ([int $countRows = 20], [bool $mgadmin = false], [bool $onlyActive = false])

Параметры

  • $countRows: количество возвращаемых записей для одной страницы.
  • $mgadmin: откуда вызван метод, из публичной части или панели управления.
  • $onlyActive: учитывать только активные продукты.

Описание

Возвращает список товаров и пейджер для постраничной навигации.

Пример использования

  1.  $catalog new Models_Catalog;
  2.  $items $catalog->getList(6falsetrue);
  3.  viewData($items);

Метод

array getListByUserFilter ([int $countRows = 20], string $userfilter, [bool $mgadmin = false], [bool $noCache = false])

Параметры

  • $countRows: количество записей.
  • $userfilter: пользовательская составляющая для запроса.
  • $mgadmin: админка.
  • $noCache: не использовать кэш.

Описание

Получает список продуктов в соответствии с выбранными параметрами фильтра.

Пример использования

  1.  $catalog new Models_Catalog;
  2.  $result $catalog->getListByUserFilter(20' p.cat_id IN  (1,2,3)');
  3.  viewData($result);

Метод

array getListProductByKeyWord (string $keyword, [string $allRows = false], [string $onlyActive = false], [bool $adminPanel = false], [bool $mode = false], [bool|int $forcedPage = false], [int $searchCats = -1])

Параметры

  • $keyword: поисковая фраза.
  • $allRows: получить сразу все записи.
  • $onlyActive: учитывать только активные продукты.
  • $adminPanel: запрос из публичной части или админки.
  • $mode: (не используеться)
  • $forcedPage: номер страницы использующийся вместо url
  • $searchCats: поиск в категории (оставить пустым если не надо искать)

Описание

Возвращает список найденных продуктов соответствующих поисковой фразе.

Пример использования

  1.  $catalog new Models_Catalog();
  2.  $items $catalog->getListProductByKeyWord('Nike'truetrue);
  3.  viewData($items);

Метод

float getMaxPrice ()

Описание

Получает максимальную цену из всех стоимостей товаров (варианты тоаров не учитываются).

Пример использования

Метод

float getMinPrice ()

Описание

Получает минимальную цену из всех стоимостей товаров (варианты тоаров не учитываются).

Пример использования

Метод

void rowCsvPrintToFile (array $csvText, [bool $new = false])

Параметры

  • $csvText: массив с csv строками.
  • $new: записывать в конец файла.

Описание

Записывает построчно CSV выгрузку в файл data_csv_m_d_Y.csv в корневую папку сайта.