/** * Constructor */ function __construct($a_parent_obj, $a_parent_cmd, $a_exc, $a_ass_id) { global $ilCtrl, $lng, $ilAccess, $lng; $this->exc = $a_exc; $this->exc_id = $this->exc->getId(); $this->setId("exc_mem_" . $a_ass_id); include_once "./Modules/Exercise/classes/class.ilFSStorageExercise.php"; $this->storage = new ilFSStorageExercise($this->exc_id, $a_ass_id); include_once "./Modules/Exercise/classes/class.ilExAssignment.php"; $this->ass_id = $a_ass_id; parent::__construct($a_parent_obj, $a_parent_cmd); $this->setTitle($lng->txt("exc_assignment") . ": " . ilExAssignment::lookupTitle($a_ass_id)); $this->setTopCommands(true); //$this->setLimit(9999); $this->type = ilExAssignment::lookupType($this->ass_id); $data = ilExAssignment::getMemberListData($this->exc_id, $this->ass_id); // team upload? (1 row == 1 team) if ($this->type == ilExAssignment::TYPE_UPLOAD_TEAM) { $ass_obj = new ilExAssignment($this->ass_id); $team_map = ilExAssignment::getAssignmentTeamMap($this->ass_id); $tmp = array(); foreach ($data as $item) { $team_id = $team_map[$item["usr_id"]]; // #11058 if (!$team_id) { $team_id = $ass_obj->getTeamId($item["usr_id"], true); } if (!isset($tmp[$team_id])) { $tmp[$team_id] = $item; } $tmp[$team_id]["team"][$item["usr_id"]] = $item["name"]; $tmp[$team_id]["team_id"] = $team_id; } $data = $tmp; unset($tmp); } $this->setData($data); $this->addColumn("", "", "1", true); if ($this->type != ilExAssignment::TYPE_UPLOAD_TEAM) { $this->addColumn($this->lng->txt("image"), "", "1"); $this->addColumn($this->lng->txt("name"), "name"); $this->addColumn($this->lng->txt("login"), "login"); } else { $this->addColumn($this->lng->txt("exc_team")); } $this->sent_col = ilExAssignment::lookupAnyExerciseSent($this->exc->getId(), $this->ass_id); if ($this->sent_col) { $this->addColumn($this->lng->txt("exc_exercise_sent"), "sent_time"); } $this->addColumn($this->lng->txt("exc_submission"), "submission"); $this->addColumn($this->lng->txt("exc_grading"), "solved_time"); $this->addColumn($this->lng->txt("feedback"), "feedback_time"); $this->setDefaultOrderField("name"); $this->setDefaultOrderDirection("asc"); $this->setEnableHeader(true); $this->setFormAction($ilCtrl->getFormAction($a_parent_obj)); $this->setRowTemplate("tpl.exc_members_row.html", "Modules/Exercise"); //$this->disable("footer"); $this->setEnableTitle(true); $this->setSelectAllCheckbox("member"); $this->addMultiCommand("saveStatus", $lng->txt("exc_save_changes")); $this->addMultiCommand("redirectFeedbackMail", $lng->txt("exc_send_mail")); $this->addMultiCommand("sendMembers", $lng->txt("exc_send_assignment")); $this->addMultiCommand("confirmDeassignMembers", $lng->txt("exc_deassign_members")); //if(count($this->exc->members_obj->getAllDeliveredFiles())) if (count(ilExAssignment::getAllDeliveredFiles($this->exc_id, $this->ass_id))) { $this->addCommandButton("downloadAll", $lng->txt("download_all_returned_files")); } }
/** * Constructor */ function __construct($a_parent_obj, $a_parent_cmd, $a_exc, $a_ass_id) { global $ilCtrl, $lng; $this->exc = $a_exc; $this->exc_id = $this->exc->getId(); $this->setId("exc_mem_" . $a_ass_id); include_once "./Modules/Exercise/classes/class.ilFSStorageExercise.php"; $this->storage = new ilFSStorageExercise($this->exc_id, $a_ass_id); include_once "./Modules/Exercise/classes/class.ilExAssignment.php"; $this->ass_id = $a_ass_id; parent::__construct($a_parent_obj, $a_parent_cmd); $this->setTitle($lng->txt("exc_assignment") . ": " . ilExAssignment::lookupTitle($a_ass_id)); $this->setTopCommands(true); //$this->setLimit(9999); $this->type = ilExAssignment::lookupType($this->ass_id); $data = ilExAssignment::getMemberListData($this->exc_id, $this->ass_id); // team upload? (1 row == 1 team) if ($this->type == ilExAssignment::TYPE_UPLOAD_TEAM) { $ass_obj = new ilExAssignment($this->ass_id); $team_map = ilExAssignment::getAssignmentTeamMap($this->ass_id); $tmp = array(); foreach ($data as $item) { $team_id = $team_map[$item["usr_id"]]; if (!$team_id) { // #11058 // $team_id = $ass_obj->getTeamId($item["usr_id"], true); // #11957 $team_id = "nty" . $item["usr_id"]; } if (!isset($tmp[$team_id])) { $tmp[$team_id] = $item; } $tmp[$team_id]["team"][$item["usr_id"]] = $item["name"]; $tmp[$team_id]["team_id"] = $team_id; } $data = $tmp; unset($tmp); } else { // peer review / rating $ass_obj = new ilExAssignment($this->ass_id); $this->peer_review = $ass_obj->getPeerReview(); if ($this->peer_review) { include_once './Services/Rating/classes/class.ilRatingGUI.php'; } } $this->setData($data); $this->addColumn("", "", "1", true); if ($this->type != ilExAssignment::TYPE_UPLOAD_TEAM) { $this->selected = $this->getSelectedColumns(); if (in_array("image", $this->selected)) { $this->addColumn($this->lng->txt("image"), "", "1"); } $this->addColumn($this->lng->txt("name"), "name"); if (in_array("login", $this->selected)) { $this->addColumn($this->lng->txt("login"), "login"); } } else { $this->addColumn($this->lng->txt("exc_team")); } $this->sent_col = ilExAssignment::lookupAnyExerciseSent($this->exc->getId(), $this->ass_id); if ($this->sent_col) { $this->addColumn($this->lng->txt("exc_exercise_sent"), "sent_time"); } $this->addColumn($this->lng->txt("exc_submission"), "submission"); $this->addColumn($this->lng->txt("exc_grading"), "solved_time"); $this->addColumn($this->lng->txt("feedback"), "feedback_time"); $this->setDefaultOrderField("name"); $this->setDefaultOrderDirection("asc"); $this->setEnableHeader(true); $this->setFormAction($ilCtrl->getFormAction($a_parent_obj)); $this->setRowTemplate("tpl.exc_members_row.html", "Modules/Exercise"); //$this->disable("footer"); $this->setEnableTitle(true); $this->setSelectAllCheckbox("member"); $this->addMultiCommand("saveStatus", $lng->txt("exc_save_selected")); $this->addMultiCommand("redirectFeedbackMail", $lng->txt("exc_send_mail")); $this->addMultiCommand("sendMembers", $lng->txt("exc_send_assignment")); $this->addMultiCommand("confirmDeassignMembers", $lng->txt("exc_deassign_members")); $this->addCommandButton("saveStatusAll", $lng->txt("exc_save_all")); include_once "Services/Form/classes/class.ilPropertyFormGUI.php"; include_once "Services/UIComponent/Overlay/classes/class.ilOverlayGUI.php"; $this->overlay_tpl = new ilTemplate("tpl.exc_learner_comment_overlay.html", true, true, "Modules/Exercise"); }