saimod text working (including save and delete), jsonresult fail
This commit is contained in:
parent
2deda1fe56
commit
9a9e5e8b8b
11
dbd/qq/SYS_TEXT_DELETE.php
Normal file
11
dbd/qq/SYS_TEXT_DELETE.php
Normal file
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
namespace SYSTEM\DBD;
|
||||
|
||||
class SYS_TEXT_DELETE extends \SYSTEM\DB\QP {
|
||||
protected static function query(){
|
||||
return new \SYSTEM\DB\QQuery(get_class(),
|
||||
//pg
|
||||
'',
|
||||
//mys
|
||||
'DELETE FROM `system_text` WHERE id = ? and lang = ?;'
|
||||
);}}
|
||||
11
dbd/qq/SYS_TEXT_DELETE_TAGS.php
Normal file
11
dbd/qq/SYS_TEXT_DELETE_TAGS.php
Normal file
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
namespace SYSTEM\DBD;
|
||||
|
||||
class SYS_TEXT_DELETE_TAGS extends \SYSTEM\DB\QP {
|
||||
protected static function query(){
|
||||
return new \SYSTEM\DB\QQuery(get_class(),
|
||||
//pg
|
||||
'',
|
||||
//mys
|
||||
'DELETE FROM `system_text_tag` WHERE id = ?;'
|
||||
);}}
|
||||
12
dbd/qq/SYS_TEXT_GET_ID_COUNT.php
Normal file
12
dbd/qq/SYS_TEXT_GET_ID_COUNT.php
Normal file
@ -0,0 +1,12 @@
|
||||
<?php
|
||||
namespace SYSTEM\DBD;
|
||||
|
||||
class SYS_TEXT_GET_ID_COUNT extends \SYSTEM\DB\QP {
|
||||
protected static function query(){
|
||||
return new \SYSTEM\DB\QQuery(get_class(),
|
||||
//pg
|
||||
'',
|
||||
//mys
|
||||
'SELECT count(*) as count FROM system_text
|
||||
WHERE id = ?;'
|
||||
);}}
|
||||
11
dbd/qq/SYS_TEXT_RENAME.php
Normal file
11
dbd/qq/SYS_TEXT_RENAME.php
Normal file
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
namespace SYSTEM\DBD;
|
||||
|
||||
class SYS_TEXT_RENAME extends \SYSTEM\DB\QP {
|
||||
protected static function query(){
|
||||
return new \SYSTEM\DB\QQuery(get_class(),
|
||||
//pg
|
||||
'',
|
||||
//mys
|
||||
'UPDATE system_text SET id = ? WHERE id = ?;'
|
||||
);}}
|
||||
11
dbd/qq/SYS_TEXT_RENAME_TAGS.php
Normal file
11
dbd/qq/SYS_TEXT_RENAME_TAGS.php
Normal file
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
namespace SYSTEM\DBD;
|
||||
|
||||
class SYS_TEXT_RENAME_TAGS extends \SYSTEM\DB\QP {
|
||||
protected static function query(){
|
||||
return new \SYSTEM\DB\QQuery(get_class(),
|
||||
//pg
|
||||
'',
|
||||
//mys
|
||||
'UPDATE system_text_tag SET id = ? WHERE id = ?;'
|
||||
);}}
|
||||
13
dbd/qq/SYS_TEXT_SAVE.php
Normal file
13
dbd/qq/SYS_TEXT_SAVE.php
Normal file
@ -0,0 +1,13 @@
|
||||
<?php
|
||||
namespace SYSTEM\DBD;
|
||||
|
||||
class SYS_TEXT_SAVE extends \SYSTEM\DB\QP {
|
||||
protected static function query(){
|
||||
return new \SYSTEM\DB\QQuery(get_class(),
|
||||
//pg
|
||||
'',
|
||||
//mys
|
||||
'INSERT INTO `system_text` (`id`, `lang`, `text`, `author`, `author_edit`, `time_create`, `time_edit`)
|
||||
VALUES (?, ?, ?, ?, ?, NOW(), NOW())
|
||||
ON DUPLICATE KEY UPDATE text=VALUES(text), author_edit = VALUES(author_edit), time_edit = NOW();'
|
||||
);}}
|
||||
12
dbd/qq/SYS_TEXT_SAVE_TAG.php
Normal file
12
dbd/qq/SYS_TEXT_SAVE_TAG.php
Normal file
@ -0,0 +1,12 @@
|
||||
<?php
|
||||
namespace SYSTEM\DBD;
|
||||
|
||||
class SYS_TEXT_SAVE_TAG extends \SYSTEM\DB\QP {
|
||||
protected static function query(){
|
||||
return new \SYSTEM\DB\QQuery(get_class(),
|
||||
//pg
|
||||
'',
|
||||
//mys
|
||||
'INSERT IGNORE `system_text_tag` (`id`, `tag`)
|
||||
VALUES (?, ?);'
|
||||
);}}
|
||||
@ -97,28 +97,22 @@ INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `nam
|
||||
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (700, 42, 0, 0, '_SYSTEM_SAI_saimod_sys_text', 'action', NULL);
|
||||
--
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (701, 42, 2, 700, 'load', 'id', 'LANG');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (702, 42, 2, 700, 'load', 'group', 'INT');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (703, 42, 3, 700, 'tag', 'tag', 'STRING');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (705, 42, 2, 700, 'loadByTag', 'lang', 'LANG');
|
||||
--
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (710, 42, 2, 700, 'singleload', 'id', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (711, 42, 2, 700, 'singleload', 'lang', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (712, 42, 2, 700, 'edittext', 'id', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (712, 42, 2, 700, 'edittext', 'id', 'STRING');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (713, 42, 2, 700, 'edittext', 'lang', 'LANG');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (714, 42, 2, 700, 'loadByTag', 'lang', 'LANG');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (715, 42, 2, 700, 'editor', 'id', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (715, 42, 2, 700, 'editor', 'id', 'STRING');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (716, 42, 2, 700, 'editor', 'lang', 'LANG');
|
||||
|
||||
--
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (720, 42, 2, 700, 'delete', 'id', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (720, 42, 2, 700, 'delete', 'id', 'STRING');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (721, 42, 3, 700, 'delete', 'lang', 'LANG');
|
||||
--
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (730, 42, 2, 700, 'add', 'id', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (731, 42, 2, 700, 'add', 'category', 'INT');
|
||||
--
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (740, 42, 2, 700, 'edit', 'id', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (741, 42, 2, 700, 'edit', 'lang', 'LANG');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (742, 42, 2, 700, 'edit', 'category', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (743, 42, 2, 700, 'edit', 'newtext', 'ALL');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (730, 42, 2, 700, 'save', 'id', 'STRING');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (731, 42, 2, 700, 'save', 'new_id', 'STRING');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (732, 42, 2, 700, 'save', 'lang', 'LANG');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (733, 42, 2, 700, 'save', 'tags', 'JSON');
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (734, 42, 2, 700, 'save', 'text', 'STRING');
|
||||
|
||||
|
||||
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (800, 42, 0, 0, '_SYSTEM_SAI_saimod_sys_files', 'action', NULL);
|
||||
@ -51,4 +51,6 @@ class JsonResult extends \SYSTEM\LOG\AbstractResult {
|
||||
//Returns OK status
|
||||
public static function ok(){
|
||||
return self::toString(NULL);}
|
||||
public static function fail(){
|
||||
return self::toString(NULL,self::JSONRESULT_ERROR);}
|
||||
}
|
||||
@ -1,6 +1,7 @@
|
||||
<?php
|
||||
namespace SYSTEM\PAGE;
|
||||
class text {
|
||||
const NEW_ENTRY = 'new_text_entry';
|
||||
public static function id_tags($id){
|
||||
return \SYSTEM\DBD\SYS_TEXT_GET_ID_TAGS::QA(array($id));}
|
||||
//return all text values with certain tag and lang - array(id => text)
|
||||
@ -41,4 +42,27 @@ class text {
|
||||
return self::get($id, \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_CONFIG_DEFAULT_LANG));}
|
||||
return $res ? $res['text'] : '';
|
||||
}
|
||||
|
||||
public static function save($id, $new_id, $lang, $tags, $text){
|
||||
if($new_id == self::NEW_ENTRY){
|
||||
return false;}
|
||||
//Insert
|
||||
if(!\SYSTEM\DBD\SYS_TEXT_SAVE::QI(array($id,$lang,$text, \SYSTEM\SECURITY\Security::getUser()->id,\SYSTEM\SECURITY\Security::getUser()->id))){
|
||||
return false;}
|
||||
//Insert tags
|
||||
foreach($tags as $tag){
|
||||
if($tag){\SYSTEM\DBD\SYS_TEXT_SAVE_TAG::QI(array($id,$tag));}}
|
||||
//Rename
|
||||
\SYSTEM\DBD\SYS_TEXT_RENAME::QI(array($new_id,$id));
|
||||
\SYSTEM\DBD\SYS_TEXT_RENAME_TAGS::QI(array($new_id,$id));
|
||||
return true;
|
||||
}
|
||||
|
||||
public static function delete($id, $lang = null){
|
||||
if(!\SYSTEM\DBD\SYS_TEXT_DELETE::QI(array($id,$lang))){
|
||||
return false;}
|
||||
if(\SYSTEM\DBD\SYS_TEXT_GET_ID_COUNT::Q1(array($id))['count'] == 0){
|
||||
\SYSTEM\DBD\SYS_TEXT_DELETE_TAGS::QI(array($id));}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@ -34,6 +34,44 @@ function init_saimod_sys_text_editor(){
|
||||
text_menu();
|
||||
text2_menu();
|
||||
init_tinymce();
|
||||
|
||||
$('#btn_save').click(function(){
|
||||
$.ajax({ type :'GET',
|
||||
url : './sai.php',
|
||||
data : { sai_mod: '.SYSTEM.SAI.saimod_sys_text',
|
||||
action: 'save',
|
||||
id: $(this).attr('text_id'),
|
||||
new_id: $('#input_new_id').val(),
|
||||
lang: $(this).attr('text_lang'),
|
||||
tags: JSON.stringify($('#input_tags').val().split(',').map(function(s) { return s.trim() })),
|
||||
text: encodeURIComponent(tinyMCE.activeEditor.getContent({format : 'raw'}))},
|
||||
success : function(data) {
|
||||
if(data.status){
|
||||
alert('success');
|
||||
system.reload();
|
||||
}else{
|
||||
alert('Problem: '+data);}
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
$('#btn_delete').click(function(){
|
||||
//Ask if delete all langs of this tag - 3 button dialog required
|
||||
$.ajax({ type :'GET',
|
||||
url : './sai.php',
|
||||
data : { sai_mod: '.SYSTEM.SAI.saimod_sys_text',
|
||||
action: 'delete',
|
||||
id: $(this).attr('text_id'),
|
||||
lang: $(this).attr('text_lang')},
|
||||
success : function(data) {
|
||||
if(data.status){
|
||||
alert('success');
|
||||
system.reload();
|
||||
}else{
|
||||
alert('Problem: '+data);}
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
function init_tinymce(){
|
||||
|
||||
@ -1,12 +1,11 @@
|
||||
<?php
|
||||
namespace SYSTEM\SAI;
|
||||
class saimod_sys_text extends \SYSTEM\SAI\SaiModule {
|
||||
const NEW_ENTRY = 'new_text_entry';
|
||||
public static function sai_mod__SYSTEM_SAI_saimod_sys_text(){
|
||||
$vars = array();
|
||||
$vars['tabopts'] = '';
|
||||
$res = \SYSTEM\DBD\SYS_SAIMOD_TEXT_TAGS::QQ();
|
||||
$vars['new_id'] = self::NEW_ENTRY;
|
||||
$vars['new_id'] = \SYSTEM\PAGE\text::NEW_ENTRY;
|
||||
$vars['new_lang'] = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_CONFIG_DEFAULT_LANG);
|
||||
while($r = $res->next()){
|
||||
$vars['tabopts'] .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_text/tpl/tabopt.tpl'), $r);}
|
||||
@ -26,7 +25,7 @@ class saimod_sys_text extends \SYSTEM\SAI\SaiModule {
|
||||
return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_text/tpl/saimod_sys_text_list.tpl'), array('entries' => $entries));
|
||||
}
|
||||
|
||||
public static function sai_mod__SYSTEM_SAI_saimod_sys_text_action_edittext($id, $lang){
|
||||
public static function sai_mod__SYSTEM_SAI_saimod_sys_text_action_edittext($lang,$id){
|
||||
$langs = \SYSTEM\CONFIG\config::get(\SYSTEM\CONFIG\config_ids::SYS_CONFIG_LANGS);
|
||||
$vars = array();
|
||||
$vars['tabopts'] = '';
|
||||
@ -53,12 +52,11 @@ class saimod_sys_text extends \SYSTEM\SAI\SaiModule {
|
||||
return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new \SYSTEM\PSAI(),'modules/saimod_sys_text/tpl/saimod_sys_text_edit_editor.tpl'), $vars);
|
||||
}
|
||||
|
||||
//Dont save to id self::NEW_ENTRY
|
||||
/*public static function sai_mod__SYSTEM_SAI_saimod_sys_text_action_save($id, $new_id, $lang, $tags){
|
||||
return \SYSTEM\DBD\SYS_SAIMOD_LOCALE_ADD::QI(array($id, $category)) ? \SYSTEM\LOG\JsonResult::ok() : \SYSTEM\LOG\JsonResult::error(new \SYSTEM\LOG\WARNING("no data added"));}*/
|
||||
public static function sai_mod__SYSTEM_SAI_saimod_sys_text_action_save($id, $new_id, $lang, $tags, $text){
|
||||
return \SYSTEM\PAGE\text::save($id, $new_id, $lang, \json_decode($tags), urldecode($text)) ? \SYSTEM\LOG\JsonResult::ok() : \SYSTEM\LOG\JsonResult::fail();}
|
||||
|
||||
/*public static function sai_mod__SYSTEM_SAI_saimod_sys_text_action_delete($id, $lang = null){
|
||||
return \SYSTEM\DBD\SYS_SAIMOD_LOCALE_DEL::QI(array($id)) ? \SYSTEM\LOG\JsonResult::ok() : \SYSTEM\LOG\JsonResult::error(new \SYSTEM\LOG\WARNING("could not delete the permitted data"));}*/
|
||||
public static function sai_mod__SYSTEM_SAI_saimod_sys_text_action_delete($id, $lang = null){
|
||||
return \SYSTEM\PAGE\text::delete($id, $lang) ? \SYSTEM\LOG\JsonResult::ok() : \SYSTEM\LOG\JsonResult::fail();}
|
||||
|
||||
public static function html_li_menu(){return '<li><a id="menu_text" href="#!text">Text</a></li>';}
|
||||
public static function right_public(){return false;}
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
<b>Text ID:</b> <input type="text" value="${id}"/>
|
||||
<b>Text ID:</b> <input id="input_new_id" type="text" value="${id}"/>
|
||||
<textarea id="texteditor" name="texteditor">${content}</textarea>
|
||||
<br>
|
||||
<input type="text" placeholder="Tags..." value="${tags}" style="width: 98%;"/>
|
||||
<input id="input_tags" type="text" placeholder="Tags..." value="${tags}" style="width: 98%;"/>
|
||||
<br>
|
||||
<button id="btn_back" class="btn" onClick="system.load('text');" style="margin-right: 15px; height: 32px; font-size: 13px; float: left;">Back</button>
|
||||
<button id="btn_add" class="btn-danger" style="margin-right: 15px; height: 32px; font-size: 13px; float: right;">Delete</button>
|
||||
<button id="btn_add" class="btn-success" style="margin-right: 15px; height: 32px; font-size: 13px; float: right;">Save</button>
|
||||
<button id="btn_delete" text_id="${id}" text_lang="${lang}" class="btn-danger" style="margin-right: 15px; height: 32px; font-size: 13px; float: right;">Delete</button>
|
||||
<button id="btn_save" text_id="${id}" text_lang="${lang}" class="btn-success" style="margin-right: 15px; height: 32px; font-size: 13px; float: right;">Save</button>
|
||||
Loading…
x
Reference in New Issue
Block a user