K4:Работа с блоком "combined header"
From In-Portal Developers Guide
m (1 версия) |
Current revision (16:16, 4 November 2009) (view source) (дополнение) |
||
Line 13: | Line 13: | ||
| {{ConfigProperty|pagination|int}} | | {{ConfigProperty|pagination|int}} | ||
| Параметр указывает на необходимость выведения нумерации страниц в <code>bluebar</code>. Используется только на списках. Не работает на списках подчинённых [[K4:Unit Configs#Prefix|префиксов]]. | | Параметр указывает на необходимость выведения нумерации страниц в <code>bluebar</code>. Используется только на списках. Не работает на списках подчинённых [[K4:Unit Configs#Prefix|префиксов]]. | ||
+ | |- | ||
+ | | {{ConfigProperty|pagination_prefix|int}} | ||
+ | | Данный параметр позволяет задать префикс, который должен использоваться для выведения нумерации страниц в <code>bluebar</code>. Если данный параметр не указан, то в качестве него будет использовано значение параметра [[#prefix|prefix]]. Обычно он используется при выводе списков подчинённых записей. Добавлен начиная с [[K4:Core v 5.0.0|Core v 5.0.0]]. | ||
|- | |- | ||
| {{ConfigProperty|perm_section|string}} | | {{ConfigProperty|perm_section|string}} | ||
Line 19: | Line 22: | ||
| {{ConfigProperty|permission_type|string}} | | {{ConfigProperty|permission_type|string}} | ||
| Параметр указывает на то, какие права необходимы для получения доступа (<code>view</code>, <code>add</code>, <code>edit</code>, <code>delete</code>). Если параметр не передан, по умолчанию проверяется право <code>view</code>. | | Параметр указывает на то, какие права необходимы для получения доступа (<code>view</code>, <code>add</code>, <code>edit</code>, <code>delete</code>). Если параметр не передан, по умолчанию проверяется право <code>view</code>. | ||
+ | |- | ||
+ | | {{ConfigProperty|perm_prefix|string}} | ||
+ | | Данный параметр позволяет указать префикс, по объекту которого будет получена [[K4:Category|категория]] для проверки [[K4:Использование прав доступа#perm_prefix|прав доступа]] к используемому на шаблоне объекту. Добавлен начиная с [[K4:Core v 5.0.0|Core v 5.0.0]]. | ||
+ | |- | ||
+ | | {{ConfigProperty|perm_event|string}} | ||
+ | | Название [[EventHandler:About|события]], наличие [[K4:Permissions|права]] вызова которого требуется проверить. Событие задаётся в форме "'''<code>prefix_special:EventName</code>'''", напр. "<code>phone:OnChangePrice</code>". Добавлен начиная с [[K4:Core v 5.0.0|Core v 5.0.0]]. | ||
|- | |- | ||
| {{ConfigProperty|prefix|string}} * | | {{ConfigProperty|prefix|string}} * | ||
Line 35: | Line 44: | ||
| В [[K4:Unit_Configs|конфиге]] используемого префикса (ключ [[K4:Unit_Configs#EditTabPresets|EditTabPresets]]) можно указать несколько наборов предопределённых вкладок, с помощью этого параметра можно указать какой из наборов надо использовать. | | В [[K4:Unit_Configs|конфиге]] используемого префикса (ключ [[K4:Unit_Configs#EditTabPresets|EditTabPresets]]) можно указать несколько наборов предопределённых вкладок, с помощью этого параметра можно указать какой из наборов надо использовать. | ||
|- | |- | ||
- | | {{ConfigProperty|title_preset|string}} | + | | {{ConfigProperty|title_preset|string}} * |
- | | Указывает на то, какой из заголовков, описанных в конфиге, необходимо использовать в bluebar. | + | | Указывает на то, какой из заголовков, описанных в конфиге, необходимо использовать в <code>bluebar</code>. |
+ | |- | ||
+ | | {{ConfigProperty|additional_blue_bar_render_as|string}} | ||
+ | | Данный параметр позволяет указать название блока, который нужно показывать в правой части <code>bluebar</code> вместо <code>pagination bar</code>. Если требуется оставить <code>pagionation bar</code> и показать что-либо слева от него, то можно воспользоваться ниже показанным примером. | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <inp2:m_DefineElement name="right_bluebar_element"> | ||
+ | custom content | ||
+ | |||
+ | <inp2:m_if check="m_Param" name="pagination"> | ||
+ | <inp2:m_RenderElement name="grid_pagination_elem" PrefixSpecial="$prefix" pass_params="1"/> | ||
+ | </inp2:m_if> | ||
+ | </inp2:m_DefineElement> | ||
+ | |||
+ | <inp2:m_RenderElement name="combined_header" | ||
+ | prefix="sample-prefix" section="custom:sample_section" | ||
+ | title_preset="sample_list" additional_blue_bar_render_as="right_bluebar_element" | ||
+ | /> | ||
+ | </source> | ||
+ | Данный параметр доступен начиная с [[K4:Core v 5.0.0|Core v 5.0.0]]. | ||
+ | |- | ||
+ | | {{ConfigProperty|additional_title_render_as|string}} || Данный параметр позволяет указать название блока, который будет показан справа от крупного названия секции (того, что написано рядом с пиктограммой). Данный параметр доступен начиная с [[K4:Core v 5.0.0|Core v 5.0.0]]. | ||
+ | |- | ||
+ | | {{ConfigProperty|parent|int}} || Если указать данный параметр, то пиктограмма и большое название будут браться из родительской секции, а не той, что указана в параметре [[#section|section]]. В независимости от значения данного параметра на "<code>blue bar</code>" будет показана информация от указанной в параметре [[#section|section]] секции. Данный параметр по умолчанию включён. Данный параметр доступен начиная с [[K4:Core v 5.0.0|Core v 5.0.0]]. | ||
|} | |} | ||
Current revision
| ||
---|---|---|
Статьи в этой категории | ||
|
Блок combined_header
используется для формирования заголовка шаблонов, напр. форм редактирования и выполняет следующие функции:
- проверка права доступа к операциям над элементами (
view
,add
,edit
,delete
); - подключение шаблона с описанием вкладок (
tabs
); - подключение элемента, показывающего номера страниц (
pagination
); - установку заголовка окна (
title
).
Contents |
Обрабатываемые параметры
параметр | описание |
---|---|
pagination (int)
| Параметр указывает на необходимость выведения нумерации страниц в bluebar . Используется только на списках. Не работает на списках подчинённых префиксов.
|
pagination_prefix (int)
| Данный параметр позволяет задать префикс, который должен использоваться для выведения нумерации страниц в bluebar . Если данный параметр не указан, то в качестве него будет использовано значение параметра prefix. Обычно он используется при выводе списков подчинённых записей. Добавлен начиная с Core v 5.0.0.
|
perm_section (string)
| Параметр PermSection из конфигa отображаемого элемента или списка элементов, идентифицирует секцию, чтобы можно было применить к ней систему прав доступа. Будет определён автоматически, если параметр не передан. |
permission_type (string)
| Параметр указывает на то, какие права необходимы для получения доступа (view , add , edit , delete ). Если параметр не передан, по умолчанию проверяется право view .
|
perm_prefix (string)
| Данный параметр позволяет указать префикс, по объекту которого будет получена категория для проверки прав доступа к используемому на шаблоне объекту. Добавлен начиная с Core v 5.0.0. |
perm_event (string)
| Название события, наличие права вызова которого требуется проверить. Событие задаётся в форме "prefix_special:EventName ", напр. "phone:OnChangePrice ". Добавлен начиная с Core v 5.0.0.
|
prefix (string) *
| Префикс отображаемого элемента или списка элементов. В качестве значения данного параметра для подчинённых префиксов необходимо использовать префикс главного. |
grid (string)
| Название списка, который показывается на шаблоне (т.е. название ключа в опции Grids в unit config). Применяется только на шаблонах со списком. |
section (string) *
| Используемая секция, которой принадлежит элемент или список элементов. Используется для отображения пиктограмм и названия раздела над списком элементов, а так же для проверки прав доступа. |
tabs (string)
| Параметр указывает на необходимость подключить шаблон вкладок (переданное значение - название и путь к шаблону). |
tab_preset (string)
| В конфиге используемого префикса (ключ EditTabPresets) можно указать несколько наборов предопределённых вкладок, с помощью этого параметра можно указать какой из наборов надо использовать. |
title_preset (string) *
| Указывает на то, какой из заголовков, описанных в конфиге, необходимо использовать в bluebar .
|
additional_blue_bar_render_as (string)
| Данный параметр позволяет указать название блока, который нужно показывать в правой части bluebar вместо pagination bar . Если требуется оставить pagionation bar и показать что-либо слева от него, то можно воспользоваться ниже показанным примером.
<inp2:m_DefineElement name="right_bluebar_element"> custom content <inp2:m_if check="m_Param" name="pagination"> <inp2:m_RenderElement name="grid_pagination_elem" PrefixSpecial="$prefix" pass_params="1"/> </inp2:m_if> </inp2:m_DefineElement> <inp2:m_RenderElement name="combined_header" prefix="sample-prefix" section="custom:sample_section" title_preset="sample_list" additional_blue_bar_render_as="right_bluebar_element" /> Данный параметр доступен начиная с Core v 5.0.0. |
additional_title_render_as (string) | Данный параметр позволяет указать название блока, который будет показан справа от крупного названия секции (того, что написано рядом с пиктограммой). Данный параметр доступен начиная с Core v 5.0.0. |
parent (int) | Если указать данный параметр, то пиктограмма и большое название будут браться из родительской секции, а не той, что указана в параметре section. В независимости от значения данного параметра на "blue bar " будет показана информация от указанной в параметре section секции. Данный параметр по умолчанию включён. Данный параметр доступен начиная с Core v 5.0.0.
|
Шаблоны вкладок
Шаблоны вкладок задаются при помощи опции EditTabPresets в unit config:
'EditTabPresets' => Array ( 'Default' => Array ( Array ('title' => 'la_tab_General', 't' => 'in-portal/users/users_edit', 'priority' => 1), Array ('title' => 'la_tab_Groups', 't' => 'in-portal/users/users_edit_groups', 'priority' => 2), Array ('title' => 'la_tab_Images', 't' => 'in-portal/users/user_edit_images', 'priority' => 3), Array ('title' => 'la_tab_Custom', 't' => 'in-portal/users/users_edit_custom', 'priority' => 4), ), 'Custom' => Array ( ... ), 'Test' => Array ( ... ), ... ),
Именно значение одного из ключей верхнего уровня требуется указывать в качестве значения параметра tab_preset блоку "combined_header
". Как видно из выше приведённого примере описание самого tab preset является массивом, в каждый элемент которого описывает одну вкладку:
название | описание |
---|---|
title | Фраза, перевод которой будет показан в качестве названия вкладки в браузере. |
t | Путь к шаблону, содержащему тело вкладки. |
priority | Порядок вкладки относительно остальных вкладок данного tab preset. |
Использование
На списке
<inp2:m_include t="incs/header" /> <inp2:m_RenderElement name="combined_header" section="custom:tracking" prefix="tracking" pagination="1" />
На форме редактирования
<inp2:m_include t="incs/header"/> <inp2:m_RenderElement name="combined_header" section="custom:tracking" prefix="tracking" title_preset="tracking_edit"/>
В обоих примерах можно видеть действие параметра title_preset (надпись на синем фоне), а так же параметра section - с его помощью во время обработки тэга можно определить значение некоторых параметров, если они не были переданы. К таким относятся prefix и prem_section. Так же с помощью параметра section определяется необходимая пиктограмма и название родительской секции, в которой находится данная секция.