HTML-шаблон admin.rights.tpl в Cotonti
Обеспечивает интерфейс и используется для управления правами пользователей и групп пользователей на административном уровне
описание шаблона "admin.rights.tpl"
Шаблон "admin.rights.tpl" является частью административного интерфейса системы Cotonti CMF и используется для управления правами пользователей и групп пользователей на административном уровне. Он предоставляет визуальное представление данных о правах доступа к различным разделам сайта, а также функционал для их редактирования.
Основное назначение файла и его место в системе Cotonti
-
Основное назначение: Этот шаблон отвечает за отображение и редактирование прав доступа на уровне администратора. Он позволяет:
- Управлять правами доступа для групп пользователей.
- Настроить права для чтения, записи, и других операций (например, создание, удаление и т.д.) в различных разделах системы.
- Показывать информацию о текущем состоянии прав и предоставлять кнопки для их редактирования.
-
Место в системе Cotonti: Этот файл находится в директории, отвечающей за административные шаблоны, и используется в контексте настройки прав доступа на уровне админки сайта. Он активируется в интерфейсе администрирования и взаимодействует с системой через переменные и параметры, которые передаются в шаблон.
Суть содержания кода, выполняемые задачи и условия
Шаблон состоит из нескольких ключевых блоков:
-
Вставка предупреждений:
- Вставка шаблона warnings.tpl используется для отображения предупреждений или уведомлений в верхней части страницы. Этот блок включается через
{FILE "{PHP.cfg.system_dir}/admin/tpl/warnings.tpl"}.
- Вставка шаблона warnings.tpl используется для отображения предупреждений или уведомлений в верхней части страницы. Этот блок включается через
-
Форма для сохранения прав:
- Основная форма на странице (
saverights) используется для отправки настроек прав. Внутри этой формы есть скрытые поля и элементы для отображения текущих прав, такие как чекбоксы, которые могут быть активированы или деактивированы.
- Основная форма на странице (
-
Условия для различных версий PHP:
- Внутри шаблона используется условие
<!-- IF {PHP.g} > 5 -->, которое проверяет версию движка и, в зависимости от этого, отображает дополнительные элементы формы (например, дополнительные иконки или флажки).
- Внутри шаблона используется условие
-
Секция прав (RIGHTS_SECTION):
- Эта секция отвечает за вывод таблицы прав, где показываются различные разделы с их правами и соответствующими настройками. В таблице также отображаются иконки прав на чтение, запись, кастомные права и права администратора.
- Внутри таблицы данные разделены на строки (с помощью
<!-- BEGIN: RIGHTS_ROW -->), где каждая строка представляет конкретную категорию прав с ссылками на редактирование.
-
Помощь по правам (RIGHTS_HELP):
- В нижней части шаблона есть блок помощи, который объясняет значение каждой иконки (например, иконки для чтения, записи и кастомных прав).
Комментарии по всему, что находится внутри конструкций <!-- ... -->
-
<!-- BEGIN: MAIN -->/<!-- END: MAIN -->:- Эти блоки определяют основной логический блок, который обрабатывается системой Cotonti через метод
$t->parse('MAIN'). Он охватывает весь контент страницы, включая форму и таблицы с правами.
- Эти блоки определяют основной логический блок, который обрабатывается системой Cotonti через метод
-
<!-- IF {PHP.g} > 5 -->/<!-- ENDIF -->:- Это условие проверяет id Группы Пользователя. Если версия больше 5, отображаются дополнительные элементы формы, такие как чекбоксы для авторских прав.
-
<!-- BEGIN: RIGHTS_SECTION -->/<!-- END: RIGHTS_SECTION -->:- Логический блок, который отвечает за отображение таблицы с правами. Внутри этого блока отображаются названия секций, иконки прав, а также возможность редактирования прав для групп пользователей.
-
<!-- BEGIN: RIGHTS_ROW -->/<!-- END: RIGHTS_ROW -->:- Эти блоки обрабатываются для каждой строки в таблице прав. Внутри них могут быть условия для отображения иконок и флажков, зависящих от текущего состояния прав.
-
<!-- IF {PHP.advanced} -->/<!-- ENDIF -->:- Это условие проверяет, активен ли "расширенный режим". Если да, то отображаются дополнительные права, например, кастомные права с иконками.
-
<!-- BEGIN: RIGHTS_HELP -->/<!-- END: RIGHTS_HELP -->:- Блок помощи, который объясняет значение различных иконок и прав для пользователя, используя текст и иконки.
Характеристика стиля HTML/CSS/JS
-
HTML:
- Структура HTML хорошо организована с использованием стандартных элементов: таблицы (
<table>), строки (<tr>), ячейки (<td>), формы (<form>), кнопки (<input type="submit">), и ссылки (<a>). - Для визуального оформления используются CSS-классы (например,
class="checkbox",class="submit",class="button") для различных элементов формы.
- Структура HTML хорошо организована с использованием стандартных элементов: таблицы (
-
CSS:
- Шаблон использует классы CSS для стилизации элементов формы и таблиц. Классы, такие как
cells,checkbox,submit, иbutton, относятся к стандартному стилю, который может быть определен в файле стилей.
- Шаблон использует классы CSS для стилизации элементов формы и таблиц. Классы, такие как
-
JavaScript:
- Использование классов, таких как
ajaxв форме, предполагает, что для этой формы будет использоваться AJAX для асинхронной отправки данных. Это позволяет обновлять данные без перезагрузки страницы.
- Использование классов, таких как
Заключение
Шаблон "admin.rights.tpl" представляет собой важный компонент админки Cotonti, который позволяет управлять правами доступа для пользователей и групп. Его функциональность и визуальная структура тесно связаны с логикой движка Cotonti CMF, использующего переменные и условия для динамического отображения информации.
<!-- BEGIN: MAIN -->
{FILE "{PHP.cfg.system_dir}/admin/tpl/warnings.tpl"} <!-- Подключение шаблона для предупреждений (включает дополнительные сообщения) -->
<form name="saverights" id="saverights" action="{ADMIN_RIGHTS_FORM_URL}" method="post" class="ajax"> <!-- Форма для отправки данных, метод post с использованием AJAX -->
{ADMIN_RIGHTS_FORM_ITEMS} <!-- Подключение дополнительных элементов формы, генерируемых движком -->
<!-- IF {PHP.g} > 5 --> <!-- Условие: ID группы 5 -->
<table class="cells">
<tr>
<td>
<input type="checkbox" class="checkbox" name="ncopyrightsconf" /> <!-- Флажок для согласия с авторскими правами -->
{PHP.L.adm_copyrightsfrom}: {ADMIN_RIGHTS_SELECTBOX_GROUPS} <!-- Подсказка с группами для выбора -->
<input type="submit" class="submit" value="{PHP.L.Update}" /> <!-- Кнопка для отправки данных формы -->
</td>
</tr>
</table>
<!-- ENDIF --> <!-- Конец условия -->
<!-- BEGIN: RIGHTS_SECTION --> <!-- Логический блок для секции прав -->
<div class="block">
<h2>{RIGHTS_SECTION_TITLE}:</h2> <!-- Заголовок секции -->
<div class="wrapper">
<table class="cells">
<thead>
<tr>
<th class="" rowspan="2"></th>
<th class="" rowspan="2">{PHP.L.Section}</th> <!-- Название секции -->
<th class="" colspan="{ADMIN_RIGHTS_ADV_COLUMNS}">{PHP.L.Section}</th> <!-- Количество столбцов для прав -->
<th class="" rowspan="2">{PHP.L.adm_rightspergroup}</th> <!-- Права для группы -->
<th class="" rowspan="2">{PHP.L.adm_setby}</th> <!-- Установлено -->
</tr>
<tr>
<th class="">{PHP.R.admin_icon_auth_r}</th> <!-- Иконка прав на чтение -->
<th class="">{PHP.R.admin_icon_auth_w}</th> <!-- Иконка прав на запись -->
<th class="">{PHP.R.admin_icon_auth_1}</th> <!-- Иконка для дополнительного права -->
<!-- IF {PHP.advanced} --> <!-- Условие: если активен режим "advanced" -->
<th class="">{PHP.R.admin_icon_auth_2}</th> <!-- Иконка для дополнительного права #2 -->
<th class="">{PHP.R.admin_icon_auth_3}</th> <!-- Иконка для дополнительного права #3 -->
<th class="">{PHP.R.admin_icon_auth_4}</th> <!-- Иконка для дополнительного права #4 -->
<th class="">{PHP.R.admin_icon_auth_5}</th> <!-- Иконка для дополнительного права #5 -->
<!-- ENDIF --> <!-- Конец условия -->
<th class="">{PHP.R.admin_icon_auth_a}</th> <!-- Иконка для прав администратора -->
</tr>
</thead>
<tbody>
<!-- BEGIN: RIGHTS_ROW --> <!-- Логический блок для строки прав -->
<tr>
<td class="centerall">
<!-- IF {ADMIN_RIGHTS_ROW_ICON} --> <!-- Условие: если есть иконка для строки прав -->
{ADMIN_RIGHTS_ROW_ICON} <!-- Отображение иконки -->
<!-- ELSE --> <!-- Если иконки нет -->
<img src="{PHP.cfg.icons_dir}/default/default.png" alt="" /> <!-- Отображение иконки по умолчанию -->
<!-- ENDIF --> <!-- Конец условия -->
</td>
<td>
<a href="{ADMIN_RIGHTS_ROW_LINK}">{ADMIN_RIGHTS_ROW_TITLE}</a> <!-- Ссылка на строку прав -->
</td>
<!-- BEGIN: RIGHTS_ROW_ITEMS --> <!-- Логический блок для элементов прав строки -->
<td class="centerall">
<!-- IF {ADMIN_RIGHTS_ROW_ITEMS_LOCKED} AND {ADMIN_RIGHTS_ROW_ITEMS_STATE} --> <!-- Условие: если элементы заблокированы и активны -->
<input type="hidden" name="{ADMIN_RIGHTS_ROW_ITEMS_NAME}" value="1" /> <!-- Скрытое поле с значением 1 -->
{PHP.R.admin_icon_discheck1} <!-- Иконка для заблокированного элемента -->
<!-- ENDIF --> <!-- Конец условия -->
<!-- IF {ADMIN_RIGHTS_ROW_ITEMS_LOCKED} AND !{ADMIN_RIGHTS_ROW_ITEMS_STATE} --> <!-- Условие: если элементы заблокированы, но не активны -->
{PHP.R.admin_icon_discheck0} <!-- Иконка для заблокированного элемента с неактивным состоянием -->
<!-- ENDIF --> <!-- Конец условия -->
<!-- IF !{ADMIN_RIGHTS_ROW_ITEMS_LOCKED} --> <!-- Условие: если элементы не заблокированы -->
<input type="checkbox" class="checkbox" name="{ADMIN_RIGHTS_ROW_ITEMS_NAME}"{ADMIN_RIGHTS_ROW_ITEMS_CHECKED}{ADMIN_RIGHTS_ROW_ITEMS_DISABLED} /> <!-- Флажок для выбора прав -->
<!-- ENDIF --> <!-- Конец условия -->
</td>
<!-- END: RIGHTS_ROW_ITEMS --> <!-- Конец логического блока элементов прав строки -->
<td class="centerall">
<a title="{PHP.L.Rights}" href="{ADMIN_RIGHTS_ROW_RIGHTSBYITEM}" class="button">{PHP.L.Rights}</a> <!-- Ссылка на управление правами -->
<a title="{PHP.L.Rights}" href="{ADMIN_RIGHTS_ROW_LINK}" class="button special">{PHP.L.Open}</a> <!-- Ссылка для открытия -->
</td>
<td class="textcenter">{ADMIN_RIGHTS_ROW_USER}{ADMIN_RIGHTS_ROW_PRESERVE}</td> <!-- Отображение пользователя и информации о сохранении -->
</tr>
<!-- END: RIGHTS_ROW --> <!-- Конец логического блока строки прав -->
</tbody>
</table>
</div>
</div>
<!-- END: RIGHTS_SECTION --> <!-- Конец логического блока секции прав -->
<div class="button-toolbar">
<a href="{ADMIN_RIGHTS_ADVANCED_URL}" class="button">{PHP.L.More}</a> <!-- Кнопка для перехода к дополнительным настройкам -->
<input type="submit" value="{PHP.L.Update}" /> <!-- Кнопка для обновления данных -->
</div>
</form>
<!-- END: MAIN --> <!-- Конец логического блока MAIN -->
<!-- BEGIN: RIGHTS_HELP --> <!-- Логический блок для помощи с правами -->
<p>{PHP.R.admin_icon_auth_r} {PHP.L.Read}</p> <!-- Иконка прав на чтение -->
<p>{PHP.R.admin_icon_auth_w} {PHP.L.Write}</p> <!-- Иконка прав на запись -->
<p>{PHP.R.admin_icon_auth_1} {PHP.L.Custom} #1</p> <!-- Иконка для кастомного права #1 -->
<!-- IF {PHP.advanced} --> <!-- Условие: если активен режим "advanced" -->
<p>{PHP.R.admin_icon_auth_2} {PHP.L.Custom} #2</p> <!-- Иконка для кастомного права #2 -->
<p>{PHP.R.admin_icon_auth_3} {PHP.L.Custom} #3</p> <!-- Иконка для кастомного права #3 -->
<p>{PHP.R.admin_icon_auth_4} {PHP.L.Custom} #4</p> <!-- Иконка для кастомного права #4 -->
<p>{PHP.R.admin_icon_auth_5} {PHP.L.Custom} #5</p> <!-- Иконка для кастомного права #5 -->
<!-- ENDIF --> <!-- Конец условия -->
<p>{PHP.R.admin_icon_auth_a} {PHP.L.Administration}</p> <!-- Иконка для прав администратора -->
<!-- END: RIGHTS_HELP --> <!-- Конец логического блока помощи с правами -->
Комментарии (0)
Автор контента
Онлайн
Sodium Carbonate
Последняя авторизация: 19.07.2026 01:57
- Страница размещена: 29.01.2025 23:16
- Последнее обновление: 29.01.2025 23:16