2010-06-09 20:36:13 +02:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* EGroupware EMailAdmin: Postfix with old qmailUser schema
|
|
|
|
*
|
|
|
|
* @link http://www.egroupware.org
|
|
|
|
* @package emailadmin
|
|
|
|
* @author Ralf Becker <RalfBecker-AT-outdoor-training.de>
|
|
|
|
* @copyright (c) 2010 by Ralf Becker <RalfBecker-AT-outdoor-training.de>
|
|
|
|
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
|
|
|
|
* @version $Id$
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Postfix with old qmailUser schema
|
|
|
|
*/
|
|
|
|
class postfixldap extends emailadmin_smtp_ldap
|
|
|
|
//class emailadmin_smtp_qmailuser extends emailadmin_smtp_ldap
|
|
|
|
{
|
2010-08-19 20:13:53 +02:00
|
|
|
/**
|
|
|
|
* Capabilities of this class (pipe-separated): default, forward
|
|
|
|
*/
|
|
|
|
const CAPABILITIES = 'default|forward';
|
|
|
|
|
2010-06-09 20:36:13 +02:00
|
|
|
/**
|
|
|
|
* Name of schema, has to be in the right case!
|
|
|
|
*/
|
|
|
|
const SCHEMA = 'qmailUser';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Attribute to enable mail for an account, OR false if existence of ALIAS_ATTR is enough for mail delivery
|
|
|
|
*/
|
|
|
|
const MAIL_ENABLE_ATTR = 'accountstatus';
|
|
|
|
/**
|
|
|
|
* Attribute value to enable mail for an account, OR false if existense of attribute is enough to enable account
|
|
|
|
*/
|
|
|
|
const MAIL_ENABLED = 'active';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Attribute for aliases OR false to use mail
|
|
|
|
*/
|
|
|
|
const ALIAS_ATTR = 'mailalternateaddress';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Primary mail address required as an alias too: true or false
|
|
|
|
*/
|
|
|
|
const REQUIRE_MAIL_AS_ALIAS=false;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Attribute for forwards OR false if not possible
|
|
|
|
*/
|
|
|
|
const FORWARD_ATTR = 'mailforwardingaddress';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Attribute to only forward mail, OR false if not available
|
|
|
|
*/
|
|
|
|
const FORWARD_ONLY_ATTR = 'deliverymode';
|
|
|
|
/**
|
|
|
|
* Attribute value to only forward mail
|
|
|
|
*/
|
|
|
|
const FORWARD_ONLY = 'forwardOnly';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Attribute for mailbox, to which mail gets delivered OR false if not supported
|
|
|
|
*/
|
|
|
|
const MAILBOX_ATTR = 'mailmessagestore';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Log all LDAP writes / actions to error_log
|
|
|
|
*/
|
|
|
|
var $debug = false;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* LDAP schema configuration
|
|
|
|
*
|
|
|
|
* Parent can NOT use constants direct as we have no late static binding in currenlty required PHP 5.2
|
|
|
|
*
|
|
|
|
* @var array
|
|
|
|
*/
|
|
|
|
protected $config = array(
|
|
|
|
'schema' => self::SCHEMA,
|
|
|
|
'mail_enable_attr' => self::MAIL_ENABLE_ATTR,
|
|
|
|
'mail_enabled' => self::MAIL_ENABLED,
|
|
|
|
'alias_attr' => self::ALIAS_ATTR,
|
|
|
|
'require_mail_as_alias' => self::REQUIRE_MAIL_AS_ALIAS,
|
|
|
|
'forward_attr' => self::FORWARD_ATTR,
|
|
|
|
'forward_only_attr' => self::FORWARD_ONLY_ATTR,
|
|
|
|
'forward_only' => self::FORWARD_ONLY,
|
|
|
|
'mailbox_attr' => self::MAILBOX_ATTR,
|
|
|
|
);
|
|
|
|
}
|