function handleRequiredFeedback($a_ref_id = 0) { global $ilUser; include_once 'Services/Feedback/classes/class.ilFeedback.php'; $feedback = new ilFeedback(); if ($a_ref_id > 0) { $feedback->setRefId($a_ref_id); } $barometers = $feedback->getAllBarometer(0, 1); $rownum = 0; if (count($barometers)) { foreach ($barometers as $barometer) { if ($barometer->canVote($ilUser->getId(), $barometer->getId()) == 1) { $this->ctrl->setParameter($this, "barometer_id", $barometer->getId()); $this->ctrl->redirectByClass(array("ilinfoscreengui", "ilfeedbackgui"), "showBarometerById"); } } } }
/** * Fill data section */ function fillDataSection() { global $ilAccess, $ilUser, $tree; include_once 'Services/Feedback/classes/class.ilFeedback.php'; $feedback = new ilFeedback(); $feedbacks = $feedback->getAllBarometer(0); $this->feedbacks = array(); foreach ($feedbacks as $feedback) { if ($tree->isDeleted($feedback->getRefId())) { continue; } // do not show feedback for tutors/admins if (!$ilAccess->checkAccess("write", "", $feedback->getRefId()) && $feedback->canVote($ilUser->getId(), $feedback->getId()) == 1 && !$feedback->getAnonymous()) { $this->feedbacks[] = array("id" => $feedback->getId(), "title" => $feedback->getTitle()); } } $this->setData($this->feedbacks); if ($this->getCurrentDetailLevel() > 1 && count($this->feedbacks) > 0) { $this->setRowTemplate("tpl.feedback_pdbox.html", "Services/Feedback"); parent::fillDataSection(); } else { $this->setEnableNumInfo(false); $this->setDataSection($this->getOverview()); } }