skilltrees editable, updated system reference

This commit is contained in:
Ulf Gebhardt 2014-11-03 22:26:10 +01:00
parent 5fda3f3421
commit fff7dba457
11 changed files with 189 additions and 10 deletions

View File

@ -1,4 +1,4 @@
<?php
SYSTEM\autoload::registerFolder(dirname(__FILE__),'');
//SYSTEM\autoload::registerFolder(dirname(__FILE__).'/qq','DBD');
\SYSTEM\autoload::registerFolder(dirname(__FILE__),'');
\SYSTEM\autoload::registerFolder(dirname(__FILE__).'/qq','DBD');
\SYSTEM\SAI\sai::register('saimod_mojotrollz_skilltree');

View File

@ -0,0 +1,12 @@
<?php
namespace DBD;
class SKILLTREE_ICON_DELETE extends \SYSTEM\DB\QP {
protected static function query(){
return new \SYSTEM\DB\QQuery(get_class(),
//pg
'',
//mys
'DELETE FROM `mojotrollz_talent_icon` WHERE `class` = ? AND `tree` = ? AND `row` = ? AND `column` = ?;'
);}}

View File

@ -0,0 +1,19 @@
<?php
namespace DBD;
class SKILLTREE_ICON_INSERT extends \SYSTEM\DB\QP {
protected static function query(){
return new \SYSTEM\DB\QQuery(get_class(),
//pg
'',
//mys
'INSERT INTO `mojotrollz_talent_icon` (`class`, `tree`, `row`, `column`, `type`, `border`, `icon`, `max`, `parent_row`, `parent_column`)
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE `type`=VALUES(`type`),
`border`=VALUES(`border`),
`icon`=VALUES(`icon`),
`max`=VALUES(`max`),
`parent_row`=VALUES(`parent_row`),
`parent_column`=VALUES(`parent_column`)'
);}}

View File

