MDL-59999 lesson: Boost grade essays page not indicating grade status
authorMihail Geshoski <mihail@moodle.com>
Mon, 18 Dec 2017 01:12:29 +0000 (09:12 +0800)
committerMihail Geshoski <mihail@moodle.com>
Mon, 18 Dec 2017 01:14:11 +0000 (09:14 +0800)
AMOS BEGIN
    CPY [graded,assign],[graded,lesson]
    CPY [notgraded,assign],[notgraded,lesson]
AMOS END

mod/lesson/essay.php
mod/lesson/lang/en/lesson.php

index e1fe9c3..a67623c 100644 (file)
@@ -367,7 +367,8 @@ switch ($mode) {
 
         // Setup table
         $table = new html_table();
 
         // Setup table
         $table = new html_table();
-        $table->head = array(get_string('name'), get_string('essays', 'lesson'), get_string('email', 'lesson'));
+        $table->head = array(get_string('name'), get_string('essays', 'lesson'), get_string('status'),
+            get_string('email', 'lesson'));
         $table->attributes['class'] = 'standardtable generaltable';
         $table->align = array('left', 'left', 'left');
         $table->wrap = array('nowrap', 'nowrap', '');
         $table->attributes['class'] = 'standardtable generaltable';
         $table->align = array('left', 'left', 'left');
         $table->wrap = array('nowrap', 'nowrap', '');
@@ -376,6 +377,7 @@ switch ($mode) {
         foreach (array_keys($studentessays) as $userid) {
             $studentname = fullname($users[$userid], true);
             $essaylinks = array();
         foreach (array_keys($studentessays) as $userid) {
             $studentname = fullname($users[$userid], true);
             $essaylinks = array();
+            $essaystatuses = array();
 
             // Number of attempts on the lesson
             $attempts = $lesson->count_user_retries($userid);
 
             // Number of attempts on the lesson
             $attempts = $lesson->count_user_retries($userid);
@@ -403,30 +405,39 @@ switch ($mode) {
 
                     // link for each essay
                     $url = new moodle_url('/mod/lesson/essay.php', array('id'=>$cm->id,'mode'=>'grade','attemptid'=>$essay->id,'sesskey'=>sesskey()));
 
                     // link for each essay
                     $url = new moodle_url('/mod/lesson/essay.php', array('id'=>$cm->id,'mode'=>'grade','attemptid'=>$essay->id,'sesskey'=>sesskey()));
-                    $attributes = array();
+                    $linktitle = userdate($essay->timeseen, get_string('strftimedatetime')).' '.
+                            format_string($pages[$essay->pageid]->title, true);
+
                     // Different colors for all the states of an essay (graded, if sent, not graded)
                     if (!$essayinfo->graded) {
                     // Different colors for all the states of an essay (graded, if sent, not graded)
                     if (!$essayinfo->graded) {
-                        $attributes['class'] = "essayungraded";
+                        $class = "label label-warning";
+                        $status = get_string('notgraded', 'lesson');
                     } elseif (!$essayinfo->sent) {
                     } elseif (!$essayinfo->sent) {
-                        $attributes['class'] = "essaygraded";
+                        $class = "label label-success";
+                        $status = get_string('graded', 'lesson');
                     } else {
                     } else {
-                        $attributes['class'] = "essaysent";
+                        $class = "label label-success";
+                        $status = get_string('sent', 'lesson');
                     }
                     }
-                    $essaylinks[] = html_writer::link($url, userdate($essay->timeseen, get_string('strftimedatetime')).' '.format_string($pages[$essay->pageid]->title,true), $attributes);
+                    $attributes = array('tabindex' => 0);
+
+                    $essaylinks[] = html_writer::link($url, $linktitle);
+                    $essaystatuses[] = html_writer::span($status, $class, $attributes);
                 }
             }
             // email link for this user
             $url = new moodle_url('/mod/lesson/essay.php', array('id'=>$cm->id,'mode'=>'email','userid'=>$userid,'sesskey'=>sesskey()));
             $emaillink = html_writer::link($url, get_string('emailgradedessays', 'lesson'));
 
                 }
             }
             // email link for this user
             $url = new moodle_url('/mod/lesson/essay.php', array('id'=>$cm->id,'mode'=>'email','userid'=>$userid,'sesskey'=>sesskey()));
             $emaillink = html_writer::link($url, get_string('emailgradedessays', 'lesson'));
 
-            $table->data[] = array($OUTPUT->user_picture($users[$userid], array('courseid'=>$course->id)).$studentname, implode("<br />", $essaylinks), $emaillink);
+            $table->data[] = array($OUTPUT->user_picture($users[$userid], array('courseid' => $course->id)) . $studentname,
+                implode("<br />", $essaylinks), implode("<br />", $essaystatuses), $emaillink);
         }
 
         // email link for all users
         $url = new moodle_url('/mod/lesson/essay.php', array('id'=>$cm->id,'mode'=>'email','sesskey'=>sesskey()));
         $emailalllink = html_writer::link($url, get_string('emailallgradedessays', 'lesson'));
 
         }
 
         // email link for all users
         $url = new moodle_url('/mod/lesson/essay.php', array('id'=>$cm->id,'mode'=>'email','sesskey'=>sesskey()));
         $emailalllink = html_writer::link($url, get_string('emailallgradedessays', 'lesson'));
 
