From 7dc77d4e158606602654999655b0317c0b1ec6c8 Mon Sep 17 00:00:00 2001 From: rylon Date: Sat, 11 Apr 2015 22:40:06 +0200 Subject: [PATCH] new saimod page, proto, saimod api fixes --- dbd/sql/mysql/data/sai_api.sql | 16 +++- dbd/sql/mysql/data/system_page.sql | 7 +- sai/modules/autoload.inc | 1 + .../saimod_sys_api/css/saimod_sys_api.css | 64 --------------- sai/modules/saimod_sys_api/tpl/new_dialog.tpl | 6 ++ sai/modules/saimod_sys_page/autoload.inc | 5 ++ .../saimod_sys_page/css/saimod_sys_page.css | 0 .../saimod_sys_page/js/saimod_sys_page.js | 54 +++++++++++++ .../qq/SYS_SAIMOD_PAGE_ADD.php | 11 +++ .../qq/SYS_SAIMOD_PAGE_DEL.php | 11 +++ .../qq/SYS_SAIMOD_PAGE_GET.php | 11 +++ .../qq/SYS_SAIMOD_PAGE_GROUPS.php | 11 +++ .../qq/SYS_SAIMOD_PAGE_SINGLE_SELECT.php | 11 +++ .../saimod_sys_page/saimod_sys_page.php | 77 +++++++++++++++++++ .../saimod_sys_page/tpl/delete_dialog.tpl | 32 ++++++++ .../saimod_sys_page/tpl/list_entry.tpl | 12 +++ .../saimod_sys_page/tpl/new_dialog.tpl | 44 +++++++++++ .../saimod_sys_page/tpl/saimod_sys_page.tpl | 12 +++ .../tpl/saimod_sys_page_list.tpl | 15 ++++ sai/modules/saimod_sys_page/tpl/tabopt.tpl | 1 + 20 files changed, 335 insertions(+), 66 deletions(-) create mode 100644 sai/modules/saimod_sys_page/autoload.inc create mode 100644 sai/modules/saimod_sys_page/css/saimod_sys_page.css create mode 100644 sai/modules/saimod_sys_page/js/saimod_sys_page.js create mode 100644 sai/modules/saimod_sys_page/qq/SYS_SAIMOD_PAGE_ADD.php create mode 100644 sai/modules/saimod_sys_page/qq/SYS_SAIMOD_PAGE_DEL.php create mode 100644 sai/modules/saimod_sys_page/qq/SYS_SAIMOD_PAGE_GET.php create mode 100644 sai/modules/saimod_sys_page/qq/SYS_SAIMOD_PAGE_GROUPS.php create mode 100644 sai/modules/saimod_sys_page/qq/SYS_SAIMOD_PAGE_SINGLE_SELECT.php create mode 100644 sai/modules/saimod_sys_page/saimod_sys_page.php create mode 100644 sai/modules/saimod_sys_page/tpl/delete_dialog.tpl create mode 100644 sai/modules/saimod_sys_page/tpl/list_entry.tpl create mode 100644 sai/modules/saimod_sys_page/tpl/new_dialog.tpl create mode 100644 sai/modules/saimod_sys_page/tpl/saimod_sys_page.tpl create mode 100644 sai/modules/saimod_sys_page/tpl/saimod_sys_page_list.tpl create mode 100644 sai/modules/saimod_sys_page/tpl/tabopt.tpl diff --git a/dbd/sql/mysql/data/sai_api.sql b/dbd/sql/mysql/data/sai_api.sql index d148062..f5b6595 100644 --- a/dbd/sql/mysql/data/sai_api.sql +++ b/dbd/sql/mysql/data/sai_api.sql @@ -152,4 +152,18 @@ INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `nam INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1208, 42, 2, 1200, 'del', 'cls', 'STRING'); INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1209, 42, 2, 1200, 'deldialog', 'cls', 'STRING'); INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1210, 42, 2, 1200, 'change', 'cls', 'STRING'); -INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1211, 42, 2, 1200, 'change', 'status', 'INT'); \ No newline at end of file +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1211, 42, 2, 1200, 'change', 'status', 'INT'); + +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1300, 42, 0, 0, '_SYSTEM_SAI_saimod_sys_page', 'action', NULL); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1301, 42, 2, 1300, 'addcall', 'ID', 'INT'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1302, 42, 2, 1300, 'addcall', 'group', 'INT'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1303, 42, 2, 1300, 'addcall', 'type', 'INT'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1304, 42, 2, 1300, 'addcall', 'parentID', 'INT'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1305, 42, 2, 1300, 'addcall', 'parentValue', 'STRING'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1306, 42, 2, 1300, 'addcall', 'name', 'STRING'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1307, 42, 2, 1300, 'addcall', 'verify', 'ALL'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1308, 42, 2, 1300, 'deletecall', 'ID', 'INT'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1309, 42, 2, 1300, 'deletecall', 'group', 'INT'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1310, 42, 2, 1300, 'deletedialog', 'ID', 'INT'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1311, 42, 2, 1300, 'deletedialog', 'group', 'INT'); +INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (1320, 42, 3, 1300, 'list', 'group', 'INT'); \ No newline at end of file diff --git a/dbd/sql/mysql/data/system_page.sql b/dbd/sql/mysql/data/system_page.sql index 70ffddc..4d51ecb 100644 --- a/dbd/sql/mysql/data/system_page.sql +++ b/dbd/sql/mysql/data/system_page.sql @@ -39,4 +39,9 @@ INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (123, 'stats', 42, 'todo', 120, 1, '#tab_todo', '/sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_todo&action=stats', 'init_saimod_sys_todo_stats', '\\SYSTEM\\SAI\\saimod_sys_todo'); INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (124, 'todoopen', 42, 'todo', 120, 1, '#tab_todo', '/sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_todo&action=todo&todo=${todo}', 'init_saimod_sys_todo_todoopen', '\\SYSTEM\\SAI\\saimod_sys_todo'); INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (125, 'todoclose', 42, 'todo', 120, 1, '#tab_todo', '/sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_todo&action=todo&todo=${todo}', 'init_saimod_sys_todo_todoclose', '\\SYSTEM\\SAI\\saimod_sys_todo'); -INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (126, 'new', 42, 'todo', 120, 1, '#tab_todo', './sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_todo&action=new', 'init_saimod_sys_todo_new', '\\SYSTEM\\SAI\\saimod_sys_todo'); \ No newline at end of file +INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (126, 'new', 42, 'todo', 120, 1, '#tab_todo', './sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_todo&action=new', 'init_saimod_sys_todo_new', '\\SYSTEM\\SAI\\saimod_sys_todo'); + +INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (130, 'page', 42, 'page', -1, 0, '#content', './sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_page', 'init_saimod_sys_page', '\\SYSTEM\\SAI\\saimod_sys_page'); +INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (131, 'all', 42, 'page', 130, 0, '#tab_page', './sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_page&action=list&group=${group}', 'init_saimod_sys_page_list', '\\SYSTEM\\SAI\\saimod_sys_page'); +INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (132, 'delete', 42, 'page', 130, 1, '#tab_page', './sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_page&action=deletedialog&group=${group}&ID=${id}', 'init_saimod_sys_page_delete', '\\SYSTEM\\SAI\\saimod_sys_page'); +INSERT INTO `system_page` (`id`, `name`, `group`, `state`, `parent_id`, `type`, `div`, `url`, `func`, `php_class`) VALUES (133, 'new', 42, 'page', 130, 1, '#tab_page', './sai.php?sai_mod=.SYSTEM.SAI.saimod_sys_page&action=newdialog', 'init_saimod_sys_page_new', '\\SYSTEM\\SAI\\saimod_sys_page'); \ No newline at end of file diff --git a/sai/modules/autoload.inc b/sai/modules/autoload.inc index 796292d..28c0857 100644 --- a/sai/modules/autoload.inc +++ b/sai/modules/autoload.inc @@ -7,6 +7,7 @@ require_once dirname(__FILE__).'/saimod_sys_security/autoload.inc'; require_once dirname(__FILE__).'/saimod_sys_mod/autoload.inc'; require_once dirname(__FILE__).'/saimod_sys_config/autoload.inc'; require_once dirname(__FILE__).'/saimod_sys_api/autoload.inc'; +require_once dirname(__FILE__).'/saimod_sys_page/autoload.inc'; require_once dirname(__FILE__).'/saimod_sys_text/autoload.inc'; require_once dirname(__FILE__).'/saimod_sys_files/autoload.inc'; require_once dirname(__FILE__).'/saimod_sys_cache/autoload.inc'; diff --git a/sai/modules/saimod_sys_api/css/saimod_sys_api.css b/sai/modules/saimod_sys_api/css/saimod_sys_api.css index 07df088..e69de29 100644 --- a/sai/modules/saimod_sys_api/css/saimod_sys_api.css +++ b/sai/modules/saimod_sys_api/css/saimod_sys_api.css @@ -1,64 +0,0 @@ -p { - font-size: 90%; -} -.tree { - min-height:20px; - padding:19px; - margin-bottom:20px; - background-color:#fbfbfb; - border:1px solid #999; - -webkit-border-radius:4px; - -moz-border-radius:4px; - border-radius:4px; - -webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05); - -moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05); - box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05) -} -.tree li { - list-style-type:none; - margin:0; - padding:10px 5px 0 5px; - position:relative -} -.tree li::before, .tree li::after { - content:''; - left:-20px; - position:absolute; - right:auto -} -.tree li::before { - border-left:1px solid #999; - bottom:50px; - height:100%; - top:0; - width:1px -} -.tree li::after { - border-top:1px solid #999; - height:20px; - top:25px; - width:25px -} -.tree li span { - -moz-border-radius:5px; - -webkit-border-radius:5px; - border:1px solid #999; - border-radius:5px; - display:inline-block; - padding:3px 8px; - text-decoration:none -} -.tree li.parent_li>span { - cursor:pointer -} -.tree>ul>li::before, .tree>ul>li::after { - border:0 -} -.tree li:last-child::before { - height:30px -} -.tree li.parent_li>span:hover, .tree li.parent_li>span:hover+ul li span { - background:#eee; - border:1px solid #94a0b4; - color:#000 -} \ No newline at end of file diff --git a/sai/modules/saimod_sys_api/tpl/new_dialog.tpl b/sai/modules/saimod_sys_api/tpl/new_dialog.tpl index a4f8e1f..ac20605 100644 --- a/sai/modules/saimod_sys_api/tpl/new_dialog.tpl +++ b/sai/modules/saimod_sys_api/tpl/new_dialog.tpl @@ -3,21 +3,27 @@ ID + Group + Type + ParentID + ParentValue + Name + Verify diff --git a/sai/modules/saimod_sys_page/autoload.inc b/sai/modules/saimod_sys_page/autoload.inc new file mode 100644 index 0000000..d716329 --- /dev/null +++ b/sai/modules/saimod_sys_page/autoload.inc @@ -0,0 +1,5 @@ +Api call deleted!

'); + $('#del_page_del').hide(); + } + }); + }); +} \ No newline at end of file diff --git a/sai/modules/saimod_sys_page/qq/SYS_SAIMOD_PAGE_ADD.php b/sai/modules/saimod_sys_page/qq/SYS_SAIMOD_PAGE_ADD.php new file mode 100644 index 0000000..eeb7d9e --- /dev/null +++ b/sai/modules/saimod_sys_page/qq/SYS_SAIMOD_PAGE_ADD.php @@ -0,0 +1,11 @@ +next()){ + $vars['tabopts'] .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_page/tpl/tabopt.tpl'), array( 'tab_id' => $r['group']));} + return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_page/tpl/saimod_sys_page.tpl'), $vars); + } + + public static function sai_mod__system_sai_saimod_sys_page_action_list($group=null){ + $res = \SYSTEM\DBD\SYS_SAIMOD_PAGE_GET::QQ(); + $tab = array('content' => ''); + while($r = $res->next()){ + if($group != null && $r['group'] != $group){ + continue;} + $tab['tab_id'] = $r['group']; + $r['tr_class'] = self::tablerow_class($r['type']); + $r['type'] = self::type_names($r['type']); + $tab['content'] .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_page/tpl/list_entry.tpl'), $r); + } + return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_page/tpl/saimod_sys_page_list.tpl'), $tab); + } + + public static function sai_mod__system_sai_saimod_sys_page_action_deletedialog($ID,$group){ + $res = \SYSTEM\DBD\SYS_SAIMOD_PAGE_SINGLE_SELECT::Q1(array($ID,$group)); + return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_page/tpl/delete_dialog.tpl'), $res); + } + public static function sai_mod__system_sai_saimod_sys_page_action_newdialog(){ + return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_page/tpl/new_dialog.tpl'));} + + public static function sai_mod__system_sai_saimod_sys_page_action_addcall($ID,$group,$type,$parentID,$parentValue,$name,$verify){ + if(!\SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI_API)){ + throw new \SYSTEM\LOG\ERROR("You dont have edit Rights - Cant proceeed");} + if($parentValue == ''){ $parentValue = NULL;} + if($verify == ''){ $verify = NULL;} + \SYSTEM\DBD\SYS_SAIMOD_PAGE_ADD::QI(array($ID,$group,$type,$parentID,$parentValue,$name,$verify)); + return \SYSTEM\LOG\JsonResult::ok(); + } + + public static function sai_mod__system_sai_saimod_sys_page_action_deletecall($ID,$group){ + if(!\SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI_API)){ + throw new \SYSTEM\LOG\ERROR("You dont have edit Rights - Cant proceeed");} + \SYSTEM\DBD\SYS_SAIMOD_PAGE_DEL::QI(array($ID,$group)); + return \SYSTEM\LOG\JsonResult::ok(); + } + + private static function type_names($type){ + switch($type){ + case 0: return 'STATIC'; + case 1: return 'DYNAMIC'; + default: return 'Problem unknown type'; + } + } + + private static function tablerow_class($flag){ + switch($flag){ + case 0: return 'info'; + case 1: return ''; + case 4: return 'warning'; + default: return 'success'; + } + } + + public static function html_li_menu(){return '
  • Page
  • ';} + public static function right_public(){return false;} + public static function right_right(){return \SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI) && \SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI_API);} + + public static function css(){ + return array(\SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_page/css/saimod_sys_page.css'));} + public static function js(){ + return array( \SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_page/js/saimod_sys_page.js'));} +} \ No newline at end of file diff --git a/sai/modules/saimod_sys_page/tpl/delete_dialog.tpl b/sai/modules/saimod_sys_page/tpl/delete_dialog.tpl new file mode 100644 index 0000000..590c79a --- /dev/null +++ b/sai/modules/saimod_sys_page/tpl/delete_dialog.tpl @@ -0,0 +1,32 @@ +
    +
    Page: ${id}
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    idnamegroupstateparent_idtypedivurlfuncphp_class
    ${id}${name}${group}${state}${parent_id}${type}${div}${url}${func}${php_class}
    +
    + + diff --git a/sai/modules/saimod_sys_page/tpl/list_entry.tpl b/sai/modules/saimod_sys_page/tpl/list_entry.tpl new file mode 100644 index 0000000..48013d1 --- /dev/null +++ b/sai/modules/saimod_sys_page/tpl/list_entry.tpl @@ -0,0 +1,12 @@ + + ${id} + ${name} + ${group} + ${state} + ${parent_id} + ${type} + ${div} + ${url} + ${func} + ${php_class} + \ No newline at end of file diff --git a/sai/modules/saimod_sys_page/tpl/new_dialog.tpl b/sai/modules/saimod_sys_page/tpl/new_dialog.tpl new file mode 100644 index 0000000..71cecb1 --- /dev/null +++ b/sai/modules/saimod_sys_page/tpl/new_dialog.tpl @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    id
    name
    group
    state
    parent_id
    type
    div
    url
    func
    php_class
    + + \ No newline at end of file diff --git a/sai/modules/saimod_sys_page/tpl/saimod_sys_page.tpl b/sai/modules/saimod_sys_page/tpl/saimod_sys_page.tpl new file mode 100644 index 0000000..82b7a60 --- /dev/null +++ b/sai/modules/saimod_sys_page/tpl/saimod_sys_page.tpl @@ -0,0 +1,12 @@ +

    System Page

    +
    +
    + +
    +
    +
    +
    \ No newline at end of file diff --git a/sai/modules/saimod_sys_page/tpl/saimod_sys_page_list.tpl b/sai/modules/saimod_sys_page/tpl/saimod_sys_page_list.tpl new file mode 100644 index 0000000..1049e64 --- /dev/null +++ b/sai/modules/saimod_sys_page/tpl/saimod_sys_page_list.tpl @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + ${content} +
    idnamegroupstateparent_idtypedivurlfuncphp_class
    \ No newline at end of file diff --git a/sai/modules/saimod_sys_page/tpl/tabopt.tpl b/sai/modules/saimod_sys_page/tpl/tabopt.tpl new file mode 100644 index 0000000..b99eb35 --- /dev/null +++ b/sai/modules/saimod_sys_page/tpl/tabopt.tpl @@ -0,0 +1 @@ +
  • Group ${tab_id}
  • \ No newline at end of file