Техническая документация Irbis — различия между версиями
(→Каталог spec) |
(→Каталог spec) |
||
Строка 115: | Строка 115: | ||
Содержит файлы для связи ссылок на сайте и обработчиков в папке class. | Содержит файлы для связи ссылок на сайте и обработчиков в папке class. | ||
Основные файлы директории: | Основные файлы директории: | ||
− | + | * call_me.php - заказ звонка | |
− | * call_me.php - | + | * cart.php - корзина и оформление заказа |
− | * cart.php - | + | * catalog.php - подбор по каталогу |
− | * catalog.php - | + | * catalog_manager.php - редактирование каталога |
− | * catalog_manager.php - | + | * contact_form.php - страница контактной информации и форма обратной связи |
− | * contact_form.php - | + | * cron.php - автоматический запуск периодичных событий |
− | * cron.php - | + | * customer.php - редактирование информации пользователя |
− | * customer.php - | + | * dashboard.php - личный кабинет пользователя |
− | * dashboard.php - | + | * finance.php - управление счетами |
− | * finance.php - | + | * garage_manager.php - просмотр и редактирование менеджерами гаража полььзователя |
− | * garage_manager.php - | + | * home.php - главная страница |
− | * home.php - | + | * manager.php - функционал менеджера |
− | * manager.php - | + | * manager_cart.php - просмотр менеджером корзины пользователей |
− | * manager_cart.php - | + | * manager_invoice_customer.php - работа с накладными для менеджера |
− | * manager_invoice_customer.php - | + | * message.php - внутренние сообщения |
− | * message.php - | + | * news.php - новости |
− | * news.php - | + | * own_auto.php - гараж автомобилей |
− | * own_auto.php - | + | * payment.php - модули оплаты |
− | * payment.php - | + | * payment_declaration.php - декларации доставки пользователя |
− | * payment_declaration.php - | + | * payment_declaration_manager.php - декларации доставки менеджера |
− | * payment_declaration_manager.php - | + | * payment_report.php - сообщение об оплате пользователя |
− | * payment_report.php - | + | * payment_report_manager.php - сообщение об оплате менеджера |
− | * payment_report_manager.php - | + | * price.php - загрузка прайса |
− | * price.php - | + | * price_group.php - группы прайсов |
− | + | * price_profile.php - профили загрузки прайсов | |
− | * price_group.php - | + | * price_queue.php - очередь загрузки прайсов |
− | * price_profile.php - | + | * price_search_log.php - история поиска по коду |
− | * price_queue.php - | + | * print_content.php - вывод на печать |
− | * price_search_log.php - | + | * rubricator.php - рубрикатор |
− | * print_content.php - | + | * search.php - релевантный поиск |
− | + | * test.php - тестовая страница, может использоваться для проверки функционала отдельных модулей | |
− | * rubricator.php - | + | * user.php - регистрация пользователя, вход на сайт, выход |
− | * search.php - | + | * vin_request.php - работа с VIN запросами |
− | + | ||
− | * test.php - | + | |
− | * user.php - | + | |
− | * vin_request.php - | + | |
Версия 16:13, 21 ноября 2016
Содержание
- 1 Структура каталогов
- 1.1 Каталог cache
- 1.2 Каталог class
- 1.3 Каталог cron
- 1.4 Каталог css
- 1.5 Каталог image
- 1.6 Каталог imgbank
- 1.7 Каталог include
- 1.8 Каталог js
- 1.9 Каталог lib
- 1.10 Каталог libp
- 1.11 Каталог mpanel
- 1.12 Каталог single
- 1.13 Каталог spec
- 1.14 Каталог template
- 1.15 Каталог verstka
- 1.16 Файлы главной директории
- 2 11
Структура каталогов
cache | Файловый кеш |
class | Основные классы обработчики |
cron | Скрипты создания backup |
css | Файлы css дизайна |
image | Картинки дизайна |
imgbank | Файлы выгрузок/загрузок |
include | Файлы SQL запросов |
js | Файлы js дизайна |
lib | Библиотеки php, общие для всех проектов |
libp | Библиотеки js, общие для всех проектов |
mpanel | Админ панель MPanel |
single | Дополнительные библиотеки подключаемые только в текущем проекте |
spec | Связь ссылок на сайте с обработчиками (Роутинг) |
template | Шаблоны внешнего вида(подключенный дизайн) |
verstka | Исходные файлы верстки |
Каталог cache
Файловый кеш, может использоваться для кеширования главного меню, некоторых данных TecDoc и других данных с низкой частотой обновления, но долгим по времени выполнения запросом. Файлы разбиваются по директориям. Названия файлов и директорий указывается программистом в исходном коде. Файлы содержат сериализованные данные.
Пример использования:
$sCacheName='название_файла_кеша'; $sCacheDir='название_директории_кеша' if(!($aBrands=FileCache::GetValue($sCacheDir, $sCacheName))) { $aBrands=Db::GetAll($sSql); FileCache::SetValue($sCacheDir, $sCacheName, $aBrands); }
В данном примере мы получаем массив $aBrands из файлового кеша, а в случае отсутствия необходимого кеша - выполняется запрос получения $aBrands из базы данных и сохранение данных в кеш.
Каталог class
Каталог cron
Содержит папку "local" в которой размещены файлы:
- backup.sh - скрипт для сохранения дампа основной базы. Скрипт выполняется каждые сутки.
- backup_weekly.sh - скрипт для сохранения таблиц cross и cross_stop. Скрипт выполняется 1 раз в неделю.
Каталог css
Содержит файлы css проекта, подключенные в данном дизайне. Также может содержать css от дополнительных библиотек.
Каталог image
Содержит изображения использующиеся в дизайне сайта.
Каталог imgbank
Каталог include
Каталог js
Содержит js скрипты использующиеся на сайте, в том числе и дополнительные библиотеки, например:
- jquery
- jquery.maskedinput
- jquery.validate
Каталог lib
Содержит библиотеки php подключенные к проекту, например:
- adodb - работа с базой
- PHPExcel - работа с xls/xlsx файлами
- smarty - работа с шаблонизатором smarty
- sphinx - релевантный поиск
- и другие
Данные библиотеки являются общими для всех проектов!
Каталог libp
Содержит библиотеки в основном js подключенные к проекту, например:
- FCKeditor - визуальный html редактор
- xajax - библиотека для работы с ajax
- popcalendar - всплывающий элемент выбора даты
- и другие
Данные библиотеки являются общими для всех проектов!
Каталог mpanel
Каталог single
Каталог для подключения любых библиотек php/js использующихся индивидуально на данном проекте.
Каталог spec
Содержит файлы для связи ссылок на сайте и обработчиков в папке class. Основные файлы директории:
- call_me.php - заказ звонка
- cart.php - корзина и оформление заказа
- catalog.php - подбор по каталогу
- catalog_manager.php - редактирование каталога
- contact_form.php - страница контактной информации и форма обратной связи
- cron.php - автоматический запуск периодичных событий
- customer.php - редактирование информации пользователя
- dashboard.php - личный кабинет пользователя
- finance.php - управление счетами
- garage_manager.php - просмотр и редактирование менеджерами гаража полььзователя
- home.php - главная страница
- manager.php - функционал менеджера
- manager_cart.php - просмотр менеджером корзины пользователей
- manager_invoice_customer.php - работа с накладными для менеджера
- message.php - внутренние сообщения
- news.php - новости
- own_auto.php - гараж автомобилей
- payment.php - модули оплаты
- payment_declaration.php - декларации доставки пользователя
- payment_declaration_manager.php - декларации доставки менеджера
- payment_report.php - сообщение об оплате пользователя
- payment_report_manager.php - сообщение об оплате менеджера
- price.php - загрузка прайса
- price_group.php - группы прайсов
- price_profile.php - профили загрузки прайсов
- price_queue.php - очередь загрузки прайсов
- price_search_log.php - история поиска по коду
- print_content.php - вывод на печать
- rubricator.php - рубрикатор
- search.php - релевантный поиск
- test.php - тестовая страница, может использоваться для проверки функционала отдельных модулей
- user.php - регистрация пользователя, вход на сайт, выход
- vin_request.php - работа с VIN запросами
Все файлы в данной директории должны иметь название в нижнем регистре, латиницей, для разделения слов допускается только знак нижнего подчеркивания "_".
Пример файла:
<?php $sPrefix='customer_'; $oObject=new Customer(); switch (Base::$aRequest['action']) { case $sPrefix.'profile': $oObject->Profile(); break; case $sPrefix.'phone': case $sPrefix.'phone_edit': $oObject->Phone(); break; case $sPrefix.'change_rating': $oObject->ChangeRating(); break; default: $oObject->Index(); break; } ?>
В данном примере описана связь страниц:
- http://irbis.mstarproject.com/pages/customer_profile
- http://irbis.mstarproject.com/pages/customer_phone
- http://irbis.mstarproject.com/pages/customer_phone_edit
- http://irbis.mstarproject.com/pages/customer_change_rating
с обработчиками в классе Customer (/class/module/Customer.php)
Каталог template
Каталог verstka
Данный каталог содержит исходные файлы верстки сайта. Необходим для сохранения истории верстки.
Файлы главной директории
.htaccess | Настройки WEB сервера и дополнительные параметры перенаправления для ЧПУ страниц |
action_includer.php | Механизм связи ссылок на сайте(spec) и обработчиков(class) |
connect.php | Настройки подключения к базе данных, TecDoc, настройки языка и cookies |
connect_sample.php | Пример файла подключения |
favicon.ico | Иконка сайта для браузера |
index.php | Главный исполнительный файл. |
init.php | Инициализация библиотек и ядра. |
xajax_request_parser.php | Обработчик xajax |
11
aaa
22
bbb
32
ccc