# Менеджеры OpenCart

## Модуль быстрого редактирования данных для OpenCart и сборок

- Дата выхода: 15 июня 2018 г.
- Автор: MaxyStore
- support@maxystore.com
- maxystore.com@gmail.com

##### Совместимость с версиями

Данный модуль полностью совместим со следующими версиями движка:

1. OpenCart v.3.0.2.0
2. Сборки на основе OpenCart v.3.0.2.0

### Установка

Установка модуля достаточно проста и не требует специальных навыков.

1. Распакуйте архив с модулем
2. Перед установкой модуля, вам необходимо узнать версию PHP вашего сервера, как ее узнать подробно написано в пункте 3.
   Если версия PHP вашего сервера известна, тогда можно сразу перейти к пункту 4 раздела "Установка".
3. Чтобы узнать версию PHP вашего сервера, необходимо:
   - Создать в корневом каталоге магазина, т.е. там где находится файл index.php файл с именем phpinfo.php
   - В созданный файл прописать такой код:

         <?php phpinfo(); ?>

   - Затем в адресной строке наберите http://site.ru/phpinfo.php (вместо site.ru напишите адрес вашего сайта)
   - Вы получите страницу с данными вашего сервера, на которой в самом верху будет указана версия PHP вашего сервера.
4. Откройте папку for version PHP 5.4-5.6 если версия вашего сервера PHP 5.4, PHP 5.5, PHP 5.6
   Либо папку for version PHP 7.1-7.2 если версия вашего сервера PHP 7.1, 7.2
   и загрузите папку admin в корневой каталог магазина, т.е. там где находится файл index.php (см.рис ниже)
5. В административной части установите модуль.
6. Активируйте лицензию на право пользования модулем.
7. Чтобы сслыки на разделы редакторов были доступны в главном меню, нужно установить модификатор, для этого перейдите в раздел "Модули / Расширения->Установка расширений" и загрузить файл admin_quick_edit.ocmod.zip, который находится в архиве с модулем.
8. После этого перейдите в раздел "Модули / Расширения->Модификаторы". Вы должны увидеть установленную модификацию для данного модуля. Если вы ее не видите, значит модификация не установлена, вернитесь назад и попробуйте заново. Как только модификация будет установлена, обязательно нажмите кнопку обновить, для обновления кеша системы.
9. После успешной установки, в главном меню (в самом верху) появится новый раздел "Менеджеры"

Если данный раздел не появился, или возникли какие-либо проблемы при установке модификатора, тогда можно внести небольшие изменения всего в 1 файл вручную.
Для этого нужно:

1. Откройте для редактирования файл - admin/controller/common/column_left.php
   Найдите в нем такую строку:

       $catalog = array();

   Выше найденной строки добавьте следующий код:

       if ($this->config->get('admin_quick_edit_activated') == 'activated') {
       	$this->load->language('extension/module/admin_quick_edit');

       	$aqmanager = array();

       	if ($this->user->hasPermission('access', 'editors/category')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_category'),
       			'href'     => $this->url->link('editors/category', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/product')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_product'),
       			'href'     => $this->url->link('editors/product', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/filter')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_filter'),
       			'href'     => $this->url->link('editors/filter', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	$aqmanager_attribute = array();

       	if ($this->user->hasPermission('access', 'editors/attribute')) {
       		$aqmanager_attribute[] = array(
       			'name'     => $this->language->get('text_attribute'),
       			'href'     => $this->url->link('editors/attribute', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/attribute_group')) {
       		$aqmanager_attribute[] = array(
       			'name'	   => $this->language->get('text_attribute_group'),
       			'href'     => $this->url->link('editors/attribute_group', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($aqmanager_attribute) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_attribute'),
       			'href'     => '',
       			'children' => $aqmanager_attribute
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/option')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_option'),
       			'href'     => $this->url->link('editors/option', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/manufacturer')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_manufacturer'),
       			'href'     => $this->url->link('editors/manufacturer', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/information')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_information'),
       			'href'     => $this->url->link('editors/information', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/review')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_review'),
       			'href'     => $this->url->link('editors/review', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/customer')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_customer'),
       			'href'     => $this->url->link('editors/customer', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'editors/order')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_order'),
       			'href'     => $this->url->link('editors/order', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'tool/seo_manager')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_seo_manager'),
       			'href'     => $this->url->link('tool/seo_manager', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($this->user->hasPermission('access', 'extension/module/admin_quick_edit')) {
       		$aqmanager[] = array(
       			'name'	   => $this->language->get('text_setting'),
       			'href'     => $this->url->link('extension/module/admin_quick_edit', 'user_token=' . $this->session->data['user_token'], true),
       			'children' => array()
       		);
       	}

       	if ($aqmanager) {
       		$data['menus'][] = array(
       			'id'       => 'menu-aqmanager',
       			'icon'	   => 'fa-magic',
       			'name'	   => $this->language->get('text_quick_menu'),
       			'href'     => '',
       			'children' => $aqmanager
       		);
       	}
       }

На этом установка завершена.

### Общее

Данный модуль написан исключительно для облегчения работы администратора с основными разделами магазина.
Редактирование данных с помощью данного модуля производится в модальных окнах прямо в списке элементов.
Сохранение отредактированных данных происходит мгновенно без перезагрузки страниц.
В каждый редактор быстрого редактирования добавлено:

1. Фиксация верхей части редактора с функциональными кнопками в верху окна браузера;
2. Кнопка "Применить" при добавлении или редактировании элемента в форме;
3. Продублирована навигация по страницам в верху списка элементов;
4. Продублированы названия столбцов в низу списка элементов, с возможностью сортировки;

Подробнее о каждом редакторе, можно узать из соответствующего раздела данной документации.

### Категории

В верхнюю часть редактора добавлена функциональная кнопка "Копировать", с помощью которой можно скопировать любую существующую категорию, для ее дальнейшего редактирования.
Возможность редактирования любых данных (см. скрин)

1. Изображение категории;
2. Название категории;
3. Порядок сортировки;
4. Статус категории;
5. Ощие данные категории:
   - Описание;
   - Метатег Title;
   - Метатег Описание;
   - Ключевые слова;
6. Родительская категория;
7. SEO URL (ЧПУ);
8. Фильтры;
9. Магазины, Столбцы;
10. Дизайн;
11. Главное меню;

### Товары

Менеджер товаров имеет мощный фильтр, с помощью которого можно производить выбор товаров по следующим критериям (см. скрин):

1. По названию товаров;
2. По атрибутам товаров;
3. По цене товаров;
4. По категории товаров;
5. По фильтрам товаров;
6. По количеству товаров;
7. По производителю товаров;
8. По артикулу товаров (SKU);
9. По статусу товаров (включено/отключено);
10. По модели товаров;
11. По расположению товаров;

Менеджер товаров работает в трех режимах.

##### I. Режим - Индивидуальное редактирование (редактирование любых данных выбранного товара)

1. Изображение товара;
2. Название товара;
3. Категории;
4. Производитель;
5. Модель;
6. Цена;
7. Специальная цена;
8. Количество;
9. Статус;
10. Ощие данные товара:
    - Описание;
    - Метатег Title;
    - Метатег Описание;
    - Ключевые слова;
    - Теги товара;
11. Коды (Артикулы);
12. Расположение, Налоги;
13. Минимальное кол-во, Склад, Доставка;
14. SEO URL (ЧПУ);
15. Дата поступления
16. Фильтры
17. Магазины
18. Загрузки
19. Рекомендуемые товары
20. Атрибуты
21. Опции
22. Скидки
23. Акции
24. Изображения
25. Бонусные баллы
26. Дизайн
27. Просмотр товара

##### II. Режим - Массовое редактирование (редактирование любых данных у выбранных товаров)

Данном режиме можно, как и в режиме индивидуального редактирования, МАССОВО редактировать любые данные выбранных товаров.

##### III. Режим - Массовое удаление (удаление любых данных у выбранных товаров)

Данном режиме можно МАССОВО удалять любые данные у выбранных товаров, в том числе и товары.

### Фильтры

Редактирование данных в списке фильтров.

### Атрибуты

Редактирование данных в списке атрибутов.

### Группы атрибутов

Редактирование данных в списке групп атрибутов.

### Опции

Редактирование данных в списке опций.

### Производители

Редактирование данных в списке производителей.

### Отзывы

Редактирование данных в списке отзывов.

### Информационные статьи

Редактирование данных в списке информационных статей.

### Покупатели

Редактирование данных в списке покупателей.

### Заказы

Редактирование данных на странице просмотра заказа.

### SEO Менеджер

Редактирование данных на странице SEO Менеджера.

С помощью SEO Менеджера можно автоматически генерировать следующие SEO данные (см. скрин на примере SEO Менеджера товаров):

1. Генератор SEO URL (ЧПУ). Данный генератор имеет два варианта создания SEO URL (ЧПУ):
   - Создает новые SEO URL (ЧПУ) только для тех элементов, у которых они не прописаны.
   - Создает новые SEO URL (ЧПУ) и перезаписывает существующие
2. Возможность указания окончания ЧПУ
3. Генератор Метатегов Title
4. Генератор Метатегов H1
5. Генератор Метатегов Описание
6. Генератор Ключевых слов
7. Генератор Тегов товара

Все данные создаются на основе заданных шаблонов.
С помощью данного SEO Менеджера можно также автоматически генерировать SEO URL (ЧПУ) в форме или в списке элементов, например при создании нового товара через менеджер товаров данного модуля, в форме товара поле SEO URL (ЧПУ) можно не заполнять. Оно будет автоматически заполнено на основе названия товара и т.д.

### Настройки модуля

В настройках модуля можно указать какие данные будут доступны для редактирования в списке элементов, а какие не доступны. Также имеется возможноть настроить некоторые данные по умолчанию. Например для товаров можно указать следующее:

1. Поле модель обязательное для заполнения или нет.
2. Количество товаров по умолчанию
3. Минимальное количество товаров по умолчанию
4. Вычитать товар со склада или нет
5. Нужна доставка товара или нет