// this deals with tabs, as well as print_headers for navigation
if ($currenttab != 'update') {
- switch ($context->level) {
+ switch ($context->aggregatelevel) {
case CONTEXT_SYSTEM:
$stradministration = get_string('administration');
// Printing the tabs
- if ($context->level == CONTEXT_MODULE) { // only show update button if module?
+ if ($context->aggregatelevel == CONTEXT_MODULE) { // only show update button if module?
$toprow[] = new tabobject('update', $CFG->wwwroot.'/course/mod.php?update='.$context->instanceid.'&return=true&sesskey='.sesskey(), get_string('update'));
$secondrow[] = new tabobject('assign', $CFG->wwwroot.'/admin/roles/assign.php?contextid='.$context->id, get_string('assignroles', 'role'));
- if ($context->level == CONTEXT_SYSTEM) {
+ if ($context->aggregatelevel == CONTEXT_SYSTEM) {
$secondrow[] = new tabobject('override', '', get_string('overrideroles', 'role'));
} else {
$secondrow[] = new tabobject('override', $CFG->wwwroot.'/admin/roles/override.php?contextid='.$context->id,
$tabs = array($toprow);
}
- if ($context->level != CONTEXT_SYSTEM) { // do not show tabs otherwise
+ if ($context->aggregatelevel != CONTEXT_SYSTEM) { // do not show tabs otherwise
print_tabs($tabs, $currenttab, $inactive);
}
return ($capabilities[$sitecontext->id]['moodle/site:doanything']);
}
- switch ($context->level) {
+ switch ($context->aggregatelevel) {
case CONTEXT_COURSECAT:
// Check parent cats.
/* Then, we check the cache recursively */
$permission = 0;
- switch ($context->level) {
+ switch ($context->aggregatelevel) {
case CONTEXT_SYSTEM: // by now it's a definite an inherit
$permission = 0;
* [273][blah blah blah] = 2
*/
function load_user_capability($capability='', $context ='', $userid='') {
-
+
global $USER, $CFG;
if (empty($userid)) {
$siteinstance = get_context_instance(CONTEXT_SYSTEM, SITEID);
- $SQL = " SELECT rc.capability, c1.id, (c1.level * 100) AS aggregatelevel,
+ $SQL = " SELECT rc.capability, c1.id, (c1.aggregatelevel * 100) AS aggregatelevel,
SUM(rc.permission) AS sum
FROM
{$CFG->prefix}role_assignments AS ra,
SUM(rc.permission) != 0
UNION
- SELECT rc.capability, c1.id, (c1.level * 100 + c2.level) AS aggregatelevel,
+ SELECT rc.capability, c1.id, (c1.aggregatelevel * 100 + c2.aggregatelevel) AS aggregatelevel,
SUM(rc.permission) AS sum
FROM
{$CFG->prefix}role_assignments AS ra,
$rs->MoveNext();
}
}
-
+
/* so up to this point we should have somethign like this
* $capabilities[1] ->aggregatelevel = 1000
->module = SITEID
return true;
}
}
- switch ($context->level) {
+ switch ($context->aggregatelevel) {
case CONTEXT_SYSTEM:
// By now it's a definite an inherit.
* @param $level
* @param $instanceid
*/
-function create_context($level, $instanceid) {
- if (!get_record('context','level',$level,'instanceid',$instanceid)) {
+function create_context($aggregatelevel, $instanceid) {
+ if (!get_record('context','aggregatelevel',$aggregatelevel,'instanceid',$instanceid)) {
$context = new object;
- $context->level = $level;
+ $context->aggregatelevel = $aggregatelevel;
$context->instanceid = $instanceid;
return insert_record('context',$context);
}
* @param $level
* @param $instance
*/
-function get_context_instance($level=NULL, $instance=SITEID) {
-
- global $CONTEXT, $context_cache, $context_cache_id;
+function get_context_instance($aggregatelevel=NULL, $instance=SITEID) {
/// If no level is supplied then return the current global context if there is one
- if (empty($level)) {
+ if (empty($aggregatelevel)) {
if (empty($CONTEXT)) {
if ($CFG->debug > 7) {
notify("Error: get_context_instance() called without a context");
}
/// Check the cache
- if (isset($context_cache[$level][$instance])) { // Already cached
- return $context_cache[$level][$instance];
+ if (isset($context_cache[$aggregatelevel][$instance])) { // Already cached
+ return $context_cache[$aggregatelevel][$instance];
}
/// Get it from the database, or create it
- if (!$context = get_record('context', 'level', $level, 'instanceid', $instance)) {
- create_context($level, $instance);
- $context = get_record('context', 'level', $level, 'instanceid', $instance);
+ if (!$context = get_record('context', 'aggregatelevel', $aggregatelevel, 'instanceid', $instance)) {
+ create_context($aggregatelevel, $instance);
+ $context = get_record('context', 'aggregatelevel', $aggregatelevel, 'instanceid', $instance);
}
/// Update the cache
- $context_cache[$level][$instance] = $context; // Cache it for later
+ $context_cache[$aggregatelevel][$instance] = $context; // Cache it for later
$context_cache_id[$context->id] = $context; // Cache it for later
}
if ($context = get_record('context', 'id', $id)) { // Update the cache and return
- $context_cache[$context->level][$context->instanceid] = $context;
+ $context_cache[$context->aggregatelevel][$context->instanceid] = $context;
$context_cache_id[$context->id] = $context;
return $context;
}
function print_context_name($context) {
$name = '';
- switch ($context->level) {
+ switch ($context->aggregatelevel) {
case CONTEXT_SYSTEM: // by now it's a definite an inherit
$name = get_string('site');
$sort = 'ORDER BY contextlevel,component,id'; // To group them sensibly for display
- switch ($context->level) {
+ switch ($context->aggregatelevel) {
case CONTEXT_SYSTEM: // all
$SQL = "select * from {$CFG->prefix}capabilities";
where rc.contextid in $contexts
and rc.roleid = $roleid
and rc.contextid = c.id
- ORDER BY c.level DESC, rc.capability DESC";
+ ORDER BY c.aggregatelevel DESC, rc.capability DESC";
$records = get_records_sql($SQL);
*/
function get_parent_contexts($context) {
- switch ($context->level) {
+ switch ($context->aggregatelevel) {
case CONTEXT_SYSTEM: // no parent
return null;