Общее описание modules.xsl
Шаблон modules.xsl отвечает за обработку списков, форм, отчетов. Все элементы интерфейса описываются в теге metadata. Тип элемента интерфейса определяет атрибут @type, который принимает значения list, form, report.
Metadata списков, например, функция journal COREmanager:
<metadata name="journal" type="list" key="id" mgr="core"> <toolbar view="buttontext"> <toolbtn func="journal.edit" type="edit" img="t-edit" name="edit" default="yes" sprite="yes"/> <toolbtn func="journal.stat" type="list" img="t-credit" name="report" sprite="yes"/> <toolbtn func="journal.settings" type="new" img="t-attr" name="settings" sprite="yes"/> </toolbar> <coldata> <col name="time" type="data" sort="alpha" sorted="yes" width="26%"/> <col name="user" type="data" sort="alpha" width="9%"/> <col name="ip" sort="alpha" type="data" width="40%"/> <col name="funcname" sort="alpha" type="data" width="24%"/> </coldata> </metadata>
Metadata форм, например, функция journal.edit COREmanager:
<metadata name="journal.edit" type="form" mgr="core" decorated="yes"> <form nosubmit="yes"> <field name="time"> <input type="text" name="time" readonly="yes"/> </field> <field name="user"> <input type="text" name="user" readonly="yes"/> </field> <field name="ip"> <input type="text" name="ip" readonly="yes"/> </field> <field name="funcname"> <input type="text" name="funcname" readonly="yes"/> </field> <field name="params"> <textarea name="params" rows="15" readonly="yes"/> </field> </form> </metadata>
Metadata отчетов, например функция journal.stat COREmanager:
<metadata name="journal.stat" type="report" level="30" firstrun="no" mgr="core"> <toolbar view="buttontext"> <toolbtn func="journal" type="back" img="t-back" name="back" sprite="yes"/> </toolbar> <text name="title"/> <form> <field name="period"> <select period="yes" name="period"> <if value="other"/> <else hide="periodstart"/> <else hide="periodend"/> </select> </field> <field name="periodstart"> <input type="text" name="periodstart" date="yes"/> </field> <field name="periodend"> <input type="text" name="periodend" date="yes"/> </field> </form> <band name="function" psort="funcname"> <diagram name="func" label="funcname" data="percentage" type="pie"/> <col name="funcname" type="data" total="count" link="yes"/> <col name="percentage" type="data" sort="digit" sorted="desc"/> <band name="user" psort="funcname"> <diagram name="user" label="username" type="histogram"> <line data="percentage"/> </diagram> <col name="username" type="data" total="count"/> <col name="percentage" type="data" sort="digit" sorted="desc"/> </band> </band> </metadata>
Так же modules.xsl обрабатывает функцию прогесса (progress.get).
Оцените эту статью