Функция cot_build_group в Cotonti
Разберем функцию cot_build_group, которая создает ссылку на группу пользователей или возвращает название группы.
Функция cot_build_group динамически создает ссылку на группу пользователей, обрабатывая различные случаи, включая скрытые группы и наличие кастомных названий.
Код функции и Подробное объяснение:
/**
* Returns group link (button)
*
* @param int $grpid Group ID
* @param bool $title Return group title instead of name
* @return string
*/
function cot_build_group($grpid, $title = false)
{
global $cot_groups, $L;
// Проверяем, передан ли валидный ID группы и существует ли такая группа в массиве $cot_groups
if (empty($grpid) || empty($cot_groups[$grpid])) {
return '';
}
// Определяем, что возвращать: название группы (title) или имя группы (name)
$type = ($title) ? 'title' : 'name';
// Проверяем, является ли группа скрытой
if ($cot_groups[$grpid]['hidden']) {
// Если пользователь имеет права администратора, показываем ссылку с пометкой 'Hidden'
if (cot_auth('users', 'a', 'A')) {
return cot_rc_link(
cot_url('users', 'gm=' . $grpid),
$cot_groups[$grpid][$type] . ' (' . $L['Hidden'] . ')'
);
} else {
// Если пользователь не администратор, возвращаем просто текст 'Hidden'
return Cot::$L['Hidden'];
}
} else {
// Проверяем, существует ли кастомное название для группы, если да, то возвращаем его
if ($type == 'title' && isset(Cot::$L['users_grp_' . $grpid . '_title'])) {
return cot_rc_link(
cot_url('users', 'gm=' . $grpid),
Cot::$L['users_grp_' . $grpid . '_title']
);
}
// Если группа не скрыта, возвращаем стандартное название или имя группы
return cot_rc_link(
cot_url('users', 'gm=' . $grpid),
$cot_groups[$grpid][$type]
);
}
}
Что делает эта функция:
Проверка параметров:
Проверяет, передан ли ID группы и существует ли группа в массиве $cot_groups.
Если группа не найдена, возвращается пустая строка.
Определение типа отображаемого текста:
Если $title установлен в true, возвращается название группы (title), иначе — имя группы (name).
Обработка скрытых групп:
Если группа скрыта, проверяется, является ли текущий пользователь администратором:
Если да, возвращается ссылка с пометкой "Hidden".
Если нет, возвращается просто текст "Hidden".
Обработка названий группы:
Если группа не скрыта, функция проверяет наличие кастомного названия группы в языковом массиве.
Если кастомное название найдено, возвращается оно, иначе — стандартное имя или название группы.
Создание ссылки:
Для создания ссылки используется функция cot_rc_link, которая формирует HTML-ссылку с указанным URL и текстом.
Комментарии (0)
Автор контента
Оффлайн
Administrator
Последняя авторизация: 05.07.2026 18:32
- Страница размещена: 21.01.2025 20:01
- Последнее обновление: 21.01.2025 20:55