From: hickert Date: Thu, 11 Oct 2007 12:29:15 +0000 (+0000) Subject: Added up to date IMAP server detection to class_config X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=72e20337dc7ffe4031df73ca484fb8e1a52b28f5;p=gosa.git Added up to date IMAP server detection to class_config git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@7516 594d385d-05f5-0310-b6e9-bd551577e9d8 --- diff --git a/include/class_config.inc b/include/class_config.inc index dbf8e9790..369f5da98 100644 --- a/include/class_config.inc +++ b/include/class_config.inc @@ -315,19 +315,34 @@ class config { /* Fill imap servers */ $ldap= $this->get_ldap_link(); $ldap->cd ($this->current['BASE']); - $ldap->search ("(objectClass=goImapServer)"); + if (!isset($this->current['MAILMETHOD'])){ + $this->current['MAILMETHOD']= ""; + } + if ($this->current['MAILMETHOD'] == ""){ + $ldap->search ("(objectClass=goMailServer)", array('cn')); + $this->data['SERVERS']['IMAP']= array(); + error_reporting(0); + while ($attrs= $ldap->fetch()){ + $name= $attrs['cn'][0]; + $this->data['SERVERS']['IMAP'][$name]= $name; + } + error_reporting(E_ALL); + } else { + $ldap->search ("(objectClass=goImapServer)", array('goImapName', 'goImapConnect', 'goImapAdmin', 'goImapPassword', + 'goImapSieveServer', 'goImapSievePort')); - $this->data['SERVERS']['IMAP']= array(); - $old_err = error_reporting(0); - while ($attrs= $ldap->fetch()){ - $name= $attrs['goImapName'][0]; - $this->data['SERVERS']['IMAP'][$name]= array( "connect" => $attrs['goImapConnect'][0], - "admin" => $attrs['goImapAdmin'][0], - "password" => $attrs['goImapPassword'][0], - "sieve_server" => $attrs['goImapSieveServer'][0], - "sieve_port" => $attrs['goImapSievePort'][0]); - } - error_reporting($old_err); + $this->data['SERVERS']['IMAP']= array(); + error_reporting(0); + while ($attrs= $ldap->fetch()){ + $name= $attrs['goImapName'][0]; + $this->data['SERVERS']['IMAP'][$name]= array( "connect" => $attrs['goImapConnect'][0], + "admin" => $attrs['goImapAdmin'][0], + "password" => $attrs['goImapPassword'][0], + "sieve_server" => $attrs['goImapSieveServer'][0], + "sieve_port" => $attrs['goImapSievePort'][0]); + } + error_reporting(E_ALL); + } /* Get kerberos server. FIXME: only one is supported currently */ $ldap->cd ($this->current['BASE']);