correct deletion of Questgroups

This commit is contained in:
oliver 2015-08-19 21:44:54 +02:00
commit f947a7a4df
3 changed files with 9 additions and 14 deletions

View file

@ -729,7 +729,7 @@
{ {
// Parent Questgroup // Parent Questgroup
if(is_null($questgroup['hierarchy']['parent_questgroup_id'])) { if(is_null($questgroup['hierarchy']['parent_questgroup_id'])) {
$this->redirect($this->linker->link(array('simenaries', 'seminary', $seminary['url']))); $this->redirect($this->linker->link(array('seminaries', 'seminary', $seminary['url'])));
} }
else else
{ {

View file

@ -968,7 +968,7 @@ CREATE TABLE `quests` (
KEY `questgroup_id` (`questgroup_id`), KEY `questgroup_id` (`questgroup_id`),
CONSTRAINT `quests_ibfk_1` FOREIGN KEY (`created_user_id`) REFERENCES `users` (`id`), CONSTRAINT `quests_ibfk_1` FOREIGN KEY (`created_user_id`) REFERENCES `users` (`id`),
CONSTRAINT `quests_ibfk_2` FOREIGN KEY (`questtype_id`) REFERENCES `questtypes` (`id`), CONSTRAINT `quests_ibfk_2` FOREIGN KEY (`questtype_id`) REFERENCES `questtypes` (`id`),
CONSTRAINT `quests_ibfk_4` FOREIGN KEY (`questgroup_id`) REFERENCES `questgroups` (`id`), CONSTRAINT `quests_ibfk_4` FOREIGN KEY (`questgroup_id`) REFERENCES `questgroups` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `quests_ibfk_5` FOREIGN KEY (`questsmedia_id`) REFERENCES `questsmedia` (`media_id`) ON DELETE SET NULL ON UPDATE SET NULL CONSTRAINT `quests_ibfk_5` FOREIGN KEY (`questsmedia_id`) REFERENCES `questsmedia` (`media_id`) ON DELETE SET NULL ON UPDATE SET NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */; /*!40101 SET character_set_client = @saved_cs_client */;

View file

@ -741,11 +741,11 @@
*/ */
public function deleteQuestgroup($questgroupId) public function deleteQuestgroup($questgroupId)
{ {
$this->db->query( // Delete Questgroup texts
'DELETE FROM questgroups WHERE id = ?', $this->Questgrouptexts->deleteQuestgrouptexts($questgroupId);
'i',
$questgroupId // Delete Questgroup
); $this->db->query('DELETE FROM questgroups WHERE id = ?', 'i', $questgroupId);
} }
@ -760,13 +760,8 @@
$questgroups = $this->getQuestgroupsForSeminary($seminaryId); $questgroups = $this->getQuestgroupsForSeminary($seminaryId);
// Delete each Questgroup // Delete each Questgroup
foreach($questgroups as &$questgroup) foreach($questgroups as &$questgroup) {
{ $this->deleteQuestgroup($questgroup['id']);
// Delete Questgroup texts
$this->Questgrouptexts->deleteQuestgrouptexts($questgroup['id']);
// Delete Questgroup
$this->db->query('DELETE FROM questgroups WHERE id = ?', 'i', $questgroup['id']);
} }
} }