@ -0,0 +1,20 @@
<?php
namespace DBD;
class SKILLTREE_TREE_EDIT extends \SYSTEM\DB\QP {
protected static function query(){
return new \SYSTEM\DB\QQuery(get_class(),
//pg
'',
//mys
'INSERT INTO `mojotrollz_talent_tree` (`class`, `tree1_name`, `tree1_img`, `tree2_name`, `tree2_img`, `tree3_name`, `tree3_img`)
VALUES (?, ?, ?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE `tree1_name`=VALUES(`tree1_name`),
`tree1_img`=VALUES(`tree1_img`),
`tree2_name`=VALUES(`tree2_name`),
`tree2_img`=VALUES(`tree2_img`),
`tree3_name`=VALUES(`tree3_name`),
`tree3_img`=VALUES(`tree3_img`)'
);}}

View File

@ -11,5 +11,74 @@ function init_saimod_mojotrollz_skilltree() {
function load_skilltree_tab(tree){
$('img#loader').show();
$('#tab_skilltree').load(SAI_ENDPOINT+'sai_mod=saimod_mojotrollz_skilltree&action=tree&tree='+tree, function(){
register_icon_add();
register_icon_delete();
register_tree_edit();
$('img#loader').hide();});
}
function register_icon_add(){
$('#btn_icon_add').click(function(){
_class = $(this).attr('_class');
$.ajax({ type :'GET',
url : SAI_ENDPOINT+'sai_mod=saimod_mojotrollz_skilltree&action=icon_insert'+
'&class='+_class+
'&tree='+$('#input_tree').val()+
'&row='+$('#input_row').val()+
'&column='+$('#input_column').val()+
'&type='+$('#input_type').val()+
'&border='+$('#input_border').val()+
'&icon='+$('#input_icon').val()+
'&max='+$('#input_max').val()+
'&parent_row='+$('#input_parent_row').val()+
'&parent_column='+$('#input_parent_column').val(),
success : function(data) {
if(data.status){
load_skilltree_tab(_class);
}else{
alert('Problem: '+data);}
}
});
});
}
function register_icon_delete(){
$('.btn_icon_del').click(function(){
_class = $(this).attr('_class');
$.ajax({ type :'GET',
url : SAI_ENDPOINT+'sai_mod=saimod_mojotrollz_skilltree&action=icon_delete'+
'&class='+_class+
'&tree='+$(this).attr('tree')+
'&row='+$(this).attr('row')+
'&column='+$(this).attr('column'),
success : function(data) {
if(data.status){
load_skilltree_tab(_class);
}else{
alert('Problem: '+data);}
}
});
});
}
function register_tree_edit(){
$('#btn_tree_edit').click(function(){
_class = $(this).attr('_class');
$.ajax({ type :'GET',
url : SAI_ENDPOINT+'sai_mod=saimod_mojotrollz_skilltree&action=tree_edit'+
'&class='+_class+
'&t1n='+$('#input_t1name').val()+
'&t1i='+$('#input_t1img').val()+
'&t2n='+$('#input_t2name').val()+
'&t2i='+$('#input_t2img').val()+
'&t3n='+$('#input_t3name').val()+
'&t3i='+$('#input_t3img').val(),
success : function(data) {
if(data.status){
load_skilltree_tab(_class);
}else{
alert('Problem: '+data);}
}
});
});
}

View File

@ -6,13 +6,29 @@ class saimod_mojotrollz_skilltree extends \SYSTEM\SAI\SaiModule {
return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new PSAI(),'saimod_mojotrollz_skilltree/tpl/saimod_mojotrollz_skilltree.tpl'), $vars);}
public static function sai_mod_saimod_mojotrollz_skilltree_action_tree($tree){
$vars = array();
$vars['class'] = $tree;
$vars['skilltree'] = skilltree::generate($tree);
$vars['tree_entry'] = \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new PSAI(),'saimod_mojotrollz_skilltree/tpl/saimod_mojotrollz_skilltree_tree_entry.tpl'), \DBD\TALENT_TREE::Q1(array($tree)));
$tree_data = \DBD\TALENT_TREE::Q1(array($tree));
if($tree_data == array()){
$tree_data['class'] = $tree;}
$vars['tree_entry'] = \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new PSAI(),'saimod_mojotrollz_skilltree/tpl/saimod_mojotrollz_skilltree_tree_entry.tpl'), $tree_data);
$vars['icon_entry'] = '';
$res = \DBD\TALENT_TREE_ICON::QQ(array($tree));
while($row = $res->next()){
$vars['icon_entry'] .= \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new PSAI(),'saimod_mojotrollz_skilltree/tpl/saimod_mojotrollz_skilltree_icon_entry.tpl'), $row);}
return \SYSTEM\PAGE\replace::replaceFile(\SYSTEM\SERVERPATH(new PSAI(),'saimod_mojotrollz_skilltree/tpl/saimod_mojotrollz_skilltree_page.tpl'), $vars);}
public static function sai_mod_saimod_mojotrollz_skilltree_action_tree_edit($class,$t1n,$t1i,$t2n,$t2i,$t3n,$t3i){
if(!\DBD\SKILLTREE_TREE_EDIT::QI(array($class,$t1n,$t1i,$t2n,$t2i,$t3n,$t3i))){
throw new ERROR("Could not edit tree.");}
return JsonResult::ok();}
public static function sai_mod_saimod_mojotrollz_skilltree_action_icon_delete($class,$tree,$row,$column){
if(!\DBD\SKILLTREE_ICON_DELETE::QI(array($class,$tree,$row,$column))){
throw new ERROR("Could not delete icon.");}
return JsonResult::ok();}
public static function sai_mod_saimod_mojotrollz_skilltree_action_icon_insert($class,$tree,$row,$column,$type,$border,$icon,$max,$parent_row,$parent_column){
if(!\DBD\SKILLTREE_ICON_INSERT::QI(array($class,$tree,$row,$column,$type,$border,$icon,$max,$parent_row,$parent_column))){
throw new ERROR("Could not insert icon.");}
return JsonResult::ok();}
public static function html_li_menu(){return '<li><a href="#" saimenu="saimod_mojotrollz_skilltree">Skilltree</a></li><li class="divider"></li>';}
public static function right_public(){return false;}
public static function right_right(){return \SYSTEM\SECURITY\Security::check(\SYSTEM\SECURITY\RIGHTS::SYS_SAI);}

View File

@ -9,4 +9,5 @@
<td>${max}</td>
<td>${parent_row}</td>
<td>${parent_column}</td>
<td><button class="btn btn-danger btn_icon_del" _class="${class}" tree="${tree}" row="${row}" column="${column}">Delete</button></td>
</tr>

View File

