]> git.mjollnir.org Git - moodle.git/commitdiff
More language-related tidyups and a new get_local_override() function
authormoodler <moodler>
Sun, 13 Aug 2006 09:25:45 +0000 (09:25 +0000)
committermoodler <moodler>
Sun, 13 Aug 2006 09:25:45 +0000 (09:25 +0000)
admin/roles/manage.html
lang/en_utf8/role.php
lib/accesslib.php

index c07d65e4ef735777935353d7675c70c79469dff4..bf97a1467ee4d71cc4b7f6c0f1729f7854171292 100755 (executable)
@@ -9,55 +9,62 @@
 
 <input type="hidden" name="contextid" value="<?php echo $contextid; ?>">
 <p>            
-            <table>
-            <tr>
-                <td>Capability Name</td><td>Inherit</td><td>Allow</td><td>Prevent</td><td>Prohibit</td>
-            </tr>
-            <?php 
-            
-            // init these 2
-            $contextlevel = 0;
-            $component = '';
-            
-            foreach ($capabilities as $capability) {
-            // prints a breaker if component or name or context level  
-                if ($capability->component != $component or $capability->contextlevel != $contextlevel) {
-                    echo ('<tr><td colspan="4"><b>'.get_component_string($capability->component, $capability->contextlevel).'</b></td></tr>');  
-                }
-                
-                // these 2 are used to see to group same mod/core capabilities together
-                $contextlevel = $capability->contextlevel;
-                $component = $capability->component;
-                
-                // check the capability override for this cap, this role in this context
-                
-                $SQL = "select * from {$CFG->prefix}role_capabilities where
-                        roleid = $roleid and capability = '$capability->name' and contextid = $contextid";
-                        
-                $localoverride = get_record_sql($SQL);
-                
-                if (isset($r_caps[$capability->name])) {
-                    $isallow = $r_caps[$capability->name] > 0;
-                    $isprevent = $r_caps[$capability->name] < 0 && $r_caps[$capability->name] > -500;
-                    $isprohibit = $r_caps[$capability->name] <= -500;
-                } else {
-                    $isallow = 0;
-                    $isprevent = 0;
-                    $isprohibit = 0;  
-                }
-                
-            ?>
-                
-            <tr>
-              <td><span title="<?php echo $capability->name ?>"><?php echo get_capability_string($capability->name); ?></span></td>
-                 <td><INPUT TYPE=radio NAME="<?php echo $capability->name; ?>" VALUE="0" <?php if (!isset($localoverride->permission) || $localoverride->permission==0){ echo 'checked="checked"'; }?>></td>
-                 <td><INPUT TYPE=radio NAME="<?php echo $capability->name; ?>" VALUE="1" <?php if (isset($localoverride->permission) && $localoverride->permission==1){ echo 'checked="checked"'; }?>></td>
-                 <td ><INPUT TYPE=radio NAME="<?php echo $capability->name; ?>" VALUE="-1" <?php if (isset($localoverride->permission) && $localoverride->permission==-1){ echo 'checked="checked"'; }?>></td>
-                 <td ><INPUT TYPE=radio NAME="<?php echo $capability->name; ?>" VALUE="-1000" <?php if (isset($localoverride->permission) && $localoverride->permission==-1000){ echo 'checked="checked"'; }?>></td>
-            </tr>
-            
-            <?php } ?>    
-            </table>     
+<table>
+<tr>
+<td><?php print_string('capability','role') ?></td>
+<td><?php print_string('inherit','role') ?></td>
+<td><?php print_string('allow','role') ?></td>
+<td><?php print_string('prevent','role') ?></td>
+<td><?php print_string('prohibit','role') ?></td>
+</tr>
+
+<?php 
+
+// init these 2
+$contextlevel = 0;
+$component = '';
+
+foreach ($capabilities as $capability) {
+    // prints a breaker if component or name or context level  
+    if ($capability->component != $component or $capability->contextlevel != $contextlevel) {
+        echo ('<tr><td colspan="4"><b>'.
+               get_component_string($capability->component, $capability->contextlevel).'</b></td></tr>');  
+    }
+
+    // these 2 are used to see to group same mod/core capabilities together
+    $contextlevel = $capability->contextlevel;
+    $component = $capability->component;
+
+    // check the capability override for this cap, this role in this context
+
+    $SQL = "select * from {$CFG->prefix}role_capabilities where
+                     roleid = $roleid and capability = '$capability->name' and contextid = $contextid";
+    get_record_sql($SQL);
+
+    $localoverride = get_local_override($roleid, $contextid, $capability->name);
+
+    if (isset($r_caps[$capability->name])) {
+        $isallow = $r_caps[$capability->name] > 0;
+        $isprevent = $r_caps[$capability->name] < 0 && $r_caps[$capability->name] > -500;
+        $isprohibit = $r_caps[$capability->name] <= -500;
+    } else {
+        $isallow = 0;
+        $isprevent = 0;
+        $isprohibit = 0;  
+    }
+
+    ?>
+
+        <tr>
+        <td><span title="<?php echo $capability->name ?>"><?php echo get_capability_string($capability->name); ?></span></td>
+        <td><INPUT TYPE=radio NAME="<?php echo $capability->name; ?>" VALUE="0" <?php if (!isset($localoverride->permission) || $localoverride->permission==0){ echo 'checked="checked"'; }?>></td>
+        <td><INPUT TYPE=radio NAME="<?php echo $capability->name; ?>" VALUE="1" <?php if (isset($localoverride->permission) && $localoverride->permission==1){ echo 'checked="checked"'; }?>></td>
+        <td ><INPUT TYPE=radio NAME="<?php echo $capability->name; ?>" VALUE="-1" <?php if (isset($localoverride->permission) && $localoverride->permission==-1){ echo 'checked="checked"'; }?>></td>
+        <td ><INPUT TYPE=radio NAME="<?php echo $capability->name; ?>" VALUE="-1000" <?php if (isset($localoverride->permission) && $localoverride->permission==-1000){ echo 'checked="checked"'; }?>></td>
+        </tr>
+
+        <?php } ?>    
+        </table>     
 </p>
 <br/><input type="submit" value="<?php print_string($action);?>">
 </form>
