From bf0a0185bc108bf423163a4891fb25036ec24910 Mon Sep 17 00:00:00 2001 From: coderkun Date: Sat, 19 Apr 2014 23:22:19 +0200 Subject: [PATCH] remove field ?right_text? for Quests because it is never used and update Quest view --- controllers/QuestsController.inc | 22 +++++----------------- models/QuestsModel.inc | 10 +++++----- views/html/quests/quest.tpl | 18 ++++++------------ 3 files changed, 16 insertions(+), 34 deletions(-) diff --git a/controllers/QuestsController.inc b/controllers/QuestsController.inc index adcb2903..6da2906d 100644 --- a/controllers/QuestsController.inc +++ b/controllers/QuestsController.inc @@ -139,7 +139,6 @@ $questgroup['picture'] = $this->Media->getSeminaryMediaById($questgroup['questgroupspicture_id']); } - // Get Quest $quest = $this->Quests->getQuestByUrl($seminary['id'], $questgroup['id'], $questUrl); @@ -210,7 +209,6 @@ $questtexttypeUrl = 'Prolog'; } $questtexttypes = $this->Questtexts->getQuesttexttypes(); - //$questtexttypesUrls = array_map(function($t) { return $t['url']; }, $questtexttypes); if(($questtexttypeIndex = array_search($questtexttypeUrl, array_map(function($t) { return $t['url']; }, $questtexttypes))) === false) { throw new ParamsNotValidException($questtexttypeUrl); } @@ -227,21 +225,11 @@ $questtext['relatedQuestsgroups'] = $this->Questgroups->getRelatedQuestsgroupsOfQuesttext($questtext['id']); } + // Has Epilog? + $hasEpilog = ($this->Questtexts->getQuesttextCountOfQuest($quest['id'], 'Epilog') > 0); + // Quest status $questStatus = $this->request->getGetParam('status'); - $questStatusText = null; - if(!is_null($questStatus)) - { - switch($questStatus) - { - case 'solved': - $questStatusText = $quest['right_text']; - break; - case 'unsolved': - $questStatusText = $quest['wrong_text']; - break; - } - } // Quest media $questmedia = null; @@ -273,7 +261,7 @@ $nextQuests = null; $charactedHasChoosenNextQuest = false; $nextQuestgroup = null; - if($questtexttypeUrl == 'Epilog' || ($solved && $this->Questtexts->getQuesttextCountOfQuest($quest['id'], 'Epilog') == 0) || count(array_intersect(array('admin','moderator'), IntermediateController::$user['seminaryroles'])) > 0) + if($questtexttypeUrl == 'Epilog' || (is_null($questtype['classname']) && !$hasEpilog)) { // Next Quest $nextQuests = $this->Quests->getNextQuests($quest['id']); @@ -310,9 +298,9 @@ $this->set('questgroup', $questgroup); $this->set('questtexttype', $questtexttype); $this->set('questtexts', $questtexts); + $this->set('hasEpilog', $hasEpilog); $this->set('quest', $quest); $this->set('queststatus', $questStatus); - $this->set('queststatustext', $questStatusText); $this->set('relatedquesttext', $relatedQuesttext); $this->set('nextquests', $nextQuests); $this->set('charactedHasChoosenNextQuest', $charactedHasChoosenNextQuest); diff --git a/models/QuestsModel.inc b/models/QuestsModel.inc index d840a39a..ffffb536 100644 --- a/models/QuestsModel.inc +++ b/models/QuestsModel.inc @@ -70,7 +70,7 @@ public function getQuestByUrl($seminaryId, $questgroupId, $questUrl) { $data = $this->db->query( - 'SELECT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.entry_text, quests.task, quests.right_text, quests.wrong_text, quests.questsmedia_id '. + 'SELECT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.entry_text, quests.task, quests.wrong_text, quests.questsmedia_id '. 'FROM quests '. 'LEFT JOIN questgroups ON questgroups.id = quests.questgroup_id '. 'WHERE questgroups.seminary_id = ? AND questgroups.id = ? AND quests.url = ?', @@ -96,7 +96,7 @@ public function getQuestById($questId) { $data = $this->db->query( - 'SELECT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.entry_text, quests.task, quests.right_text, quests.wrong_text, quests.questsmedia_id '. + 'SELECT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.entry_text, quests.task, quests.wrong_text, quests.questsmedia_id '. 'FROM quests '. 'LEFT JOIN questgroups ON questgroups.id = quests.questgroup_id '. 'WHERE quests.id = ?', @@ -306,7 +306,7 @@ public function getLastQuestForCharacter($characterId) { $data = $this->db->query( - 'SELECT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.task, quests.right_text, quests.wrong_text, quests.questsmedia_id '. + 'SELECT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.task, quests.wrong_text, quests.questsmedia_id '. 'FROM quests_characters '. 'LEFT JOIN quests ON quests.id = quests_characters.quest_id '. 'WHERE quests_characters.character_id = ? AND quests_characters.status IN (?, ?, ?) '. @@ -334,7 +334,7 @@ public function getQuestsForSeminary($seminaryId) { return $this->db->query( - 'SELECT DISTINCT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.task, quests.right_text, quests.wrong_text, quests.questsmedia_id '. + 'SELECT DISTINCT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.task, quests.wrong_text, quests.questsmedia_id '. 'FROM questgroups '. 'INNER JOIN quests ON quests.questgroup_id = questgroups.id '. 'WHERE questgroups.seminary_id = ?', @@ -353,7 +353,7 @@ public function getQuestsForQuesttopic($questtopicId) { return $this->db->query( - 'SELECT DISTINCT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.task, quests.right_text, quests.wrong_text, quests.questsmedia_id '. + 'SELECT DISTINCT quests.id, quests.questgroup_id, quests.questtype_id, quests.title, quests.url, quests.xps, quests.task, quests.wrong_text, quests.questsmedia_id '. 'FROM quests_questsubtopics '. 'INNER JOIN quests ON quests.id = quests_questsubtopics.quest_id '. 'WHERE quests_questsubtopics.questsubtopic_id = ?', diff --git a/views/html/quests/quest.tpl b/views/html/quests/quest.tpl index 3bad451e..f851166a 100644 --- a/views/html/quests/quest.tpl +++ b/views/html/quests/quest.tpl @@ -40,14 +40,10 @@ - +
- -

-

- -

+

@@ -61,15 +57,15 @@

:

- - +

- @@ -109,8 +105,6 @@ : - - Spiel vorbei