]> git.mjollnir.org Git - moodle.git/commitdiff
MDL-13317 use cached system context in get_user_access_sitewide and when rebuilding...
authorskodak <skodak>
Sun, 3 Feb 2008 16:23:54 +0000 (16:23 +0000)
committerskodak <skodak>
Sun, 3 Feb 2008 16:23:54 +0000 (16:23 +0000)
lib/accesslib.php

index 51d2f2d2937b41a0a2b4e86e21266d592d15ff02..fd4f9394fa4852cc903cfa525b5845fd06326841 100755 (executable)
@@ -1232,8 +1232,8 @@ function get_user_access_sitewide($userid) {
     $accessdata['rdef']   = array();
     $accessdata['loaded'] = array();
 
-    $sitectx = get_field('context', 'id','contextlevel', CONTEXT_SYSTEM);
-    $base = "/$sitectx";
+    $sitectx = get_system_context();
+    $base = '/'.$sitectx->id;
 
     //
     // Role assignments - and any rolecaps directly linked
@@ -5181,15 +5181,9 @@ function build_context_path($force=false, $feedback=false) {
     global $CFG;
     require_once($CFG->libdir.'/ddllib.php');
 
-    // Site
-    $sitectx = get_record('context', 'contextlevel', CONTEXT_SYSTEM);
-    $base = '/' . $sitectx->id;
-
-    if ($force || $sitectx->path !== $base) {
-        set_field('context', 'path',  $base, 'id', $sitectx->id);
-        set_field('context', 'depth', 1,     'id', $sitectx->id);
-        $sitectx = get_record('context', 'contextlevel', CONTEXT_SYSTEM);
-    }
+    // System context
+    $sitectx = get_system_context(!$force);
+    $base    = '/'.$sitectx->id;
 
     // Sitecourse
     $sitecoursectx = get_record('context',