Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
 
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.
14
//
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/>.
17
 
18
/**
19
* This file defines settingpages and externalpages under the "badges" section
20
*
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>
26
*/
27
 
28
global $SITE;
29
 
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))) {
39
 
40
    require_once($CFG->libdir . '/badgeslib.php');
41
 
42
    $globalsettings = new admin_settingpage('badgesettings', new lang_string('badgesettings', 'badges'),
43
            array('moodle/badges:manageglobalsettings'), empty($CFG->enablebadges));
44
 
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));
49
 
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));
54
 
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));
59
 
60
    $globalsettings->add(new admin_setting_configcheckbox('badges_allowcoursebadges',
61
            new lang_string('allowcoursebadges', 'badges'),
62
            new lang_string('allowcoursebadges_desc', 'badges'), 1));
63
 
64
    $globalsettings->add(new admin_setting_configcheckbox('badges_allowexternalbackpack',
65
            new lang_string('allowexternalbackpack', 'badges'),
66
            new lang_string('allowexternalbackpack_desc', 'badges'), 1));
67
 
68
    $ADMIN->add('badges', $globalsettings);
69
 
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'
82
            ),
83
            empty($CFG->enablebadges)
84
        )
85
    );
86
 
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)
92
        )
93
    );
94
 
95
    $ADMIN->add('badges',
96
        new admin_externalpage('managebackpacks',
97
            new lang_string('managebackpacks', 'badges'),
98
            new moodle_url('/badges/backpacks.php'),
99
            array('moodle/badges:manageglobalsettings'), empty($CFG->enablebadges) || empty($CFG->badges_allowexternalbackpack)
100
        )
101
    );
102
}