updated autoload, cleanup sai, saistart module

This commit is contained in:
Ulf Gebhardt 2014-01-24 18:19:20 +01:00
parent d81cdc225d
commit 60d127dc1e
48 changed files with 63 additions and 49 deletions

View File

@ -3,13 +3,8 @@
require_once dirname(__FILE__).'/system/path.php'; require_once dirname(__FILE__).'/system/path.php';
require_once dirname(__FILE__).'/system/autoload.php'; require_once dirname(__FILE__).'/system/autoload.php';
//autoload hook -> refers to autoload class singleton
function __autoload_system($class_name) {
return system\autoload::autoload($class_name);
}
//Register autoload //Register autoload
spl_autoload_register('__autoload_system'); \SYSTEM\autoload::register_autoload();
//Register system classes //Register system classes
\SYSTEM\autoload::registerFolder(dirname(__FILE__).'/system','SYSTEM'); \SYSTEM\autoload::registerFolder(dirname(__FILE__).'/system','SYSTEM');
@ -42,3 +37,4 @@ spl_autoload_register('__autoload_system');
require_once dirname(__FILE__).'/lib/autoload.inc.php'; require_once dirname(__FILE__).'/lib/autoload.inc.php';
require_once dirname(__FILE__).'/docu/register_sys_docu.php'; require_once dirname(__FILE__).'/docu/register_sys_docu.php';
require_once dirname(__FILE__).'/sai/autoload.inc.php';

View File

@ -2,7 +2,6 @@
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/sai','SYSTEM\SAI'); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/sai','SYSTEM\SAI');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/page','SYSTEM\SAI'); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/page','SYSTEM\SAI');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/page/default_page','SYSTEM\SAI');
require_once dirname(__FILE__).'/modules/autoload_modules.php'; require_once dirname(__FILE__).'/modules/autoload_modules.php';
require_once dirname(__FILE__).'/modules/register_modules.php'; require_once dirname(__FILE__).'/modules/register_modules.php';

View File

@ -1,6 +1,6 @@
<?php <?php
SYSTEM\autoload::registerFolder(dirname(__FILE__),'SYSTEM\SAI'); SYSTEM\autoload::registerFolder(dirname(__FILE__),'SYSTEM\SAI');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/saimod_sys_sai','SYSTEM\SAI'); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/saistart_sys_sai','SYSTEM\SAI');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/saimod_sys_login','SYSTEM\SAI'); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/saimod_sys_login','SYSTEM\SAI');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/saimod_sys_log','SYSTEM\SAI'); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/saimod_sys_log','SYSTEM\SAI');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/saimod_sys_security','SYSTEM\SAI'); SYSTEM\autoload::registerFolder(dirname(__FILE__).'/saimod_sys_security','SYSTEM\SAI');

View File

@ -1,6 +1,4 @@
<?php <?php
\SYSTEM\SAI\sai::register_sys('\SYSTEM\SAI\saimod_sys_sai');
\SYSTEM\SAI\sai::register_sys('\SYSTEM\SAI\saimod_sys_log'); \SYSTEM\SAI\sai::register_sys('\SYSTEM\SAI\saimod_sys_log');
\SYSTEM\SAI\sai::register_sys('\SYSTEM\SAI\saimod_sys_security'); \SYSTEM\SAI\sai::register_sys('\SYSTEM\SAI\saimod_sys_security');
\SYSTEM\SAI\sai::register_sys('\SYSTEM\SAI\saimod_sys_mod'); \SYSTEM\SAI\sai::register_sys('\SYSTEM\SAI\saimod_sys_mod');

View File

@ -1,12 +0,0 @@
<?php
namespace SYSTEM\SAI;
class saimod_sys_sai extends \SYSTEM\SAI\SaiModule {
public static function sai_mod__SYSTEM_SAI_saimod_sys_sai(){return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_sai/carousel.tpl'), array());}
public static function html_li_menu(){return '<li class="active"><a href="#" saimenu=".SYSTEM.SAI.saimod_sys_sai">'.\SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_SAI_CONFIG_TITLE).'</a></li>';}
public static function right_public(){return true;}
public static function right_right(){return true;}
public static function sai_mod__SYSTEM_SAI_saimod_sys_sai_flag_css(){}
public static function sai_mod__SYSTEM_SAI_saimod_sys_sai_flag_js(){}
}

View File

@ -0,0 +1,12 @@
<?php
namespace SYSTEM\SAI;
class saistart_sys_sai extends \SYSTEM\SAI\SaiModule {
public static function sai_mod__SYSTEM_SAI_saistart_sys_sai(){return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saistart_sys_sai/carousel.tpl'), array());}
public static function html_li_menu(){return '<li class="active"><a href="#" saimenu=".SYSTEM.SAI.saistart_sys_sai">'.\SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_SAI_CONFIG_TITLE).'</a></li>';}
public static function right_public(){return true;}
public static function right_right(){return true;}
public static function sai_mod__SYSTEM_SAI_saistart_sys_sai_flag_css(){}
public static function sai_mod__SYSTEM_SAI_saistart_sys_sai_flag_js(){}
}

