From 174b559464beac173442496bea95f36175f95140 Mon Sep 17 00:00:00 2001 From: franzz Date: Tue, 1 Dec 2015 23:20:52 +0100 Subject: [PATCH] adding abstract methods (mandatory for children classes) --- class_management.php | 2 +- inc/main.php | 32 ++++++++++++++++---------------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/class_management.php b/class_management.php index 47284f1..921d143 100755 --- a/class_management.php +++ b/class_management.php @@ -67,7 +67,7 @@ class ClassManagement extends PhpObject } /** - * + * PHP Object * @author franzz * @version 1.1 */ diff --git a/inc/main.php b/inc/main.php index a28c798..7193362 100755 --- a/inc/main.php +++ b/inc/main.php @@ -5,7 +5,7 @@ * @author franzz * @version 2.1 */ -class Main extends PhpObject +abstract class Main extends PhpObject { //Constants const SUCCESS = 'success'; @@ -58,16 +58,12 @@ class Main extends PhpObject //Init objects //$this->setLanguage($sLang); //$this->oTranslator = new Translator($this->getLanguage()); - $this->oMySql = new MySqlManager(Settings::DB_SERVER, Settings::DB_LOGIN, Settings::DB_PASS, Settings::DB_NAME, self::getSqlOptions() , Settings::DB_ENC); + $this->oMySql = new MySqlManager(Settings::DB_SERVER, Settings::DB_LOGIN, Settings::DB_PASS, Settings::DB_NAME, $this->getSqlOptions() , Settings::DB_ENC); if($this->oMySql->sDbState == MySqlManager::DB_NO_DATA) $this->install(); //... } - private function install() - { - //Install DB - $this->oMySql->install(); - } + protected abstract function install(); private function setContext($sProcessPage) { @@ -97,13 +93,20 @@ class Main extends PhpObject /* Building main pages */ - private function getMainPage($sPage, $asGlobalVars=array()) + public function getMainPage($asGlobalVars=array(), $sMainPage='index') { $asGlobalVars['consts'] = array('success'=>self::SUCCESS, 'error'=>self::ERROR, 'process_page'=>$this->asContext['process_page']); - - $sPage = $this->getPageContent($sPage); - $sGlobalVars = "\n".'asGlobalVars = '.json_encode($asGlobalVars).';'; - return $sPage."\n".''; + + //Masks + $asPages = array_values($this->asMasks); + foreach($asPages as $sPage) + { + $sPageContent = $this->getPageContent($sPage); + if($sPage==$sMainPage) $sMainPageContent = $sPageContent; + else $asGlobalVars['consts']['pages'][$sPage] = $sPageContent; + } + + return str_replace('asGlobalVars', json_encode($asGlobalVars), $sMainPageContent); } protected function getPageContent($sPage) @@ -113,10 +116,7 @@ class Main extends PhpObject /* DB structure. See MySqlManager::__construct */ - private static function getSqlOptions() - { - return self::NOT_FOUND; - } + protected abstract function getSqlOptions(); /* private function getLanguage()