diff --git a/dbd/sql/mysql/data/system_api.sql b/dbd/sql/mysql/data/system_api.sql
new file mode 100644
index 0000000..d0b5d35
--- /dev/null
+++ b/dbd/sql/mysql/data/system_api.sql
@@ -0,0 +1,14 @@
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (0, 0, 0, -1, NULL, 'call', NULL);
+
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (60, 0, 0, 0, NULL, 'action', NULL);
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (61, 0, 2, 60, 'login', 'username', 'STRING');
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (62, 0, 2, 60, 'login', 'password_sha', 'STRING');
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (63, 0, 2, 60, 'login', 'password_md5', 'STRING');
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (64, 0, 2, 60, 'check', 'rightid', 'UINT');
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (65, 0, 2, 60, 'create', 'username', 'STRING');
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (66, 0, 2, 60, 'create', 'password_sha', 'STRING');
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (67, 0, 2, 60, 'create', 'email', 'STRING');
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (68, 0, 2, 60, 'create', 'locale', 'LANG');
+
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (100, 0, 2, 0, 'files', 'cat', 'STRING');
+INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (101, 0, 3, 0, 'files', 'id', 'STRING');
diff --git a/dbd/sql/mysql/schema/system_cache.sql b/dbd/sql/mysql/schema/system_cache.sql
new file mode 100644
index 0000000..18737d4
--- /dev/null
+++ b/dbd/sql/mysql/schema/system_cache.sql
@@ -0,0 +1,9 @@
+CREATE TABLE `system_cache` (
+ `ID` INT(10) NOT NULL AUTO_INCREMENT,
+ `CacheID` INT(10) NOT NULL,
+ `Ident` CHAR(255) NOT NULL,
+ `data` BINARY(255) NOT NULL,
+ PRIMARY KEY (`ID`)
+)
+COLLATE='utf8_general_ci'
+ENGINE=MyISAM;
\ No newline at end of file
diff --git a/dbd/sql/mysql/schema/system_todo.sql b/dbd/sql/mysql/schema/system_todo.sql
new file mode 100644
index 0000000..3f88815
--- /dev/null
+++ b/dbd/sql/mysql/schema/system_todo.sql
@@ -0,0 +1,16 @@
+CREATE TABLE `system_todo` (
+ `ID` INT(10) NOT NULL AUTO_INCREMENT,
+ `time` DATETIME NOT NULL,
+ `author` INT(11) NOT NULL,
+ `type` INT(11) NOT NULL,
+ `state` INT(11) NOT NULL,
+ `msg_1` TEXT NOT NULL,
+ `msg_2` TEXT NULL,
+ `msg_3` TEXT NULL,
+ `msg_4` TEXT NULL,
+ `msg_5` TEXT NULL,
+ PRIMARY KEY (`ID`)
+)
+COLLATE='utf8_general_ci'
+ENGINE=MyISAM
+AUTO_INCREMENT=5;
\ No newline at end of file
diff --git a/sai/modules/saimod_sys_files/sai_sys_files.js b/sai/modules/saimod_sys_files/saimod_sys_files.js
similarity index 62%
rename from sai/modules/saimod_sys_files/sai_sys_files.js
rename to sai/modules/saimod_sys_files/saimod_sys_files.js
index bbf14c4..14cc55d 100644
--- a/sai/modules/saimod_sys_files/sai_sys_files.js
+++ b/sai/modules/saimod_sys_files/saimod_sys_files.js
@@ -1,4 +1,15 @@
function init__SYSTEM_SAI_saimod_sys_files() {
+ $('#filestab a').click(function (e) {e.preventDefault(); load_tab($(this).attr('tabname')); $(this).tab('show');});
+ register_controlls();
+}
+
+function load_tab(name){
+ $('#tab_'+name).load(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_files&action=tab&name='+name, function(){
+ register_controlls();
+ });
+}
+
+function register_controlls(){
$(".imgdelbtn").click(function(){
$.getJSON(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_files&action=del&cat='+$(this).attr("cat")+'&id='+$(this).attr("id"), function(data){
if(data.status){
@@ -8,9 +19,9 @@ function init__SYSTEM_SAI_saimod_sys_files() {
}
});
});
-
+
$(".imgrnbtn").click(function(){
- $.getJSON(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_files&action=rn&cat='+$(this).attr("cat")+'&id='+$(this).attr("id")+'&newid='+$("#renametext_"+$(this).attr("textfield")).val(), function(data){
+ $.getJSON(SAI_ENDPOINT+'sai_mod=.SYSTEM.SAI.saimod_sys_files&action=rn&cat='+$(this).attr("cat")+'&id='+$(this).attr("id")+'&newid='+$($(this).attr("textfield")).val(), function(data){
if(data.status){
alert("ok");
} else{
@@ -20,4 +31,3 @@ function init__SYSTEM_SAI_saimod_sys_files() {
});
}
-
diff --git a/sai/modules/saimod_sys_files/saimod_sys_files.php b/sai/modules/saimod_sys_files/saimod_sys_files.php
index b6bdd0d..954a219 100644
--- a/sai/modules/saimod_sys_files/saimod_sys_files.php
+++ b/sai/modules/saimod_sys_files/saimod_sys_files.php
@@ -23,28 +23,25 @@ class saimod_sys_files extends \SYSTEM\SAI\SaiModule {
return \SYSTEM\LOG\JsonResult::ok();
}
public static function sai_mod__SYSTEM_SAI_saimod_sys_files(){
- //tt
- $result = '';
- $file_folders = \SYSTEM\FILES\files::get();
- $i = 0;
+ $result = array('tabopts' => '', 'tabs' => '');
+ $file_folders = \SYSTEM\FILES\files::get();
+ //$i = 0;
+ $first = true;
foreach($file_folders as $name=>$folder){
- $cat = \SYSTEM\FILES\files::get($name);
- $result .= "
".$name." ";
- $result .= '";
- $result .= "";
+ $result['tabopts'] .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_files/saimod_sys_files_tabopt.tpl'),array('name' => $name, 'active' => $first ? 'active' : ''));
+ $result['tabs'] .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_files/saimod_sys_files_tab.tpl'),array('name' => $name, 'active' => $first ? 'active' : '', 'content' => $first ? self::sai_mod__SYSTEM_SAI_saimod_sys_files_action_tab($name) : ''));
+ $first = false;
}
- return $result;
- }
+ return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_files/saimod_sys_files.tpl'),$result);
+ }
+
+ public static function sai_mod__SYSTEM_SAI_saimod_sys_files_action_tab($name){
+ $result = '';
+ $cat = \SYSTEM\FILES\files::get($name);
+ $i = 0;
+ foreach($cat as $file){
+ $result .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_files/saimod_sys_files_tableentry.tpl'), array('i' => $i++, 'cat' => $name, 'name' => $file, 'extension' => substr($file,-3,3), 'url' => 'api.php?call=files&cat='.$name.'&id='.$file));}
+ return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_files/saimod_sys_files_tabfull.tpl'), array('content' => $result));}
public static function html_li_menu(){return 'Files ';}
public static function right_public(){return false;}
@@ -52,5 +49,5 @@ class saimod_sys_files extends \SYSTEM\SAI\SaiModule {
public static function sai_mod__SYSTEM_SAI_saimod_sys_files_flag_css(){}
public static function sai_mod__SYSTEM_SAI_saimod_sys_files_flag_js(){return \SYSTEM\LOG\JsonResult::toString(
- array( \SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_files/sai_sys_files.js')));}
+ array( \SYSTEM\WEBPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_files/saimod_sys_files.js')));}
}
\ No newline at end of file
diff --git a/sai/modules/saimod_sys_files/saimod_sys_files.tpl b/sai/modules/saimod_sys_files/saimod_sys_files.tpl
new file mode 100644
index 0000000..0a3fb2b
--- /dev/null
+++ b/sai/modules/saimod_sys_files/saimod_sys_files.tpl
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/sai/modules/saimod_sys_files/saimod_sys_files_tab.tpl b/sai/modules/saimod_sys_files/saimod_sys_files_tab.tpl
new file mode 100644
index 0000000..1731587
--- /dev/null
+++ b/sai/modules/saimod_sys_files/saimod_sys_files_tab.tpl
@@ -0,0 +1 @@
+${content}
\ No newline at end of file
diff --git a/sai/modules/saimod_sys_files/saimod_sys_files_tabfull.tpl b/sai/modules/saimod_sys_files/saimod_sys_files_tabfull.tpl
new file mode 100644
index 0000000..4288a17
--- /dev/null
+++ b/sai/modules/saimod_sys_files/saimod_sys_files_tabfull.tpl
@@ -0,0 +1,16 @@
+
\ No newline at end of file
diff --git a/sai/modules/saimod_sys_files/saimod_sys_files_tableentry.tpl b/sai/modules/saimod_sys_files/saimod_sys_files_tableentry.tpl
new file mode 100644
index 0000000..b685806
--- /dev/null
+++ b/sai/modules/saimod_sys_files/saimod_sys_files_tableentry.tpl
@@ -0,0 +1,12 @@
+
+ ${name}
+ ${extension}
+
+ ${url}
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sai/modules/saimod_sys_files/saimod_sys_files_tabopt.tpl b/sai/modules/saimod_sys_files/saimod_sys_files_tabopt.tpl
new file mode 100644
index 0000000..42f88a7
--- /dev/null
+++ b/sai/modules/saimod_sys_files/saimod_sys_files_tabopt.tpl
@@ -0,0 +1 @@
+${name}
\ No newline at end of file