/** * Get members for object * @param int $a_obj_id * @return array */ protected static function getMembers($a_obj_id) { include_once './Modules/Exercise/classes/class.ilExerciseMembers.php'; return ilExerciseMembers::_getMembers($a_obj_id); }
public function sendFeedbackNotifications($a_ass_id) { global $ilDB; $ass = new self($a_ass_id); // valid assignment? if (!$ass->hasFeedbackCron() || !$ass->getFeedbackFile()) { return false; } // already done? $set = $ilDB->query("SELECT fb_cron_done" . " FROM exc_assignment" . " WHERE id = " . $ilDB->quote($a_ass_id, "integer")); $row = $ilDB->fetchAssoc($set); if ($row["fb_cron_done"]) { return false; } include_once "./Services/Notification/classes/class.ilSystemNotification.php"; $ntf = new ilSystemNotification(); $ntf->setLangModules(array("exc")); $ntf->setObjId($ass->getExerciseId()); $ntf->setSubjectLangId("exc_feedback_notification_subject"); $ntf->setIntroductionLangId("exc_feedback_notification_body"); $ntf->addAdditionalInfo("exc_assignment", $ass->getTitle()); $ntf->setGotoLangId("exc_feedback_notification_link"); $ntf->setReasonLangId("exc_feedback_notification_reason"); include_once "./Modules/Exercise/classes/class.ilExerciseMembers.php"; $ntf->sendMail(ilExerciseMembers::_getMembers($ass->getExerciseId())); $ilDB->manipulate("UPDATE exc_assignment" . " SET fb_cron_done = " . $ilDB->quote(1, "integer") . " WHERE id = " . $ilDB->quote($a_ass_id, "integer")); return true; }
/** * create xml for files per assignment * * @param integer $ex_id exercise id * @param array $assignments assignment id */ private function handleAssignmentMembers($ex_id, $assignments) { $this->xmlStartTag("Members"); include_once "./Modules/Exercise/classes/class.ilExerciseMembers.php"; $members = ilExerciseMembers::_getMembers($ex_id); if (count($members)) { foreach ($members as $member_id) { $this->xmlStartTag("Member", array("usr_id" => "il_" . IL_INST_ID . "_usr_" . $member_id)); if (count($assignments) > 0) { foreach ($assignments as $assignment) { $this->attachMarking($member_id, $assignment["id"]); //todo: handle only first assignment, must be fixed when for dtd break; } } $this->xmlEndTag("Member"); } } $this->xmlEndTag("Members"); }
/** * create xml for files per assignment * * @param integer $ex_id exercise id * @param array $assignments assignment id */ private function handleAssignmentMembers($ex_id, $assignment_id) { $this->xmlStartTag("Members"); include_once "./Modules/Exercise/classes/class.ilExerciseMembers.php"; $members = ilExerciseMembers::_getMembers($ex_id); if (count($members)) { foreach ($members as $member_id) { $this->xmlStartTag("Member", array("usr_id" => "il_" . IL_INST_ID . "_usr_" . $member_id)); $this->attachMarking($member_id, $assignment_id); $this->xmlEndTag("Member"); } } $this->xmlEndTag("Members"); }
/** * Get members for object * @param int $a_obj_id * @return array */ protected static function getMembers($a_obj_id) { global $ilObjDataCache; switch ($ilObjDataCache->lookupType($a_obj_id)) { case 'crs': include_once 'Modules/Course/classes/class.ilCourseParticipants.php'; $member_obj = ilCourseParticipants::_getInstanceByObjId($a_obj_id); return $member_obj->getMembers(); case 'exc': include_once './Modules/Exercise/classes/class.ilExerciseMembers.php'; return ilExerciseMembers::_getMembers($a_obj_id); case 'grp': include_once './Modules/Group/classes/class.ilObjGroup.php'; return ilObjGroup::_getMembers($a_obj_id); } return array(); }