50         $this->
ctrl = $DIC->ctrl();
    51         $this->
lng = $DIC->language();
    52         $ilCtrl = $DIC->ctrl();
    53         $lng = $DIC->language();
    54         $request = $DIC->exercise()->internal()->gui()->request();
    56         $this->exc = $request->getExercise();
    58         $this->random_ass_manager = $service->
domain()->assignment()->randomAssignments($this->exc);
    60         $this->exc_id = $this->exc->getId();
    62         $this->
setId(
"exc_grades_" . $this->exc_id);
    64         $this->mem_obj = $a_mem_obj;
    67         $mems = 
$GLOBALS[
'DIC']->access()->filterUserIdsByRbacOrPositionOfCurrentUser(
    68             'edit_submissions_grades',
    69             'edit_submissions_grades',
    70             $this->exc->getRefId(),
    75         foreach ($mems as 
$d) {
    93         foreach ($this->ass_data as $ass) {
    94             $ilCtrl->setParameter($this->parent_obj, 
"ass_id", $ass->getId());
    95             $cnt_str = 
'<a href="' . $ilCtrl->getLinkTarget($this->parent_obj, 
"members") . 
'">' . $cnt . 
'</a>';
    96             if (!$this->random_ass_manager->isActivated() && $ass->getMandatory()) {
    97                 $this->
addColumn(
"<u>" . $cnt_str . 
"</u>", 
"", 
"", 
false, 
"", $ass->getTitle() . 
" " .
    98                     "(" . 
$lng->
txt(
"exc_mandatory") . 
")");
   100                 $this->
addColumn($cnt_str, 
"", 
"", 
false, 
"", $ass->getTitle());
   104         $ilCtrl->setParameter($this->parent_obj, 
"ass_id", 
"");
   107         $this->
lng->loadLanguageModule(
"trac");
   118         $this->
setRowTemplate(
"tpl.exc_grades_row.html", 
"Modules/Exercise");
   123         if (count($mems) > 0) {
   130         if ($a_field === 
"order_val") {
   146                 return $icons->renderIcon(
   147                     $icons->getImagePathCompleted(),
   152                 return $icons->renderIcon(
   153                     $icons->getImagePathFailed(),
   158                 return $icons->renderIcon(
   159                     $icons->getImagePathNotAttempted(),
   165     protected function fillRow(array $a_set): void
   170         $user_id = $a_set[
"user_id"];
   172         foreach ($this->ass_data as $ass) {
   176             $this->tpl->setCurrentBlock(
"grade");
   178             $this->tpl->setVariable(
"SEL_" . strtoupper($status), 
' selected="selected" ');
   179             $this->tpl->setVariable(
"TXT_NOTGRADED", 
$lng->
txt(
"exc_notgraded"));
   180             $this->tpl->setVariable(
"TXT_PASSED", 
$lng->
txt(
"exc_passed"));
   181             $this->tpl->setVariable(
"TXT_FAILED", 
$lng->
txt(
"exc_failed"));
   182             $this->tpl->setVariable(
   188             $mark = $member_status->getMark();
   189             $this->tpl->setVariable(
"VAL_ONLY_MARK", $mark);
   191             $this->tpl->parseCurrentBlock();
   197         $this->tpl->setCurrentBlock(
"mark_input");
   198         $this->tpl->setVariable(
"TXT_MARK", 
$lng->
txt(
"exc_mark"));
   199         $this->tpl->setVariable(
   201             "mark[" . $user_id . 
"]"   204         $this->tpl->setVariable(
   208         $this->tpl->parseCurrentBlock();
   210         $this->tpl->setCurrentBlock(
"grade");
   212         $this->tpl->setVariable(
"SEL_" . strtoupper($status), 
' selected="selected" ');
   214         $this->tpl->setVariable(
   227         $this->tpl->parseCurrentBlock();
   230         $this->tpl->setVariable(
   232             $a_set[
"lastname"] . 
", " . $a_set[
"firstname"] . 
" [" . $a_set[
"login"] . 
"]"   234         $this->tpl->setVariable(
"VAL_ID", $user_id);
   237         $ilCtrl->setParameter($this->parent_obj, 
"part_id", $user_id);
   238         $url = $ilCtrl->getLinkTarget($this->parent_obj, 
"showParticipant");
   239         $ilCtrl->setParameter($this->parent_obj, 
"part_id", 
"");
   241         $this->tpl->setVariable(
"LINK_NAME", 
$url);
   244         $this->tpl->setVariable(
"ID_COMMENT", $user_id);
   246         $this->tpl->setVariable(
 This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
setTopCommands(bool $a_val)
 
static _lookupComment(int $a_usr_id, int $a_obj_id)
 
Mandatory RandomAssignmentsManager $random_ass_manager
 
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
 
setFormAction(string $a_form_action, bool $a_multipart=false)
 
setEnableTitle(bool $a_enabletitle)
 
addCommandButton(string $a_cmd, string $a_text, string $a_onclick='', string $a_id="", string $a_class="")
 
static getInstance(int $variant=ilLPStatusIcons::ICON_VARIANT_DEFAULT, ?\ILIAS\UI\Renderer $renderer=null, ?\ILIAS\UI\Factory $factory=null)
 
static _lookupName(int $a_user_id)
lookup user name 
 
Exercise internal service. 
 
getIconForStatus(string $status)
Get the rendered icon for a status (failed, passed or not graded). 
 
numericOrdering(string $a_field)
 
Manages random mandatory assignments of an exercise (business logic) 
 
setDefaultOrderField(string $a_defaultorderfield)
 
setRowTemplate(string $a_template, string $a_template_dir="")
Set row template. 
 
static _lookupStatus(int $a_obj_id, int $a_user_id)
Lookup current status (notgraded|passed|failed) 
 
setDefaultOrderDirection(string $a_defaultorderdirection)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
setTitle(string $a_title, string $a_icon="", string $a_icon_alt="")
 
static getInstancesByExercise(int $a_exc_id)
 
static _lookupMark(int $a_usr_id, int $a_obj_id)
 
addColumn(string $a_text, string $a_sort_field="", string $a_width="", bool $a_is_checkbox_action_column=false, string $a_class="", string $a_tooltip="", bool $a_tooltip_with_html=false)
 
__construct(object $a_parent_obj, string $a_parent_cmd, InternalService $service, ilExerciseMembers $a_mem_obj)
 
Exercise participant table. 
 
setEnableHeader(bool $a_enableheader)
 
ilExerciseMembers $mem_obj