@ -10,6 +10,7 @@ ${skilltree}
<th>tree2_img</th>
<th>tree3_name</th>
<th>tree3_img</th>
<th>action</th>
</tr>
${tree_entry}
</table>
@ -26,6 +27,20 @@ ${skilltree}
<th>max</th>
<th>parent_row</th>
<th>parent_column</th>
<th>action</th>
</tr>
${icon_entry}
<tr>
<td>${class}</td>
<td><input id="input_tree" type="number" placeholder="tree" style="width: 50px;"/></td>
<td><input id="input_row" type="number" placeholder="row" style="width: 50px;"/></td>
<td><input id="input_column" type="number" placeholder="column" style="width: 50px;"/></td>
<td><input id="input_type" type="text" placeholder="type" style="width: 100px;"/></td>
<td><input id="input_border" type="text" placeholder="border" style="width: 150px;"/></td>
<td><input id="input_icon" type="text" placeholder="icon" style="width: 200px;"/></td>
<td><input id="input_max" type="number" placeholder="max" style="width: 50px;"/></td>
<td><input id="input_parent_row" type="number" placeholder="parent_row" style="width: 75px;"/></td>
<td><input id="input_parent_column" type="number" placeholder="parent_column" style="width: 75px;"/></td>
<td><button class="btn btn-success" id="btn_icon_add" _class="${class}">Add</button></td>
</tr>
</table>

View File

@ -1,9 +1,10 @@
<tr>
<td>${class}</td>
<td>${tree1_name}</td>
<td>${tree1_img}</td>
<td>${tree2_name}</td>
<td>${tree2_img}</td>
<td>${tree3_name}</td>
<td>${tree3_img}</td>
<td><input id="input_t1name" type="text" value="${tree1_name}" style="width: 120px;"/></td>
<td><input id="input_t1img" type="text" value="${tree1_img}" style="width: 120px;"/></td>
<td><input id="input_t2name" type="text" value="${tree2_name}" style="width: 120px;"/></td>
<td><input id="input_t2img" type="text" value="${tree2_img}" style="width: 120px;"/></td>
<td><input id="input_t3name" type="text" value="${tree3_name}" style="width: 120px;"/></td>
<td><input id="input_t3img" type="text" value="${tree3_img}" style="width: 120px;"/></td>
<td><button class="btn btn-danger" id="btn_tree_edit" _class="${class}">Edit</button></td>
</tr>

View File

@ -1,3 +1,29 @@
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5100, 42, 0, 0, 'saimod_mojotrollz_skilltree', 'action', NULL);
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5101, 42, 2, 5100, 'tree', 'tree', 'INT');
-- tree edit
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5104, 42, 2, 5100, 'tree_edit', 'class', 'UINT');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5105, 42, 2, 5100, 'tree_edit', 't1n', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5106, 42, 2, 5100, 'tree_edit', 't1i', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5107, 42, 2, 5100, 'tree_edit', 't2n', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5108, 42, 2, 5100, 'tree_edit', 't2i', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5109, 42, 2, 5100, 'tree_edit', 't3n', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5110, 42, 2, 5100, 'tree_edit', 't3i', 'STRING');
-- icon delete
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5115, 42, 2, 5100, 'icon_delete', 'class', 'UINT');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5116, 42, 2, 5100, 'icon_delete', 'tree', 'UINT');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5117, 42, 2, 5100, 'icon_delete', 'row', 'UINT');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5118, 42, 2, 5100, 'icon_delete', 'column', 'UINT');
-- icon insert
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5120, 42, 2, 5100, 'icon_insert', 'class', 'UINT');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5121, 42, 2, 5100, 'icon_insert', 'tree', 'UINT');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5122, 42, 2, 5100, 'icon_insert', 'row', 'UINT');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5123, 42, 2, 5100, 'icon_insert', 'column', 'UINT');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5124, 42, 2, 5100, 'icon_insert', 'type', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5125, 42, 2, 5100, 'icon_insert', 'border', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5126, 42, 2, 5100, 'icon_insert', 'icon', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5127, 42, 2, 5100, 'icon_insert', 'max', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5128, 42, 2, 5100, 'icon_insert', 'parent_row', 'STRING');
INSERT INTO `system_api` (`ID`, `group`, `type`, `parentID`, `parentValue`, `name`, `verify`) VALUES (5129, 42, 2, 5100, 'icon_insert', 'parent_column', 'STRING');

2
system

@ -1 +1 @@
Subproject commit 8a3e1650e630df3ea2119e6977a5a303214048a7
Subproject commit d3ffdf713dc55bfa59367050c4a05f58983912d8