From c3d4e1ec311318dcadbcb3cac0c237c7f8415fa7 Mon Sep 17 00:00:00 2001 From: jekuaitk Date: Fri, 9 Sep 2022 14:01:59 +0200 Subject: [PATCH] DW-578: Added os2forms_selvbetjening module altering email handler form --- .gitignore | 1 + README.md | 12 ++++++ config/sync/webform.settings.yml | 4 +- .../os2forms_selvbetjening.info.yml | 8 ++++ .../os2forms_selvbetjening.module | 18 ++++++++ .../os2forms_selvbetjening.services.yml | 4 ++ .../src/Helper/FormHelper.php | 43 +++++++++++++++++++ 7 files changed, 88 insertions(+), 2 deletions(-) create mode 100644 web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.info.yml create mode 100644 web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.module create mode 100644 web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.services.yml create mode 100644 web/modules/custom/os2forms_selvbetjening/src/Helper/FormHelper.php diff --git a/.gitignore b/.gitignore index 240fd773..549b519e 100644 --- a/.gitignore +++ b/.gitignore @@ -60,6 +60,7 @@ !/web/modules/custom/os2forms_rest_api !/web/modules/custom/os2forms_api_request_handler !/web/modules/custom/itkdev_footer +!/web/modules/custom/os2forms_selvbetjening # Ignore directories generated by Composer diff --git a/README.md b/README.md index 496fc24c..ff55eb95 100644 --- a/README.md +++ b/README.md @@ -127,6 +127,18 @@ $config['os2forms_get_organized'] = [ ]; ``` +### Selvbetjening Module + +The `OS2Forms Selvbetjening` module updates the Webform Email Handler +by adding a description to the message body section. The +description should be configured in the `settings.local.php` file: + +```php +$config['os2forms_selvbetjening']['email_body_description'] = "Brug enten standardsvaret eller definer dit eget svar. Se OS2Forms Loop for andre standarder og eksempler."; +``` + +If it is not, no description is added. + ### Maestro We use the [Maestro module](https://www.drupal.org/project/maestro) to make workflows. diff --git a/config/sync/webform.settings.yml b/config/sync/webform.settings.yml index a7dd3a76..5215612d 100644 --- a/config/sync/webform.settings.yml +++ b/config/sync/webform.settings.yml @@ -193,8 +193,8 @@ mail: default_sender_mail: '' default_sender_name: '' default_subject: '[webform_submission:source-title] (fra [site:name])' - default_body_text: "** Kvittering til udfylder\r\n\r\nIndhold:\r\nKære [webform_submission:values:navn] (OBS, erstat \"navn\" med det rigtige elements nøgle)\r\n\r\nDu har udfyldt formularen [webform_submission:webform], [webform_submission:created].\r\n\r\nDu har angivet følgende informationer:\r\n[webform_submission:values]\r\n\r\n\r\n** Orientering til medarbejder om udfyldelse af ny formular\r\n\r\nIndhold:\r\nOrientering om udfyldelse af formularen [webform_submission:webform].\r\n\r\nUdfyldt af [webform_submission:values:navn] [webform_submission:created]. (OBS, erstat \"navn\" med det rigtige elements nøgle)\r\nSagen kan tilgås på [webform_submission:os2forms_forloeb_execute_task]. (relevant ved flows)\r\n\r\nDer er angivet følgende informationer:\r\n[webform_submission:values]" - default_body_html: "** Kvittering til udfylder\r\n\r\nIndhold:\r\nKære [webform_submission:values:navn] (OBS, erstat \"navn\" med det rigtige elements nøgle)\r\n\r\nDu har udfyldt formularen [webform_submission:webform], [webform_submission:created].\r\n\r\nDu har angivet følgende informationer:\r\n[webform_submission:values]\r\n\r\n\r\n** Orientering til medarbejder om udfyldelse af ny formular\r\n\r\nIndhold:\r\nOrientering om udfyldelse af formularen [webform_submission:webform].\r\n\r\nUdfyldt af [webform_submission:values:navn] [webform_submission:created]. (OBS, erstat \"navn\" med det rigtige elements nøgle)\r\nSagen kan tilgås på [webform_submission:os2forms_forloeb_execute_task]. (relevant ved flows)\r\n\r\nDer er angivet følgende informationer:\r\n[webform_submission:values]" + default_body_text: "Kære borger\r\n\r\nDu har udfyldt formularen [webform_submission:webform], [webform_submission:created].\r\n\r\nDu har angivet følgende informationer:\r\n[webform_submission:values]" + default_body_html: "Kære borger\r\n\r\nDu har udfyldt formularen [webform_submission:webform], [webform_submission:created].\r\n\r\nDu har angivet følgende informationer:\r\n[webform_submission:values]" roles: { } export: temp_directory: '' diff --git a/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.info.yml b/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.info.yml new file mode 100644 index 00000000..1bafb0bc --- /dev/null +++ b/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.info.yml @@ -0,0 +1,8 @@ +name: 'OS2Forms Selvbetjening' +type: module +description: 'Provides changes to webform email handler.' +package: 'OS2Forms' +core: 8.x +core_version_requirement: ^8 || ^9 +dependencies: + - 'webform:webform' diff --git a/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.module b/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.module new file mode 100644 index 00000000..d4a77cfe --- /dev/null +++ b/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.module @@ -0,0 +1,18 @@ +formAlter($form, $form_state, $form_id); +} diff --git a/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.services.yml b/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.services.yml new file mode 100644 index 00000000..a44557fb --- /dev/null +++ b/web/modules/custom/os2forms_selvbetjening/os2forms_selvbetjening.services.yml @@ -0,0 +1,4 @@ +services: + Drupal\os2forms_selvbetjening\Helper\FormHelper: + arguments: + - '@config.factory' diff --git a/web/modules/custom/os2forms_selvbetjening/src/Helper/FormHelper.php b/web/modules/custom/os2forms_selvbetjening/src/Helper/FormHelper.php new file mode 100644 index 00000000..729cc7ff --- /dev/null +++ b/web/modules/custom/os2forms_selvbetjening/src/Helper/FormHelper.php @@ -0,0 +1,43 @@ +config = $config; + } + + /** + * Allows altering of forms. + */ + public function formAlter(&$form, FormStateInterface $form_state, $form_id) { + + // Add description to the message body section of the email handler. + if ('webform_handler_form' === $form_id && 'email' === ($form['#webform_handler_plugin_id'] ?? NULL)) { + + $config = $this->config->get('os2forms_selvbetjening'); + + if ($email_body_description = $config->get('email_body_description')) { + $form['settings']['message']['body']['#description'] = $email_body_description; + } + } + } + +}