View File

Before

Width:  |  Height:  |  Size: 8.6 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

View File

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

View File

@ -18,7 +18,6 @@ class default_page extends \SYSTEM\PAGE\Page {
private function menu_proj(){ private function menu_proj(){
$result = ''; $result = '';
$mods = \SYSTEM\SAI\sai::getModules(); $mods = \SYSTEM\SAI\sai::getModules();
foreach($mods as $mod){ foreach($mods as $mod){
if(\call_user_func(array($mod, 'right_public')) || if(\call_user_func(array($mod, 'right_public')) ||
@ -28,16 +27,23 @@ class default_page extends \SYSTEM\PAGE\Page {
return $result; return $result;
} }
private function menu_start(){
$mod = \SYSTEM\SAI\sai::getStartModule();
if(\call_user_func(array($mod, 'right_public')) ||
\call_user_func(array($mod, 'right_right'))){
return \call_user_func(array($mod, 'html_li_menu'));}
throw new \SYSTEM\LOG\ERROR('Your SAI-Start-Module haz a Problem - either it does not exist or it is not public - which is required!');}
private function css(){ private function css(){
$result = '<link rel="stylesheet" href="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/default_page/css/libs/bootstrap.min.css').'" type="text/css" />'. $result = '<link rel="stylesheet" href="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/css/libs/bootstrap.min.css').'" type="text/css" />'.
'<link rel="stylesheet" href="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/default_page/css/index.css').'" type="text/css" />'; '<link rel="stylesheet" href="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/css/index.css').'" type="text/css" />';
return $result; return $result;
} }
private function js(){ private function js(){
$result = '<script src="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/default_page/js/libs/jquery.min.js').'" type="text/javascript"></script>'. $result = '<script src="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/js/libs/jquery.min.js').'" type="text/javascript"></script>'.
'<script src="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/default_page/js/libs/bootstrap.min.js').'" type="text/javascript"></script>'. '<script src="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/js/libs/bootstrap.min.js').'" type="text/javascript"></script>'.
'<script src="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/default_page/js/sai.js').'" type="text/javascript"></script>'. '<script src="'.\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'page/js/sai.js').'" type="text/javascript"></script>'.
'<script src="https://www.google.com/jsapi" type="text/javascript"></script>'. '<script src="https://www.google.com/jsapi" type="text/javascript"></script>'.
'<script src="https://maps.google.com/maps/api/js?v=3&sensor=false" type="text/javascript"></script>'. '<script src="https://maps.google.com/maps/api/js?v=3&sensor=false" type="text/javascript"></script>'.
'<script type="text/javascript">google.load("visualization", "1", {packages:["corechart"]});</script>'. '<script type="text/javascript">google.load("visualization", "1", {packages:["corechart"]});</script>'.
@ -52,6 +58,7 @@ class default_page extends \SYSTEM\PAGE\Page {
$vars['css'] = $this->css(); $vars['css'] = $this->css();
$vars['js'] = $this->js(); $vars['js'] = $this->js();
$vars['menu_start'] = $this->menu_start();
$vars['menu_sys'] = $this->menu_sys(); $vars['menu_sys'] = $this->menu_sys();
$vars['menu_proj'] = $this->menu_proj(); $vars['menu_proj'] = $this->menu_proj();
$vars['navimg'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_SAI_CONFIG_NAVIMG); $vars['navimg'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_SAI_CONFIG_NAVIMG);
@ -59,6 +66,6 @@ class default_page extends \SYSTEM\PAGE\Page {
$vars['copyright'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_SAI_CONFIG_COPYRIGHT); //&copy; <a href="http://www.da-sense.de" target="_blank">da_sense</a>, TU Darmstadt 2013 $vars['copyright'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_SAI_CONFIG_COPYRIGHT); //&copy; <a href="http://www.da-sense.de" target="_blank">da_sense</a>, TU Darmstadt 2013
$vars = array_merge($vars,\SYSTEM\locale::getStrings(\SYSTEM\DBD\system_locale_string::VALUE_CATEGORY_SYSTEM_SAI)); $vars = array_merge($vars,\SYSTEM\locale::getStrings(\SYSTEM\DBD\system_locale_string::VALUE_CATEGORY_SYSTEM_SAI));
return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'page/default_page/sai.tpl'), $vars); return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'page/sai.tpl'), $vars);
} }
} }

View File

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 7.3 KiB

View File

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

Before

Width:  |  Height:  |  Size: 420 KiB

After

Width:  |  Height:  |  Size: 420 KiB

View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

Before

Width:  |  Height:  |  Size: 204 B

After

Width:  |  Height:  |  Size: 204 B

View File

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View File

Before

Width:  |  Height:  |  Size: 783 B

After

Width:  |  Height:  |  Size: 783 B

View File

Before

Width:  |  Height:  |  Size: 363 B

After

Width:  |  Height:  |  Size: 363 B

View File

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View File

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

Before

