Вход Регистрация
Файл: InstantSocial/uploud/modules/mod_comments/module.php
Строк: 111
<?php
/******************************************************************************/
//                                                                            //
//                             InstantCMS v1.9                                //
//                        http://www.instantcms.ru/                           //
//                                                                            //
//                   written by InstantCMS Team, 2007-2011                    //
//                produced by InstantSoft, (www.instantsoft.ru)               //
//                                                                            //
//                        LICENSED BY GNU/GPL v2                              //
//                                                                            //
/******************************************************************************/

function mod_comments($module_id){
    
        
$inCore cmsCore::getInstance();
        
$inDB   cmsDatabase::getInstance();
        
$inUser cmsUser::getInstance();
        global 
$_LANG;
        
        
$cfg $inCore->loadModuleConfig($module_id);

        if (!isset(
$cfg['showrss'])) { $cfg['showrss'] = 1;}
        if (!isset(
$cfg['minrate'])) { $cfg['minrate'] = 0;}
        if (!isset(
$cfg['showguest'])) { $cfg['showguest'] = 0;}

        
$targeting sizeof($cfg['targets']);

        if (!
$targeting){ echo '<p>'.$_LANG['COMMENTS_NOT_SHOWTYPE'].'</p>'; return true; }

        
$t_list = array();

        foreach(
$cfg['targets'] as $type){
            
$t_list[] = "'$type'";
        }

        
$t_list rtrim(implode(','$t_list), ',');

        
$target_where "AND c.target IN ({$t_list})";

        
$guest_sql $cfg['showguest'] ? "OR c.guestname<>''" "";
        
$hidden_sql $inUser->is_admin '' 'AND c.is_hidden=0';

        
$sql "SELECT c.id as id,
                       c.target as target,
                       c.target_id as target_id,
                       c.target_link as target_link, 
                       c.target_title,
                       c.content as content,
                       c.guestname,
                       c.pubdate as fpubdate,
                       IFNULL(c.user_id, 0) as user_id,
                       IFNULL(u.nickname, '') as author,
                       IFNULL(u.login, '') as author_login,
                       IFNULL(v.total_rating, 0) as rating
                FROM cms_comments c
                INNER JOIN cms_users u ON u.id = c.user_id 
{$guest_sql}
                LEFT JOIN cms_ratings_total v ON v.item_id=c.id AND v.target='comment'
                WHERE c.published=1 
{$hidden_sql} {$target_where}
                GROUP BY c.id
                ORDER BY c.id DESC
                LIMIT 70"
;

        
$result $inDB->query($sql);
        
$is_com false;
        if (
$inDB->num_rows($result)){
            
$is_com true;
            
$count 0;
            
$comments = array();
            while(
$con $inDB->fetch_assoc($result)){

                if (
$count >= $cfg['shownum']) { break; }

                if (
$con['rating'] >= $cfg['minrate']){

                    
$con['link'] = $con['target_link'] . '#c'.$con['id'];
                    
$con['text'] = strip_tags($con['content']);
                    
                    
$con['text'] =  preg_replace('/[hide](.*?)[/hide]/i'''$con['text']);
                    
$con['text'] =  preg_replace('/[hide](.*?)$/i'''$con['text']);

                    if (
strlen($con['text'])>60) { $con['text'] = substr($con['text'], 060). '...'; }
                    if (!
$con['text']) { $con['text'] = '...'; }

                    
$con['user_url'] = $con['user_id'] ? cmsUser::getProfileURL($con['author_login']) : $con['link'];
                    
$con['author']   = $con['user_id'] ? $con['author'] : $con['guestname'];
                    
$con['fpubdate'] = $inCore->dateFormat($con['fpubdate']);

                    
$comments[] = $con;
                    
$count++;
                }

            }

            }
        
        
$smarty $inCore->initSmarty('modules''mod_comments.tpl');            
        
$smarty->assign('comments'$comments);
        
$smarty->assign('cfg'$cfg);
        
$smarty->assign('is_com'$is_com);
        
$smarty->display('mod_comments.tpl');    
                
        return 
true;
}
?>
Онлайн: 0
Реклама