Respected Опубликовано 14 октября, 2013 Поделиться Опубликовано 14 октября, 2013 Просмотр файла (SOS34) Monthly Top Posters 1.0.0 (SOS34) Monthly Top Posters 1.0.0 - хук отображает топ постеров за месяц в боковом блоке. Добавил Respected Добавлено 14.10.2013 Категория Хуки, Модификации для IP.Board Название по-русски {value} Версия IP.Board AUYKGN 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
AUYKGN Опубликовано 17 октября, 2013 Поделиться Опубликовано 17 октября, 2013 файл может ещё больше и он бесплатный Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Respected Опубликовано 17 октября, 2013 Автор Поделиться Опубликовано 17 октября, 2013 В этом статистика меняется каждый месяц Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
ss11 Опубликовано 29 августа, 2015 Поделиться Опубликовано 29 августа, 2015 Поставил этот хук, но он учитывает сообщения пользователей даже из тем с отключенным счетчиком. Каким образом сделать так, чтобы количество сообщений в хуке было равно количеству сообщений в профиле? IPB 3.4.6 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
LvsF Опубликовано 29 августа, 2015 Поделиться Опубликовано 29 августа, 2015 Каким образом сделать так, чтобы количество сообщений в хуке было равно количеству сообщений в профиле? IPB 3.4.6 Покажите мне, где в профиле есть статистика постов по месяцам. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
ss11 Опубликовано 29 августа, 2015 Поделиться Опубликовано 29 августа, 2015 (изменено) извините, неправильно выразился. имелась ввиду логика подсчета как профиле, т.е. исключая посты в темах с отключенным счетчиком. P.S. может быть есть другой аналогичный хук, где учтен этот момент? Изменено 29 августа, 2015 пользователем ss11 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
LvsF Опубликовано 29 августа, 2015 Поделиться Опубликовано 29 августа, 2015 Есть за все время http://ipbmafia.ru/files/file/1132-sos34-members-stats-on-board-index-sidebar-100/ Если нужен именно этот, то можете открыть xml-файл, найти $where = array( "EXTRACT(MONTH FROM FROM_UNIXTIME(p.post_date)) = {$month}", "EXTRACT(YEAR FROM FROM_UNIXTIME(p.post_date)) = {$year}" ); и ниже добавить $where[] = "f.inc_postcount=1"; Посты из форумов, где отключен счетчик, не будут входить в статистику. ss11 1 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
ss11 Опубликовано 29 августа, 2015 Поделиться Опубликовано 29 августа, 2015 Спасибо, то что нужно! Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
GVAM™ Опубликовано 8 августа, 2016 Поделиться Опубликовано 8 августа, 2016 Где скачать? сыль не пашет!( интересует именно за месяц! Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
ssslllaaa Опубликовано 11 сентября, 2017 Поделиться Опубликовано 11 сентября, 2017 помогите. Как убрать форматирование в этом хуке? подробно на скриншоте что нужно изменить в коде хука чтоб ники были без форматирования? заранее спасибо. код хука вот Спойлер <?xml version="1.0" encoding="utf-8"?> <hookexport> <hookdata> <config> <hook_name>(SOS34) Monthly Top Posters</hook_name> <hook_desc>Will show top monthly posters on sidebar</hook_desc> <hook_author>Adriano Faria</hook_author> <hook_email>[email protected]</hook_email> <hook_website>http://www.sosinvision.com.br</hook_website> <hook_update_check/> <hook_requirements><![CDATA[a:3:{s:21:"required_applications";a:1:{s:6:"forums";a:3:{s:8:"app_name";s:6:"Forums";s:11:"min_version";i:34006;s:11:"max_version";i:0;}}s:20:"hook_php_version_min";s:0:"";s:20:"hook_php_version_max";s:0:"";}]]></hook_requirements> <hook_version_human>1.0.0</hook_version_human> <hook_version_long>10000</hook_version_long> <hook_extra_data><![CDATA[a:5:{s:7:"display";a:3:{s:8:"language";s:50:"From forums_public_boards: topMonthlyPosters_month";s:9:"templates";s:35:"From skin_boards: topMonthlyPosters";s:8:"settings";s:90:"Setting groups: (SOS34) Monthly Top Posters<br />Settings: EXCLUDE Groups, Number of Users";}s:13:"settingGroups";a:1:{i:0;s:17:"topMonthlyPosters";}s:8:"settings";a:2:{i:0;s:24:"topMonthlyPosters_groups";i:1;s:20:"topMonthlyPosters_nr";}s:8:"language";a:1:{s:20:"forums_public_boards";a:1:{i:0;s:23:"topMonthlyPosters_month";}}s:9:"templates";a:1:{s:11:"skin_boards";a:1:{i:0;s:17:"topMonthlyPosters";}}}]]></hook_extra_data> <hook_key>topMonthlyPosters</hook_key> <hook_global_caches/> </config> </hookdata> <hookfiles> <file> <hook_file_real>topMonthlyPosters.php</hook_file_real> <hook_type>templateHooks</hook_type> <hook_classname>topMonthlyPosters</hook_classname> <hook_data><![CDATA[a:8:{s:12:"dataLocation";s:0:"";s:14:"libApplication";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:11:"skin_boards";s:12:"skinFunction";s:18:"boardIndexTemplate";s:4:"type";s:7:"foreach";s:2:"id";s:11:"side_blocks";s:8:"position";s:9:"outer.pre";}]]></hook_data> <hooks_source><![CDATA[<?php class topMonthlyPosters { public $registry; public $member; public $cache; public function __construct() { $this->registry = ipsRegistry::instance(); $this->DB = $this->registry->DB(); $this->settings =& $this->registry->fetchSettings(); $this->cache = $this->registry->cache(); $this->caches =& $this->registry->cache()->fetchCaches(); $this->member = $this->registry->member(); $this->memberData =& $this->registry->member()->fetchMemberData(); $this->registry->class_localization->loadLanguageFile( array( 'public_boards', 'forums' ) ); } public function getOutput() { if ( IPSMember::isInGroup( $this->memberData, explode( ',', IPSText::cleanPermString( $this->settings['topMonthlyPosters_groups'] ) ) ) ) { return false; } $month = date('m'); $year = date('Y'); $monthname = gmstrftime( '%B', time() ); $where = array( "EXTRACT(MONTH FROM FROM_UNIXTIME(p.post_date)) = {$month}", "EXTRACT(YEAR FROM FROM_UNIXTIME(p.post_date)) = {$year}" ); $this->DB->build( array( 'select' => 'm.member_id, m.members_display_name, m.member_group_id, m.members_seo_name, COUNT(*) AS posts', 'from' => array( 'members' => 'm' ), 'where' => implode( ' AND ', $where ), 'add_join' => array( 0 => array( 'select' => 'pp.*', 'from' => array( 'profile_portal' => 'pp' ), 'where' => 'pp.pp_member_id=m.member_id', 'type' => 'left' ), 1 => array( 'from' => array( 'posts' => 'p' ), 'where' => 'p.author_id=m.member_id', 'type' => 'left' ), 2 => array( 'from' => array( 'topics' => 't' ), 'where' => 't.tid=p.topic_id', 'type' => 'left' ), 3 => array( 'from' => array( 'forums' => 'f' ), 'where' => 'f.id=t.forum_id', 'type' => 'left' ) ), 'group' => 'p.author_id', 'order' => 'posts DESC', 'limit' => array( 0, $this->settings['topMonthlyPosters_nr'] ), ) ); $q = $this->DB->execute(); if ( $this->DB->getTotalRows( $q ) ) { $top_posters = array(); while( $r = $this->DB->fetch( $q ) ) { $r = IPSMember::buildDisplayData( $r ); $top_posters[ $r['member_id'] ] = $r; } return $this->registry->output->getTemplate( 'boards' )->topMonthlyPosters( $top_posters, $monthname ); } } }]]></hooks_source> </file> </hookfiles> <hookextras_settings> <setting> <conf_is_title>1</conf_is_title> <conf_title_title>(SOS34) Monthly Top Posters</conf_title_title> <conf_title_desc>Settings for this hook</conf_title_desc> <conf_title_noshow>0</conf_title_noshow> <conf_title_keyword>topMonthlyPosters</conf_title_keyword> <conf_title_app>forums</conf_title_app> <conf_title_tab>Hooks</conf_title_tab> </setting> <setting> <conf_id>1505</conf_id> <conf_title>EXCLUDE Groups</conf_title> <conf_description><![CDATA[Select which user groups YOU DON'T WANT to show the sidebar block]]></conf_description> <conf_group>201</conf_group> <conf_type>multi</conf_type> <conf_key>topMonthlyPosters_groups</conf_key> <conf_value/> <conf_default/> <conf_extra>#show_groups#</conf_extra> <conf_evalphp><![CDATA[$key = 'topMonthlyPosters_groups'; if ( $save == 1) { if ( is_array($_POST[ $key ]) ) { $_POST[ $key ] = implode(",",$_POST[ $key ]); } else { $_POST[ $key ] = ""; } } if ( $show == 1 ) { $key .= '[]'; }]]></conf_evalphp> <conf_protected>1</conf_protected> <conf_position>2</conf_position> <conf_start_group/> <conf_add_cache>1</conf_add_cache> <conf_keywords/> <conf_title_keyword>topMonthlyPosters</conf_title_keyword> <conf_is_title>0</conf_is_title> </setting> <setting> <conf_id>1504</conf_id> <conf_title>Number of Users</conf_title> <conf_description/> <conf_group>201</conf_group> <conf_type>input</conf_type> <conf_key>topMonthlyPosters_nr</conf_key> <conf_value/> <conf_default>5</conf_default> <conf_extra/> <conf_evalphp/> <conf_protected>1</conf_protected> <conf_position>1</conf_position> <conf_start_group/> <conf_add_cache>1</conf_add_cache> <conf_keywords/> <conf_title_keyword>topMonthlyPosters</conf_title_keyword> <conf_is_title>0</conf_is_title> </setting> </hookextras_settings> <hookextras_language> <language> <word_app>forums</word_app> <word_pack>public_boards</word_pack> <word_key>topMonthlyPosters_month</word_key> <word_default>Top Poster</word_default> </language> </hookextras_language> <hookextras_modules/> <hookextras_help/> <hookextras_templates> <templates> <template_group>skin_boards</template_group> <template_content><![CDATA[<div class='ipsSideBlock clearfix'> <h3>{$this->lang->words['topMonthlyPosters_month']} ({$monthname})</h3> <div class='_sbcollapsable'> <ul class='ipsList_withminiphoto'> <if test="top_posters:|:is_array( $top_posters ) && count( $top_posters )"> {parse striping="top_posters" classes="row1,row2 altrow"} <foreach loop="top_posters:$top_posters as $r"> <li class='clearfix'> <a href='{parse url="showuser={$r['member_id']}" seotitle="{$r['members_seo_name']}" template="showuser" base="public"}' title='{$this->lang->words['view_profile']}' class='ipsUserPhotoLink left'><img src='{$r['pp_mini_photo']}' alt="{$r['members_display_name']}{$this->lang->words['users_photo']}" class='ipsUserPhoto ipsUserPhoto_mini' /></a> <div class='list_content'> {IPSMember::makeProfileLink(IPSMember::makeNameFormatted( $r['members_display_name'], $r['member_group_id']), $r['member_id'])} <p class='desc ipsType_smaller'> {parse format_number="$r['posts']"} {$this->lang->words['posts']} </p> </div> </li> </foreach> </if> </ul> </div> </div>]]></template_content> <template_name>topMonthlyPosters</template_name> <template_data>$top_posters, $monthname</template_data> <template_updated>1235666400</template_updated> <template_removable>0</template_removable> <template_added_to>1</template_added_to> <template_user_added>1</template_user_added> <template_user_edited>0</template_user_edited> <template_master_key>root</template_master_key> </templates> </hookextras_templates> <hookextras_css/> <hookextras_replacements/> <hookextras_tasks/> <hookextras_database_create/> <hookextras_database_alter/> <hookextras_database_update/> <hookextras_database_insert/> </hookexport> Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.