Width:  |  Height:  |  Size: 233 KiB

After

Width:  |  Height:  |  Size: 233 KiB

View File

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -3,9 +3,15 @@ var scripts_loaded = 0;
var scripts_req = 0; var scripts_req = 0;
/** jQuery on document ready */ /** jQuery on document ready */
$(document).ready(function() { $(document).ready(function() {
// initialize content // initialize content
loadModuleContent('.SYSTEM.SAI.saimod_sys_sai'); //loadModuleContent('.SYSTEM.SAI.saistart_sys_sai');
$('#sai_navbar li a').each(function(){
if($(this).parent().hasClass('active')){
loadModuleContent($(this).attr("saimenu"));
}
});
//alert($('#sai_navbar active').attr("saimenu"));
//loadModuleContent($('#sai_navbar li active a').attr("saimenu"));
//load content -> menu //load content -> menu
$('#sai_navbar ul li a, #project_navbar ul li a').click(function () { $('#sai_navbar ul li a, #project_navbar ul li a').click(function () {

View File

@ -3,7 +3,6 @@
<head> <head>
<title>${title}</title> <title>${title}</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="icon" type="image/png" href="${navimg}" /> <link rel="icon" type="image/png" href="${navimg}" />
${css} ${css}
${js} ${js}
@ -17,6 +16,7 @@
</div> </div>
<a class="brand" href="#" style="width: 159px;">SAI</a> <a class="brand" href="#" style="width: 159px;">SAI</a>
<ul class="nav"> <ul class="nav">
${menu_start}
${menu_sys} ${menu_sys}
</ul> </ul>
</div> </div>

View File

@ -3,26 +3,36 @@
namespace SYSTEM\SAI; namespace SYSTEM\SAI;
class sai { class sai {
private static $module_start = '\SYSTEM\SAI\saistart_sys_sai';
private static $modules = array(); //only strings! private static $modules = array(); //only strings!
private static $modules_sys = array(); //only strings! private static $modules_sys = array(); //only strings!
public static function register($module){ private static function check_module($module){
if( !\class_exists($module) || if( !\class_exists($module) ||
!\is_array($parents = \class_parents($module)) || !\is_array($parents = \class_parents($module)) ||
!\array_search('SYSTEM\SAI\SaiModule', $parents)){ !\array_search('SYSTEM\SAI\SaiModule', $parents)){
throw new \Exception('Problem with your Sysmodule class: '.$module);} return false;}
return true;}
public static function register_start($module){
if(!self::check_module($module)){
throw new \SYSTEM\LOG\ERROR('Problem with your Sysmodule class: '.$module);}
self::$module_start = $module;}
public static function register($module){
if(!self::check_module($module)){
throw new \SYSTEM\LOG\ERROR('Problem with your Sysmodule class: '.$module);}
array_push(self::$modules,$module);} array_push(self::$modules,$module);}
public static function register_sys($module){ public static function register_sys($module){
if( !\class_exists($module) || if(!self::check_module($module)){
!\is_array($parents = \class_parents($module)) || throw new \SYSTEM\LOG\ERROR('Problem with your Sysmodule class: '.$module);}
!\array_search('SYSTEM\SAI\SaiModule', $parents)){
throw new \Exception('Problem with your Sysmodule class: '.$module);}
array_push(self::$modules_sys,$module);} array_push(self::$modules_sys,$module);}
public static function getStartModule(){
return self::$module_start;}
public static function getModules(){ public static function getModules(){
return self::$modules;} return self::$modules;}
public static function getSysModules(){ public static function getSysModules(){
return self::$modules_sys;} return self::$modules_sys;}
public static function getAllModules(){ public static function getAllModules(){
return array_merge(self::$modules_sys,self::$modules);} return array_merge(self::$modules_sys,self::$modules,array(self::$module_start));}
} }

View File

@ -1,5 +1,4 @@
<?php <?php
namespace SYSTEM; namespace SYSTEM;
class autoload { class autoload {
@ -9,15 +8,11 @@ class autoload {
private static function getClassFromFile($file){ private static function getClassFromFile($file){
$path_info = \pathinfo($file); $path_info = \pathinfo($file);
return $path_info['filename'];}
return $path_info['filename'];
}
private static function getClassNamespaceFromClass($class){ private static function getClassNamespaceFromClass($class){
$path_info = \pathinfo($class); $path_info = \pathinfo($class);
$lastslash = \strrpos($class, 92); $lastslash = \strrpos($class, 92);
//No Namespace found //No Namespace found
if(!$lastslash){ if(!$lastslash){
return array($class, '');} return array($class, '');}
@ -59,6 +54,9 @@ class autoload {
self::$folders[] = array($namespace, $folder); self::$folders[] = array($namespace, $folder);
} }
public static function register_autoload(){
spl_autoload_register('\SYSTEM\autoload::autoload');}
public static function autoload($class){ public static function autoload($class){
$classns = self::getClassNamespaceFromClass($class); $classns = self::getClassNamespaceFromClass($class);