Legacy ====== Микрофреймворк для устаревших платформ (php <= 5.2.17), либо, в случае отсутствия возможности создать модуль для конкретной платформы. ### Установка * Распаковать директорию retailcrm в корень проекта * На основе файла data/config/settings-dist.ini создать конфигурационный файл data/config/settings.ini * Создать необходимые sql файлы, файлы с критериями поиска писем и их обработчки (в случае их отсутствия скрипт даст подсказку) ### Настройка Скрипт выполняет определенные действия в зависимости от переданных параметров. Пример параметров можно увидеть, запустив скрипт без них: ``` php app.php ``` Обмен работает через вызов скрипта по cron, в частности производится: 1. Выгрузка новых заказов из магазина в CRM 2. Выгрузка новых клиентов из магазина в CRM 3. Получение изменений из CRM и запись их в БД сайта 4. Выгрузка каталога товаров в ICML файл 5. Выгрузка справочников (доставки, типы оплат, статусы заказов) 6. Выгрузка заказов из почты Для этого необходимо создать следующие записи: ``` */5 * * * * /path/to/php /path/to/retailcrm/app.php -e orders -l */5 * * * * /path/to/php /path/to/retailcrm/app.php -e mail -m mail@example.com */25 * * * * /path/to/php /path/to/retailcrm/app.php -e customers -l */15 * * * * /path/to/php /path/to/retailcrm/app.php -e history * */6 * * * /path/to/php /path/to/retailcrm/app.php -e icml * 3 * * * /path/to/php /path/to/retailcrm/app.php -e references ``` В случае, если для консольного окружения нет отдельного php.ini (чаще всего на FreeBSD), а подключение модулей (mysql.so, dom.so, xmlwriter.so) выполняется отельно, необходимо при запуске скрипта явно указать путь к php.ini, можно к тому, который используется при вызове php через libapache-mod-php (путь к нему покажет phpinfo()): ``` */5 * * * * /path/to/php -c /path/to/php.ini /path/to/retailcrm/app.php -e orders -l */15 * * * * /path/to/php -c /path/to/php.ini /path/to/retailcrm/app.php -e history * */6 * * * /path/to/php -c /path/to/php.ini /path/to/retailcrm/app.php -e icml ``` ### Параметры #### Общие параметры запуска Общие параметры передаются с помощью ключа -e: * icml - генерация icml файла * history - получение истории изменений из CRM для обновления данных в БД сайта * orders - выгрузка последних заказов (выгружаются заказы, сформированые с момента предыдущего запуска скрипта) * customers - выгрузка последних клиентов (выгружаются клиенты, не имеющие заказов, сформированые с момента предыдущего запуска скрипта) * references - выгрузка справочников (по расписанию можно выгружать все справочники, если они доступны) * mail - выгрузка заказов из почты (выгружаются заказы из писем) * dump - выгрузка дампа БД #### Дополнительные параметры запуска * Ручной запуск с передачей дополнительных параметров для выгрузки конкретного справочника: ``` /usr/bin/php -i /etc/cli/php.ini -f app.php -e reference -r delivery-types ``` * Выгрузка 1 заказа: ``` /usr/bin/php -i /etc/cli/php.ini -f app.php -e orders -p 12345 ``` * Выгрузка нескольких клиентов: ``` /usr/bin/php -i /etc/cli/php.ini -f app.php -e customers -p 404,417-423 ```