Как сравнить User id администратора и Createby комментатора
Доброго времени суток!
На сайте стоит система тикетов в виде чата
В чате вывод сообщения пользователя необходимо сделать одного цвета, а вывод администратора другого.
(Администраторов может быть несколько)
Пытаюсь сделать методом подставки определенного класса
То-есть сравнить Admin и [[!+createdby]] в class=""
Предполагаю что надо сделать
[[!+ПроверкаАдминистратора:is=`[[!+createdby]]`:then=`admin`:else=`user`]]
Вопрос — как сделать проверку именно на администратора?
На сайте стоит система тикетов в виде чата
В чате вывод сообщения пользователя необходимо сделать одного цвета, а вывод администратора другого.
(Администраторов может быть несколько)
Пытаюсь сделать методом подставки определенного класса
То-есть сравнить Admin и [[!+createdby]] в class=""
Предполагаю что надо сделать
[[!+ПроверкаАдминистратора:is=`[[!+createdby]]`:then=`admin`:else=`user`]]
Вопрос — как сделать проверку именно на администратора?
Комментарии: 7
Можно на Fenom вот так:
{var $admins = [1,2,3]} //массив id существующих админов
{if $createdby in list $admins}
admin
{else}
user
{/if}
Вопрос — как сделать проверку именно на администратора?
{if $createdby | ismember : 'Administrator'}
Administrator
{else}
User
{/if}
А можно это как-то будет прописать именно сниппетом и в последствии его просто вывести в шаблоне? Чтобы кода лишнего в чанке не было
Не особо к сожалению в php разбираюсь(
Если есть возможность помочь с этим, поставлю большой + в карму
Если есть возможность помочь с этим, поставлю большой + в карму
Есть такой вариант:
1. В чанке где выводим комментарии делаем примерно так:
Т.е. в сниппете проверяем группу и на её основании подставляем нужный цвет. Дальше развивайте идею и стилизуйте то что вам необходимо.
1. В чанке где выводим комментарии делаем примерно так:
<a href="users/{$username}">
<span style="color: {$_modx->runSnippet('@FILE snippets/checkUserGroup.php', ['userid' => $createdby])};">{$fullname}</span>
</a>
2. Делаем сниппет с названием checkUserGroup.$user = $modx->getObject('modUser', array('active' => true, 'id' => $userid));
// Если пользователь не найден, ну мало ли?
if ($user == null)
return 'inherit';
// Если пользователь Админ, делаем ник красным.
if ($user->isMember('Administrator')) {
return 'red';
} // Или если пользователь член группы Users, наследуем обычный цвет.
elseif ($user->isMember('Users')) {
return 'inherit';
}
return ($result);
3. Результат примерно такойТ.е. в сниппете проверяем группу и на её основании подставляем нужный цвет. Дальше развивайте идею и стилизуйте то что вам необходимо.
Как раз именно то, что нужно было!
Огромнейшее спасибо!)
Огромнейшее спасибо!)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.