Merge branch 'install_35_STABLE' of https://git.in.moodle.com/amosbot/moodle-install...
[moodle.git] / admin / settings / badges.php
blob276582c3ccc2d48c1ed0c6d1f57e4efcdf1ee1d4
1 <?php
3 // This file is part of Moodle - http://moodle.org/
4 //
5 // Moodle is free software: you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation, either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // Moodle is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License
16 // along with Moodle. If not, see <http://www.gnu.org/licenses/>.
18 /**
19 * This file defines settingpages and externalpages under the "badges" section
21 * @package core
22 * @subpackage badges
23 * @copyright 2012 onwards Totara Learning Solutions Ltd {@link http://www.totaralms.com/}
24 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
25 * @author Yuliya Bozhko <yuliya.bozhko@totaralms.com>
28 global $SITE;
30 if (($hassiteconfig || has_any_capability(array(
31 'moodle/badges:viewawarded',
32 'moodle/badges:createbadge',
33 'moodle/badges:manageglobalsettings',
34 'moodle/badges:awardbadge',
35 'moodle/badges:configurecriteria',
36 'moodle/badges:configuremessages',
37 'moodle/badges:configuredetails',
38 'moodle/badges:deletebadge'), $systemcontext))) {
40 require_once($CFG->libdir . '/badgeslib.php');
42 $globalsettings = new admin_settingpage('badgesettings', new lang_string('badgesettings', 'badges'),
43 array('moodle/badges:manageglobalsettings'), empty($CFG->enablebadges));
45 $globalsettings->add(new admin_setting_configtext('badges_defaultissuername',
46 new lang_string('defaultissuername', 'badges'),
47 new lang_string('defaultissuername_desc', 'badges'),
48 $SITE->fullname ? $SITE->fullname : $SITE->shortname, PARAM_TEXT));
50 $globalsettings->add(new admin_setting_configtext('badges_defaultissuercontact',
51 new lang_string('defaultissuercontact', 'badges'),
52 new lang_string('defaultissuercontact_desc', 'badges'),
53 get_config('moodle','supportemail'), PARAM_EMAIL));
55 $globalsettings->add(new admin_setting_configtext('badges_badgesalt',
56 new lang_string('badgesalt', 'badges'),
57 new lang_string('badgesalt_desc', 'badges'),
58 'badges' . $SITE->timecreated, PARAM_ALPHANUM));
60 $globalsettings->add(new admin_setting_configcheckbox('badges_allowexternalbackpack',
61 new lang_string('allowexternalbackpack', 'badges'),
62 new lang_string('allowexternalbackpack_desc', 'badges'), 1));
64 $globalsettings->add(new admin_setting_configcheckbox('badges_allowcoursebadges',
65 new lang_string('allowcoursebadges', 'badges'),
66 new lang_string('allowcoursebadges_desc', 'badges'), 1));
68 $ADMIN->add('badges', $globalsettings);
70 $ADMIN->add('badges',
71 new admin_externalpage('managebadges',
72 new lang_string('managebadges', 'badges'),
73 new moodle_url('/badges/index.php', array('type' => BADGE_TYPE_SITE)),
74 array(
75 'moodle/badges:viewawarded',
76 'moodle/badges:createbadge',
77 'moodle/badges:awardbadge',
78 'moodle/badges:configurecriteria',
79 'moodle/badges:configuremessages',
80 'moodle/badges:configuredetails',
81 'moodle/badges:deletebadge'
83 empty($CFG->enablebadges)
87 $ADMIN->add('badges',
88 new admin_externalpage('newbadge',
89 new lang_string('newbadge', 'badges'),
90 new moodle_url('/badges/newbadge.php', array('type' => BADGE_TYPE_SITE)),
91 array('moodle/badges:createbadge'), empty($CFG->enablebadges)