Вход Регистрация
Файл: InstantSocial/uploud/modules/mod_latest/ajax/latest.php
Строк: 149
<?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                              //
//                                                                            //
/******************************************************************************/

    
if($_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') { die(); }
    
header('Content-Type: text/html; charset=windows-1251'); 
    
session_start();

    if (!isset(
$_REQUEST['module_id'])) { die(2); }
    if (!isset(
$_REQUEST['page'])) { die(4); }

    
define("VALID_CMS"1);
    
define('PATH'$_SERVER['DOCUMENT_ROOT']);

    
// Грузим ядро и классы
    
include(PATH.'/core/cms.php');
    
// Грузим конфиг
    
include(PATH.'/includes/config.inc.php');
    
$inCore cmsCore::getInstance();

    
define('HOST''http://' $inCore->getHost());
    
    
$inCore->loadClass('config'); 
    
$inCore->loadClass('db'); 
    
$inCore->loadClass('user');
    
$inCore->loadClass('page');
    
$inDB   cmsDatabase::getInstance();

    
// Подгружаем языковой файл
    
$inCore->loadLanguage('lang');
    
$inCore->loadLanguage('modules/mod_latest');

    
// Грузим шаблонизатор
    
$smarty $inCore->initSmarty();

    
// Входные данные
    
$page        $inCore->request('page''int'1);    
    
$module_id    $inCore->request('module_id''int''');

    
// Грузим конфиг модуля
    
$cfg $inCore->loadModuleConfig($module_id);
    
// Если пагинация отключена, выходим
    
if (!$cfg['is_pag']) { die(); }

    
$perpage    $cfg['newscount'];

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

    
$today date("Y-m-d H:i:s");
    
    if (
$cfg['cat_id'] != '-1') {
            if (!
$cfg['subs']){
                
//select from category
                
$catsql ' AND con.category_id = '.$cfg['cat_id'];
            } else {
                
//select from category and subcategories
                
$rootcat $inDB->get_fields('cms_category'"id='{$cfg['cat_id']}'"'NSLeft, NSRight');
                if(!
$rootcat) { exit; }
                
$catsql "AND (cat.NSLeft >= {$rootcat['NSLeft']} AND cat.NSRight <= {$rootcat['NSRight']})";
            }        
            
$rssid $cfg['cat_id'];

    } else { 
$catsql ''$rssid 'all'; } 

    
$sql "SELECT con.*,
                       con.pubdate as fdate,
                       u.nickname as author,
                       u.login as author_login
                       FROM cms_content con
                       LEFT JOIN cms_category cat ON cat.id = con.category_id
                       LEFT JOIN cms_users u ON u.id = con.user_id
                       WHERE con.published = 1 AND con.showlatest = 1 AND con.is_arhive = 0 AND con.pubdate <= '
$today'
                       AND (con.is_end=0 OR (con.is_end=1 AND con.enddate >= '
$today'))
                       "
.$catsql."
                       ORDER BY con.pubdate DESC
                       LIMIT "
.(($page-1)*$perpage).", $perpage";

    
$result $inDB->query($sql);

    
$is_con false;

    
// Считаем общее количество материалов
    
$sql_total "SELECT 1
            FROM cms_content con
            LEFT JOIN cms_category cat ON cat.id = con.category_id
            WHERE con.published = 1 AND con.showlatest = 1 AND con.is_arhive = 0 AND con.pubdate <= '
$today' AND (con.is_end=0 OR (con.is_end=1 AND con.enddate >= '$today')) ".$catsql."";
    
$result_total $inDB->query($sql_total) ;
    
$total_page $inDB->num_rows($result_total);

    
// если есть записи выводим их    
    
if ($total_page){

        
$is_con true;

        
// грузим модель компонента контент
        
$inCore->loadModel('content');
        
$model = new cms_model_content();

        
$articles = array();                    
        while(
$con $inDB->fetch_assoc($result)){
                
$next sizeof($articles);                
                
$articles[$next]['id']          = $con['id'];
                
$articles[$next]['title']       = $con['title'];
                
$articles[$next]['hits']        = $con['hits'];
                
$articles[$next]['href']        = $model->getArticleURL(null$con['seolink']);
                
$articles[$next]['author']      = $con['author'];
                
$articles[$next]['authorhref']  = cmsUser::getProfileURL($con['author_login']);
                
$articles[$next]['comments']    = $cfg['showcom'] ? $inCore->getCommentsCount('article'$con['id']) : false;
                
$articles[$next]['date']        = $inCore->dateformat($con['fdate']);
                
$articles[$next]['description'] = $con['description'];
                
$articles[$next]['image']       = (file_exists(PATH.'/images/photos/small/article'.$con['id'].'.jpg') ? 'article'.$con['id'].'.jpg' '');                
        }
    }

    
// Отдаем в шаблон
    
ob_start();
    
$smarty $inCore->initSmarty('modules''mod_latest.tpl');            
    
$smarty->assign('articles'$articles);
    
$smarty->assign('rssid'$rssid);
    
$smarty->assign('cfg'$cfg);
    
$smarty->assign('is_ajax'true);
    
$smarty->assign('is_con'$is_con);
    
$smarty->assign('module_id'$module_id);
    
$smarty->assign('pagebar_module'cmsPage::getPagebar($total_page$page$perpage'javascript:conPage(%page%, '.$module_id.')'));
    
$smarty->display('mod_latest.tpl');            
    
$html ob_get_clean();
    echo 
$html;
?>
Онлайн: 0
Реклама