All pastes #834810 Raw Edit

Miscellany

public text v1 · immutable
#834810 ·published 2007-12-28 14:12 UTC
rendered paste body
class TemplateEngine {
    
    private $_skin;
    private $_language;
    private $_directory;
    private $_components;
    
    public function __construct($layoutDirectory = './lay',$skin = 'default',$language = 'english') {
        $this->_skin = $skin;
        $this->_language = $language;
        $this->_directory = $layoutDirectory;
    }

    public static function selectLanguage($language) {
        static $_language;
    }
    
    public function appendComponent($comp) {
        $this->_components[] = $comp;
    }
    
    private function displayComponents() {
        foreach($this->_components as $comp) {
            if(is_string($comp)) {
                echo $comp;
            } else {
                echo $comp->getOutput();
            }
        }
    }
    
    final public function display() {
        include($this->_directory.$this->_skin.DIRECTORY_SEPARATOR.'main.php');
    }
}