Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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

Создание окружения

Подгружаемые ЛК файлы должны находиться в директории $server_client на сервере. Путь к этой директории задается в параметрах приложения и по умолчанию указывает на /etc/hydra/hupo/local (ключ shared_path в настройках). Ни в коем случае не создавайте файлов в директории с приложением (/opt/hydra/hupo), иначе они будут удалены при обновлении.

Использование средств браузера и стандартных виджетов

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

Добавление стилей

Самым простым доступным изменением является добавление CSS-стилей. В директорию $server_client/stylesheets следует добавить файл custom. Расширение для файла можно выбрать по вкусу: css, scss или sass в зависимость от предпочитаемого языка описания стилей (документацию по языкам SASS и SCSS можно найти на http://sass-lang.com/). Если количество стилей невелико, то все их можно уместить в созданном файле. Иначе можно разбить стили на несколько файлов и подключить их через директивы препроцессора Assets Pipeline (см. http://guides.rubyonrails.org/asset_pipeline.html#manifest-files-and-directives). Файл custom подгружается по окончании загрузки всех остальных стилей.

Code Block
languagecss
titleПример custom.css
//= require 'my_colors'
//= require 'my_second_file'
//= require_self
//= require 'my_last_file'

body {
    background-color: black;
    color: white;
}
Note

После создания custom-файла не забудьте очистить кэш, расположенный по пути tmp/cache/assets в директории с приложением. Это требуется, чтобы при следующей компиляции стилей подгрузился ваш новый custom-файл (раздел «Сборка файлов» в Настройка личного кабинета).

 

Добавление JavaScript-кода