Browse Source

editsettingsform

andre 5 months ago
parent
commit
3b5666d78a

+ 71 - 5
app/UI/Client/Setting/Forms/EditSettingForm.php

@@ -3,12 +3,16 @@
 namespace ThurData\Servers\KerioEmail\App\UI\Client\Setting\Forms;
 
 use ThurData\Servers\KerioEmail\App\Traits\FormExtendedTrait;
-use ThurData\Servers\KerioEmail\App\UI\Admin\Custom\Forms\SortedFieldForm;
 use ThurData\Servers\KerioEmail\App\UI\Client\Setting\Providers\EditSettingDataProvider;
 use ThurData\Servers\KerioEmail\Core\UI\Interfaces\ClientArea;
+use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Hidden;
+use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Text;
+use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\BaseForm;
+use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Sections\InputGroup;
+use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\InputGroupElements;
 use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\FormConstants;
-use ThurData\Servers\KerioEmail\App\UI\Client\Setting\Sections\EditGeneralSection;
-use ThurData\Servers\KerioEmail\App\UI\Client\Setting\Sections\EditAdditionalSection;
+
+use function ThurData\Servers\KerioEmail\Core\Helper\di;
 
 /**
  *
@@ -18,7 +22,7 @@ use ThurData\Servers\KerioEmail\App\UI\Client\Setting\Sections\EditAdditionalSec
  * Time: 09:29
  * Class EditSettingForm
  */
-class EditSettingForm extends SortedFieldForm implements ClientArea
+class EditSettingForm extends BaseForm implements ClientArea
 {
     use FormExtendedTrait;
 
@@ -28,15 +32,77 @@ class EditSettingForm extends SortedFieldForm implements ClientArea
 
     public function initContent()
     {
+        $this->initIds('editSettingForm');
         $this->setFormType(FormConstants::UPDATE);
         $this->setProvider(new EditSettingDataProvider());
+        $this->setConfirmMessage('confirmUpdateSetting');
         $this->initFields();
         $this->loadDataToForm();
     }
 
     public function initFields()
     {
-        $this->addSection(new EditGeneralSection());
+        //        $message = di('lang')->absoluteT('dnseditmessage');
+        $message = 'Wenn Sie sicher sind, was Sie tun, dann setzen Sie eigene Werte,
+            besser aber, Sie drücken einfach "Empfohlene Werte Setzen"';
+        $this->addInternalAlert($message, 'info', 100);
+
+        $field = new Hidden();
+        $field->setId('id');
+        $field->setName('id');
+        $this->addField($field);
+        $field = new Hidden();
+        $field->setId('maildomain');
+        $field->setName('maildomain');
+        $this->addField($field);
+        $field = new Hidden();
+        $field->setId('selfdns');
+        $field->setName('selfdns');
+        $this->addField($field);
+        $field = new Hidden();
+        $field->setId('dnsok');
+        $field->setName('dnsok');
+        $this->addField($field);
+        $field = new Hidden();
+        $field->setId('mxthurdata');
+        $field->setName('mxthurdata');
+        $this->addField($field);
+        $field = new Hidden();
+        $field->setId('spfthurdata');
+        $field->setName('spfthurdata');
+        $this->addField($field);
+        $field = new Hidden();
+        $field->setId('dmarcthurdata');
+        $field->setName('dmarcthurdata');
+        $this->addField($field);
+        $field = new Hidden();
+        $field->setId('dkimthurdata');
+        $field->setName('dkimthurdata');
+        $this->addField($field);
+
+        $field = new Text('mxactive');
+        $field->setId('mxactive');
+        $field->setName('mxactive');
+        $field->setDescription('desc mxactive');
+        $this->addField($field);
+        $field = new Text('spf');
+        $field->setId('spf');
+        $field->setName('spf');
+        $field->setDescription('desc spf');
+        $this->addField($field);
+        $field = new Text('dmarc');
+        $field->setId('dmarc');
+        $field->setName('dmarc');
+        $field->setDescription('desc dmarc');
+        $this->addField($field);
+        $field = new Text('dkim');
+        $field->setId('dkim');
+        $field->setName('dkim');
+        $field->setDescription('desc dkim');
+        $this->addField($field);
+
+        //  todo: additional section containing Kerio Domain settings like AD integration
+//        $this->addSection(new EditGeneralSection());
 //        $this->addSection(new EditAdditionalSection());
     }
 }

+ 9 - 0
app/UI/Client/Setting/Providers/EditSettingDataProvider.php

@@ -124,6 +124,15 @@ class EditSettingDataProvider extends BaseDataProvider
      */
     public function update()
     {
+        logModuleCall(
+            'kerioEmail',
+            __FUNCTION__,
+            $this->formData,
+            'Debug Formdata',
+            $this->params
+        );
+        return (new HtmlDataJsonResponse())->setMessageAndTranslate('settingHasBeenUpdated')->setStatusSuccess();
+        
         $fieldToProtection = [
             'maildomain',
             'mxthurdata',