Отображение подписи только если у чела Карма >n числа

Автор Mavn, 17 июля 2007, 17:16:40

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Mavn

в Display.template.php найти строчку

          // Show the member's signature?
          if (!empty($message['member']['signature']) && empty($options['show_no_signatures']))
                    echo '
                                        <hr width="100%" size="1" class="hrcolor" />
                                        <div class="signature">', $message['member']['signature'], '</div>';
заменить на

          // Show the member's signature?
          if (!empty($message['member']['signature']) && empty($options['show_no_signatures'])) {
                 
                  if (($message['member']['karma']['good'] - $message['member']['karma']['bad']) > 10) {
                    echo '
                                        <hr width="100%" size="1" class="hrcolor" />
                                        <div class="signature">', $message['member']['signature'], '</div>';
               }
          }

цифру 10 можно поменть на любое число
Данное решение предоставил smart.
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Kroops


Солярис

Интересно.
А как будет подсчитываться "карма"?
Например, у пользователя "карма" +150/-55 при n > 100. И каков размер "кармы"?

CiQ

Цитата: Солярис от 02 февраля 2008, 20:32:21
Интересно.
А как будет подсчитываться "карма"?
Например, у пользователя "карма" +150/-55 при n > 100. И каков размер "кармы"?
$message['member']['karma']['good'] - $message['member']['karma']['bad']) > 10
От положительной (150) отнимается отрицательная (55) = 95 и это больше 10 (в твоем случае должно быть больше 100)
clear

OrangePLAY

Имхо смысла больше будет если показывать подпись когда плюсов в карме больше чем минусов.

// Show the member's signature?
          if (!empty($message['member']['signature']) && empty($options['show_no_signatures'])) {
                 
                  if ($message['member']['karma']['good'] >= $message['member']['karma']['bad']) {
                    echo '
                                        <hr width="100%" size="1" class="hrcolor" />
                                        <div class="signature">', $message['member']['signature'], '</div>';
               }
          }
SMF 2.0 RC 1.2

Mavn

Хех чтобы получить теже 10 в карму она у тебя по любому должны быть положительной потому как если у тебя будет -10/+10 то в общем все равно ничего не получишь. В любом случае пасиб и за такое решение!
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

oldcopy

Подскажите, как можно изменить этот код, что бы подпись выводилась для тех, у кого более N сообщений.
AUT VIAM INVENIAM AUT FACIAM <или найду дорогу или проложу ее сам (лат.)>

Captain666

Доброго времени суток!
Подскажите, как сделать, чтобы пользователь мог отправлять личные сообщения, только если у него карма больше 0?
или подскажите где копать?

Фисташка

Как сделать чтобы отображался альтернативный текст, что бы юзер понимал куда делась его подпись. Например вывести вместо подписи текст: Отритцательная Карма

Drakonsa

После if'a  дописать

else echo 'Отрицательная карма';

Фисташка

Цитата: Drakonsa от 08 января 2010, 16:36:30
После if'a  дописать

else echo 'Отрицательная карма';

Спасибо за очень оперативный ответ! Заработало!

// Show the member's signature?
if (!empty($message['member']['signature']) && empty($options['show_no_signatures'])) {

                  if (($message['member']['karma']['good'] - $message['member']['karma']['bad']) > -1) {
                    echo '
                                        <hr width="100%" size="1" class="hrcolor" />
                                        <div class="signature">', $message['member']['signature'], '</div>';
               }
else
echo '<strong><span style="color: #ff0000; style="><em>Отрицательная репутация! (менее 0)</em></span></strong>';
          }

echo '
</td>
</tr>
</table>
</td></tr>
</table>
</td></tr>';

CedarMill

Цитата: OrangePLAY от 18 апреля 2008, 06:08:02
Имхо смысла больше будет если показывать подпись когда плюсов в карме больше чем минусов.

// Show the member's signature?
          if (!empty($message['member']['signature']) && empty($options['show_no_signatures'])) {
                 
                  if ($message['member']['karma']['good'] >= $message['member']['karma']['bad']) {
                    echo '
                                        <hr width="100%" size="1" class="hrcolor" />
                                        <div class="signature">', $message['member']['signature'], '</div>';
               }
          }


Для форума SMF 2.0 RC2 нужна другая конструкция?
I love SMF and Joomla!

trora

присоединяюсь к вопросу
Для форума SMF 2.0 RC2 нужна другая конструкция?
я не доллар чтоб всем нравиться

Шева

Еще вопрос.
Что нужно прописать чтобы данное дополнение не распространялось на  админов и модеров?
Каждый человек способен на многое. Но к сожалению, не каждый знает, на что он способен.

Magnit

На админов ничего не распространяется... Полный доступ.
: : Oчарована digger'ом : :

Шева

Цитата: Magnit от 18 апреля 2010, 21:28:37
На админов ничего не распространяется... Полный доступ.
Я имел ввиду, что подпись которую ставит сам админ себе тоже убирается если нет n-го количества в карме.
Получается, если у админа отрицательная карма то его подпись тоже убирается. А это не есть хорошо.  :)
Каждый человек способен на многое. Но к сожалению, не каждый знает, на что он способен.

BIOHAZARD

админ безгрешен!!!

а если нет, то всегда может исправить это прямо у себя в профиле :о)
Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

Шева

Цитата: BIOHAZARD от 20 апреля 2010, 15:42:30
админ безгрешен!!!

а если нет, то всегда может исправить это прямо у себя в профиле :о)
2funny Ну что еще можно было ожидать от истиных админов.  2funny
Каждый человек способен на многое. Но к сожалению, не каждый знает, на что он способен.

Validoll

Вопрос: где можно (и нужно) указать кодировку, дабы исполняя вот этот код:
Цитата: rustava от 08 января 2010, 18:26:30
Спасибо за очень оперативный ответ! Заработало!

// Show the member's signature?
if (!empty($message['member']['signature']) && empty($options['show_no_signatures'])) {

                  if (($message['member']['karma']['good'] - $message['member']['karma']['bad']) > -1) {
                    echo '
                                        <hr width="100%" size="1" class="hrcolor" />
                                        <div class="signature">', $message['member']['signature'], '</div>';
              }
else
echo '<strong><span style="color: #ff0000; style="><em>Отрицательная репутация! (менее 0)</em></span></strong>';
          }

echo '
</td>
</tr>
</table>
</td></tr>
</table>
</td></tr>';


Не выходили вопросы?
Занимаюсь визуализацией модов и созданием рисунков-концептов для модификаций в разработке.
Что-то не работает? Проверьте права доступа к файлам.

Bugo

Сохранить файл в нужной кодировке. А лучше вставлять текстовые переменные, значения которых держать в Modifications.russian[-utf8].php

Жека

Цитата: oldcopy от 08 августа 2008, 09:33:53Подскажите, как можно изменить этот код, что бы подпись выводилась для тех, у кого более N сообщений.
SMF 2.0.2\Themes\default\Display.template.php

// Show the member's signature?
if (!empty($message['member']['signature']) && empty($options['show_no_signatures']) && $context['signature_enabled'])
   if (
$message['member']['posts'] >= 100// <<<<<<< added
      
echo '
               <div class="signature" id="msg_'
$message['id'], '_signature">'$message['member']['signature'], '</div>';



Думаю, это решение будет полезно многим, кто перешёл с IPB на SMF, т.к. в первом движке эта функция (отображения подписи после N сообщений) стандартно рулится из админки.