mirror of
https://github.com/moodle/moodle.git
synced 2025-08-04 08:26:37 +02:00
Merge branch 'MDL-78175-master' of https://github.com/ferranrecio/moodle
This commit is contained in:
commit
ab384ef813
13 changed files with 174 additions and 44 deletions
53
enrol/classes/form/renameroles.php
Normal file
53
enrol/classes/form/renameroles.php
Normal file
|
@ -0,0 +1,53 @@
|
|||
<?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/>.
|
||||
|
||||
namespace core_enrol\form;
|
||||
|
||||
/**
|
||||
* Form to customise the course role names.
|
||||
*
|
||||
* @package core_enrol
|
||||
* @copyright 2023 Ferran Recio <ferran@moodle.com>
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
class renameroles extends \moodleform {
|
||||
|
||||
/**
|
||||
* Form definition.
|
||||
*/
|
||||
public function definition() {
|
||||
$mform = $this->_form;
|
||||
|
||||
$courseid = $this->_customdata['id'];
|
||||
$roles = $this->_customdata['roles'] ?? [];
|
||||
|
||||
$formdata = new \stdClass();
|
||||
|
||||
$mform->addElement('hidden', 'id', $courseid);
|
||||
$mform->setType('id', PARAM_INT);
|
||||
|
||||
foreach ($roles as $role) {
|
||||
$settingname = 'role_' . $role->id;
|
||||
$mform->addElement('text', $settingname, get_string('yourwordforx', '', $role->localname));
|
||||
$mform->setType($settingname, PARAM_TEXT);
|
||||
$formdata->{$settingname} = $role->coursealias;
|
||||
}
|
||||
|
||||
$mform->addElement('submit', 'submit', get_string('save'));
|
||||
|
||||
$this->set_data($formdata);
|
||||
}
|
||||
}
|
67
enrol/renameroles.php
Normal file
67
enrol/renameroles.php
Normal file
|
@ -0,0 +1,67 @@
|
|||
<?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/>.
|
||||
|
||||
/**
|
||||
* Customise the course role names.
|
||||
*
|
||||
* @package core_enrol
|
||||
* @copyright 2023 Ferran Recio <ferran@moodle.com>
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
*/
|
||||
|
||||
require('../config.php');
|
||||
require_once("$CFG->dirroot/course/lib.php");
|
||||
|
||||
|
||||
$id = required_param('id', PARAM_INT);
|
||||
$action = optional_param('action', '', PARAM_ALPHANUMEXT);
|
||||
$filter = optional_param('ifilter', 0, PARAM_INT);
|
||||
|
||||
$course = $DB->get_record('course', ['id' => $id], '*', MUST_EXIST);
|
||||
$context = core\context\course::instance($course->id, MUST_EXIST);
|
||||
|
||||
require_login($course);
|
||||
require_capability('moodle/course:renameroles', $context);
|
||||
|
||||
if ($course->id == SITEID) {
|
||||
redirect("$CFG->wwwroot/");
|
||||
}
|
||||
|
||||
$PAGE->set_pagelayout('admin');
|
||||
$PAGE->set_url('/enrol/renameroles.php', ['id' => $course->id]);
|
||||
$PAGE->set_pagelayout('standard');
|
||||
$PAGE->set_title(get_string('rolerenaming'));
|
||||
$PAGE->set_heading($course->fullname);
|
||||
|
||||
echo $OUTPUT->header();
|
||||
echo $OUTPUT->render_participants_tertiary_nav($course);
|
||||
echo $OUTPUT->heading(get_string('rolerenaming'));
|
||||
|
||||
echo $OUTPUT->paragraph(get_string('rolerenaming_help'));
|
||||
|
||||
$customdata = [
|
||||
'id' => $course->id,
|
||||
'roles' => role_get_names($context, ROLENAME_ORIGINAL),
|
||||
];
|
||||
$mform = new core_enrol\form\renameroles(null, $customdata);
|
||||
if ($data = $mform->get_data()) {
|
||||
save_local_role_names($course->id, (array)$data);
|
||||
core\notification::add(get_string('rolerenaming_success'), core\notification::SUCCESS);
|
||||
}
|
||||
|
||||
$mform->display();
|
||||
|
||||
echo $OUTPUT->footer();
|
Loading…
Add table
Add a link
Reference in a new issue