Добавление своих полей

Материал из ISPWiki

Перейти к: навигация, поиск

Очень часто возникают ситуации, когда существующих информационных полей не достаточно и хочется хранить какую-то дополнительную информацию. Добавить свое поле относительно просто.

Допустим, нам нужно каждому плательщику ввести дополнительный реквизит "Индивидуальный расчетный счет".

1) Создаем дополнительное поле в базе данных

alter table profile add column selfrs varchar(20);

Примечание: в данный момент поддерживаются поля только тип varchar.

2) Регистрируем созданное поле

insert into extrafield (id, name) select max(id)+1, 'profile.selfrs' from extrafield;

3) Создаем описывающий внешний вид формы XML

<?xml version="1.0" encoding="UTF-8"?>

<mgrdata>
       <metadata name="profile.edit">
               <form>
                       <page name="basic">
                               <field name="selfrs" level="7">
                                       <input type="text" name="selfrs"/>
                               </field>
                       </page>
               </form>
       </metadata>
       <lang name="en">
               <messages name="profile.edit">
                       <msg name="selfrs">Personal R/S</msg>
               </messages>
       </lang>
       <lang name="ru">
               <messages name="profile.edit">
                       <msg name="selfrs">Персональный Р/С</msg>
               </messages>
       </lang>
</mgrdata>

Приведенный выше код записываем в файл /usr/local/ispmgr/etc/billmgr_mod_selfrs.xml

Файл должен соответствовать описанной схеме XML

Посмотреть примеры использования можно изучая /usr/local/ispmgr/etc/billmgr.xml, только не пытайтесь делать в нем какие либо изменения, т.к. при обновлении они будут утеряны.

4) Перезапускаем BILLmanager

killall billmgr


Могут возникнуть ситуации, когда в интерфейсе не отражаются вносимые в XML файл изменения, в этом случае можно попробовать очистить кеш

rm -rf /usr/local/ispmgr/var/.xmlcache/billmgr
killall billmgr
Была ли эта информация полезной? Да | Нет
Личные инструменты