Давно меня друзья просили сделать показ наград на форуме, вместо безликий наград — отображение полученных наград
и так начнем. Изменения коснулось всего 3 файлов
файл 1)
core\classes\user.class.php перед последней закрывающейся скобкой
файл 2)
components\forum\model.php находим функцию function getPosts строка примерно 486
меняемна файл 3)
\templates\_default_\components\com_forum_view_thread.tpl (если шаблон другой смотрим по аналогии)
меняем
на вот собственно и все
P.S. запрос кэшируется т.е. если профиль несколько раз на странице, то запрос будет только один
также по желанию добавляем в css
и так начнем. Изменения коснулось всего 3 файлов
файл 1)
core\classes\user.class.php перед последней закрывающейся скобкой
public static function getAwarsGif($user_id) { if (!$user_id) { } return self::$cache['users_awards_gif'][$user_id]; } $sql = "SELECT title, imageurl FROM cms_user_awards WHERE user_id = '$user_id' ORDER BY pubdate DESC"; $result = cmsDatabase::getInstance()->query($sql); if (!cmsDatabase::getInstance()->num_rows($result)) { } $html = ''; while ($aw = cmsDatabase::getInstance()->fetch_assoc($result)) { $html .= '<img class="forum_awards" src="/images/users/awards/' . $aw['imageurl'] . '" title= "' . $aw['title'] . '" />'; } return self::$cache['users_awards_gif'][$user_id] = $html; }
components\forum\model.php находим функцию function getPosts строка примерно 486
меняем
$post['user_awards'] = cmsUser::getAwardsList($post['user_id']);
$post['user_awards_gif'] = cmsUser::getAwarsGif($post['user_id']);
\templates\_default_\components\com_forum_view_thread.tpl (если шаблон другой смотрим по аналогии)
меняем
{if $post.user_awards} <div class="post_userawards"> <img src="/images/icons/award.gif" alt="{$award.title|escape:html}" title="{$award.title|escape:html}"/> {/foreach} </div> {/if}
{if $post.user_awards_gif}{$post.user_awards_gif}{/if}
P.S. запрос кэшируется т.е. если профиль несколько раз на странице, то запрос будет только один
также по желанию добавляем в css
.forum_awards{width:24px}
Реклама #
Сергей Петрович 11 лет назад #
forlord 11 лет назад #
находим modules\mod_respect\module.php
меняем
меняем
Dorimen 11 лет назад #
forlord 11 лет назад #
PrazdNik 11 лет назад #
forlord 11 лет назад #
AlexandrA 11 лет назад #
и как стало
Разве не лучше? Пользователи проводящие время на форуме любят подобные "фенечки"
Mafio 11 лет назад #
Майкл 11 лет назад #
Таня 11 лет назад #
forlord 11 лет назад #
закомментировать
Таня 11 лет назад #
Закомментировала, медальки исчезли. Еще раз спасибо!
Dimson 11 лет назад #
Не
$user['awards'] = cmsUser::getAwarsGif($post['user_id']);
а
$user['awards'] = cmsUser::getAwarsGif($user['id']);
Тимофей 11 лет назад #
вместо:
Кому-то это может быть и очевидно. А мне нет. Спасибо Алексей за помощь.
fotpod 6 лет назад #