Browse Source

new settings section

andre 5 tháng trước cách đây
mục cha
commit
38b8733f34
1 tập tin đã thay đổi với 22 bổ sung3 xóa
  1. 22 3
      core/Helper/DnsHelper.php

+ 22 - 3
core/Helper/DnsHelper.php

@@ -97,14 +97,15 @@ class DnsHelper
     public function getResolverRecords($domain)
     {
         try {
-            $domainMX = $this->resolver->query($domain, 'NX');
-            $domainTXT = $this->resolver->query($domain, 'TXT');
+            $responseMX = $this->resolver->query($domain, 'NX');
+            $responseTXT = $this->resolver->query($domain, 'TXT');
             
         } catch(\Net_DNS2_Exception $e) {
                 
                 echo "::query() failed: ", $e->getMessage(), "\n";
         }
-        $domainTXT = $result->answer;
+        $domainMX = $responseMX->answer;
+        $domainTXT = $responseTXT->answer;
 
             logModuleCall(
                 'kerioEmail',
@@ -114,6 +115,24 @@ class DnsHelper
                 $domainTXT
             );
 
+        if(empty($domainMX)){
+            $vars['mx'] = 'unset';
+            $vars['mxtarget'] = $this->params['serverhostname'];
+        } else {
+            if(count($domainMX) > 1) {
+                $vars['multiMX'] = TRUE;
+            } else {
+                $vars['multiMX'] = FALSE;
+            }
+            $vars['domainMX'] = $domainMX;
+            $domainMXrecord = array_shift($domainMX);
+            $vars['mxtarget'] = $domainMXrecord->exchange;
+            if($domainMXrecord->exchange == $this->params['serverhostname']) {
+                $vars['mx'] = 'set';
+            } else {
+                $var['mx'] = 'wrong';
+            }
+        }
         $domainSPF = array();
         $domainDMARC = array();
         $domainDKIM = array();