Предупреждения в информации о пользователе

Предупреждения в информации о пользователе

Sergey Miroshnichenko

Проверенные
Сообщения
904
Реакции
1,296
Баллы
5,710
Пользователь Sergey Miroshnichenko разместил новый ресурс:

Предупреждения в информации о пользователе - Добавляем информацию о предупреждениях под аватаром пользователя в сообщениях.

Инструкция будет расширена и дополнена со временем. Это моя первая подобная инструкция, поэтому если будут замечания - пишите в обсуждении, учту.
Создаём модификацию шаблона: /admin.php?template-modifications

Шаблон: message_user_info
Ключ модификации: warnings_in_user_info
Описание: Добавляет информацию о предупреждениях под автором сообщения.
Тип поиска: Простая замена
Найти:
Код:
<xen:if...

Узнать больше об этом ресурсе...
 
Приветствую. Наверно в коде ошибка. При тестировании шаблона замены не происходит.

<xen:if is="@messageShowHomepage AND {$user.homepage}">
<dl class="pairsJustified">
<dt>{xen:phrase home_page}:</dt>
<dd><a href="{xen:string censor, $user.homepage, '-'}" rel="nofollow" target="_blank" itemprop="url">{xen:string censor, $user.homepage}</a></dd>
</dl>
</xen:if>



Полагаю надо этот код ниже, вставить ДО </xen:if>
$0

<dl class="pairsJustified">
<dt>{xen:phrase warnings}:</dt>
<dd>{xen:number $warningCount}</dd>
</dl>


$0 видать отрабатывает, и далее код на замену не срабатывает.
 
Последнее редактирование:
Ошибки нет, просто код поиска, нужно брать непосредственно в шаблоне Вашего стиля, так как могут быть отличия.
 
Ошибки нет, просто код поиска, нужно брать непосредственно в шаблоне Вашего стиля, так как могут быть отличия.
Беру код со своего сервера:

<xen:if is="@messageShowHomepage AND {$user.homepage}">
<dl class="pairsJustified">
<dt>{xen:phrase home_page}:</dt>
<dd><a href="{xen:string censor, $user.homepage, '-'}" rel="nofollow" target="_blank" itemprop="url">{xen:string censor, $user.homepage}</a></dd>
</dl>
</xen:if>


А код, который ниже взят отсюда из темы модификации:
<xen:if is="@messageShowHomepage AND {$user.homepage}">
<dl class="pairsJustified">
<dt>{xen:phrase home_page}:</dt>
<dd><a href="{xen:string censor, $user.homepage, '-'}" rel="nofollow" target="_blank" itemprop="url">{xen:string censor, $user.homepage}</a></dd>
</dl>
</xen:if>


Сравниваю визуально - он одинаков.

Конечный результат, наверно должен был получиться такой?
<xen:if is="@messageShowHomepage AND {$user.homepage}">
<dl class="pairsJustified">
<dt>{xen:phrase home_page}:</dt>
<dd><a href="{xen:string censor, $user.homepage, '-'}" rel="nofollow" target="_blank" itemprop="url">{xen:string censor, $user.homepage}</a></dd>

<dt>{xen:phrase warnings}:</dt>
<dd>{xen:number $warningCount}</dd>
</dl>


</xen:if>
 
Последнее редактирование:
Для Вас визуально да, но форматирование кода из темы, может отличаться, и модификация не будет работать, можно через регулярное выражение, тогда вероятность повышается.
По этому, я и пишу, берите прямо из шаблона своего стиля и в поле поиска вставляйте.
 
Для Вас визуально да, но форматирование кода из темы, может отличаться, и модификация не будет работать, можно через регулярное выражение, тогда вероятность повышается.
По этому, я и пишу, берите прямо из шаблона своего стиля и в поле поиска вставляйте.
Да. Всё верно. Взял из своего шаблона и вставил на поиск. Сработало.

Форматирование, получается, играет принципиальную роль при поиске и замене?
 
отличная инструкция, предупреждения высветились под аватаром. но возник вопрос: "предупреждаю" юзера, а предупреждения сами (количество) под аватаром не меняется. как был 0 так и остался. как быть?
 
Да, нужно чуть скорректировать код, что бы вывод предупреждений был, а не просто нолик у всех.
Для этого, замените вот этим кодом, что предложено в инструкции для замены.
Код:
                            <dl class="pairsJustified">
                                <dt>{xen:phrase warnings}:</dt>
                                <dd>{xen:number $user.warning_points}</dd>
                            </dl>
Ну или этим, что бы строка с предупреждениями появлялась только тогда, когда они есть.
Код:
                <xen:if is="{$user.warning_points}">
                            <dl class="pairsJustified">
                                <dt>{xen:phrase warnings}:</dt>
                                <dd>{xen:number $user.warning_points}</dd>
                            </dl>
                        </xen:if>
 
Решено.
 
Последнее редактирование:
Ну или этим, что бы срока с предупреждениями появлялась только тогда, когда они есть.

Добрый день. Подскажите пожалуйста а как вывести правкой в шаблоне, чтобы отображалось сразу после симпатий. Спасибо.
 
Подскажите пожалуйста а как вывести правкой в шаблоне, чтобы отображалось сразу после симпатий.
Вставляйте после
Код:
<xen:if is="@messageShowTotalLikes AND {$user.user_id}">
                    <dl class="pairsJustified">
                        <dt>{xen:phrase likes_received}:</dt>
                        <dd>{xen:number $user.like_count}</dd>
                    </dl>
                </xen:if>
 
Есть еще один вариант.
Шаблоны не изменяем. Используем только настройки.
Создаем несколько "нарушений" (пример: 1/2/3 балла со сроком жизни Х/Y/Z дней)
Создаем "действия за нарушения" (пример: при получении 1 балла, юзер переводится в группу "А", при получении 2 б - в группу "Б" и т.д.)
Создаем группы "А", "Б" и т.д. В настройках групп Создем "дополнительное поле". В этом поле размещаем или число баллов, или любой значок. Например такой: ♠
Можно череп, красную/желтую карточку.
Можно подписывать, что это нарушения, можно не подписывать.

Выглядит это так:
нарушения.png
По окончанию срока жизни нарушения, юзер автоматом переводится в свою обычную группу.
Группы А, Б, ...... являются дочерними от основных.
 
Последнее редактирование:
anastasiya, это хорошо для тех, у кого кроме стандартных 4х нет больше групп.
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу