Merge branch 'MDL-36316-master' of git://github.com/danpoltawski/moodle
authorSam Hemelryk <sam@moodle.com>
Mon, 16 Sep 2013 01:13:41 +0000 (13:13 +1200)
committerSam Hemelryk <sam@moodle.com>
Mon, 16 Sep 2013 01:13:41 +0000 (13:13 +1200)
1  2 
grade/report/grader/lib.php
lib/filelib.php
theme/bootstrapbase/config.php

@@@ -783,7 -783,7 +783,7 @@@ class grade_report_grader extends grade
                      $headerlink = $this->gtree->get_element_header($element, true, $this->get_pref('showactivityicons'), false);
  
                      $itemcell = new html_table_cell();
 -                    $itemcell->attributes['class'] = $type . ' ' . $catlevel . ' highlightable';
 +                    $itemcell->attributes['class'] = $type . ' ' . $catlevel . ' highlightable'. ' i'. $element['object']->id;
  
                      if ($element['object']->is_hidden()) {
                          $itemcell->attributes['class'] .= ' dimmed_text';
                  $eid = $this->gtree->get_grade_eid($grade);
                  $element = array('eid'=>$eid, 'object'=>$grade, 'type'=>'grade');
  
 -                $itemcell->attributes['class'] .= ' grade';
 +                $itemcell->attributes['class'] .= ' grade i'.$itemid;
                  if ($item->is_category_item()) {
                      $itemcell->attributes['class'] .= ' cat';
                  }
                  $eid = $this->gtree->get_item_eid($item);
                  $element = $this->gtree->locate_element($eid);
                  $itemcell = new html_table_cell();
 -                $itemcell->attributes['class'] = 'controls icons';
 +                $itemcell->attributes['class'] = 'controls icons i'.$itemid;
                  $itemcell->text = $this->get_icons($element);
                  $iconsrow->cells[] = $itemcell;
              }
              foreach ($this->gtree->items as $itemid=>$unused) {
                  $item =& $this->gtree->items[$itemid];
                  $itemcell = new html_table_cell();
 -                $itemcell->header = true;
 -                $itemcell->attributes['class'] .= ' header range';
 +                $itemcell->attributes['class'] .= ' range i'. $itemid;
  
                  $hidden = '';
                  if ($item->is_hidden()) {
  
                  if ($item->needsupdate) {
                      $avgcell = new html_table_cell();
 +                    $avgcell->attributes['class'] = 'i'. $itemid;
                      $avgcell->text = $OUTPUT->container(get_string('error'), 'gradingerror');
                      $avgrow->cells[] = $avgcell;
                      continue;
  
                  if (!isset($sumarray[$item->id]) || $meancount == 0) {
                      $avgcell = new html_table_cell();
 +                    $avgcell->attributes['class'] = 'i'. $itemid;
                      $avgcell->text = '-';
                      $avgrow->cells[] = $avgcell;
  
                      }
  
                      $avgcell = new html_table_cell();
 +                    $avgcell->attributes['class'] = 'i'. $itemid;
                      $avgcell->text = $gradehtml.$numberofgrades;
                      $avgrow->cells[] = $avgcell;
                  }
       */
      public function is_fixed_students() {
          global $CFG;
-         return $CFG->grade_report_fixedstudents &&
-             (core_useragent::check_ie_version('7.0') ||
-              core_useragent::check_firefox_version('2.0') ||
-              core_useragent::check_gecko_version('2006010100') ||
-              core_useragent::check_camino_version('1.0') ||
-              core_useragent::check_opera_version('6.0') ||
-              core_useragent::check_chrome_version('6') ||
-              core_useragent::check_safari_version('300'));
+         return $CFG->grade_report_fixedstudents;
      }
  
      /**
diff --combined lib/filelib.php
@@@ -80,31 -80,6 +80,31 @@@ function file_encode_url($urlbase, $pat
      return $return;
  }
  
 +/**
 + * Detects if area contains subdirs,
 + * this is intended for file areas that are attached to content
 + * migrated from 1.x where subdirs were allowed everywhere.
 + *
 + * @param context $context
 + * @param string $component
 + * @param string $filearea
 + * @param string $itemid
 + * @return bool
 + */
 +function file_area_contains_subdirs(context $context, $component, $filearea, $itemid) {
 +    global $DB;
 +
 +    if (!isset($itemid)) {
 +        // Not initialised yet.
 +        return false;
 +    }
 +
 +    // Detect if any directories are already present, this is necessary for content upgraded from 1.x.
 +    $select = "contextid = :contextid AND component = :component AND filearea = :filearea AND itemid = :itemid AND filepath <> '/' AND filename = '.'";
 +    $params = array('contextid'=>$context->id, 'component'=>$component, 'filearea'=>$filearea, 'itemid'=>$itemid);
 +    return $DB->record_exists_select('files', $select, $params);
 +}
 +
  /**
   * Prepares 'editor' formslib element from data in database
   *
@@@ -2126,7 -2101,7 +2126,7 @@@ function readstring_accel($string, $mim
  function send_temp_file($path, $filename, $pathisstring=false) {
      global $CFG;
  
-     if (core_useragent::check_firefox_version('1.5')) {
+     if (core_useragent::is_firefox()) {
          // only FF is known to correctly save to disk before opening...
          $mimetype = mimeinfo('type', $filename);
      } else {
      }
  
      // if user is using IE, urlencode the filename so that multibyte file name will show up correctly on popup
-     if (core_useragent::check_ie_version()) {
+     if (core_useragent::is_ie()) {
          $filename = urlencode($filename);
      }
  
@@@ -2222,12 -2197,12 +2222,12 @@@ function send_file($path, $filename, $l
      // Use given MIME type if specified, otherwise guess it using mimeinfo.
      // IE, Konqueror and Opera open html file directly in browser from web even when directed to save it to disk :-O
      // only Firefox saves all files locally before opening when content-disposition: attachment stated
-     $isFF         = core_useragent::check_firefox_version('1.5'); // only FF > 1.5 properly tested
+     $isFF         = core_useragent::is_firefox(); // only FF properly tested
      $mimetype     = ($forcedownload and !$isFF) ? 'application/x-forcedownload' :
                           ($mimetype ? $mimetype : mimeinfo('type', $filename));
  
      // if user is using IE, urlencode the filename so that multibyte file name will show up correctly on popup
-     if (core_useragent::check_ie_version()) {
+     if (core_useragent::is_ie()) {
          $filename = rawurlencode($filename);
      }
  
@@@ -2386,12 -2361,12 +2386,12 @@@ function send_stored_file($stored_file
      // IE, Konqueror and Opera open html file directly in browser from web even when directed to save it to disk :-O
      // only Firefox saves all files locally before opening when content-disposition: attachment stated
      $filename     = is_null($filename) ? $stored_file->get_filename() : $filename;
-     $isFF         = core_useragent::check_firefox_version('1.5'); // only FF > 1.5 properly tested
+     $isFF         = core_useragent::is_firefox(); // only FF properly tested
      $mimetype     = ($forcedownload and !$isFF) ? 'application/x-forcedownload' :
                           ($stored_file->get_mimetype() ? $stored_file->get_mimetype() : mimeinfo('type', $filename));
  
      // if user is using IE, urlencode the filename so that multibyte file name will show up correctly on popup
-     if (core_useragent::check_ie_version()) {
+     if (core_useragent::is_ie()) {
          $filename = rawurlencode($filename);
      }
  
@@@ -42,6 -42,9 +42,6 @@@ $THEME->plugins_exclude_sheets = array
      'block' => array(
          'html'
      ),
 -    'gradereport' => array(
 -        'grader',
 -    ),
  );
  
  $THEME->rendererfactory = 'theme_overridden_renderer_factory';
@@@ -164,7 -167,7 +164,7 @@@ $THEME->javascripts_footer = array
      'moodlebootstrap',
  );
  
- if (core_useragent::check_ie_version() && !core_useragent::check_ie_version('9.0')) {
+ if (core_useragent::is_ie() && !core_useragent::check_ie_version('9.0')) {
      $THEME->javascripts[] = 'html5shiv';
  }