diff --git a/mojotrollz/api/api_mojotrollz.php b/mojotrollz/api/api_mojotrollz.php
index 884a1aa..3091ebf 100644
--- a/mojotrollz/api/api_mojotrollz.php
+++ b/mojotrollz/api/api_mojotrollz.php
@@ -6,4 +6,9 @@ class api_mojotrollz extends \SYSTEM\API\api_system {
return \SYSTEM\LOG\JsonResult::toString($result);}
public static function call_charcreation($json=NULL){
return charcreation::data($json);}
+ public static function call_quest($entry){
+ if(!\SYSTEM\SECURITY\Security::isLoggedIn()){
+ throw new ERROR("You need to be logged in to view this ressource.");}
+ $quest = quest::test($entry);
+ return $quest;}
}
diff --git a/mojotrollz/api/autoload.inc.php b/mojotrollz/api/autoload.inc.php
index 7235e6d..63e063a 100644
--- a/mojotrollz/api/autoload.inc.php
+++ b/mojotrollz/api/autoload.inc.php
@@ -6,4 +6,7 @@ SYSTEM\autoload::registerFolder(dirname(__FILE__).'/world','');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/database','');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/char','');
SYSTEM\autoload::registerFolder(dirname(__FILE__).'/char/qq','DBD');
-SYSTEM\autoload::registerFolder(dirname(__FILE__).'/client','');
\ No newline at end of file
+SYSTEM\autoload::registerFolder(dirname(__FILE__).'/client','');
+
+SYSTEM\autoload::registerFolder(dirname(__FILE__).'/quest','');
+SYSTEM\autoload::registerFolder(dirname(__FILE__).'/quest/qq','DBD');
\ No newline at end of file
diff --git a/mojotrollz/api/quest/qq/GET_BASE_DATA.php b/mojotrollz/api/quest/qq/GET_BASE_DATA.php
new file mode 100644
index 0000000..3f03cb8
--- /dev/null
+++ b/mojotrollz/api/quest/qq/GET_BASE_DATA.php
@@ -0,0 +1,13 @@
+next()){
+ $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PAPI(),'quest/tpl/creature_questrelation.tpl'), $rel);
+ }
+ return $result;
+ }
+
+ public static function get_item_questrelation($entry){
+ $result = '';
+ $questrelation = \DBD\GET_ITEM_QUESTRELATION::QQ(array($entry));
+ while ($rel = $questrelation->next()){
+ $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PAPI(),'quest/tpl/item_questrelation.tpl'), $rel);
+ }
+ return $result;
+ }
+
+ public static function get_object_questrelation($entry){
+ $result = '';
+ $questrelation = \DBD\GET_OBJECT_QUESTRELATION::QQ(array($entry));
+ while ($rel = $questrelation->next()){
+ $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PAPI(),'quest/tpl/object_questrelation.tpl'), $rel);
+ }
+ return $result;
+ }
+
+}
diff --git a/mojotrollz/api/quest/tpl/creature_questrelation.tpl b/mojotrollz/api/quest/tpl/creature_questrelation.tpl
new file mode 100644
index 0000000..40780d2
--- /dev/null
+++ b/mojotrollz/api/quest/tpl/creature_questrelation.tpl
@@ -0,0 +1 @@
+${Name}
\ No newline at end of file
diff --git a/mojotrollz/api/quest/tpl/item_questrelation.tpl b/mojotrollz/api/quest/tpl/item_questrelation.tpl
new file mode 100644
index 0000000..b82d5a9
--- /dev/null
+++ b/mojotrollz/api/quest/tpl/item_questrelation.tpl
@@ -0,0 +1 @@
+${name}
\ No newline at end of file
diff --git a/mojotrollz/api/quest/tpl/object_questrelation.tpl b/mojotrollz/api/quest/tpl/object_questrelation.tpl
new file mode 100644
index 0000000..b82d5a9
--- /dev/null
+++ b/mojotrollz/api/quest/tpl/object_questrelation.tpl
@@ -0,0 +1 @@
+${name}
\ No newline at end of file
diff --git a/mojotrollz/api/quest/tpl/quest.tpl b/mojotrollz/api/quest/tpl/quest.tpl
new file mode 100644
index 0000000..ae73deb
--- /dev/null
+++ b/mojotrollz/api/quest/tpl/quest.tpl
@@ -0,0 +1,51 @@
+
- ${Title}
- Min Lvl: ${MinLevel}
+
${Title}
+ Min Lvl: ${MinLevel}
Quest Lvl: ${QuestLevel}
+
- Previous Quest: ${PrevQuestId}
- Next Quest: ${NextQuestId}
- Next Quest in Chain: ${NextQuestInChain}
+ ${prevquest}
+ ${nextquest}
+
diff --git a/mojotrollz/page/user_achievements_content/user_achievements_content.php b/mojotrollz/page/user_achievements_content/user_achievements_content.php
index ade1721..aad3967 100644
--- a/mojotrollz/page/user_achievements_content/user_achievements_content.php
+++ b/mojotrollz/page/user_achievements_content/user_achievements_content.php
@@ -8,7 +8,7 @@ class user_achievements_content extends SYSTEM\PAGE\Page {
$this->filter = $filter;
}
public static function js(){
- return array();}
+ return array( \SYSTEM\WEBPATH(new PPAGE(),'user_achievements_content/js/user_achievements_content.js'));}
public static function css (){
return array();}
@@ -68,158 +68,53 @@ class user_achievements_content extends SYSTEM\PAGE\Page {
}
private function menu_creature(){
- switch($this->filter){
- case 1:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(1));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 2:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(2));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 3:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(3));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 4:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(4));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 5:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(5));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 6:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(6));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 7:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(7));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 8:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(8));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 9:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(9));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 10:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(10));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 11:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(11));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
- case 12:
- $result = '';
- $data = \DBD\CREATURE_TYPE::QQ(array(12));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
-
- default:
- return 'filter fail';
+ $result = '';
+ $data = \DBD\CREATURE_TYPE::QQ(array($this->filter));
+ while($row=$data->next()){
+ $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature_element.tpl'), $row);
}
+ return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/creature.tpl'), array('content' => $result));
}
private function menu_quest(){
+ $_filter = null;
switch($this->filter){
case 1:
- $result = '';
- $data = \DBD\QUEST_TYPE::QQ(array(81));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest.tpl'), array('content' => $result));
+ $_filter = 81;
+ break;
case 2:
- $result = '';
- $data = \DBD\QUEST_TYPE::QQ(array(62));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest.tpl'), array('content' => $result));
-
+ $_filter = 62;
+ break;
case 3:
- $result = '';
- $data = \DBD\QUEST_TYPE::QQ(array(1));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest.tpl'), array('content' => $result));
-
+ $_filter = 1;
+ break;
case 4:
- $result = '';
- $data = \DBD\QUEST_TYPE::QQ(array(83));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest.tpl'), array('content' => $result));
-
+ $_filter = 83;
+ break;
case 5:
- $result = '';
- $data = \DBD\QUEST_TYPE::QQ(array(84));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest.tpl'), array('content' => $result));
-
-
+ $_filter = 84;
case 7:
- $result = '';
- $data = \DBD\QUEST_TYPE::QQ(array(41));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest.tpl'), array('content' => $result));
-
+ $_filter = 41;
case 8:
- $result = '';
- $data = \DBD\QUEST_TYPE::QQ(array(0));
- while($row=$data->next()){
- $result .= SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest_element.tpl'), $row);
- }
- return SYSTEM\PAGE\replace::replaceFile(SYSTEM\SERVERPATH(new PPAGE(),'user_achievements_content/tpl/quest.tpl'), array('content' => $result));
-
+ $_filter = 0;
default:
return 'filter fail';
}
+
+ $result = '';
+ $data = \DBD\QUEST_TYPE::QQ(array($_filter));
+ while($row=$data->next()){
+ $row['prevquest'] = '';
+ if ($row['PrevQuestId']){
+ $row['prevquest'] = 'Previous: '.\DBD\GET_BASE_DATA::Q1(array($row['PrevQuestId']))['Title'].' ';
+ }
+ $row['nextquest'] = '';
+ if ($row['NextQuestId']){
+ $row['nextquest'] = 'Next: '.\DBD\GET_BASE_DATA::Q1(array($row['NextQuestId']))['Title'].' $result));
}
private function menu_item(){
@@ -346,6 +241,7 @@ class user_achievements_content extends SYSTEM\PAGE\Page {
}
public function html(){
+
switch($this->menu){
case 1:
return $this->menu_acc();
diff --git a/mojotrollz/page/user_achievements_menu/js/user_achievements_menu.js b/mojotrollz/page/user_achievements_menu/js/user_achievements_menu.js
index c6831d4..86fbb10 100644
--- a/mojotrollz/page/user_achievements_menu/js/user_achievements_menu.js
+++ b/mojotrollz/page/user_achievements_menu/js/user_achievements_menu.js
@@ -1,23 +1,51 @@
function init_user_achievements_menu(){
$("#btn_achieve_menu_acc").click(function(){
- sys.load('user_achievements_menu_sub_1');
+ if($('#achievement_content_acc').html() == ''){
+ sys.load('user_achievements_menu_sub_1');
+ } else {
+ $('#achievement_content_acc').html('');
+ }
});
$("#btn_achieve_menu_boss").click(function(){
- sys.load('user_achievements_menu_sub_2');
+ if($('#achievement_content_boss').html() == ''){
+ sys.load('user_achievements_menu_sub_2');
+ } else {
+ $('#achievement_content_boss').html('');
+ }
});
$("#btn_achieve_menu_pvp").click(function(){
- sys.load('user_achievements_menu_sub_3');
+ if($('#achievement_content_pvp').html() == ''){
+ sys.load('user_achievements_menu_sub_3');
+ } else {
+ $('#achievement_content_pvp').html('');
+ }
});
$("#btn_achieve_menu_creature").click(function(){
- sys.load('user_achievements_menu_sub_4');
+ if($('#achievement_content_creature').html() == ''){
+ sys.load('user_achievements_menu_sub_4');
+ } else {
+ $('#achievement_content_creature').html('');
+ }
});
$("#btn_achieve_menu_quest").click(function(){
- sys.load('user_achievements_menu_sub_5');
+ if($('#achievement_content_quest').html() == ''){
+ sys.load('user_achievements_menu_sub_5');
+ } else {
+ $('#achievement_content_quest').html('');
+ }
});
$("#btn_achieve_menu_item").click(function(){
- sys.load('user_achievements_menu_sub_6');
+ if($('#achievement_content_item').html() == ''){
+ sys.load('user_achievements_menu_sub_6');
+ } else {
+ $('#achievement_content_item').html('');
+ }
});
$("#btn_achieve_menu_eco").click(function(){
- sys.load('user_achievements_menu_sub_7');
+ if($('#achievement_content_eco').html() == ''){
+ sys.load('user_achievements_menu_sub_7');
+ } else {
+ $('#achievement_content_eco').html('');
+ }
});
}
\ No newline at end of file
diff --git a/mojotrollz/page/user_achievements_menu_sub/js/user_achievements_menu_sub.js b/mojotrollz/page/user_achievements_menu_sub/js/user_achievements_menu_sub.js
index 141b669..0ef8527 100644
--- a/mojotrollz/page/user_achievements_menu_sub/js/user_achievements_menu_sub.js
+++ b/mojotrollz/page/user_achievements_menu_sub/js/user_achievements_menu_sub.js
@@ -2,5 +2,16 @@ function init_user_achievements_menu_sub(){
console.log('init');
$(".btn_achieve_menu").click(function(){
$('#achievement_list').load('./?page=user_achievements_content&menu=' + $(this).attr('menu') + '&filter=' + $(this).attr('filter'));
+ btn_info();
+
});
-}
\ No newline at end of file
+
+ function btn_info(){
+ alert('info');
+ $(".btn_quest_info").click(function(){
+ alert('test');
+ $('#achievement_list').load('./api.php?call=quest&entry=' + $(this).attr('entry'));
+// $('#achievement_list').load('./?page=user_achievements_content_quest&entry=' + $(this).attr('entry'));
+ });
+ }
+}
diff --git a/mojotrollz/page/user_default/css/user_default.css b/mojotrollz/page/user_default/css/user_default.css
index 1b99b67..ba02c44 100644
--- a/mojotrollz/page/user_default/css/user_default.css
+++ b/mojotrollz/page/user_default/css/user_default.css
@@ -107,6 +107,7 @@ a:hover{
#frame_menu{
float: left;
padding-top: 20px;
+ width: 400px;
}
#frame_start_stats{
@@ -151,6 +152,22 @@ a:hover{
text-align: left;
text-decoration: none;
+}
+
+.btn_menu_add{
+
+ background: url(http://www.mojotrollz.eu/web/mojotrollz/api.php?call=files&cat=wowicons&id=button_submenu.png) no-repeat;
+ background-size: cover;
+ padding-top: 1px;
+ padding-left: 20px;
+ margin-bottom: 5px;
+ height: 27px;
+ width: 140px;
+ font-size: 13pt;
+ list-style: none;
+ text-align: left;
+ text-decoration: none;
+
}
.btn_submenu:hover{
background: url(http://www.mojotrollz.eu/web/mojotrollz/api.php?call=files&cat=wowicons&id=button_red.png) no-repeat;
@@ -159,6 +176,13 @@ a:hover{
color: gold;
}
+.btn_menu_add:hover{
+ background: url(http://www.mojotrollz.eu/web/mojotrollz/api.php?call=files&cat=wowicons&id=button_red.png) no-repeat;
+ background-size: cover;
+ text-decoration: none;
+ color: gold;
+}
+
.window_bg2{
float: left; padding: 10px; margin-left: 20px; margin-top: 20px; background: url(http://www.mojotrollz.eu/web/mojotrollz/api.php?call=files&cat=wowicons&id=bg2.png);
}
diff --git a/mojotrollz/page/user_menu/user_menu.tpl b/mojotrollz/page/user_menu/user_menu.tpl
index 2320738..3588684 100644
--- a/mojotrollz/page/user_menu/user_menu.tpl
+++ b/mojotrollz/page/user_menu/user_menu.tpl
@@ -1,7 +1,14 @@
-
+
Overview
Compendium
Shop
Armory
Logout
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/mojotrollz/page/user_start/tpl/user_start.tpl b/mojotrollz/page/user_start/tpl/user_start.tpl
index 3954810..0fe326f 100644
--- a/mojotrollz/page/user_start/tpl/user_start.tpl
+++ b/mojotrollz/page/user_start/tpl/user_start.tpl
@@ -67,5 +67,9 @@
+
+
+ ${test}
+
\ No newline at end of file
diff --git a/mojotrollz/page/user_start/user_start.php b/mojotrollz/page/user_start/user_start.php
index 65b80da..0c512b3 100644
--- a/mojotrollz/page/user_start/user_start.php
+++ b/mojotrollz/page/user_start/user_start.php
@@ -52,6 +52,7 @@ class user_start extends SYSTEM\PAGE\Page {
$vars['guildcount'] = \DBD\COUNT_GUILDS::Q1()['count'];
$vars['realm_status'] = realm::status();
$vars['world_status'] = world::status();
+ $vars['test'] = quest::test(248);
$vars['player_online'] = database::player_online();
$vars['factionbalance'] = $this->get_faction_balance();
$vars['role_balance'] =$this->get_role_balance();
diff --git a/system b/system
index 69390d4..b3bf40d 160000
--- a/system
+++ b/system
@@ -1 +1 @@
-Subproject commit 69390d4c59bf3a2a3cd2add9f5b3bc3f571f1287
+Subproject commit b3bf40d17d3c707d7af17943b1f6ff147c0e71a6