Введение
Создание темы достаточно сложный процесс, а её поддержка в актуальном виде ещё более трудоёмкое занятие. Если вы считаете это целесообразным, ниже представлена документация по ее созданию.
Вся тема состоит из xsl, css, js — файлов и картинок.
Для создания темы необходимо создать папку в /skins/, лежащую в корне панели, с название отличным от других тем и "common", и перезапустить COREmanager. Ваша тема появится в списке тем, но по выбору ее, вероятнее всего, будет белый экран.
На каждый вызов панель формирует xml с ответом, который с помощью xsl шаблонов нужно будет трансформировать в нужный формат. Например, html. Разные функции обрабатываются разными шаблонами xsl.
Просмотр XML
Для просмотра XML сформированный менеджером в ответ на любой запрос, нужно к запросу добавить параметр out=devel.
Так же можно просматривать XML в лог-файлах. Для этого нужно, в настройках логирования включить логирование модуля output, на уровень 9: Главное меню → Состояние системы → Журнал ошибок → Настройки → Создать.
- Модуль — "работа с xml(core)",
- Уровень — "9 — трассировка кода". По умолчанию логи находятся в /usr/local/mgr5/var/.
Общее описание XML
В каждой XML формируемой панелью есть данные, об используемой теме, текущем языке, панели. Все эти данные содержатся в атрибутах корневого тега doc.
Пример из XML функции desktop COREmanager:
<doc lang="ru" func="desktop" binary="/core" host="https://127.0.0.1:1500" stylesheet="desktop" theme="/manimg/orion/" css="main.css" logo="logo.png" logolink="" favicon="favicon.ico" localdir="default/">
...
</doc>
Использование иконок
Общие иконки для тем, такие как иконки главного меню, свойств, кнопки тулбара, модулей — находятся в /usr/local/mgr5/skins/common/img/, и объединены в спрайты по размерам.
Для их использования необходимо создать div размерами соответствующий иконки, и прописать класс размера, например s16x16, и класс названия иконки, например mb-sysstat, а также подключить CSS-файл спрайта sprite.css, который находится в /usr/local/mgr5/skins/common/. Путь для него одинаков для всех тем : /mainimg/common/sprites.css.
Список спрайтов:
- sprite-16x16.png — содержит иконки размером 16x16 px, используемые в главном меню, свойствах;
- sprite-16x17.png — содержит иконки размером 16x17 px, используемые в формах в теме sirius;
- sprite-24x24.png — содержит иконки размером 24x24 px, используемые для кнопок тулбара;
- sprite-48x48.png — содержит иконки размером 48x48 px, используемые в заголовках модулей.