andre 3 месяцев назад
Родитель
Сommit
261607bdd9

+ 0 - 1
app/UI/Client/Setting/Modals/EditSettingModal.php

@@ -23,6 +23,5 @@ class EditSettingModal extends ModalExtendedTabsEdit implements ClientArea
     public function initContent()
     {
         $this->addForm(new EditSettingForm());
-//        $this->addForm(new InfoForm());
     }
 }

+ 18 - 3
app/UI/Client/Setting/Providers/EditSettingDataProvider.php

@@ -31,6 +31,7 @@ class EditSettingDataProvider extends BaseDataProvider
         try {
             $api->login($this->getWhmcsParamByKey('serverhostname'), $this->getWhmcsParamByKey('serverusername'), $this->getWhmcsParamByKey('serverpassword'));
             $dkimSet = $api->getDkimDnsRecord($maildomain);
+            $securitys = $api->getDomains(['id','name','isDkimEnabled','twoFAEnabled']);
         } catch (KerioApiException $error) {
             logModuleCall(
                 'kerioEmail',
@@ -42,6 +43,14 @@ class EditSettingDataProvider extends BaseDataProvider
             return ['error' => $error->getMessage()];
         }
         $api->logout();
+        // find own domain
+        foreach($securitys as $security) {
+            if($security['name'] === $maildomain){ 
+                $domainID = $security['id'];
+                $security['twoFAEnabled'] == true ? $tfaenabled = 'on' : $tfaenabled = 'off' ;
+                $security['isDkimEnabled'] == true ? $dkimsigenabled = 'on' : $dkimsigenabled = 'off';
+            }
+        }
         // format dkim response
         $dkimArray = explode(PHP_EOL,$dkimSet['detail']);
         $dkimValue = explode(":",$dkimArray[1]);
@@ -86,12 +95,16 @@ class EditSettingDataProvider extends BaseDataProvider
             count($dnsRecords['dmarc']) > 1 ? $dmarcmulti = true : $dmarcmulti = false;
             $dmarc = implode(' ',$dnsRecords['dmarc']);
         }
+        $dkim = 'unset';
         if(empty($dnsRecords['dkim'])) {
-            $dkim = 'unset';
             $dkimmulti = false;
         } else {
             count($dnsRecords['dkim']) > 1 ? $dkimmulti = true : $dkimmulti = false;
-            $dkim = implode(' ',$dnsRecords['dkim']);
+            foreach($dnsRecords['dkim'] as $dkimRecord) {
+                if($dkimRecord[0] == $this->dkimName) {
+                    $dkim = $dkimRecord[1];
+                }
+            }
         }
         if(in_array($this->mxthurdata, $dnsRecords['mx'])){
             if($this->spfConfig == $spf && $this->dmarcConfig == $dmarc && in_array($this->domainKey, $dnsRecords['dkim'])){
@@ -118,7 +131,9 @@ class EditSettingDataProvider extends BaseDataProvider
             'mxmulti' => $mxmulti,
             'dkimmulti' => $dkimmulti,
             'dmarcmulti' => $dmarcmulti,
-            'spfmulti' => $spfmulti
+            'spfmulti' => $spfmulti,
+            'tfaenabled' => $tfaenabled,
+            'dkimsigenabled' => $dkimsigenabled
         ];
     }