From 068b635948c4c16880dd8bdf9d0e50c634239a70 Mon Sep 17 00:00:00 2001 From: Ulf Gebhardt Date: Fri, 4 Mar 2016 17:45:30 +0100 Subject: [PATCH] basic system docu generation, updated phpdocumentor lib reference --- docu/autoload.inc | 4 +-- docu/docu.php | 22 ++++++++++-- docu/register_sys_docu.php | 2 -- docu/{system => system_}/1.system.md | 0 docu/{system => system_}/2.license.md | 0 docu/{system => system_}/3.getting started.md | 0 docu/{system => system_}/system.api.md | 0 docu/{system => system_}/system.cache.md | 0 docu/{system => system_}/system.config.md | 0 docu/{system => system_}/system.db.md | 0 docu/{system => system_}/system.db.qq.md | 0 docu/{system => system_}/system.docu.md | 0 docu/{system => system_}/system.log.md | 0 docu/{system => system_}/system.page.md | 0 docu/{system => system_}/system.sai.md | 0 docu/{system => system_}/system.security.md | 0 docu/{system => system_}/system.system.md | 0 lib/autoload.inc | 3 +- lib/phpdocumentor | 2 +- .../saimod_sys_docu/js/saimod_sys_docu.js | 12 +++++++ .../saimod_sys_docu/saimod_sys_docu.php | 35 ++++++++++--------- .../saimod_sys_docu/tpl/saimod_sys_docu.tpl | 1 + .../tpl/saimod_sys_docu_cat.tpl | 10 +----- system/system.php | 9 +++++ 24 files changed, 66 insertions(+), 34 deletions(-) delete mode 100644 docu/register_sys_docu.php rename docu/{system => system_}/1.system.md (100%) rename docu/{system => system_}/2.license.md (100%) rename docu/{system => system_}/3.getting started.md (100%) rename docu/{system => system_}/system.api.md (100%) rename docu/{system => system_}/system.cache.md (100%) rename docu/{system => system_}/system.config.md (100%) rename docu/{system => system_}/system.db.md (100%) rename docu/{system => system_}/system.db.qq.md (100%) rename docu/{system => system_}/system.docu.md (100%) rename docu/{system => system_}/system.log.md (100%) rename docu/{system => system_}/system.page.md (100%) rename docu/{system => system_}/system.sai.md (100%) rename docu/{system => system_}/system.security.md (100%) rename docu/{system => system_}/system.system.md (100%) diff --git a/docu/autoload.inc b/docu/autoload.inc index d4353fb..18358b9 100644 --- a/docu/autoload.inc +++ b/docu/autoload.inc @@ -1,4 +1,2 @@ path, 'outpath' => path) + + public static function register($phpdocconfig){ + array_push(self::$phpdocconfigs,$phpdocconfig);} + + public static function getAll(){ + return self::$phpdocconfigs;} + + public static function get($id){ + foreach(self::$phpdocconfigs as $config){ + if($config['id'] == $id){ + return $config;} + } + throw new ERROR('PhpDocConfig for id '.$id.' not found.'); + } + } \ No newline at end of file diff --git a/docu/register_sys_docu.php b/docu/register_sys_docu.php deleted file mode 100644 index 500cb8d..0000000 --- a/docu/register_sys_docu.php +++ /dev/null @@ -1,2 +0,0 @@ - $docs){ - $vars['tabopts'] .= \SYSTEM\PAGE\replace::replaceFile((new \SYSTEM\PSAI('modules/saimod_sys_docu/tpl/tabopt.tpl'))->SERVERPATH(), array( 'tab_id' => str_replace(' ', '_', $cat),'tab_id_pretty' => $cat));} + foreach($phpdocconfigs as $config){ + $vars['tabopts'] .= \SYSTEM\PAGE\replace::replaceFile((new \SYSTEM\PSAI('modules/saimod_sys_docu/tpl/tabopt.tpl'))->SERVERPATH(), array('tab_id' => $config['id'],'tab_id_pretty' => $config['title']));} return \SYSTEM\PAGE\replace::replaceFile((new \SYSTEM\PSAI('modules/saimod_sys_docu/tpl/saimod_sys_docu.tpl'))->SERVERPATH(), $vars); } - public static function sai_mod__SYSTEM_SAI_saimod_sys_docu_action_cat($cat = 'System'){ - $documents = \SYSTEM\DOCU\docu::getDocuments()[$cat]; - $vars = \SYSTEM\PAGE\text::tag(\SYSTEM\SQL\system_text::TAG_SAI_DOCU); - $vars['tabopts'] = ''; - foreach($documents as $doc){ - $vars['tabopts'] .= \SYSTEM\PAGE\replace::replaceFile((new \SYSTEM\PSAI('modules/saimod_sys_docu/tpl/tabopt2.tpl'))->SERVERPATH(), - array( 'tab_id' => str_replace(' ', '_', $cat), - 'doc_id' => str_replace(array('.',' '), '_', basename($doc)), - 'doc_id_pretty' => basename($doc))); - } + public static function sai_mod__SYSTEM_SAI_saimod_sys_docu_action_generate(){ + \LIB\lib_phpdocumentor::php(); + $configs = \SYSTEM\DOCU\docu::getAll(); + foreach($configs as $config){ + \phpdocumentor::run( $config['inpath']->SERVERPATH(), + $config['outpath']->SERVERPATH(), + $config['cachepath']->SERVERPATH(), + $config['title'], + $config['sourcecode'], + $config['parseprivate']);} + } + + public static function sai_mod__SYSTEM_SAI_saimod_sys_docu_action_cat($cat = 'system'){ + $vars = array('iframesrc' => \SYSTEM\DOCU\docu::get($cat)['outpath']->WEBPATH(false)); return \SYSTEM\PAGE\replace::replaceFile((new \SYSTEM\PSAI('modules/saimod_sys_docu/tpl/saimod_sys_docu_cat.tpl'))->SERVERPATH(), $vars); } public static function sai_mod__SYSTEM_SAI_saimod_sys_docu_action_doc($cat = 'System',$doc = '1_system_md'){ - \LIB\lib_markdown::php(); + /*\LIB\lib_markdown::php(); $document = \SYSTEM\DOCU\docu::getDocuments()[$cat]; foreach($document as $docu){ if(str_replace(array('.',' ','\\','/'), '_', basename($docu)) == $doc){ return \Michelf\MarkdownExtra::defaultTransform(file_get_contents($docu));} - } + }*/ return 'not found'; } diff --git a/sai/modules/saimod_sys_docu/tpl/saimod_sys_docu.tpl b/sai/modules/saimod_sys_docu/tpl/saimod_sys_docu.tpl index 206cd82..48c8cb3 100644 --- a/sai/modules/saimod_sys_docu/tpl/saimod_sys_docu.tpl +++ b/sai/modules/saimod_sys_docu/tpl/saimod_sys_docu.tpl @@ -3,6 +3,7 @@
diff --git a/sai/modules/saimod_sys_docu/tpl/saimod_sys_docu_cat.tpl b/sai/modules/saimod_sys_docu/tpl/saimod_sys_docu_cat.tpl index 19b46b9..3bdf7b7 100644 --- a/sai/modules/saimod_sys_docu/tpl/saimod_sys_docu_cat.tpl +++ b/sai/modules/saimod_sys_docu/tpl/saimod_sys_docu_cat.tpl @@ -1,9 +1 @@ -
- -
-
-
-
-
\ No newline at end of file + \ No newline at end of file diff --git a/system/system.php b/system/system.php index 27e9e0c..373836b 100644 --- a/system/system.php +++ b/system/system.php @@ -17,6 +17,15 @@ class system { \SYSTEM\system::register_errorhandler_dbwriter();} //write errors to database (must be first errorhandler to register) if($error_json){ \SYSTEM\system::register_errorhandler_jsonoutput();} //print errors as json to caller (must be last errorhandler to register) + + //register docu here, we require path + \SYSTEM\DOCU\docu::register(array( 'id' => 'system', + 'inpath' => new \SYSTEM\PSYSTEM(), + 'outpath' => new \SYSTEM\PSYSTEM('docu/system/'), + 'cachepath' => new \SYSTEM\PSYSTEM('docu/system/cache/'), + 'sourcecode' => true, + 'parseprivate' => false, + 'title' => 'SYSTEM - PHP Framework')); } public static function _start_time(){ \SYSTEM\time::start();}