/** * */ public function confirmMergeThreadsObject() { if (!$this->is_moderator) { $this->ilias->raiseError($this->lng->txt('permission_denied'), $this->ilias->error_obj->MESSAGE); } if (!isset($_GET['merge_thread_id']) || !(int) $_GET['merge_thread_id'] || !is_array($_POST['thread_ids']) || count($_POST['thread_ids']) != 1) { ilUtil::sendFailure($this->lng->txt('select_one')); $this->mergeThreadsObject(); return; } $source_thread_id = (int) $_GET['merge_thread_id']; $target_thread_id = (int) current($_POST['thread_ids']); if ($source_thread_id == $target_thread_id) { ilUtil::sendFailure($this->lng->txt('error_same_thread_ids')); $this->showThreadsObject(); return; } if (ilForumTopic::lookupForumIdByTopicId($source_thread_id) != ilForumTopic::lookupForumIdByTopicId($target_thread_id)) { ilUtil::sendFailure($this->lng->txt('not_allowed_to_merge_into_another_forum')); $this->ctrl->clearParameters($this); $this->showThreadsObject(); return; } if (ilForumTopic::_lookupDate($source_thread_id) < ilForumTopic::_lookupDate($target_thread_id)) { ilUtil::sendInfo($this->lng->txt('switch_threads_for_merge')); } include_once 'Services/Utilities/classes/class.ilConfirmationGUI.php'; $c_gui = new ilConfirmationGUI(); $c_gui->setFormAction($this->ctrl->getFormAction($this, 'performMergeThreads')); $c_gui->setHeaderText($this->lng->txt('frm_sure_merge_threads')); $c_gui->setCancel($this->lng->txt('cancel'), 'showThreads'); $c_gui->setConfirm($this->lng->txt('confirm'), 'performMergeThreads'); $c_gui->addItem('thread_ids[]', $source_thread_id, sprintf($this->lng->txt('frm_merge_src'), ilForumTopic::_lookupTitle($source_thread_id))); $c_gui->addItem('thread_ids[]', $target_thread_id, sprintf($this->lng->txt('frm_merge_target'), ilForumTopic::_lookupTitle($target_thread_id))); $this->tpl->setContent($c_gui->getHTML()); return; }
public function confirmDeleteThreads() { /** * @var $lng ilLanguage */ global $lng; if (!isset($_POST['thread_ids']) || !is_array($_POST['thread_ids'])) { ilUtil::sendInfo($this->lng->txt('select_at_least_one_thread')); return $this->showThreadsObject(); } if (!$this->is_moderator) { $this->ilias->raiseError($lng->txt('permission_denied'), $this->ilias->error_obj->MESSAGE); return $this->showThreadsObject(); } include_once 'Services/Utilities/classes/class.ilConfirmationGUI.php'; $c_gui = new ilConfirmationGUI(); $c_gui->setFormAction($this->ctrl->getFormAction($this, 'performDeleteThreads')); $c_gui->setHeaderText($this->lng->txt('frm_sure_delete_threads')); $c_gui->setCancel($this->lng->txt('cancel'), 'showThreads'); $c_gui->setConfirm($this->lng->txt('confirm'), 'performDeleteThreads'); foreach ((array) $_POST['thread_ids'] as $thread_id) { $c_gui->addItem('thread_ids[]', $thread_id, ilForumTopic::_lookupTitle($thread_id)); } $this->confirmation_gui_html = $c_gui->getHTML(); $this->hideToolbar(true); return $this->tpl->setContent($c_gui->getHTML()); }