Просмотр файла engine/classes/themes.class.php

Размер файла: 5.87Kb
<?

class themes {

    public function __construct() 
	{
        
		include H.'engine/classes/lib/Twig/Autoloader.php';
        Twig_Autoloader::register();
    
	}

    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));	
	
	    }
    }
	
	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;





?>