From: skodak Date: Sat, 25 Aug 2007 14:35:54 +0000 (+0000) Subject: MDL-10995 removing previous patch; testing a better one just now X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=5785266f9e1d02fe67ea061f1f6ee8affb68472d;p=moodle.git MDL-10995 removing previous patch; testing a better one just now --- diff --git a/lib/accesslib.php b/lib/accesslib.php index d27c7ca656..de52ba2209 100755 --- a/lib/accesslib.php +++ b/lib/accesslib.php @@ -681,7 +681,7 @@ function has_capability($capability, $context=NULL, $userid=NULL, $doanything=tr */ function capability_search($capability, $context, $capabilities, $switchroleactive=false) { - global $USER, $CFG, $COURSE; + global $USER, $CFG; if (!isset($context->id)) { return 0; @@ -712,16 +712,9 @@ function capability_search($capability, $context, $capabilities, $switchroleacti break; case CONTEXT_COURSECAT: // Coursecat -> coursecat or site - static $categorycache = null; // caching of parent categories - these are never changing on one page - if (!isset($categorycache)) { - $categorycache = array(); - } - if (!array_key_exists($context->instanceid, $categorycache)) { - $coursecat = get_record('course_categories','id',$context->instanceid); - $categorycache[$context->instanceid] = $coursecat->parent; - } - if (!empty($categorycache[$context->instanceid])) { // return parent value if it exists - $parentcontext = get_context_instance(CONTEXT_COURSECAT, $categorycache[$context->instanceid]); + $coursecat = get_record('course_categories','id',$context->instanceid); + if (!empty($coursecat->parent)) { // return parent value if it exists + $parentcontext = get_context_instance(CONTEXT_COURSECAT, $coursecat->parent); } else { // else return site value $parentcontext = get_context_instance(CONTEXT_SYSTEM); } @@ -731,11 +724,7 @@ function capability_search($capability, $context, $capabilities, $switchroleacti case CONTEXT_COURSE: // 1 to 1 to course cat if (empty($switchroleactive)) { // find the course cat, and return its value - if ($context->instanceid == $COURSE->id) { - $course = $COURSE; // reuse the global COURSE we already have ;-) - } else { - $course = get_record('course','id',$context->instanceid); - } + $course = get_record('course','id',$context->instanceid); if ($course->id == SITEID) { // In 1.8 we've separated site course and system $parentcontext = get_context_instance(CONTEXT_SYSTEM); } else {