adding abstract methods (mandatory for children classes)

This commit is contained in:
2015-12-01 23:20:52 +01:00
parent a35382646e
commit 174b559464
2 changed files with 17 additions and 17 deletions

View File

@@ -67,7 +67,7 @@ class ClassManagement extends PhpObject
} }
/** /**
* * PHP Object
* @author franzz * @author franzz
* @version 1.1 * @version 1.1
*/ */

View File

@@ -5,7 +5,7 @@
* @author franzz * @author franzz
* @version 2.1 * @version 2.1
*/ */
class Main extends PhpObject abstract class Main extends PhpObject
{ {
//Constants //Constants
const SUCCESS = 'success'; const SUCCESS = 'success';
@@ -58,16 +58,12 @@ class Main extends PhpObject
//Init objects //Init objects
//$this->setLanguage($sLang); //$this->setLanguage($sLang);
//$this->oTranslator = new Translator($this->getLanguage()); //$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(); if($this->oMySql->sDbState == MySqlManager::DB_NO_DATA) $this->install();
//... //...
} }
private function install() protected abstract function install();
{
//Install DB
$this->oMySql->install();
}
private function setContext($sProcessPage) private function setContext($sProcessPage)
{ {
@@ -97,13 +93,20 @@ class Main extends PhpObject
/* Building main pages */ /* 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']); $asGlobalVars['consts'] = array('success'=>self::SUCCESS, 'error'=>self::ERROR, 'process_page'=>$this->asContext['process_page']);
$sPage = $this->getPageContent($sPage); //Masks
$sGlobalVars = "\n".'asGlobalVars = '.json_encode($asGlobalVars).';'; $asPages = array_values($this->asMasks);
return $sPage."\n".'<script type="text/javascript">'.$sGlobalVars."\n".'</script>'; 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) protected function getPageContent($sPage)
@@ -113,10 +116,7 @@ class Main extends PhpObject
/* DB structure. See MySqlManager::__construct */ /* DB structure. See MySqlManager::__construct */
private static function getSqlOptions() protected abstract function getSqlOptions();
{
return self::NOT_FOUND;
}
/* /*
private function getLanguage() private function getLanguage()