コード例 #1
0
 /**
  * list current marking workflow state
  *
  * @param stdClass $row
  * @return string
  */
 public function col_workflowstatus(stdClass $row)
 {
     $o = '';
     $gradingdisabled = $this->seplment->grading_disabled($row->id);
     // The function in the seplment keeps a static cache of this list of states.
     $workflowstates = $this->seplment->get_marking_workflow_states_for_current_user();
     $workflowstate = $row->workflowstate;
     if (empty($workflowstate)) {
         $workflowstate = ASSIGN_MARKING_WORKFLOW_STATE_NOTMARKED;
     }
     if ($this->quickgrading && !$gradingdisabled) {
         $notmarked = get_string('markingworkflowstatenotmarked', 'sepl');
         $name = 'quickgrade_' . $row->id . '_workflowstate';
         $o .= html_writer::select($workflowstates, $name, $workflowstate, array('' => $notmarked));
         // Check if this user is a marker that can't manage allocations and doesn't have the marker column added.
         if ($this->seplment->get_instance()->markingworkflow && $this->seplment->get_instance()->markingallocation && !has_capability('mod/sepl:manageallocations', $this->seplment->get_context())) {
             $name = 'quickgrade_' . $row->id . '_allocatedmarker';
             $o .= html_writer::empty_tag('input', array('type' => 'hidden', 'name' => $name, 'value' => $row->allocatedmarker));
         }
     } else {
         $o .= $this->output->container(get_string('markingworkflowstate' . $workflowstate, 'sepl'), $workflowstate);
     }
     return $o;
 }