Вход Регистрация
Файл: core/Core.php
Строк: 80
<?php
define
('DEV'true);
define('PATH_VIEW''/view/');
define('PATH_LANG''./lang/');
include_once(
DIR.'/inc/Lang.php');
include_once(
DIR.'/inc/Debug.php');
include_once(
DIR.'/inc/Json.php');
include_once(
DIR.'/inc/Cur.php');
include_once(
DIR.'/inc/Request.php');
include_once(
DIR.'/inc/Loader.php');
include_once(
DIR.'/inc/nav.php');

abstract class 
Core 
{
    protected 
$toTemplate = array();  
    protected    
$act;  
    protected    
$out null;  
    protected    
$al;  
    protected    
$_ref;  
    protected    
$_forFrame null;  
    protected    
$_forFrameCount 0;  

    protected    
$startTime;
  protected    
$endTime;

    protected    
$lang = array(); 
    protected    
$noInit false
    protected    
$_al false
    
    protected    
$mUser// Instance модели.
    
protected    $user// Текущий пользователь.


    
function __construct() {
        
$this->startTime $this->getTime(); // Debug time
        
$act = (!empty($_POST['act'])) ? $_POST['act'] : $_GET['act'];
        
Cur::$set['static'] = Loader::$curStatic;
        
Cur::$set['loc'] = (!empty($_GET['__query'])) ? $_GET['__query'] : $_SERVER['REQUEST_URI'];
        if(!empty(
$act)) Cur::$set['loc'] .= '?act='.$act;
        
$this->_ref $_GET['_ref'];
         
        
// Init invoke method. Вызов нужного местода с act_
        
$act = !empty($act) ? 'act_'.$act:'act_index';
      
$rc = new ReflectionClass($this);
    
$this->act = ($rc->hasMethod($act)) ? $act 'act_index';
        
$this->al = (!empty($_POST['al'])) ? $_POST['al'] : ((!empty($_GET['al'])) ? $_GET['al'] : 3); // al init.

        
$this->__request(); // Init request.
    
}
    
    
// Full processing HTTP request. 
    
public function __request() {
        
$this->_before();

        if(!
$this->noInit) {
            
$this->init(); 
        }

        
$act $this->act// For call act method.
        
$this->$act(); // Call act method.
        
$this->_after();
    }
    
    protected function 
_before() {} // Analog __construct().
    
protected function _after() {} // Analog __destruct().
    
protected function addFrame() {} // для вывода фрейма. 

    // Установка переменных основному шаблону.
    
protected function setVarsMainTempl($arr = array(), $noFrame false) {
        
$this->toTemplate array_merge($this->toTemplate$arr);
        if(
$this->al == -&& $this->_forFrameCount === && !$noFrame)
            
$this->addFrame();
    } 

    
// Include html. Подключения вида. 
    
protected function view($fileName$vars = array(), $frame false) {
        
// Вставка переменных.
        //extract($vars);
        
if(is_array($vars) && !empty($vars)) {
            foreach (
$vars as $k => $v)
                $
$k $v;
        }

        
$ogc null;

        
// Если фреймовый вывод, то файл подключается без буферизации, 
        // если обычное подключения файла (НЕ фрейм) то весь вывод буферизируется в переменную 
        // и возвращается. 
        
if(!$frameob_start();
        include 
DIR.PATH_VIEW.$fileName;
        if(!
$frame$ogc ob_get_clean();

        
// From post frame. Рекурсивный вызов для пост. фрейма framegot
        
if($this->al == -1) {
            if(
is_array($vars['forFrame'])) {
                
$vars['forFrame']['ogc'] = $ogc;
                
$this->_forFrame $vars['forFrame'];
                
$this->addFrame();
            }
        }
        return 
$ogc;
    }    

    
// Текущ. время.  (Для генерации страницы)
  
protected function getTime() {
      
$start_time explode(' ',microtime());
      
$real_time $start_time[1].substr($start_time[0],1);
      return 
$real_time;
  }
}
Онлайн: 0
Реклама