Количество тем и сообщений подфорумов InstantCMS

Автор: gregor от 30 января 2011 в категории InstantsCMS
0

Один из моих проектов стоит на InstantCMS. Система очень даже ничего, плюс есть дополнительные качественные модули. Например карта или магазин. Но сейчас не об этом. На днях заметил что на главной странице компонента Форум, неправильно, точнее не совсем корректно отображаются количество тем и сообщений. Если форум имеет подфорумы с темами и сообщениями, а сам в свою очередь не имеет тем, то напротив него написано что тем нет и сообщений тоже. И тут же рядом отображается последнее сообщение одного из подфорумов. Может это и было так задуманно, но я решил что неплохо было бы отображать сумму тем и сообщений, включая подфорумы. Благо движок открытый и внеся небольшие изменения в код я подучил требуемый результат. Просто меняем функцию forumMessages на нашу. Функция расположена в файле /components/forum/includes/forumcore.php примерно на 13 строке.
Вот функция для замены

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function forumMessages($forum_id){
     $inCore = cmsCore::getInstance();
     $inDB   = cmsDatabase::getInstance();
     $html = '';
     global $_LANG;
     $groupsql = forumUserAuthSQL();
     $subforums_sq = "SELECT * FROM cms_forums WHERE published = 1 AND parent_id = $forum_id      $groupsql ORDER BY ordering";
     $subforums_result = $inDB->query($subforums_sql);
     $subforums_count = $inDB->num_rows($subforums_result);
     $subforums = array();
     if ($subforums_count){
          while ($subforum = $inDB->fetch_assoc($subforums_result)){
               $inner_forums = '';
               $inner_sql = "SELECT id, title FROM cms_forums WHERE parent_id = {$subforum['id']} ORDER BY title";
               $suballsql = "SELECT 1 FROM cms_forum_threads WHERE forum_id = ".$subforum['id'];
               $result = $inDB->query($suballsql) ;
               if ($inDB->num_rows($result)) $allth = $allth  + $inDB->num_rows($result);
               $tsuballsql = "SELECT p.id FROM cms_forum_threads t LEFT JOIN cms_forum_posts p ON p.thread_id = t.id WHERE t.forum_id = ".$subforum['id'];
               $tresultsub = $inDB->query($tsuballsql);
               if ($inDB->num_rows($tresultsub)) $tallth = $tallth  + $inDB->num_rows($tresultsub);
          }
     }
     $sql = "SELECT 1 FROM cms_forum_threads WHERE forum_id = $forum_id";
     $result = $inDB->query($sql);
     if ($inDB->num_rows($result)){
          $html .= '<strong>'.$_LANG['THREADS'].':</strong> '.($inDB-&gt;num_rows($result) + $allth);
     } else {
          if($allth &gt; 0) $html .= '<strong>'.$_LANG['THREADS'].':</strong> '.$allth;
          else $html .= $_LANG['NOT_THREADS'];
     }
     $tsql = "SELECT p.id FROM cms_forum_threads t LEFT JOIN cms_forum_posts p ON p.thread_id = t.id WHERE t.forum_id = $forum_id";
     $tresult = $inDB-&gt;query($tsql);
     if ($inDB-&gt;num_rows($tresult)) $html .= '<strong>'.$_LANG['MESSAGES'].':</strong>'.($inDB-&gt;num_rows($tresult) + $tallth);
     else $html .= '<strong>'.$_LANG['MESSAGES'].':</strong> '.(int)$tallth;
     return $html;
}

Tags: , , ,

 Страница 1 из 1  1 

Подпишись

Облачко тегов

    AllSubmitter (1)
    Counter Strike (1)
    Datalife Engine (1)
    eBay (2)
    InstantsCMS (1)
    Jabber (1)
    MSI (7)
    PR (1)
    SEO софт (2)
    VPS/VDS (1)
    в Туле (1)
    Взлом WiFi (1)
    Дешёвые домены (1)
    Искусство (1)
    Кеи для доров (1)
    КПК (1)
    Мой миллион (53)
    Мой мозг (32)
    Обзоры сайтов (10)
    Остаться в живых (18)
    Пишем на PHP (6)
    Полезное (20)
    Праздники (2)
    Сателлиты (2)
    ТИЦ (5)
    ФинСтриптиз (11)

    WP Cumulus Flash tag cloud by Roy Tanck requires Flash Player 9 or better.

Ссылки

Галерея





Rambler's Top100

Яндекс цитирования

Google PageRank



Рейтинг блогов

Рейтинг блогов

Я - на Карте






BlogMemes.ru

Рейтинг блогов. Заработок в интернете

Рейтинг блогов

Позиция в конкурсе

    Кнопка

Календарь

    Февраль 2012
    Пн Вт Ср Чт Пт Сб Вс
    « Фев    
     12345
    6789101112
    13141516171819
    20212223242526
    272829  

Активный месяц

Поиск по сайту

Партнёры

Рейтинговые посты











Copyright © 2008 - 2012 Гришкин SEO Блог. Тема от WebGO. Карта сайта. Каталог ссылок.