mirror of
https://github.com/moodle/moodle.git
synced 2025-08-04 16:36:37 +02:00
Merge branch 'MDL-63381_master_v3' of https://github.com/TomoTsuyuki/moodle
This commit is contained in:
commit
7c75781518
15 changed files with 395 additions and 11 deletions
|
@ -99,6 +99,13 @@ class backup_root_task extends backup_task {
|
|||
$this->add_setting($roleassignments);
|
||||
$users->add_dependency($roleassignments);
|
||||
|
||||
// Define permission.
|
||||
if ($this->plan->get_mode() == backup::MODE_IMPORT) {
|
||||
$permissions = new backup_permissions_setting('permissions', base_setting::IS_BOOLEAN, false);
|
||||
$permissions->set_ui(new backup_setting_ui_checkbox($permissions, get_string('rootsettingpermissions', 'backup')));
|
||||
$this->add_setting($permissions);
|
||||
}
|
||||
|
||||
// Define activities
|
||||
$activities = new backup_activities_setting('activities', base_setting::IS_BOOLEAN, true);
|
||||
$activities->set_ui(new backup_setting_ui_checkbox($activities, get_string('rootsettingactivities', 'backup')));
|
||||
|
|
|
@ -65,6 +65,12 @@ class backup_filename_setting extends backup_generic_setting {
|
|||
*/
|
||||
class backup_users_setting extends backup_generic_setting {}
|
||||
|
||||
/**
|
||||
* root setting to control if backup will include permission information by roles
|
||||
*/
|
||||
class backup_permissions_setting extends backup_generic_setting {
|
||||
}
|
||||
|
||||
/**
|
||||
* root setting to control if backup will include group information depends on @backup_users_setting
|
||||
*
|
||||
|
|
|
@ -146,6 +146,19 @@ class restore_root_task extends restore_task {
|
|||
$this->add_setting($roleassignments);
|
||||
$users->add_dependency($roleassignments);
|
||||
|
||||
// Define permissions.
|
||||
$defaultvalue = false; // Safer default.
|
||||
$changeable = false;
|
||||
// Enable when available, or key doesn't exist (backward compatibility).
|
||||
if (!array_key_exists('permissions', $rootsettings) || !empty($rootsettings['permissions'])) {
|
||||
$defaultvalue = true;
|
||||
$changeable = true;
|
||||
}
|
||||
$permissions = new restore_permissions_setting('permissions', base_setting::IS_BOOLEAN, $defaultvalue);
|
||||
$permissions->set_ui(new backup_setting_ui_checkbox($permissions, get_string('rootsettingpermissions', 'backup')));
|
||||
$permissions->get_ui()->set_changeable($changeable);
|
||||
$this->add_setting($permissions);
|
||||
|
||||
// Define activitites
|
||||
$defaultvalue = false; // Safer default
|
||||
$changeable = false;
|
||||
|
|
|
@ -43,6 +43,12 @@ class restore_generic_setting extends root_backup_setting {}
|
|||
*/
|
||||
class restore_users_setting extends restore_generic_setting {}
|
||||
|
||||
/**
|
||||
* root setting to control if restore will create override permission information by roles
|
||||
*/
|
||||
class restore_permissions_setting extends restore_generic_setting {
|
||||
}
|
||||
|
||||
/**
|
||||
* root setting to control if restore will create groups/grouping information. Depends on @restore_users_setting
|
||||
*
|
||||
|
|
|
@ -2058,7 +2058,9 @@ class restore_ras_and_caps_structure_step extends restore_structure_step {
|
|||
if ($this->get_setting_value('role_assignments')) {
|
||||
$paths[] = new restore_path_element('assignment', '/roles/role_assignments/assignment');
|
||||
}
|
||||
$paths[] = new restore_path_element('override', '/roles/role_overrides/override');
|
||||
if ($this->get_setting_value('permissions')) {
|
||||
$paths[] = new restore_path_element('override', '/roles/role_overrides/override');
|
||||
}
|
||||
|
||||
return $paths;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue