View class, refactoring
This commit is contained in:
@@ -1,12 +1,11 @@
|
||||
<?php
|
||||
class ApiController {
|
||||
protected $input;
|
||||
protected $authenticated;
|
||||
protected $authenticated = false;
|
||||
|
||||
function __construct() {
|
||||
$this->authenticated = false;
|
||||
|
||||
$input = file_get_contents('php://input');
|
||||
|
||||
if(empty($input)){
|
||||
$this->input = NULL;
|
||||
}else{
|
||||
|
@@ -1,5 +1,9 @@
|
||||
<?php
|
||||
|
||||
class Controller{
|
||||
public $view = null;
|
||||
|
||||
public function __construct(){
|
||||
$this->view = new View();
|
||||
}
|
||||
}
|
||||
|
63
library/View.php
Normal file
63
library/View.php
Normal file
@@ -0,0 +1,63 @@
|
||||
<?php
|
||||
|
||||
class View{
|
||||
protected $_content = "";
|
||||
protected $_layout = 'default';
|
||||
|
||||
protected $_viewEnabled = true;
|
||||
protected $_layoutEnabled = true;
|
||||
|
||||
protected $_data = array();
|
||||
|
||||
public function disableLayout(){
|
||||
$this->_layoutEnabled = false;
|
||||
}
|
||||
|
||||
public function enableLayout(){
|
||||
$this->_layoutEnabled = false;
|
||||
}
|
||||
|
||||
public function setLayout($layout){
|
||||
$this->_layout = $layout;
|
||||
}
|
||||
|
||||
public function disableView(){
|
||||
$this->_viewEnabled = false;
|
||||
}
|
||||
|
||||
public function __set($key, $value){
|
||||
$this->_data[$key] = $value;
|
||||
}
|
||||
|
||||
public function __get($key){
|
||||
if(array_key_exists($key, $this->_data)){
|
||||
return $this->_data[$key];
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public function content(){
|
||||
return $this->_content;
|
||||
}
|
||||
|
||||
public function render($template){
|
||||
if($template && $this->_viewEnabled){
|
||||
$this->_fetchContent($template);
|
||||
}
|
||||
|
||||
if($this->_layoutEnabled){
|
||||
include('../app/views/layouts/' . $this->_layout . '.phtml');
|
||||
} else {
|
||||
echo $this->_content;
|
||||
}
|
||||
}
|
||||
|
||||
protected function _fetchContent($template){
|
||||
ob_start();
|
||||
|
||||
include('../app/views/templates/' . $template);
|
||||
|
||||
$this->_content = ob_get_clean();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user