redirect($returnurl, get_string('contactdpoviaprivacypolicy', 'tool_dataprivacy'), \core\output\notification::NOTIFY_ERROR);
}
-$mform = new tool_dataprivacy_data_request_form($url->out(false));
+$mform = new tool_dataprivacy_data_request_form($url->out(false), ['manage' => !empty($manage)]);
// Data request cancelled.
if ($mform->is_cancelled()) {
if ($data = $mform->get_data()) {
\tool_dataprivacy\api::create_data_request($data->userid, $data->type, $data->comments);
- redirect($returnurl, get_string('requestsubmitted', 'tool_dataprivacy'));
+ if ($manage) {
+ $foruser = core_user::get_user($data->userid);
+ $redirectmessage = get_string('datarequestcreatedforuser', 'tool_dataprivacy', fullname($foruser));
+ } else {
+ $redirectmessage = get_string('requestsubmitted', 'tool_dataprivacy');
+ }
+ redirect($returnurl, $redirectmessage);
}
$title = get_string('contactdataprotectionofficer', 'tool_dataprivacy');
*/
class tool_dataprivacy_data_request_form extends moodleform {
+ /** @var bool Flag to indicate whether this form is being rendered for managing data requests or for regular requests. */
+ protected $manage = false;
+
/**
* Form definition.
*
global $DB, $USER;
$mform =& $this->_form;
- if (api::is_site_dpo($USER->id)) {
+ $this->manage = $this->_customdata['manage'];
+ if ($this->manage) {
$options = [
'ajax' => 'tool_dataprivacy/form-user-selector',
'multiple' => false
$string['dataprivacy:managedatarequests'] = 'Manage data requests';
$string['dataprivacy:managedataregistry'] = 'Manage data registry';
$string['dataregistry'] = 'Data registry';
+$string['datarequestcreatedforuser'] = 'Data request created for {$a}';
$string['datarequestemailsubject'] = 'Data request: {$a}';
$string['datarequests'] = 'Data requests';
$string['daterequested'] = 'Date requested';