tbrehm
2010-07-15 5619c7dd99b674af0922e29ccfd00d58a08979c5
Fixed: FS#1229 - ISPConfig3 creates the desired e-mail domain twice (on master server AND on the selected Slave) 
10 files modified
27 ■■■■■ changed files
install/tpl/mysql-virtual_domains.cf.master 2 ●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_email2email.cf.master 2 ●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_forwardings.cf.master 2 ●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_mailboxes.cf.master 2 ●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_recipient.cf.master 2 ●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_relaydomains.cf.master 2 ●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_relayrecipientmaps.cf.master 2 ●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_sender.cf.master 2 ●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_transports.cf.master 2 ●●● patch | view | raw | blame | history
server/lib/classes/modules.inc.php 9 ●●●●● patch | view | raw | blame | history
install/tpl/mysql-virtual_domains.cf.master
@@ -4,5 +4,5 @@
table = mail_domain
select_field = domain
where_field = domain
additional_conditions = and active = 'y'
additional_conditions = and active = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
install/tpl/mysql-virtual_email2email.cf.master
@@ -4,5 +4,5 @@
table = mail_user
select_field = email
where_field = email
additional_conditions = and postfix = 'y'
additional_conditions = and postfix = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
install/tpl/mysql-virtual_forwardings.cf.master
@@ -4,5 +4,5 @@
table = mail_forwarding
select_field = destination
where_field = source
additional_conditions = and active = 'y'
additional_conditions = and active = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
install/tpl/mysql-virtual_mailboxes.cf.master
@@ -4,5 +4,5 @@
table = mail_user
select_field = CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1),'/')
where_field = email
additional_conditions = and postfix = 'y'
additional_conditions = and postfix = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
install/tpl/mysql-virtual_recipient.cf.master
@@ -4,5 +4,5 @@
table        = mail_access
select_field = access
where_field  = source
additional_conditions = and type = 'recipient' and active = 'y'
additional_conditions = and type = 'recipient' and active = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
install/tpl/mysql-virtual_relaydomains.cf.master
@@ -4,5 +4,5 @@
table = mail_transport
select_field = domain
where_field = domain
additional_conditions = and active = 'y'
additional_conditions = and active = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
install/tpl/mysql-virtual_relayrecipientmaps.cf.master
@@ -4,5 +4,5 @@
table = mail_relay_recipient
select_field = access
where_field = source
additional_conditions = and active = 'y'
additional_conditions = and active = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
install/tpl/mysql-virtual_sender.cf.master
@@ -4,5 +4,5 @@
table        = mail_access
select_field = access
where_field  = source
additional_conditions = and type = 'sender' and active = 'y'
additional_conditions = and type = 'sender' and active = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
install/tpl/mysql-virtual_transports.cf.master
@@ -4,5 +4,5 @@
table = mail_transport
select_field = transport
where_field = domain
additional_conditions = and active = 'y'
additional_conditions = and active = 'y' and server_id = {server_id}
hosts = {mysql_server_ip}
server/lib/classes/modules.inc.php
@@ -109,6 +109,15 @@
                
                $this->current_datalog_id = $d["datalog_id"];
                
                /*
                * If we are in a mirror setup, rewrite the server_id of records that originally
                * belonged to the mirrored server to the local server_id
                */
                if($conf["mirror_server_id"] > 0 && $d['dbtable'] != 'server') {
                    if(isset($data['new']['server_id']) && $data['new']['server_id'] == $conf["mirror_server_id"]) $data['new']['server_id'] = $conf["server_id"];
                    if(isset($data['old']['server_id']) && $data['old']['server_id'] == $conf["mirror_server_id"]) $data['old']['server_id'] = $conf["server_id"];
                }
                if(count($data['new']) > 0) {
                    if($d["action"] == 'i' || $d["action"] == 'u') {
                        $idx = explode(":",$d["dbidx"]);