Вход Регистрация
Файл: engine/classes/themes.class.php
Строк: 80
<?php
/**
 * Класс для вывода Шаблонов по браузерам
 * 
 * @package Classes
 * @author Shamsik
 * @link http://shcms.ru
 */

class themes {

    
/**
     * Подключаем Шаблонизатор от Twig
     * 
     * @return string
     */
    
public function __construct() {
        include 
H.'engine/classes/lib/Twig/Autoloader.php';
        
Twig_Autoloader::register();
    }

    
/**
     * Выводим полнный html шаблон с параметрами
     * 
     * @param $title Заголовок страницы
     * @param $desc Описание старницы
     * @param $key Ключевые слова
     */
    
public function template($title 'Название страницы'$desc false$key false) {
    global 
$id_user,$user,$glob_core,$db,$users;
            
        
//Определение типа браузера
        
$detect = new Mobile_Detect;
        
$deviceType = ($detect->isMobile() ? ($detect->isTablet() ? 'tablet' 'phone') : 'computer');
            
    
//На главную
    
if ($_SERVER['PHP_SELF'] !== '/index.php'){
            
$home true;
    }
                
    
//Если существует $db
    
if( isset( $db ) ) {
        
$adv $db->query("SELECT * FROM `advertisement` WHERE `active` = '1' and `images` = ''");
        while(
$advs $db->get_array($adv)){
                    if (
strtotime(date('d-m-Y')) < strtotime($advs['stop'])) {
            
$data[] = $advs;
                    }                        
        }
    }
                
    if( 
$id_user == true ) {
            
// указывае где хранятся шаблоны
        
if($deviceType == 'computer'){
        
$loader = new Twig_Loader_Filesystem(H.'templates/'.$users['web_template'].'/');
        
        }elseif(
$deviceType == 'phone') {
        
$loader = new Twig_Loader_Filesystem(H.'templates/'.$users['wap_template'].'/');            
        }
                
        }else {
         
// указывае где хранятся шаблоны
        
if($deviceType == 'computer'){
                
$loader = new Twig_Loader_Filesystem(H.'templates/web_default/');
        }elseif(
$deviceType == 'phone') {
        
$loader = new Twig_Loader_Filesystem(H.'templates/wap_default/');            
        }    
    }
            
        
//инициализируем Twig
        
$twig = new Twig_Environment($loader);
  
        
// подгружаем шаблон
        
$template $twig->loadTemplate('header.php');
        
        
        
// передаём в шаблон переменные и значения
        // выводим сформированное содержание
    
if( $db == true ) {
        if(
$user->users($id_user,array('group')) == 15) {
        
$lgroup 'Администратор';
        }elseif(
$user->users($id_user,array('group')) == 1) {
        
$lgroup 'Пользователь';
        }
            
        
//Описание если существует выводить
        
if($desc == NULL) {
            
$des =  $glob_core['description'];
        }else{
            
$des $desc
        }
            
        
//Ключевые слова
        
if( $key == NULL ) {
            
$keys $glob_core['keywords'];
        }else {
            
$keys $key;
        }
            
        
$count_friend $db->get_array($db->query("SELECT COUNT(*) FROM `friends` WHERE `id_user` = '".$id_user."' AND `approved` = '1'"));
        
$count_m $db->get_array($db->query("SELECT COUNT(*) FROM `messaging` WHERE `id_post` = '".$id_user."' AND `action` = '0'"));
        
$count_f $db->get_array($db->query("SELECT COUNT(*) FROM `friends` WHERE `id_friends` = '".$id_user."' AND `approved` = '0'"));
                echo 
$template->render(array(
                                
'mail' => $count_m[0],
                                
'countf' => $count_f[0], 
                                
'friend' => $count_friend[0],
                                
'data' => $data,
                                
'main_name' => $main_name,
                                
'title' => $title,
                                
'description' => $des,
                                
'keywords' => $keys,
                                
'id_user' => $id_user,
                                
'home' => $home,
                                
'login' => $user->users($id_user,array('nick')),
                                
'group' => $lgroup,
                                
'site_name' => $glob_core['name_site']
                                    ));
    
    }else {
        echo 
$template->render(array(
                        
'data' => $data,
                        
'main_name' => $main_name,
                        
'title' => $title,
                        
'description' => $des,
                        
'keywords' => $keys,
                        
'home' => $home
                                
));    
    }
    }
    

    
/**
     * Выводим нижнюю часть шаблона
     * 
     * @return string
     */
    
public function __destruct(){ 
        global 
$users,$id_user;
            
        
//Определение типа браузера            
    
$detect = new Mobile_Detect;
    
$deviceType = ($detect->isMobile() ? ($detect->isTablet() ? 'tablet' 'phone') : 'computer');
            if( 
$id_user == true ) {
                    
// указывае где хранятся шаблоны
            
if($deviceType == 'computer') {
                        include_once(
H.'templates/'.$users['web_template'].'/footer.php');
                    }elseif(
$deviceType == 'phone') {
            include_once(
H.'templates/'.$users['wap_template'].'/footer.php');            
            }elseif(
$deviceType == 'tablet') {
            include_once(
H.'templates/'.$users['wap_template'].'/footer.php');    
            }else{
                include_once(
H.'templates/'.$users['wap_template'].'/footer.php');            
            }
            
        }else {
                    
// указывае где хранятся шаблоны
            
if($deviceType == 'computer') {
            include_once(
H.'templates/web_default/footer.php');
            
            }elseif(
$deviceType == 'phone') {
            include_once(
H.'templates/wap_default/footer.php');            
                }    
            
        }    
    }
    
}

$templates = new themes;
Онлайн: 1
Реклама