Child pages
  • Модули системы
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

В данном разделе будет описано как создавать собственные модули для системы Abills.


Структурная схема системы.


Начало создания модуля.

Все модули системы находятся в папке /usr/abills/Abills/modules/

Название модуля лучше всего делать с заглавной буквы.

В каталоге модуля обязательно должны находится 2 файла: webinterface и config.

webinterface - Библиотека функций модуля

config            Конфигурационный файл модуля


%FUNCTIONS_LIST список доступных функций в интерфейсе администратора. Каждая функция объявляется отдельной переменной хеш масива и имеет следующую структуру. 


Рассмотрим пример:

"12:10:2 вложенная во вторую функцию:second_second_function:UID" => 5,


ПараметрОписание
12Номер функции в меню в данном модуле
10Номер родительской функции. Если 0 (ноль) функция является корневой. Если значение больше нуля то функция располагается в меню под родительской функцией
2 вложенная во вторую функцию
Название функции в меню панели управления. Можно использовать %lang переменные для локализации.
second_second_function
Название фукции которая выполняется при нажатии соответственного меню
UIDДополнительные параметры. Они могут быть и не объявлены. Если объявляются тогда меню показывается только если данные доп параметры присутствуют HTTP запросе. 
Например ели объявлен параметр UID то данная функция будет отображаться только если в запросе он присутствует. Пример запроса: http://your.host:9443/index.cgi?UID=15
5Номер корневого каталога в котором разместить меню. Номера корневых меню: 
1 - Клиенты 
2 - Оплаты 
3 - Снятие денег 
4 - Отчёт 
5 - Настройка 
6 - Мониторинг 
7 - Поиск 
8 - Обслуживание 
9 - Профиль
Пример файла config
%FUNCTIONS_LIST = (
  "01:0:Главное меню модуля:null:"                                 => 5,
  "02:1:Главная функция:main_function:"                            => 5,
  "10:1:Вторая функция:null"                                       => 5,
  "11:10:1 вложенная во вторую функцию:second_main_function:"      => 5,
  "12:10:2 вложенная во вторую функцию:second_second_function:UID" => 5,
);
  • No labels