index ec415fc04d86a90654ff72b8b703fc9c0894e977..7c6d8d0b8bf50dc60a77a592a91de0c6462fbb8c 100644 (file)
@@ -2,11 +2,16 @@
       // role.php 
 
 $string['assignroles'] = 'Assign roles';
+$string['allow'] = 'Allow';
+$string['capability'] = 'Capability';
 $string['currentrole'] = 'Current role';
 $string['currentcontext'] = 'Current context';
 $string['existingusers'] = '$a existing users';
+$string['inherit'] = 'Inherit';
 $string['overrideroles'] = 'Override roles';
 $string['potentialusers'] = '$a potential users';
+$string['prevent'] = 'Prevent';
+$string['prohibit'] = 'Prohibit';
 
 $string['site:doanything'] = 'Allowed to do everything';
 $string['legacy:guest'] = 'LEGACY ROLE: Guest';
index 66cf57bdda9c238fce02b07cd4616d0a38c79c2b..4723cf046c4ad426767ff684323545b18606aad6 100755 (executable)
@@ -828,6 +828,16 @@ function context_level($contextid) {
 }
 
 
+/**
+ * Get the local override (if any) for a given capability in a role in a context
+ * @param $roleid
+ * @param $instance
+ */
+function get_local_override($roleid, $contextid, $capability) {
+    return get_record('role_capabilities', 'roleid', $roleid, 'capability', $capability, 'contextid', $contextid);
+}
+
+
 
 /************************************
  *    DB TABLE RELATED FUNCTIONS    *