-        $table->data[] = array(' ', ' ', $emailalllink);
+        $table->data[] = array(' ', ' ', ' ', $emailalllink);
 
         echo html_writer::table($table);
         break;
 
         echo html_writer::table($table);
         break;
index c425235..a5cd95f 100644 (file)
@@ -236,6 +236,7 @@ $string['gotoendoflesson'] = 'Go to the end of the lesson';
 $string['grade'] = 'Grade';
 $string['gradebetterthan'] = 'Grade better than (&#37;)';
 $string['gradebetterthanerror'] = 'Earn a grade better than {$a} percent';
 $string['grade'] = 'Grade';
 $string['gradebetterthan'] = 'Grade better than (&#37;)';
 $string['gradebetterthanerror'] = 'Earn a grade better than {$a} percent';
+$string['graded'] = 'Graded';
 $string['gradeessay'] = 'Grade essay questions ({$a->notgradedcount} not graded and {$a->notsentcount} not sent)';
 $string['gradeis'] = 'Grade is {$a}';
 $string['gradeoptions'] = 'Grade options';
 $string['gradeessay'] = 'Grade essay questions ({$a->notgradedcount} not graded and {$a->notsentcount} not sent)';
 $string['gradeis'] = 'Grade is {$a}';
 $string['gradeoptions'] = 'Grade options';
@@ -375,6 +376,7 @@ $string['notyetcompleted'] = 'Lesson has been started, but not yet completed';
 $string['notdefined'] = 'Not defined';
 $string['notenoughsubquestions'] = 'Not enough sub-questions have been defined!';
 $string['notenoughtimespent'] = 'You completed this lesson in {$a->timespent}, which is less than the required time of {$a->timerequired}. You might need to attempt the lesson again.';
 $string['notdefined'] = 'Not defined';
 $string['notenoughsubquestions'] = 'Not enough sub-questions have been defined!';
 $string['notenoughtimespent'] = 'You completed this lesson in {$a->timespent}, which is less than the required time of {$a->timerequired}. You might need to attempt the lesson again.';
+$string['notgraded'] = 'Not graded';
 $string['notitle'] = 'No title';
 $string['numberofcorrectanswers'] = 'Number of correct answers: {$a}';
 $string['numberofcorrectanswersheader'] = 'Number of correct answers';
 $string['notitle'] = 'No title';
 $string['numberofcorrectanswers'] = 'Number of correct answers: {$a}';
 $string['numberofcorrectanswersheader'] = 'Number of correct answers';
@@ -478,6 +480,7 @@ $string['scores'] = 'Scores';
 $string['search:activity'] = 'Lesson - activity information';
 $string['secondpluswrong'] = 'Not quite.  Would you like to try again?';
 $string['selectaqtype'] = 'Select a question type';
 $string['search:activity'] = 'Lesson - activity information';
 $string['secondpluswrong'] = 'Not quite.  Would you like to try again?';
 $string['selectaqtype'] = 'Select a question type';
+$string['sent'] = 'Sent';
 $string['shortanswer'] = 'Short answer';
 $string['showanunansweredpage'] = 'Show an unanswered page';
 $string['showanunseenpage'] = 'Show an unseen page';
 $string['shortanswer'] = 'Short answer';
 $string['showanunansweredpage'] = 'Show an unanswered page';
 $string['showanunseenpage'] = 'Show an unseen page';