Что такое JIP-действия? JIP означает Just In Place, то есть «прямо на месте». JIP-действия - это набор управляющих ссылок, которые позволяют вызывать определенные действия над объектом сайта. На деле они позволяют управлять контентом прядо с фронтальной части. Хотя, если быть точными, в Limb нет понятия типичного центра администрирования. Центр администрирования - это всего-лишь другое действие (admin_display) и другой шаблон, но примененный к тому же объекту, что и на фронтальной части и по тому же адресу.
JIP-действия выводятся рядом с объектом (если, конечно, шаблон настроен правильным образом) при наличии прав доступа к действиям объекта, которые помечены как JIP и если JIP-ы включены для группы пользователей, в которую вы входите.
Для вывода JIP действий на фронтальных шаблонах обычно применяется следующий код
<fetch:MAPPED> <core:INCLUDE file="jip_actions/dropdown.html"> </fetch:MAPPED>
Код «jip_actions/dropdown.html» приблизительно такой (в версии Limb 2.3)
<actions> <img src='/shared/images/jip.gif' onmouseover='this.style.cursor = "hand";' onclick='toggle_hint("actions_{^node_id}");' alt='Click to view actions' title='Click to view actions'> <div id='actions_{^node_id}' style='z-index: 1; position: absolute; visibility: hidden; width: 250px;'> <table border=0 cellspacing=0 cellpadding=1 class=jip-actions jip='actions'> <actions:ITEM> <tr> <td class=jip-td> <a href='{$action_href}' onclick="return click_href(this.href);"><img src='{$img_src}' alt='{$action_name}' title='{$action_name}' border=0 class=action></a> </td> <td class=jip-td><a href='{$action_href}' onclick="return click_href(this.href);">{$action_name}</a> </td> </tr> </actions:ITEM> </table> </div> </actions>
Обратите внимание на теги <actions> и <actions:ITEM>. Это фактически аналоги <grid:LIST> и <grid:ITERATOR> с тем отличием, что они итерируют по действиям объекта, которые помечены как JIP. Каждое действие имеет аттрибуты $action_href, $action_name, $img_src.
JIP-ы не назначаются автоматически для всех групп пользователей, это сделано для экономии на времени выполнения. Список групп, для которых JIP-ы включены, определяется файлом jip_groups.ini. Файл по умолчанию можно найти в LIMB_DIR/core/settings/. По умолчанию JIP-ы включены только для групп admins, обычно этого хватает для типовых проектов.
Если для вашего проекта необходимо, чтобы JIP-ы были включены для какой-либо другой группы, то вам нужно создать файл по пути PROJECT_DIR/core/settings/jip_groups.ini с приблизительно таким содержимым:
[groups] admins = 1 members = 1 content_managers = 1
Где members, content_managers - это идентификаторы (indentifier) групп, для которых нужно включить JIP-ы.
Обсуждение