From a8aad2c0ffaec8be21d187848f03cc5519b17fd6 Mon Sep 17 00:00:00 2001
From: Dominik Müller <info@profi-webdesign.com>
Date: Mon, 13 Oct 2014 14:55:38 -0400
Subject: [PATCH] And additional in dist-files

---
 install/dist/lib/debian60.lib.php |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/install/dist/lib/debian60.lib.php b/install/dist/lib/debian60.lib.php
index 61c3073..8ed7765 100644
--- a/install/dist/lib/debian60.lib.php
+++ b/install/dist/lib/debian60.lib.php
@@ -33,6 +33,19 @@
 	public function configure_dovecot()
 	{
 		global $conf;
+		
+		$virtual_transport = 'dovecot';
+		
+		// check if virtual_transport must be changed
+		if ($this->is_update) {
+			$tmp = $inst->db->queryOneRecord("SELECT * FROM ".$conf["mysql"]["database"].".server WHERE server_id = ".$conf['server_id']);
+			$ini_array = ini_to_array(stripslashes($tmp['config']));
+			// ini_array needs not to be checked, because already done in update.php -> updateDbAndIni()
+			
+			if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') {
+				$virtual_transport = 'lmtp:unix:private/dovecot-lmtp';
+			}
+		}
 
 		$config_dir = $conf['dovecot']['config_dir'];
 
@@ -57,7 +70,7 @@
 		// Adding the amavisd commands to the postfix configuration
 		$postconf_commands = array (
 			'dovecot_destination_recipient_limit = 1',
-			'virtual_transport = lmtp:unix:private/dovecot-lmtp',
+			'virtual_transport = '.$virtual_transport,
 			'smtpd_sasl_type = dovecot',
 			'smtpd_sasl_path = private/auth'
 		);
@@ -118,7 +131,7 @@
 		chgrp($config_dir.'/'.$configfile, 'root');
 		
 		// Dovecot shall ignore mounts in website directory
-		exec("doveadm mount add '/var/www/*' ignore");
+		if(is_installed('doveadm')) exec("doveadm mount add '/var/www/*' ignore > /dev/null 2> /dev/null");
 
 	}
 

--
Gitblit v1.9.1