]> git.mjollnir.org Git - moodle.git/commitdiff
MDL-10414 Corrected tabindex order
authornicolasconnault <nicolasconnault>
Fri, 20 Jul 2007 05:00:07 +0000 (05:00 +0000)
committernicolasconnault <nicolasconnault>
Fri, 20 Jul 2007 05:00:07 +0000 (05:00 +0000)
grade/report/grader/lib.php

index a6c8c7754874c739f573dbdd26131bf59400ae0f..62eb7a2f973da44f556cc1a34e64628994041045 100644 (file)
@@ -543,15 +543,19 @@ class grade_report_grader extends grade_report {
         $studentshtml = '';
         $strfeedback = $this->get_lang_string("feedback");
         $gradetabindex = 1;
-        $feedbacktabindex = 16380; // The maximum number of tabindices on 1 page is 32767
         $showuserimage = $this->get_pref('showuserimage');
+        $numusers = count($this->users);
 
         // Preload scale objects for items with a scaleid
         $scales_list = '';
+        $tabindices = array();
         foreach ($this->items as $item) {
             if (!empty($item->scaleid)) {
                 $scales_list .= "$item->scaleid,";
             }
+            $tabindices[$item->id]['grade'] = $gradetabindex;
+            $tabindices[$item->id]['feedback'] = $gradetabindex + $numusers;
+            $gradetabindex += $numusers * 2;
         }
         $scales_array = array();
 
@@ -632,7 +636,8 @@ class grade_report_grader extends grade_report {
                             $studentshtml .= '<input type="hidden" name="oldgrade_'.$userid.'_'
                                           .$item->id.'" value="'.$gradeval.'"/>';
                             $studentshtml .= choose_from_menu($scaleopt, 'grade_'.$userid.'_'.$item->id,
-                                                          $gradeval, $this->get_lang_string('nograde'), '', '-1', true, false, $gradetabindex++);
+                                                              $gradeval, $this->get_lang_string('nograde'), '', '-1',
+                                                              true, false, $tabindices[$item->id]['grade']);
                         } elseif(!empty($scale)) {
                             $scales = explode(",", $scale->scale);
 
@@ -650,8 +655,8 @@ class grade_report_grader extends grade_report {
                         if ($this->get_pref('quickgrading') and $grade->is_editable()) {
                             $value = $this->get_grade_clean($gradeval, $decimalpoints);
                             $studentshtml .= '<input type="hidden" name="oldgrade_'.$userid.'_'.$item->id.'" value="'.$value.'" />';
-                            $studentshtml .= '<input size="6" tabindex="' . $gradetabindex++ . '" type="text" name="grade_'.$userid.'_'
-                                          .$item->id.'" value="'.$value.'" />';
+                            $studentshtml .= '<input size="6" tabindex="' . $tabindices[$item->id]['grade'] . '" type="text" name="grade_'
+                                          .$userid.'_' .$item->id.'" value="'.$value.'" />';
                         } else {
                             $studentshtml .= $this->get_grade_clean($gradeval, $decimalpoints);
                         }
@@ -665,7 +670,7 @@ class grade_report_grader extends grade_report {
                         }
                         $studentshtml .= '<input type="hidden" name="oldfeedback_'
                                       .$userid.'_'.$item->id.'" value="' . s($grade->feedback) . '" />';
-                        $studentshtml .= '<input tabindex="' . $feedbacktabindex++ . '" size="6" type="text" name="feedback_'
+                        $studentshtml .= '<input tabindex="' . $tabindices[$item->id]['feedback'] . '" size="6" type="text" name="feedback_'
                                       .$userid.'_'.$item->id.'" value="' . s($grade->feedback) . '" />';
                     }