MDL-17468 tool_uploaduser: seperate capability for user pictures
authorDan Poltawski <dan@moodle.com>
Fri, 7 Jun 2013 04:03:24 +0000 (12:03 +0800)
committerDan Poltawski <dan@moodle.com>
Fri, 14 Jun 2013 06:04:25 +0000 (14:04 +0800)
admin/tool/uploaduser/db/access.php [new file with mode: 0644]
admin/tool/uploaduser/lang/en/tool_uploaduser.php
admin/tool/uploaduser/picture.php
admin/tool/uploaduser/settings.php
admin/tool/uploaduser/version.php

diff --git a/admin/tool/uploaduser/db/access.php b/admin/tool/uploaduser/db/access.php
new file mode 100644 (file)
index 0000000..7fe1c3f
--- /dev/null
@@ -0,0 +1,39 @@
+<?php
+// This file is part of Moodle - http://moodle.org/
+//
+// Moodle is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// Moodle is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+
+/**
+ * Defines the capabilities used by the user upload admin tool
+ *
+ * @package    tool_uploaduser
+ * @copyright  2013 Dan Poltawski <dan@moodle.com>
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+defined('MOODLE_INTERNAL') || die();
+
+$capabilities = array(
+
+    // Allows the user to upload user pictures.
+    'tool/uploaduser:uploaduserpictures' => array(
+        'riskbitmask' => RISK_SPAM,
+        'captype' => 'write',
+        'contextlevel' => CONTEXT_SYSTEM,
+        'archetypes' => array(
+            'manager' => CAP_ALLOW
+        ),
+        'clonepermissionsfrom' =>  'moodle/site:uploadusers',
+    ),
+);
index 1c2330a..b8d46f3 100644 (file)
@@ -59,6 +59,7 @@ $string['uploadusers_help'] = 'Users may be uploaded (and optionally enrolled in
 * Required fieldnames are username, password, firstname, lastname, email';
 $string['uploaduserspreview'] = 'Upload users preview';
 $string['uploadusersresult'] = 'Upload users results';
+$string['uploaduser:uploaduserpictures'] = 'Upload user pictures';
 $string['useraccountupdated'] = 'User updated';
 $string['useraccountuptodate'] = 'User up-to-date';
 $string['userdeleted'] = 'User deleted';
index f0f1511..fe3d8e5 100644 (file)
@@ -38,7 +38,7 @@ admin_externalpage_setup('tooluploaduserpictures');
 
 require_login();
 
-require_capability('moodle/site:uploadusers', context_system::instance());
+require_capability('tool/uploaduser:uploaduserpictures', context_system::instance());
 
 $site = get_site();
 
index 0dc16e6..d3b37d2 100644 (file)
@@ -25,7 +25,5 @@
 
 defined('MOODLE_INTERNAL') || die;
 
-if (has_capability('moodle/site:uploadusers', $systemcontext)) {
-    $ADMIN->add('accounts', new admin_externalpage('tooluploaduser', get_string('uploadusers', 'tool_uploaduser'), "$CFG->wwwroot/$CFG->admin/tool/uploaduser/index.php", 'moodle/site:uploadusers'));
-    $ADMIN->add('accounts', new admin_externalpage('tooluploaduserpictures', get_string('uploadpictures','tool_uploaduser'), "$CFG->wwwroot/$CFG->admin/tool/uploaduser/picture.php", 'moodle/site:uploadusers'));
-}
+$ADMIN->add('accounts', new admin_externalpage('tooluploaduser', get_string('uploadusers', 'tool_uploaduser'), "$CFG->wwwroot/$CFG->admin/tool/uploaduser/index.php", 'moodle/site:uploadusers'));
+$ADMIN->add('accounts', new admin_externalpage('tooluploaduserpictures', get_string('uploadpictures','tool_uploaduser'), "$CFG->wwwroot/$CFG->admin/tool/uploaduser/picture.php", 'tool/uploaduser:uploaduserpictures'));
index 6de83e5..5116d1b 100644 (file)
@@ -25,7 +25,7 @@
 
 defined('MOODLE_INTERNAL') || die();
 
-$plugin->version   = 2013050100; // The current plugin version (Date: YYYYMMDDXX)
+$plugin->version   = 2013061400; // The current plugin version (Date: YYYYMMDDXX)
 $plugin->requires  = 2013050100; // Requires this Moodle version
 $plugin->component = 'tool_uploaduser'; // Full name of the plugin (used for diagnostics)