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

function mod_photo($module_id){

    
cmsCore::loadClass('photo');
    
$inPhoto = cmsPhoto::getInstance();
    
$inCore  = cmsCore::getInstance();
    
$inDB    = cmsDatabase::getInstance();

    
// конфигурация модуля
    
$cfg = $inCore->loadModuleConfig($module_id);
    
$default_cfg = array (
                  
'is_full' => 1,
                  
'showmore' => 1,
                  
'album_id' => 0,
                  
'whatphoto' => 'all',
                  
'shownum' => 5,
                  
'maxcols' => 2,
                  
'sort' => 'pubdate',
                  
'showclubs' => 0,
                  
'is_subs' => 1
                
);
    
$cfg = array_merge($default_cfg, $cfg);

    
// выбираем категории фото
    
$inDB->addJoin('INNER JOIN cms_photo_albums a ON a.id = f.album_id AND a.published = 1');
    
$inDB->addSelect('a.title as cat_title, a.NSDiffer');

    
// если категория задана, выбираем из нее
    
if($cfg['album_id']){

        
// Если выбирать нужно включая вложенные
        
if($cfg['is_subs']){

            
// получаем категорию
            
$album = $inDB->getNsCategory('cms_photo_albums', $cfg['album_id']);
            if (!
$album) { return false; }

            
$inPhoto->whereThisAndNestedCats($album['NSLeft'], $album['NSRight']);

        } else {

            
$inPhoto->whereAlbumIs($cfg['album_id']);

        }

    }

    
// если фото клубов не нужны
    
if(!$cfg['showclubs']){
        
$inDB->where("f.owner = 'photos'");
    }

    
// Задаем период
    
$inPhoto->wherePeriodIs($cfg['whatphoto']);

    
//устанавливаем сортировку
    
$inDB->orderBy('f.'.$cfg['sort'], 'DESC');

    
//устанавливаем номер текущей страницы и кол-во фото на странице
    
$inDB->limit($cfg['shownum']);

    
// получаем фото
    
$photos = $inPhoto->getPhotos(false, $cfg['is_full']);
    if(!
$photos) { return false; }

    
$smarty = $inCore->initSmarty('modules', 'mod_photo.tpl');
    
$smarty->assign('photos', $photos);
    
$smarty->assign('cfg', $cfg);
    
$smarty->display('mod_photo.tpl');

    return 
true;

}
?>
Онлайн: 0
Реклама