Bläddra i källkod

Bugfix: add switcher for auto_accept & auto_decline

andre 2 år sedan
förälder
incheckning
70c6c27f2c

+ 2 - 2
app/Libs/Zimbra/Components/Api/Soap/Services/Create/CreateRessource.php

@@ -104,8 +104,8 @@ class CreateRessource extends ApiService
         $ressource->setAttr(Ressource::ATTR_POSTAL_CODE, $this->formData['post_code']);
         $ressource->setAttr(Ressource::ATTR_COUNTY, $this->formData['county']);
         $ressource->setAttr(Ressource::ATTR_STATE, $this->formData['state']);
-        $ressource->setAttr(Ressource::ATTR_AUTO, $this->formData['auto']);
-        $ressource->setAttr(Ressource::ATTR_BUSY, $this->formData['busy']);
+        $ressource->setAttr(Ressource::ATTR_AUTO, $this->formData['auto_accept']);
+        $ressource->setAttr(Ressource::ATTR_BUSY, $this->formData['auto_busy']);
 
         foreach($this->productManager->getZimbraConfiguration() as $key => $value)
         {

+ 8 - 2
app/Libs/Zimbra/Components/Api/Soap/Services/Update/UpdateRessource.php

@@ -81,8 +81,14 @@ class UpdateRessource extends CreateRessource
         $ressource->setAttr(Ressource::ATTR_POSTAL_CODE, $this->formData['post_code']);
         $ressource->setAttr(Ressource::ATTR_COUNTY, $this->formData['county']);
         $ressource->setAttr(Ressource::ATTR_STATE, $this->formData['state']);
-        $ressource->setAttr(Ressource::ATTR_AUTO, $this->formData['auto']);
-        $ressource->setAttr(Ressource::ATTR_BUSY, $this->formData['busy']);
+        $ressource->setAttr(Ressource::ATTR_AUTO, $this->formData['auto_accept']);
+        $ressource->setAttr(Ressource::ATTR_BUSY, $this->formData['auto_busy']);
+
+        foreach($this->productManager->getZimbraConfiguration() as $key => $value)
+        {
+            $value = $value === ProductParams::SWITCHER_ENABLED ? Zimbra::ATTR_ENABLED : Zimbra::ATTR_DISABLED;
+            $ressource->setAttr($key, $value);
+        }
 
         return $ressource;
 

+ 5 - 1
app/UI/Client/Ressource/Providers/EditRessourceDataProvider.php

@@ -79,6 +79,8 @@ class EditRessourceDataProvider extends BaseDataProvider
         $this->data['town']          = $result->getDataResourceA(Ressource::ATTR_TOWN);
         $this->data['state']         = $result->getDataResourceA(Ressource::ATTR_STATE);
         $this->data['county']        = $result->getDataResourceA(Ressource::ATTR_COUNTY);
+        $this->data['auto_accept']   = $result->getDataResourceA(Ressource::ATTR_AUTO);
+        $this->data['auto_busy']     = $result->getDataResourceA(Ressource::ATTR_BUSY);
 
         $lang = di('lang');
         $this->availableValues['status'] = [
@@ -125,7 +127,9 @@ class EditRessourceDataProvider extends BaseDataProvider
             'post_code',
             'town',
             'state',
-            'county'
+            'county',
+            'auto_accept',
+            'auto_busy'
         ];
 
         foreach ($this->formData as $field => &$value)

+ 3 - 1
app/UI/Client/Ressource/Providers/RessourceDataProvider.php

@@ -81,7 +81,9 @@ class RessourceDataProvider extends BaseDataProvider
             'post_code',
             'town',
             'state',
-            'county'
+            'county',
+            'auto_accept',
+            'auto_busy'
         ];
 
         foreach ($this->formData as $field => &$value)

+ 5 - 0
app/UI/Client/Ressource/Sections/EditGeneralSection.php

@@ -10,6 +10,7 @@ use ModulesGarden\Servers\ZimbraEmail\App\UI\Admin\Custom\Sections\FreeFieldsSec
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Hidden;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Select;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Text;
+use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Switcher;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Sections\InputGroup;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\InputGroupElements;
 
@@ -67,5 +68,9 @@ class EditGeneralSection extends FreeFieldsSection
         $field = new Text('notes');
         $this->addField($field);
 
+        $autoAcceptDecline = new Switcher('auto_accept');
+        $autoDeclineBusy = new Switcher('auto_busy');
+        $this->generateDoubleSection([$autoAcceptDecline, $autoDeclineBusy]);
+
     }
 }

+ 5 - 0
app/UI/Client/Ressource/Sections/GeneralSection.php

@@ -10,6 +10,7 @@ use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Hidden;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Password;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Select;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Text;
+use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Switcher;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\Number;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Sections\InputGroup;
 use ModulesGarden\Servers\ZimbraEmail\Core\UI\Widget\Forms\Fields\InputGroupElements;
@@ -72,5 +73,9 @@ class GeneralSection extends FreeFieldsSection
         $field = new Text('notes');
         $this->addField($field);
 
+        $autoAcceptDecline = (new Switcher('auto_accept'))->setDefaultValue('on');
+        $autoDeclineBusy = (new Switcher('auto_busy'))->setDefaultValue('on');
+        $this->generateDoubleSection([$autoAcceptDecline, $autoDeclineBusy]);
+
     }
 }