4 include_once(
"./Services/Table/classes/class.ilTable2GUI.php");
5 include_once(
"./Modules/Exercise/classes/class.ilExAssignment.php");
21 function __construct($a_parent_obj, $a_parent_cmd, $a_exc, $a_ass_id)
26 $this->exc_id = $this->exc->getId();
27 $this->
setId(
"exc_mem_".$a_ass_id);
30 include_once(
"./Modules/Exercise/classes/class.ilFSStorageExercise.php");
32 include_once(
"./Modules/Exercise/classes/class.ilExAssignment.php");
34 $this->ass_id = $a_ass_id;
38 $this->
setTitle($lng->txt(
"exc_assignment").
": ".
44 $this->
addColumn($this->lng->txt(
"image"),
"",
"1");
45 $this->
addColumn($this->lng->txt(
"name"),
"name");
46 $this->
addColumn($this->lng->txt(
"login"),
"login");
50 $this->
addColumn($this->lng->txt(
"exc_exercise_sent"),
"sent_time");
52 $this->
addColumn($this->lng->txt(
"exc_submission"),
"submission");
53 $this->
addColumn($this->lng->txt(
"exc_grading"),
"solved_time");
54 $this->
addColumn($this->lng->txt(
"feedback"),
"feedback_time");
61 $this->
setRowTemplate(
"tpl.exc_members_row.html",
"Modules/Exercise");
67 $this->
addMultiCommand(
"redirectFeedbackMail", $lng->txt(
"exc_send_mail"));
68 $this->
addMultiCommand(
"sendMembers", $lng->txt(
"exc_send_assignment"));
69 $this->
addMultiCommand(
"confirmDeassignMembers", $lng->txt(
"exc_deassign_members"));
74 $this->
addCommandButton(
"downloadAll", $lng->txt(
"download_all_returned_files"));
85 include_once
"./classes/class.ilObjectFactory.php";
86 $member_id = $member[
"usr_id"];
98 $this->tpl->setCurrentBlock(
"mail_sent");
102 $this->tpl->setVariable(
"TXT_MAIL_SENT",
103 sprintf($lng->txt(
"exc_sent_at"),
108 $this->tpl->setVariable(
"TXT_MAIL_SENT",
111 $this->tpl->parseCurrentBlock();
115 $this->tpl->setCurrentBlock(
"mail_sent");
116 $this->tpl->setVariable(
"TXT_MAIL_SENT",
118 $this->tpl->parseCurrentBlock();
123 $this->tpl->setVariable(
"VAL_CHKBOX",
125 $this->tpl->setVariable(
"VAL_ID",
129 $this->tpl->setVariable(
"TXT_NAME",
131 $this->tpl->setVariable(
"TXT_LOGIN",
132 "[".$member[
"login"].
"]");
135 $this->tpl->setVariable(
"USR_IMAGE",
136 $mem_obj->getPersonalPicturePath(
"xxsmall"));
137 $this->tpl->setVariable(
"USR_ALT", $lng->txt(
"personal_picture"));
153 $last_sub =
"<b>".$last_sub.
"</b>";
155 $this->tpl->setVariable(
"VAL_LAST_SUBMISSION", $last_sub);
156 $this->tpl->setVariable(
"TXT_LAST_SUBMISSION",
157 $lng->txt(
"exc_last_submission"));
160 $this->tpl->setVariable(
"TXT_SUBMITTED_FILES",
161 $lng->txt(
"exc_files_returned"));
167 $sub_cnt.=
" ".sprintf($lng->txt(
"cnt_new"),count($new));
169 $this->tpl->setVariable(
"VAL_SUBMITTED_FILES",
173 $ilCtrl->setParameter($this->parent_obj,
"member_id", $member_id);
176 $this->tpl->setCurrentBlock(
"download_link");
177 $this->tpl->setVariable(
"LINK_DOWNLOAD",
178 $ilCtrl->getLinkTarget($this->parent_obj,
"downloadReturned"));
179 if (count($new) <= 0)
181 $this->tpl->setVariable(
"TXT_DOWNLOAD",
182 $lng->txt(
"exc_download_files"));
186 $this->tpl->setVariable(
"TXT_DOWNLOAD",
187 $lng->txt(
"exc_download_all"));
189 $this->tpl->parseCurrentBlock();
194 $this->tpl->setCurrentBlock(
"download_link");
195 $this->tpl->setVariable(
"LINK_NEW_DOWNLOAD",
196 $ilCtrl->getLinkTarget($this->parent_obj,
"downloadNewReturned"));
197 $this->tpl->setVariable(
"TXT_NEW_DOWNLOAD",
198 $lng->txt(
"exc_download_new"));
199 $this->tpl->parseCurrentBlock();
204 $this->tpl->setVariable(
"TXT_NOTE", $lng->txt(
"note"));
205 $this->tpl->setVariable(
"NAME_NOTE",
206 "notice[$member_id]");
207 $this->tpl->setVariable(
"VAL_NOTE",
211 $this->tpl->setVariable(
"TXT_LCOMMENT", $lng->txt(
"exc_comment_for_learner"));
212 $this->tpl->setVariable(
"NAME_LCOMMENT",
213 "lcomment[$member_id]");
215 $this->tpl->setVariable(
"VAL_LCOMMENT",
222 $this->tpl->setVariable(
"SEL_".strtoupper($status),
' selected="selected" ');
223 $this->tpl->setVariable(
"TXT_NOTGRADED", $lng->txt(
"exc_notgraded"));
224 $this->tpl->setVariable(
"TXT_PASSED", $lng->txt(
"exc_passed"));
225 $this->tpl->setVariable(
"TXT_FAILED", $lng->txt(
"exc_failed"));
228 $this->tpl->setCurrentBlock(
"status_date");
229 $this->tpl->setVariable(
"TXT_LAST_CHANGE", $lng->txt(
"last_change"));
230 $this->tpl->setVariable(
'VAL_STATUS_DATE',
232 $this->tpl->parseCurrentBlock();
236 case "passed": $pic =
"scorm/passed.gif";
break;
237 case "failed": $pic =
"scorm/failed.gif";
break;
238 default: $pic =
"scorm/not_attempted.gif";
break;
241 $this->tpl->setVariable(
"ALT_STATUS", $lng->txt(
"exc_".$status));
244 $this->tpl->setVariable(
"TXT_MARK", $lng->txt(
"exc_mark"));
245 $this->tpl->setVariable(
"NAME_MARK",
248 $this->tpl->setVariable(
"VAL_MARK",
252 $ilCtrl->setParameter($this->parent_obj,
"member_id", $member_id);
255 $this->tpl->setCurrentBlock(
"feedback_date");
256 $this->tpl->setVariable(
"TXT_FEEDBACK_MAIL_SENT",
257 sprintf($lng->txt(
"exc_sent_at"),
259 $this->tpl->parseCurrentBlock();
263 $ilCtrl->setParameter($this,
"rcp_to", $mem_obj->getLogin());
264 $this->tpl->setVariable(
"LINK_FEEDBACK",
265 $ilCtrl->getLinkTarget($this->parent_obj,
"redirectFeedbackMail"));
266 $this->tpl->setVariable(
"TXT_FEEDBACK",
267 $lng->txt(
"exc_send_mail"));
268 $ilCtrl->setParameter($this->parent_obj,
"rcp_to",
"");
271 $cnt_files = $this->storage->countFeedbackFiles($member_id);
272 $ilCtrl->setParameter($this->parent_obj,
"fsmode",
"feedback");
273 $this->tpl->setVariable(
"LINK_FILE_FEEDBACK",
274 $ilCtrl->getLinkTargetByClass(
"ilfilesystemgui",
"listFiles"));
277 $this->tpl->setVariable(
"TXT_FILE_FEEDBACK",
278 $lng->txt(
"exc_add_feedback_file"));
282 $this->tpl->setVariable(
"TXT_FILE_FEEDBACK",
283 $lng->txt(
"exc_fb_files").
" (".$cnt_files.
")");
286 $this->tpl->parseCurrentBlock();