mrMad-Cat Опубликовано 7 Сентября 2006 Автор Жалоба Поделиться Опубликовано 7 Сентября 2006 ну, это уже надо обращяться к джаваскрипщикам, я тут не силён. Догадываюсь что это делаеться с помощью иф, но как именно не знаю. Ссылка на комментарий Поделиться на других сайтах Прочее
Nenderus Опубликовано 7 Сентября 2006 Жалоба Поделиться Опубликовано 7 Сентября 2006 Было бы неплохо, если бы модифицировать это... Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 7 Сентября 2006 Автор Жалоба Поделиться Опубликовано 7 Сентября 2006 Ближайший аппгрейд затронит раскрасску ников. Теперь они будут раскрашиватся ВЕЗДЕ! Но про это я спрошу у знакомого, может он подскажет как это реализовать. Ссылка на комментарий Поделиться на других сайтах Прочее
4iX-Pblx Опубликовано 11 Сентября 2006 Жалоба Поделиться Опубликовано 11 Сентября 2006 mrMad-Cat, большое спасибо!еще бы ники раскрасить и в объявлениях... Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 11 Сентября 2006 Автор Жалоба Поделиться Опубликовано 11 Сентября 2006 В каких? Мод объявлний? Если да то какой? Ссылка на комментарий Поделиться на других сайтах Прочее
smash_TeAm Опубликовано 11 Сентября 2006 Жалоба Поделиться Опубликовано 11 Сентября 2006 mrMad-Cat, насколько я понял - обьявления это те что в форумах при просмотре тем вверху выводятся, стандартные. Ссылка на комментарий Поделиться на других сайтах Прочее
4iX-Pblx Опубликовано 11 Сентября 2006 Жалоба Поделиться Опубликовано 11 Сентября 2006 угу, стандартные в 2.1.7только они серые остались Ссылка на комментарий Поделиться на других сайтах Прочее
smash_TeAm Опубликовано 11 Сентября 2006 Жалоба Поделиться Опубликовано 11 Сентября 2006 Уже выкладывал где-то на форуме, но повторюсь:Для того чтобы раскраска ников действовала на странице рейтинга пользователей по репутации (eXTended Reputation System), делаем следующее:В файле sources/action_public/reputation.phpНаходим: foreach($rows as $row) { $pluses = ceil(($row['count']+$row['summ'])/2); Ниже добавляем: $row['members_display_name'] = $this->ipsclass->cache['group_cache'][$row['mgroup']]['prefix'].$row['members_display_name'] .$this->ipsclass->cache['group_cache'][$row['mgroup']]['suffix']; Сохраняем, заливаем - радуемся Для раскраски ников в моде EASY BAN: Управление стилями > Управление шаблоном > изменить HTML фрагменты > skin_boards > easy_banМеняем в нужном месте{$Data['id']}На (без ссылки на профиль):{$this->ipsclass->cache['group_cache'][ $Data['mgroup'] ]['prefix']}{$Data['members_display_name']}{$this->ipsclass->cache['group_cache'][ $Data['mgroup'] ]['suffix']} С ссылкой на профиль:<a href='{$this->base_url}showuser={$Data['id']}'>{$this->ipsclass->cache['group_cache'][ $Data['mgroup'] ]['prefix']}{$Data['members_display_name']}{$this->ipsclass->cache['group_cache'][ $Data['mgroup'] ]['suffix']}</a> Сохраняем - радуемся Раскраска ников на странице Администрация В файле /sources/action_public/misc/stats.php Ищем: //----------------------------------------- // Get all members.. (two is more eff. than 1) //----------------------------------------- if ( count( $member_ids ) ) { $this->ipsclass->DB->cache_add_query( 'stats_get_all_members', array( 'member_ids' => $member_ids ) ); $this->ipsclass->DB->cache_exec_query(); while( $r = $this->ipsclass->DB->fetch_row() ) {Добавляем после: $r['members_display_name'] = $this->ipsclass->cache['group_cache'][$r['mgroup']]['prefix'] .$r['members_display_name'].$this->ipsclass->cache['group_cache'][$r['mgroup']]['suffix'];Ищем: //----------------------------------------- // Get all groups.. (two is more eff. than 1) //----------------------------------------- $this->ipsclass->DB->cache_add_query( 'stats_get_all_members_groups', array( 'group_ids' => $group_ids ) ); $this->ipsclass->DB->cache_exec_query(); while( $r = $this->ipsclass->DB->fetch_row() ) {Добавляем после: $r['members_display_name'] = $this->ipsclass->cache['group_cache'][$r['mgroup']]['prefix'] .$r['members_display_name'].$this->ipsclass->cache['group_cache'][$r['mgroup']]['suffix'];Сохраняем, перезаливаем, радуемся. До раскраски обьявлений не добрался ещё Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 11 Сентября 2006 Автор Жалоба Поделиться Опубликовано 11 Сентября 2006 О, хорошо что ты это здесь написал. Включю в инструкцию ссылку на этот пост. Если будешь что-то добавлять - пиши в тот же пост. То что касаеться раскраски в стандартных местах - не занимайся покачто этим. У меня есть материалы по раскраске всего форума. Если что-то останеться тогда будем думать. Апдейт через недели 2 будет так как щас началась учёба и куча дел. Ссылка на комментарий Поделиться на других сайтах Прочее
smash_TeAm Опубликовано 11 Сентября 2006 Жалоба Поделиться Опубликовано 11 Сентября 2006 То что касаеться раскраски в стандартных местах - не занимайся покачто этим. У меня есть материалы по раскраске всего форума. Если что-то останеться тогда будем думать. Если мне попался тот же материал, то штука хорошая, красит ники практически везде, но опять же нет форматирования ников в обьявлениях. Буду думать, надумаю - выложу тут Ссылка на комментарий Поделиться на других сайтах Прочее
zon Опубликовано 25 Сентября 2006 Жалоба Поделиться Опубликовано 25 Сентября 2006 Хотел чтобы была картинка у ника сделал всё как написано получилось<!--Begin Msg Number {$post['pid']}--><table class='ipbtable' cellspacing="1"> <tr> <td valign="middle" class="row2" width="1%"><a name="entry{$post['pid']}"></a><span class="{$post['name_css']}"><if="author['mgroup'] == 'ID_5'"><img src='http://www.growclub.ru/e107_images/newspost_images/gorshok.jpg' alt='Почётный гроувер' border='0'> </if> {$author['members_display_name']}</span></td> <td class="row2" valign="top" width="99%"> <!-- POSTED DATE DIV --> а картинка не показывается всё как было так и осталось что делать? Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 25 Сентября 2006 Автор Жалоба Поделиться Опубликовано 25 Сентября 2006 ЛОЛ. Надо писать не 'ID_5' а просто '5' Ссылка на комментарий Поделиться на других сайтах Прочее
4iX-Pblx Опубликовано 25 Сентября 2006 Жалоба Поделиться Опубликовано 25 Сентября 2006 вот еще нашел в инете:/* +---------------------------------------------------- | Member Group Color 1.0.0 | =================================================== | by Dung, Nguyen Tuan (ntd1712) | © 2006 Vietnamese - Invision Resources | [url="http://invisionviet.net/"]http://invisionviet.net/[/url] | =================================================== | Date Started: Tue, 29 Aug 2006 02:26 (GMT+07:00) | Release Data: Tue, 29 Aug 2006 04:07 (GMT+07:00) | Last Updated: Wed, 20 Sep 2006 03:02 (GMT+07:00) | License Info: [url="http://invisionviet.net/license.php"]http://invisionviet.net/license.php[/url] +---------------------------------------------------- */ Compatibility: IPB v2.1.x Description : - Show member color on pages: Board View (Last Post Info & Board Statistics), Forum View (Topic Starter & Last Action), Topic View, Profile View, Member Bar (Logged in as...) User Control Panel (Messages & Buddies List), Members List, Online List, Search Results... File to edit: ./sources/action_admin/member.php ./sources/action_public/announcements.php ./sources/action_public/forums.php ./sources/action_public/messenger.php ./sources/action_public/profile.php ./sources/action_public/register.php ./sources/action_public/search.php ./sources/action_public/topics.php ./sources/action_public/usercp.php ./sources/action_public/misc/stats.php ./sources/classes/class_display.php ./sources/classes/class_forums.php ./sources/lib/func_boardstats.php ./sources/sql/mysql_queries.php --------------------------------------------------------------------------------------------- Open: ./sources/action_admin/member.php Find: [ function member_change_display_name_do() ] $this->ipsclass->DB->simple_construct( array( 'select' => 'id, name, members_display_name', 'from' => 'members', 'where' => "mgroup <> '".$this->ipsclass->vars['auth_group']."'", 'order' => "id DESC", 'limit' => array(0,1) ) ); $this->ipsclass->DB->simple_exec(); $r = $this->ipsclass->DB->fetch_row(); $stats['last_mem_name'] = $r['members_display_name'] ? $r['members_display_name'] : $r['name']; $stats['last_mem_id'] = $r['id']; Replace with: $this->ipsclass->DB->simple_construct( array( 'select' => 'id, name, mgroup, members_display_name', 'from' => 'members', 'where' => "mgroup <> '".$this->ipsclass->vars['auth_group']."'", 'order' => "id DESC", 'limit' => array(0,1) ) ); $this->ipsclass->DB->simple_exec(); $r = $this->ipsclass->DB->fetch_row(); $stats['last_mem_name'] = $r['members_display_name'] ? $r['members_display_name'] : $r['name']; $stats['last_mem_id'] = $r['id']; $stats['last_mem_grp'] = $r['mgroup']; =============================================== Find: [ function member_change_name_complete() ] $this->ipsclass->DB->simple_construct( array( 'select' => 'id, name, members_display_name', 'from' => 'members', 'where' => "mgroup <> '".$this->ipsclass->vars['auth_group']."'", 'order' => "id DESC", 'limit' => array(0,1) ) ); $this->ipsclass->DB->simple_exec(); $r = $this->ipsclass->DB->fetch_row(); $stats['last_mem_name'] = $r['members_display_name'] ? $r['members_display_name'] : $r['name']; $stats['last_mem_id'] = $r['id']; Replace with: $this->ipsclass->DB->simple_construct( array( 'select' => 'id, name, mgroup, members_display_name', 'from' => 'members', 'where' => "mgroup <> '".$this->ipsclass->vars['auth_group']."'", 'order' => "id DESC", 'limit' => array(0,1) ) ); $this->ipsclass->DB->simple_exec(); $r = $this->ipsclass->DB->fetch_row(); $stats['last_mem_name'] = $r['members_display_name'] ? $r['members_display_name'] : $r['name']; $stats['last_mem_id'] = $r['id']; $stats['last_mem_grp'] = $r['mgroup']; =============================================== Find: [ function member_do_moderation_queue() ] $this->ipsclass->DB->simple_construct( array( 'select' => 'id, name, members_display_name', 'from' => 'members', 'where' => "mgroup <> '".$this->ipsclass->vars['auth_group']."'", 'order' => "id DESC", 'limit' => array(0,1) ) ); $this->ipsclass->DB->simple_exec(); $r = $this->ipsclass->DB->fetch_row(); $stats['last_mem_name'] = $r['members_display_name'] ? $r['members_display_name'] : $r['name']; $stats['last_mem_id'] = $r['id']; Replace with: $this->ipsclass->DB->simple_construct( array( 'select' => 'id, name, mgroup, members_display_name', 'from' => 'members', 'where' => "mgroup <> '".$this->ipsclass->vars['auth_group']."'", 'order' => "id DESC", 'limit' => array(0,1) ) ); $this->ipsclass->DB->simple_exec(); $r = $this->ipsclass->DB->fetch_row(); $stats['last_mem_name'] = $r['members_display_name'] ? $r['members_display_name'] : $r['name']; $stats['last_mem_id'] = $r['id']; $stats['last_mem_grp'] = $r['mgroup']; =============================================== Find: [ function member_delete_do($id) ] $r = $this->ipsclass->DB->simple_exec_query( array( 'select' => 'id, members_display_name', 'from' => 'members', 'where' => "mgroup <> ".$this->ipsclass->vars['auth_group'], 'order' => 'id DESC', 'limit' => array( 0, 1 ) ) ); $stats['last_mem_name'] = $r['members_display_name']; $stats['last_mem_id'] = $r['id']; Replace with: $r = $this->ipsclass->DB->simple_exec_query( array( 'select' => 'id, members_display_name, mgroup', 'from' => 'members', 'where' => "mgroup <> ".$this->ipsclass->vars['auth_group'], 'order' => 'id DESC', 'limit' => array( 0, 1 ) ) ); $stats['last_mem_name'] = $r['members_display_name']; $stats['last_mem_id'] = $r['id']; $stats['last_mem_grp'] = $r['mgroup']; --------------------------------------------------------------------------------------------- Open: ./sources/action_public/announcements.php Find: [ function announce_recache() ] $this->ipsclass->cache['announcements'][ $r['announce_id'] ] = array( 'announce_id' => $r['announce_id'], 'announce_title' => $r['announce_title'], 'announce_start' => $r['announce_start'], 'announce_end' => $r['announce_end'], 'announce_forum' => $r['announce_forum'], 'announce_views' => $r['announce_views'], 'member_id' => $r['id'], Add below: 'member_group' => $r['mgroup'], --------------------------------------------------------------------------------------------- Open: ./sources/action_public/forums.php Find: [ function render_forum() ] $announce['announce_views'] = intval($announce['announce_views']); Add below: $announce['member_name'] = $this->ipsclass->cache['group_cache'][ $announce['member_group'] ]['prefix'].$announce['member_name'].$this->ipsclass->cache['group_cache'][ $announce['member_group'] ]['suffix']; =============================================== Find: [ function render_forum() ] //----------------------------------------- // Show meh the topics! //----------------------------------------- Add below: # Colorize for Member Group Title if( count($topic_ids) ) { $this->ipsclass->DB->build_query( array( 'select' => 't.tid', 'from' => array( 'topics' => 't' ), 'where' => "t.tid IN(".implode(",", $topic_ids).")", 'add_join' => array( # MEMBER TABLE JOIN 0 => array( 'select' => 'mg.mgroup as starter_group', 'from' => array( 'members' => 'mg' ), 'where' => 'mg.id=t.starter_id', 'type' => 'left' ), # MEMBER TABLE JOIN 1 => array( 'select' => 'pg.mgroup as poster_group', 'from' => array( 'members' => 'pg' ), 'where' => 'pg.id=t.last_poster_id', 'type' => 'left' ) ), ) ); $this->ipsclass->DB->exec_query(); while( $m = $this->ipsclass->DB->fetch_row() ) { if( is_array($topic_array[ $m['tid'] ]) ) { $topic_array[ $m['tid'] ]['starter_group'] = $m['starter_group']; $topic_array[ $m['tid'] ]['poster_group'] = $m['poster_group']; } } } =============================================== Find: [ function parse_data( $topic ) ] $topic['last_poster'] = $topic['last_poster_id'] ? $this->ipsclass->make_profile_link( $topic['last_poster_name'], $topic['last_poster_id']) : "-".$topic['last_poster_name']."-"; $topic['starter'] = $topic['starter_id'] ? $this->ipsclass->make_profile_link( $topic['starter_name'], $topic['starter_id']) : "-".$topic['starter_name']."-"; Replace with: //$topic['last_poster'] = $topic['last_poster_id'] ? $this->ipsclass->make_profile_link( $topic['last_poster_name'], $topic['last_poster_id']) : "-".$topic['last_poster_name']."-"; //$topic['starter'] = $topic['starter_id'] ? $this->ipsclass->make_profile_link( $topic['starter_name'], $topic['starter_id']) : "-".$topic['starter_name']."-"; $pgroup = $this->ipsclass->cache['group_cache'][ $topic['poster_group'] ]; $sgroup = $this->ipsclass->cache['group_cache'][ $topic['starter_group'] ]; $topic['last_poster'] = $topic['last_poster_id'] ? "<a href='{$this->ipsclass->base_url}showuser={$topic['last_poster_id']}'>{$pgroup['prefix']}{$topic['last_poster_name']}{$pgroup['suffix']}</a>" : "-".$topic['last_poster_name']."-"; $topic['starter'] = $topic['starter_id'] ? "<a href='{$this->ipsclass->base_url}showuser={$topic['starter_id']}'>{$sgroup['prefix']}{$topic['starter_name']}{$sgroup['suffix']}</a>" : "-".$topic['starter_name']."-"; --------------------------------------------------------------------------------------------- Open: ./sources/action_public/messenger.php Find: [ function contact() ] $this->ipsclass->DB->simple_construct( array( 'select' => '*', 'from' => 'contacts', 'where' => "member_id={$this->ipsclass->member['id']}", 'order' => "contact_name ASC" ) ); $this->ipsclass->DB->simple_exec(); Replace with: $this->ipsclass->DB->build_query( array( 'select' => 'c.*', 'from' => array( 'contacts' => 'c' ), 'where' => "c.member_id={$this->ipsclass->member['id']}", 'add_join' => array( # MEMBER TABLE JOIN 0 => array( 'select' => 'm.mgroup', 'from' => array( 'members' => 'm' ), 'where' => 'm.id=c.member_id', 'type' => 'left' ), ), ) ); $this->ipsclass->DB->exec_query(); =============================================== Find: [ function contact() ] $row['text'] = $row['allow_msg'] ? $this->ipsclass->lang['can_contact'] : $this->ipsclass->lang['cannot_contact']; Add below: $row['contact_name'] = $this->ipsclass->cache['group_cache'][ $row['mgroup'] ]['prefix'].$row['contact_name'].$this->ipsclass->cache['group_cache'][ $row['mgroup'] ]['suffix']; =============================================== Find: [ function msg_list() ] $row['date'] = $this->ipsclass->get_date( $row['mt_date'] , 'LONG' ); Add below: $row['from_name'] = $this->ipsclass->cache['group_cache'][ $row['from_group'] ]['prefix'].$row['from_name'].$this->ipsclass->cache['group_cache'][ $row['from_group'] ]['suffix']; --------------------------------------------------------------------------------------------- Open: ./sources/action_public/profile.php Find: [ function view_profile() ] $info['members_display_name'] = $member['members_display_name']; Replace with: $info['members_display_name'] = $this->ipsclass->cache['group_cache'][ $member['mgroup'] ]['prefix'].$member['members_display_name'].$this->ipsclass->cache['group_cache'][ $member['mgroup'] ]['suffix']; --------------------------------------------------------------------------------------------- Open: ./sources/action_public/register.php Find: [ function create_account() ] $this->ipsclass->cache['stats']['last_mem_id'] = $member['id']; Add below: $this->ipsclass->cache['stats']['last_mem_grp'] = $member['mgroup']; =============================================== Find: [ function validate_user() ] $this->ipsclass->cache['stats']['last_mem_id'] = $member['id']; Add below: $this->ipsclass->cache['stats']['last_mem_grp'] = $member['mgroup']; --------------------------------------------------------------------------------------------- Open: ./sources/action_public/search.php Find: [ function get_topics_user() ] $this->ipsclass->DB->simple_construct( array( 'select' => 't.*, t.title as topic_title', 'from' => 'topics t', 'where' => "t.approved=1 AND t.forum_id IN($forums) AND t.starter_id=$mid", 'order' => "t.last_post DESC" ) ); Replace with: $this->ipsclass->DB->build_query( array( 'select' => 't.*, t.title as topic_title', 'from' => array( 'topics' => 't' ), 'where' => "t.approved=1 AND t.forum_id IN($forums) AND t.starter_id=$mid", 'add_join' => array( # MEMBER TABLE JOIN 0 => array( 'select' => 'mg.mgroup as starter_group', 'from' => array( 'members' => 'mg' ), 'where' => 'mg.id=t.starter_id', 'type' => 'left' ), # MEMBER TABLE JOIN 1 => array( 'select' => 'pg.mgroup as poster_group', 'from' => array( 'members' => 'pg' ), 'where' => 'pg.id=t.last_poster_id', 'type' => 'left' ) ), 'order' => "t.last_post DESC" ) ); =============================================== Find: [ function get_new_posts() ] $this->ipsclass->DB->simple_construct( array( 'select' => 't.*, t.title as topic_title', 'from' => 'topics t', 'where' => "t.approved=1 AND t.state != 'link' AND t.forum_id IN($forums) AND t.last_post > {$last_time}", 'order' => "t.last_post DESC" ) ); Replace with: $this->ipsclass->DB->build_query( array( 'select' => 't.*, t.title as topic_title', 'from' => array( 'topics' => 't' ), 'where' => "t.approved=1 AND t.state != 'link' AND t.forum_id IN($forums) AND t.last_post > {$last_time}", 'add_join' => array( # MEMBER TABLE JOIN 0 => array( 'select' => 'mg.mgroup as starter_group', 'from' => array( 'members' => 'mg' ), 'where' => 'mg.id=t.starter_id', 'type' => 'left' ), # MEMBER TABLE JOIN 1 => array( 'select' => 'pg.mgroup as poster_group', 'from' => array( 'members' => 'pg' ), 'where' => 'pg.id=t.last_poster_id', 'type' => 'left' ) ), 'order' => "t.last_post DESC" ) ); =============================================== Find: [ function show_results() ] $this->ipsclass->DB->simple_construct( array( 'select' => 't.*', 'from' => 'topics t', 'where' => "t.tid IN({$topics})", 'order' => "t.pinned DESC, t.".$this->sort_key." ".$this->sort_order, 'limit' => array( $this->first, 25 ) ) ); $this->ipsclass->DB->simple_exec(); Replace with: $this->ipsclass->DB->build_query( array( 'select' => 't.*', 'from' => array( 'topics' => 't' ), 'where' => "t.tid IN({$topics})", 'add_join' => array( # MEMBER TABLE JOIN 0 => array( 'select' => 'mg.mgroup as starter_group', 'from' => array( 'members' => 'mg' ), 'where' => 'mg.id=t.starter_id', 'type' => 'left' ), # MEMBER TABLE JOIN 1 => array( 'select' => 'pg.mgroup as poster_group', 'from' => array( 'members' => 'pg' ), 'where' => 'pg.id=t.last_poster_id', 'type' => 'left' ) ), 'order' => "t.pinned DESC, t.".$this->sort_key." ".$this->sort_order, 'limit' => array( $this->first, 25 ) ) ); $this->ipsclass->DB->exec_query(); =============================================== Find: [ function show_results() ] $this->ipsclass->DB->simple_construct( array( 'select' => 't.*', 'from' => 'topics t', 'where' => "t.tid IN({$topics})", 'order' => "t.pinned DESC, t.".$this->sort_key." ".$this->sort_order, 'limit' => array( $this->first, 25 ) ) ); $this->ipsclass->DB->simple_exec(); Replace with: $this->ipsclass->DB->build_query( array( 'select' => 't.*', 'from' => array( 'topics' => 't' ), 'where' => "t.tid IN({$topics})", 'add_join' => array( # MEMBER TABLE JOIN 0 => array( 'select' => 'mg.mgroup as starter_group', 'from' => array( 'members' => 'mg' ), 'where' => 'mg.id=t.starter_id', 'type' => 'left' ), # MEMBER TABLE JOIN 1 => array( 'select' => 'pg.mgroup as poster_group', 'from' => array( 'members' => 'pg' ), 'where' => 'pg.id=t.last_poster_id', 'type' => 'left' ) ), 'order' => "t.pinned DESC, t.".$this->sort_key." ".$this->sort_order, 'limit' => array( $this->first, 25 ) ) ); $this->ipsclass->DB->exec_query(); =============================================== Find: [ function parse_entry($topic, $view_as_post=0) ] $topic['author_name'] = "<b><a href='{$this->base_url}showuser={$topic['author_id']}'>{$topic['author_name']}</a></b>"; Replace with: $topic['author_name'] = "<b><a href='{$this->base_url}showuser={$topic['author_id']}'>{$this->ipsclass->cache['group_cache'][ $topic['mgroup'] ]['prefix']}{$topic['author_name']}{$this->ipsclass->cache['group_cache'][ $topic['mgroup'] ]['suffix']}</a></b>"; --------------------------------------------------------------------------------------------- Open: ./sources/action_public/topics.php Find: [ function parse_member( $member=array() ) ] $member['member_group'] = $this->ipsclass->compiled_templates['skin_topic']->member_group( $this->ipsclass->cache['group_cache'][ $member['mgroup'] ]['g_title'] ); Add below: $member['members_display_name'] = $this->ipsclass->cache['group_cache'][ $member['mgroup'] ]['prefix'].$member['members_display_name'].$this->ipsclass->cache['group_cache'][ $member['mgroup'] ]['suffix']; --------------------------------------------------------------------------------------------- Open: ./sources/action_public/usercp.php Find: [ function splash() ] $this->ipsclass->DB->simple_construct( array( 'select' => '*', 'from' => 'topics', 'where' => 'tid IN ('.implode(",",$topic_array).')', 'limit' => array(0,5) ) ); $this->ipsclass->DB->simple_exec(); Replace with: $this->ipsclass->DB->build_query( array( 'select' => 't.*', 'from' => array( 'topics' => 't' ), 'where' => "t.tid IN(".implode(",", $topic_array).")", 'add_join' => array( # MEMBER TABLE JOIN 0 => array( 'select' => 'mg.mgroup as starter_group', 'from' => array( 'members' => 'mg' ), 'where' => 'mg.id=t.starter_id', 'type' => 'left' ), # MEMBER TABLE JOIN 1 => array( 'select' => 'pg.mgroup as poster_group', 'from' => array( 'members' => 'pg' ), 'where' => 'pg.id=t.last_poster_id', 'type' => 'left' ) ), 'limit' => array(0,5) ) ); $this->ipsclass->DB->exec_query(); --------------------------------------------------------------------------------------------- Open: ./sources/action_public/misc/stats.php Find: [ function show_today_posters() ] $info['joined'] = $this->ipsclass->get_date( $info['joined'], 'JOINED' ); Add above: $info['members_display_name'] = $this->ipsclass->cache['group_cache'][ $info['mgroup'] ]['prefix'].$info['members_display_name'].$this->ipsclass->cache['group_cache'][ $info['mgroup'] ]['suffix']; =============================================== Find: [ function parse_member( $member ) ] $member['msg_icon'] = "<a href='{$this->base_url}&act=Msg&CODE=04&MID={$member['id']}'><{P_MSG}></a>"; Add above: $member['members_display_name'] = $this->ipsclass->cache['group_cache'][ $member['mgroup'] ]['prefix'].$member['members_display_name'].$this->ipsclass->cache['group_cache'][ $member['mgroup'] ]['suffix']; --------------------------------------------------------------------------------------------- Open: ./sources/classes/class_display.php Find: [ function do_output($output_array) ] $output_array['MEMBER_BAR'] = $this->ipsclass->compiled_templates['skin_global']->member_bar($msg_data); Add above: $msg_data['g_prefix'] = $this->ipsclass->cache['group_cache'][ $this->ipsclass->member['mgroup'] ]['prefix']; $msg_data['g_suffix'] = $this->ipsclass->cache['group_cache'][ $this->ipsclass->member['mgroup'] ]['suffix']; --------------------------------------------------------------------------------------------- Open: ./sources/classes/class_forums.php Find: var $mod_cache = array(); Add below: var $mem_cache = array(); =============================================== Find: [ function forums_init() ] if ( $f['parent_id'] < 1 ) { $f['parent_id'] = 'root'; } Add below: if ( $f['last_poster_id'] > 0 ) { $uid[] = $f['last_poster_id']; } =============================================== Find: [ function forums_init() ] $f['fid'] = $f['id']; $this->forum_cache[ $f['parent_id'] ][ $f['id'] ] = $f; $this->forum_by_id[ $f['id'] ] = &$this->forum_cache[ $f['parent_id'] ][ $f['id'] ]; } Add below: if( is_array($uid) && count($uid) > 0 ) { $this->ipsclass->DB->simple_construct( array( 'select' => 'id, mgroup', 'from' => 'members', 'where' => "id IN (".implode(",", $uid).")" ) ); $this->ipsclass->DB->simple_exec(); while( $m = $this->ipsclass->DB->fetch_row() ) { $this->mem_cache[ $m['id'] ] = $m['mgroup']; } } =============================================== Find: [ function forums_get_moderators($forum_id="") ] $mod_string .= "<a href='{$this->ipsclass->base_url}act=Members&max_results=30&filter={$moderator['gid']}&sort_order=asc&sort_key=members_display_name&st=0&b=1'>{$moderator['gname']}</a>, "; Replace with: $mod_string .= "<a href='{$this->ipsclass->base_url}act=Members&max_results=30&filter={$moderator['gid']}&sort_order=asc&sort_key=members_display_name&st=0&b=1'>{$this->ipsclass->cache['group_cache'][ $moderator['gid'] ]['prefix']}{$moderator['gname']}{$this->ipsclass->cache['group_cache'][ $moderator['gid'] ]['suffix']}</a>, "; =============================================== Find: [ function forums_format_lastinfo($forum_data) ] $forum_data['last_poster'] = $forum_data['last_poster_id'] ? "<a href='{$this->ipsclass->base_url}showuser={$forum_data['last_poster_id']}'>{$forum_data['last_poster_name']}</a>" : $forum_data['last_poster_name']; Replace with: if( $forum_data['last_poster_id'] ) { $prefix = $this->ipsclass->cache['group_cache'][ $this->mem_cache[ $forum_data['last_poster_id'] ] ]['prefix']; $suffix = $this->ipsclass->cache['group_cache'][ $this->mem_cache[ $forum_data['last_poster_id'] ] ]['suffix']; } $forum_data['last_poster'] = $forum_data['last_poster_id'] ? "<a href='{$this->ipsclass->base_url}showuser={$forum_data['last_poster_id']}'>{$prefix}{$forum_data['last_poster_name']}{$suffix}</a>" : $forum_data['last_poster_name']; --------------------------------------------------------------------------------------------- Open: ./sources/lib/func_boardstats.php Find: [ function show_totals() ] $this->ipsclass->lang['total_word_string'] = str_replace( "<#posts#>" , "$total_posts" , $this->ipsclass->lang['total_word_string'] ); Add above: if( ! $stats['last_mem_grp'] ) { $mgroup = $this->ipsclass->DB->simple_exec_query( array( 'select' => 'mgroup', 'from' => 'members', 'where' => 'id='.intval($stats['last_mem_id']) ) ); $stats['last_mem_grp'] = $mgroup['mgroup']; } $stats['last_mem_name'] = $this->ipsclass->cache['group_cache'][ $stats['last_mem_grp'] ]['prefix'].$stats['last_mem_name'].$this->ipsclass->cache['group_cache'][ $stats['last_mem_grp'] ]['suffix']; --------------------------------------------------------------------------------------------- Open: ./sources/sql/mysql_queries.php Find: [ function msg_get_sent_list( $a ) ] return "SELECT mem.members_display_name as from_name, mem.id as from_id Add after: , mem.mgroup as from_group =============================================== Find: [ function msg_get_folder_list( $a ) ] return "SELECT mt.*,mem.members_display_name as from_name, mem.id as from_id Add after: , mem.mgroup as from_group =============================================== Find: [ function ucp_get_all_announcements( $a ) ] return "SELECT a.*, m.id, m.name, Add after: m.mgroup, =============================================== Find: [ function stats_get_todays_posters( $a ) ] return "SELECT COUNT(*) as tpost, m.id, m.name, Add after: m.mgroup, --------------------------------------------------------------------------------------------- Goto: ACP: LOOK & FEEL: Skin Manager: Edit Template HTML: 1/ Open Template Bit: All Global HTML: member_bar Find: {ipb.member['members_display_name']} Replace With: {$msg['g_prefix']}{ipb.member['members_display_name']}{$msg['g_suffix']} --------------------------------------------------------------------------------------------- That's all! ©2006 ntd1712 Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 25 Сентября 2006 Автор Жалоба Поделиться Опубликовано 25 Сентября 2006 4iX-Pblx не ты один это нашол. Лежит на инвизионайзе. При чём обидно что он появилься через месяц после моего мода, но из-за громкого названия и известности автора популярность большая. Надо это изучить и добавить то чего нам нехватает. Только руки до этого недоходят. Ссылка на комментарий Поделиться на других сайтах Прочее
Lera Опубликовано 25 Сентября 2006 Жалоба Поделиться Опубликовано 25 Сентября 2006 (изменено) ОО, нашла тему, а то не могла найти. Мод классный спасибо.С картинками малость всё же запуталась, но это мои тараканы неумелые такие. И вопрос, а если многим хочу дать личную картинку, не группам, а юзерам, то это как всех отдельно прописывать? У меня картинка встала хорошо, под аватаром, над статусом, очень мило. Но всё мучает вопрос. А если другие картинки хочу другим, то выстроить целую цепочку таких функций? Это не вредно? Подсветка с надписью не работает (у меня опера), значит накосячила где-то? Изменено 25 Сентября 2006 пользователем Lera Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 25 Сентября 2006 Автор Жалоба Поделиться Опубликовано 25 Сентября 2006 Читац приват. + В теории есть такая вещь как elseif. Это чтобы не писать много раз <if>....</if><if (author['mgroup'] == '9') {echo (" <img src='http://.....' alt='.....' border='0'> ");} elseif (author['id'] == '8') <img src='http://.....' alt='.....' border='0'> {echo (" ");} >Но я не знаток пхп, поэтому скорее всего это неправельно... То где я это видел оно имело немного другою форму. Относительно подсветки. Вроде в опере alt не работает. За это отвечает параметр title. Поэтому можно сделать так: <img src='http://.....' alt='.....' title="...." border='0'> Ссылка на комментарий Поделиться на других сайтах Прочее
Lera Опубликовано 25 Сентября 2006 Жалоба Поделиться Опубликовано 25 Сентября 2006 Угу, спасибо. Да подсветка мелочь, без неё жить можно. Картинки встали хорошо, но всем жаль не влепить личную)))) Спасибо ещё раз и за мод и за терпеливые объяснения. Нескольким поставила их так, другим может кто-то посоветует черех дополнительные поля профиля как ставить. Но 7 человек довольны и я с ними заодно. Побольше бы таких скриптов и объясняющих)) Ссылка на комментарий Поделиться на других сайтах Прочее
smash_TeAm Опубликовано 1 Октября 2006 Жалоба Поделиться Опубликовано 1 Октября 2006 А вот про всплывающее окошко, в котором отображаются ники тех кто писал сообщения в теме, все забыли Форматирование ников во всплывающем окне "Кто писал сообщения". Необходимые изменения:1. Редактирование sources/sql/mysql_queries.php2. Редактирование sources/action_public/misc/stats.php Открываем: sources/action_public/misc/stats.php Находим: $r['author_name'] = $this->ipsclass->compiled_templates['skin_stats']->who_name_link($r['author_id'], $r['author_name']); Заменяем на: $r['author_name'] = $this->ipsclass->compiled_templates['skin_stats']->who_name_link($r['author_id'], $this->ipsclass->cache['group_cache'][ $r['mgroup'] ]['prefix'].$r['members_display_name'].$ibforums->cache['group_cache'][ $poster['mgroup'] ]['suffix']); Сохраняем, заливаем. sources/sql/mysql_queries.php Находим: function stats_who_posted( $a ) { return "SELECT COUNT(p.pid) as pcount, p.author_id, p.author_name FROM ".SQL_PREFIX."posts p WHERE p.topic_id={$a['tid']} AND queued=0 GROUP BY p.author_id ORDER BY pcount DESC"; } Заменяем на: function stats_who_posted( $a ) { return "SELECT COUNT(p.pid) as pcount, p.author_id, p.author_name, m.mgroup, m.members_display_name FROM ".SQL_PREFIX."posts p LEFT JOIN ".SQL_PREFIX."members m ON (p.author_id=m.id) WHERE p.topic_id={$a['tid']} AND queued=0 GROUP BY p.author_id ORDER BY pcount DESC"; }Сохраняем, заливаем. +ЗЫ, а кто-нить разобрался с расскраской ников в обьявлениях при просмотре форума? Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 1 Октября 2006 Автор Жалоба Поделиться Опубликовано 1 Октября 2006 smash_TeAm - какое окошко с никами? Это мод отдельный? Ссылка на комментарий Поделиться на других сайтах Прочее
smash_TeAm Опубликовано 1 Октября 2006 Жалоба Поделиться Опубликовано 1 Октября 2006 mrMad-CatНу к примеру: Общие вопросы (по 2.1.x)Есть колонка Ответов при клике на ссылку в колонке откроется всплывающее окошко, где отображаются ники тех кто отметился в теме Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 1 Октября 2006 Автор Жалоба Поделиться Опубликовано 1 Октября 2006 Лол, я даже не знал про это! хахах! Ок, спасибо.Потом посмотрю про всё остальное. Покачто нет времени. Ссылка на комментарий Поделиться на других сайтах Прочее
Virtul Опубликовано 3 Октября 2006 Жалоба Поделиться Опубликовано 3 Октября 2006 хммм... перестал ник вставляться... хотя было раньше все окт.е. при кликаньи наник вставляется такое:после опубликования становится таким: Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 3 Октября 2006 Автор Жалоба Поделиться Опубликовано 3 Октября 2006 Смотри мой 22 пост. Используй либо первое либо второе. Ссылка на комментарий Поделиться на других сайтах Прочее
Virtul Опубликовано 3 Октября 2006 Жалоба Поделиться Опубликовано 3 Октября 2006 Дата не будет вставляться. А вот никнейм должен. Странно, у меня всё работает. Может это из-за того что у меня расширенная форма быстрого ответа стоит. Ну тогда поменяй часть джаваскрипта:txt='[quote name="'+qinf+'" post='+pid+']\n'+txt+'\n[/quote]\n'наtxt='[quote='+qinf+date+']\n'+txt+'\n[right][snapback]'+pid+'[/snapback][/right]\n[/quote]\n' да, вот это сделалне помоглоа что есть "либо второе"? так и так было - не работаитьпри том сначала же работалос... ничего, вроде, не менял (не припомню по крайней мере) и как-то само по себе перестало работать =).. даж не знаю... может кто-то еще поменял что-нить, конечно, но это очень маловероятно Ссылка на комментарий Поделиться на других сайтах Прочее
mrMad-Cat Опубликовано 3 Октября 2006 Автор Жалоба Поделиться Опубликовано 3 Октября 2006 Ну проверь. Там ведь всего 2 строчки. Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения