protected function define_my_settings() { // Nothing to do if (!$this->history_exists()) { return; } $rootsettings = $this->get_info()->root_settings; $defaultvalue = false; $changeable = false; $is_blocks = isset($rootsettings['blocks']) && $rootsettings['blocks']; $is_users = isset($rootsettings['users']) && $rootsettings['users']; if ($is_blocks and $is_users) { $defaultvalue = true; $changeable = true; } $restore_history = new restore_generic_setting('restore_quickmail_history', base_setting::IS_BOOLEAN, $defaultvalue); $restore_history->set_ui(new backup_setting_ui_select($restore_history, get_string('restore_history', 'block_quickmail'), array(1 => get_string('yes'), 0 => get_string('no')))); if (!$changeable) { $restore_history->set_value($defaultvalue); $restore_history->set_status(backup_setting::LOCKED_BY_CONFIG); $restore_history->set_visibility(backup_setting::HIDDEN); } $this->add_setting($restore_history); $this->get_setting('users')->add_dependency($restore_history); $this->get_setting('blocks')->add_dependency($restore_history); $overwrite_history = new restore_course_generic_setting('overwrite_quickmail_history', base_setting::IS_BOOLEAN, false); $overwrite_history->set_ui(new backup_setting_ui_select($overwrite_history, get_string('overwrite_history', 'block_quickmail'), array(1 => get_string('yes'), 0 => get_string('no')))); if ($this->get_target() != backup::TARGET_CURRENT_DELETING and $this->get_target() != backup::TARGET_EXISTING_DELETING) { $overwrite_history->set_value(false); $overwrite_history->set_status(backup_setting::LOCKED_BY_CONFIG); } $this->add_setting($overwrite_history); $restore_history->add_dependency($overwrite_history); }
public function __construct($name, $vtype, $value = null, $visibility = self::VISIBLE, $status = self::NOT_LOCKED) { parent::__construct($name, $vtype, $value, $visibility, $status); $this->set_ui(new backup_setting_ui_text($this, $name)); }
/** * Define the common setting that any restore course will have */ protected function define_settings() { //$name, $vtype, $value = null, $visibility = self::VISIBLE, $status = self::NOT_LOCKED $fullname = new restore_course_generic_text_setting('course_fullname', base_setting::IS_TEXT, $this->get_info()->original_course_fullname); $fullname->get_ui()->set_label(get_string('setting_course_fullname', 'backup')); $this->add_setting($fullname); $shortname = new restore_course_generic_text_setting('course_shortname', base_setting::IS_TEXT, $this->get_info()->original_course_shortname); $shortname->get_ui()->set_label(get_string('setting_course_shortname', 'backup')); $this->add_setting($shortname); $startdate = new restore_course_generic_text_setting('course_startdate', base_setting::IS_INTEGER, $this->get_info()->original_course_startdate); $startdate->set_ui(new backup_setting_ui_dateselector($startdate, get_string('setting_course_startdate', 'backup'))); $this->add_setting($startdate); $keep_enrols = new restore_course_generic_setting('keep_roles_and_enrolments', base_setting::IS_BOOLEAN, false); $keep_enrols->set_ui(new backup_setting_ui_select($keep_enrols, $keep_enrols->get_name(), array(1 => get_string('yes'), 0 => get_string('no')))); $keep_enrols->get_ui()->set_label(get_string('setting_keep_roles_and_enrolments', 'backup')); if ($this->get_target() != backup::TARGET_CURRENT_DELETING and $this->get_target() != backup::TARGET_EXISTING_DELETING) { $keep_enrols->set_value(false); $keep_enrols->set_status(backup_setting::LOCKED_BY_CONFIG); $keep_enrols->set_visibility(backup_setting::HIDDEN); } $this->add_setting($keep_enrols); $keep_groups = new restore_course_generic_setting('keep_groups_and_groupings', base_setting::IS_BOOLEAN, false); $keep_groups->set_ui(new backup_setting_ui_select($keep_groups, $keep_groups->get_name(), array(1 => get_string('yes'), 0 => get_string('no')))); $keep_groups->get_ui()->set_label(get_string('setting_keep_groups_and_groupings', 'backup')); if ($this->get_target() != backup::TARGET_CURRENT_DELETING and $this->get_target() != backup::TARGET_EXISTING_DELETING) { $keep_groups->set_value(false); $keep_groups->set_status(backup_setting::LOCKED_BY_CONFIG); $keep_groups->set_visibility(backup_setting::HIDDEN); } $this->add_setting($keep_groups); // Define overwrite_conf to decide if course configuration will be restored over existing one $overwrite = new restore_course_overwrite_conf_setting('overwrite_conf', base_setting::IS_BOOLEAN, false); $overwrite->set_ui(new backup_setting_ui_select($overwrite, $overwrite->get_name(), array(1 => get_string('yes'), 0 => get_string('no')))); $overwrite->get_ui()->set_label(get_string('setting_overwriteconf', 'backup')); if ($this->get_target() == backup::TARGET_NEW_COURSE) { $overwrite->set_value(true); $overwrite->set_status(backup_setting::LOCKED_BY_CONFIG); $overwrite->set_visibility(backup_setting::HIDDEN); } $this->add_setting($overwrite); }