MDL-49434 availability: Revert MDL-49418 (obsoleted by this change)
authorsam marshall <s.marshall@open.ac.uk>
Wed, 24 Jun 2015 10:09:27 +0000 (11:09 +0100)
committersam marshall <s.marshall@open.ac.uk>
Wed, 15 Jul 2015 10:43:05 +0000 (11:43 +0100)
lib/moodlelib.php

index c33fc8f..574225b 100644 (file)
@@ -2807,15 +2807,6 @@ function require_login($courseorid = null, $autologinguest = true, $cm = null, $
         }
     }
 
-    // Set the global $COURSE.
-    // TODO MDL-49434: setting current course/cm should be after the check $cm->uservisible .
-    if ($cm) {
-        $PAGE->set_cm($cm, $course);
-        $PAGE->set_pagelayout('incourse');
-    } else if (!empty($courseorid)) {
-        $PAGE->set_course($course);
-    }
-
     // Check visibility of activity to current user; includes visible flag, conditional availability, etc.
     if ($cm && !$cm->uservisible) {
         if ($preventredirect) {
@@ -2829,6 +2820,14 @@ function require_login($courseorid = null, $autologinguest = true, $cm = null, $
         redirect($url, get_string('activityiscurrentlyhidden'));
     }
 
+    // Set the global $COURSE.
+    if ($cm) {
+        $PAGE->set_cm($cm, $course);
+        $PAGE->set_pagelayout('incourse');
+    } else if (!empty($courseorid)) {
+        $PAGE->set_course($course);
+    }
+
     // Finally access granted, update lastaccess times.
     user_accesstime_log($course->id);
 }