From b6698e0852bcba04839052e831c90ff3cedec817 Mon Sep 17 00:00:00 2001 From: Jesse Norell Date: Thu, 19 Aug 2021 15:55:10 -0600 Subject: [PATCH 1/2] mail_forwarding source must be unique --- install/sql/incremental/upd_dev_collection.sql | 4 ++++ install/sql/ispconfig3.sql | 2 +- interface/web/mail/form/mail_alias.tform.php | 2 ++ interface/web/mail/form/mail_forward.tform.php | 2 ++ interface/web/mail/lib/lang/ar_mail_alias.lng | 1 - interface/web/mail/lib/lang/ar_mail_forward.lng | 2 +- interface/web/mail/lib/lang/bg_mail_alias.lng | 1 - interface/web/mail/lib/lang/bg_mail_forward.lng | 2 +- interface/web/mail/lib/lang/br_mail_forward.lng | 1 + interface/web/mail/lib/lang/ca_mail_alias.lng | 1 - interface/web/mail/lib/lang/ca_mail_forward.lng | 2 +- interface/web/mail/lib/lang/cz_mail_forward.lng | 1 + interface/web/mail/lib/lang/de_mail_alias.lng | 1 - interface/web/mail/lib/lang/de_mail_forward.lng | 2 +- interface/web/mail/lib/lang/dk_mail_alias.lng | 1 - interface/web/mail/lib/lang/dk_mail_forward.lng | 2 +- interface/web/mail/lib/lang/el_mail_alias.lng | 1 - interface/web/mail/lib/lang/el_mail_forward.lng | 2 +- interface/web/mail/lib/lang/en_mail_alias.lng | 1 - interface/web/mail/lib/lang/en_mail_forward.lng | 2 +- interface/web/mail/lib/lang/es_mail_alias.lng | 1 - interface/web/mail/lib/lang/es_mail_forward.lng | 2 +- interface/web/mail/lib/lang/fi_mail_alias.lng | 1 - interface/web/mail/lib/lang/fi_mail_forward.lng | 2 +- interface/web/mail/lib/lang/fr_mail_alias.lng | 1 - interface/web/mail/lib/lang/fr_mail_forward.lng | 2 +- interface/web/mail/lib/lang/hr_mail_alias.lng | 1 - interface/web/mail/lib/lang/hr_mail_forward.lng | 2 +- interface/web/mail/lib/lang/hu_mail_alias.lng | 1 - interface/web/mail/lib/lang/hu_mail_forward.lng | 2 +- interface/web/mail/lib/lang/id_mail_alias.lng | 1 - interface/web/mail/lib/lang/id_mail_forward.lng | 2 +- interface/web/mail/lib/lang/it_mail_alias.lng | 1 - interface/web/mail/lib/lang/it_mail_forward.lng | 2 +- interface/web/mail/lib/lang/ja_mail_alias.lng | 1 - interface/web/mail/lib/lang/ja_mail_forward.lng | 2 +- interface/web/mail/lib/lang/nl_mail_alias.lng | 1 - interface/web/mail/lib/lang/nl_mail_forward.lng | 2 +- interface/web/mail/lib/lang/pl_mail_alias.lng | 1 - interface/web/mail/lib/lang/pl_mail_forward.lng | 2 +- interface/web/mail/lib/lang/pt_mail_alias.lng | 1 - interface/web/mail/lib/lang/pt_mail_forward.lng | 2 +- interface/web/mail/lib/lang/ro_mail_alias.lng | 1 - interface/web/mail/lib/lang/ro_mail_forward.lng | 2 +- interface/web/mail/lib/lang/ru_mail_alias.lng | 1 - interface/web/mail/lib/lang/ru_mail_forward.lng | 2 +- interface/web/mail/lib/lang/se_mail_alias.lng | 1 - interface/web/mail/lib/lang/se_mail_forward.lng | 2 +- interface/web/mail/lib/lang/sk_mail_alias.lng | 1 - interface/web/mail/lib/lang/sk_mail_forward.lng | 2 +- interface/web/mail/lib/lang/tr_mail_alias.lng | 1 - interface/web/mail/lib/lang/tr_mail_forward.lng | 2 +- 52 files changed, 34 insertions(+), 47 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 2a9a9ffd09..75a6b01d93 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -1,2 +1,6 @@ -- default spamfilter_users.policy_id to 0 ALTER TABLE `spamfilter_users` ALTER `policy_id` SET DEFAULT 0; + +-- mail_forwarding.source must be unique +ALTER TABLE `mail_forwarding` DROP KEY `server_id`; +ALTER TABLE `mail_forwarding` ADD UNIQUE KEY `server_id` (`server_id`, `source`); diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 9ebb69090f..709fa09c79 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -916,7 +916,7 @@ CREATE TABLE `mail_forwarding` ( `allow_send_as` ENUM('n','y') NOT NULL DEFAULT 'n', `greylisting` enum('n','y' ) NOT NULL DEFAULT 'n', PRIMARY KEY (`forwarding_id`), - KEY `server_id` (`server_id`,`source`), + UNIQUE KEY `server_id` (`server_id`, `source`), KEY `type` (`type`) ) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; diff --git a/interface/web/mail/form/mail_alias.tform.php b/interface/web/mail/form/mail_alias.tform.php index 9434ba3eec..39b485c7a5 100644 --- a/interface/web/mail/form/mail_alias.tform.php +++ b/interface/web/mail/form/mail_alias.tform.php @@ -83,6 +83,8 @@ $form["tabs"]['alias'] = array ( ), 'validators' => array ( 0 => array ( 'type' => 'ISEMAIL', 'errmsg'=> 'email_error_isemail'), + 1 => array ( 'type' => 'UNIQUE', + 'errmsg'=> 'email_error_unique'), ), 'default' => '', 'value' => '', diff --git a/interface/web/mail/form/mail_forward.tform.php b/interface/web/mail/form/mail_forward.tform.php index 003e678455..db940f035e 100644 --- a/interface/web/mail/form/mail_forward.tform.php +++ b/interface/web/mail/form/mail_forward.tform.php @@ -83,6 +83,8 @@ $form["tabs"]['forward'] = array ( ), 'validators' => array ( 0 => array ( 'type' => 'ISEMAIL', 'errmsg'=> 'email_error_isemail'), + 1 => array ( 'type' => 'UNIQUE', + 'errmsg'=> 'email_error_unique'), ), 'default' => '', 'value' => '', diff --git a/interface/web/mail/lib/lang/ar_mail_alias.lng b/interface/web/mail/lib/lang/ar_mail_alias.lng index 32a6b85e4e..98921ce7ce 100644 --- a/interface/web/mail/lib/lang/ar_mail_alias.lng +++ b/interface/web/mail/lib/lang/ar_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/ar_mail_forward.lng b/interface/web/mail/lib/lang/ar_mail_forward.lng index 3f9cfa956b..4291bd415c 100644 --- a/interface/web/mail/lib/lang/ar_mail_forward.lng +++ b/interface/web/mail/lib/lang/ar_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Duplicate Emailaddress.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/bg_mail_alias.lng b/interface/web/mail/lib/lang/bg_mail_alias.lng index 32a6b85e4e..98921ce7ce 100644 --- a/interface/web/mail/lib/lang/bg_mail_alias.lng +++ b/interface/web/mail/lib/lang/bg_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/bg_mail_forward.lng b/interface/web/mail/lib/lang/bg_mail_forward.lng index b5c80dd89d..1e12ca1ece 100644 --- a/interface/web/mail/lib/lang/bg_mail_forward.lng +++ b/interface/web/mail/lib/lang/bg_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Duplicate Emailaddress.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/br_mail_forward.lng b/interface/web/mail/lib/lang/br_mail_forward.lng index dd1eb9bb56..396262d787 100644 --- a/interface/web/mail/lib/lang/br_mail_forward.lng +++ b/interface/web/mail/lib/lang/br_mail_forward.lng @@ -9,6 +9,7 @@ $wb['source_txt'] = 'Endereço de email de origem'; $wb['destination_error_empty'] = 'O endereço de email de destino não pode ficar vazio.'; $wb['destination_error_isemail'] = 'O endereço de email de destino é inválido.'; $wb['email_error_isemail'] = 'Por favor informe um endereço de email válido.'; +$wb['email_error_unique'] = 'Endereço de email duplicado.'; $wb['send_as_txt'] = 'Enviar como'; $wb['send_as_exp'] = 'Permitir o destino enviar emails usando este endereço como origem (se o destino for interno)'; $wb['greylisting_txt'] = 'Habilitar greylist'; diff --git a/interface/web/mail/lib/lang/ca_mail_alias.lng b/interface/web/mail/lib/lang/ca_mail_alias.lng index a1c3eacb67..0b8d9b0e45 100644 --- a/interface/web/mail/lib/lang/ca_mail_alias.lng +++ b/interface/web/mail/lib/lang/ca_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/ca_mail_forward.lng b/interface/web/mail/lib/lang/ca_mail_forward.lng index 7b8feb1e8f..2f9d26288f 100644 --- a/interface/web/mail/lib/lang/ca_mail_forward.lng +++ b/interface/web/mail/lib/lang/ca_mail_forward.lng @@ -9,7 +9,7 @@ $wb['source_txt'] = 'Source courriel'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Dupliquer l\'adresse courriel.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/cz_mail_forward.lng b/interface/web/mail/lib/lang/cz_mail_forward.lng index f1deae4081..1faa74c26c 100644 --- a/interface/web/mail/lib/lang/cz_mail_forward.lng +++ b/interface/web/mail/lib/lang/cz_mail_forward.lng @@ -9,6 +9,7 @@ $wb['source_txt'] = 'Zdrojový e-mail'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.'; +$wb['email_error_unique'] = 'Duplikování e-mailové adresy.'; $wb['send_as_txt'] = 'Odeslat jako'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; $wb['greylisting_txt'] = 'Povolit greylisting'; diff --git a/interface/web/mail/lib/lang/de_mail_alias.lng b/interface/web/mail/lib/lang/de_mail_alias.lng index 4cdcd03a6f..7d8099fdca 100644 --- a/interface/web/mail/lib/lang/de_mail_alias.lng +++ b/interface/web/mail/lib/lang/de_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['send_as_txt'] = 'Senden als'; $wb['send_as_exp'] = 'Ziel erlauben, den Alias als Absender zu benutzen'; $wb['greylisting_txt'] = 'Aktiviere Greylisting'; -?> diff --git a/interface/web/mail/lib/lang/de_mail_forward.lng b/interface/web/mail/lib/lang/de_mail_forward.lng index 4825ef7811..4435ce707c 100644 --- a/interface/web/mail/lib/lang/de_mail_forward.lng +++ b/interface/web/mail/lib/lang/de_mail_forward.lng @@ -9,7 +9,7 @@ $wb['source_txt'] = 'Quell E-Mail Adresse'; $wb['destination_error_empty'] = 'Das Weiterleitungsziel darf nicht leer sein.'; $wb['destination_error_isemail'] = 'Das Weiterleitungsziel enthält mindestens eine ungültige E-Mail-Adresse.'; $wb['email_error_isemail'] = 'Bitte geben Sie eine gültige E-Mail Adresse an.'; +$wb['email_error_unique'] = 'Doppelte E-Mail Adresse.'; $wb['send_as_txt'] = 'Senden als'; $wb['send_as_exp'] = 'Ziel erlauben, die Adresse als Absender zu nutzen (Nur, falls das Ziel intern ist)'; $wb['greylisting_txt'] = 'Aktiviere greylisting'; -?> diff --git a/interface/web/mail/lib/lang/dk_mail_alias.lng b/interface/web/mail/lib/lang/dk_mail_alias.lng index 19b4112001..c0a66126f2 100644 --- a/interface/web/mail/lib/lang/dk_mail_alias.lng +++ b/interface/web/mail/lib/lang/dk_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/dk_mail_forward.lng b/interface/web/mail/lib/lang/dk_mail_forward.lng index ba47d8421d..55939b9deb 100644 --- a/interface/web/mail/lib/lang/dk_mail_forward.lng +++ b/interface/web/mail/lib/lang/dk_mail_forward.lng @@ -9,7 +9,7 @@ $wb['source_txt'] = 'Kilde E-mail'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Dupliker E-mailadresse.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/el_mail_alias.lng b/interface/web/mail/lib/lang/el_mail_alias.lng index 5663822ce0..bcbb3220c7 100644 --- a/interface/web/mail/lib/lang/el_mail_alias.lng +++ b/interface/web/mail/lib/lang/el_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/el_mail_forward.lng b/interface/web/mail/lib/lang/el_mail_forward.lng index 8893b2fa0f..2519aa39e8 100644 --- a/interface/web/mail/lib/lang/el_mail_forward.lng +++ b/interface/web/mail/lib/lang/el_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Διπλή διεύθυνση Email.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/en_mail_alias.lng b/interface/web/mail/lib/lang/en_mail_alias.lng index 439ab74a09..23c567125d 100644 --- a/interface/web/mail/lib/lang/en_mail_alias.lng +++ b/interface/web/mail/lib/lang/en_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/en_mail_forward.lng b/interface/web/mail/lib/lang/en_mail_forward.lng index c38e2bf4ff..6be6ab7e70 100644 --- a/interface/web/mail/lib/lang/en_mail_forward.lng +++ b/interface/web/mail/lib/lang/en_mail_forward.lng @@ -9,7 +9,7 @@ $wb['source_txt'] = 'Source Email'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Duplicate Emailaddress.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/es_mail_alias.lng b/interface/web/mail/lib/lang/es_mail_alias.lng index 18d1cb7347..7c0d7c7ccf 100644 --- a/interface/web/mail/lib/lang/es_mail_alias.lng +++ b/interface/web/mail/lib/lang/es_mail_alias.lng @@ -14,4 +14,3 @@ $wb['no_domain_perm'] = 'No tiene permisos para usar este dominio.'; $wb['send_as_exp'] = 'Permite al destinatario enviar correos usando este alias como origen'; $wb['send_as_txt'] = 'Enviar como'; $wb['source_txt'] = 'Alias'; -?> diff --git a/interface/web/mail/lib/lang/es_mail_forward.lng b/interface/web/mail/lib/lang/es_mail_forward.lng index 7ea99ea619..a295943f3c 100644 --- a/interface/web/mail/lib/lang/es_mail_forward.lng +++ b/interface/web/mail/lib/lang/es_mail_forward.lng @@ -6,10 +6,10 @@ $wb['duplicate_mailbox_txt'] = 'Ya existe un buzón con esta cuenta de correo.'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Por favor, introduzca una dirección de correo válida.'; +$wb['email_error_unique'] = 'Dirección de correo duplicada.'; $wb['email_txt'] = 'Correo'; $wb['greylisting_txt'] = 'Habilitar Lista Gris'; $wb['limit_mailforward_txt'] = 'Ha alcanzado el número máx. de reenvíos de correos permitidos para su cuenta.'; $wb['send_as_exp'] = 'Permitir al destino enviar correo usando esta dirección como origen (si el destino es interno)'; $wb['send_as_txt'] = 'Enviar como'; $wb['source_txt'] = 'Origen del correo'; -?> diff --git a/interface/web/mail/lib/lang/fi_mail_alias.lng b/interface/web/mail/lib/lang/fi_mail_alias.lng index 918db07761..20179dfdb6 100644 --- a/interface/web/mail/lib/lang/fi_mail_alias.lng +++ b/interface/web/mail/lib/lang/fi_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/fi_mail_forward.lng b/interface/web/mail/lib/lang/fi_mail_forward.lng index 80d34b5004..72b36cd082 100644 --- a/interface/web/mail/lib/lang/fi_mail_forward.lng +++ b/interface/web/mail/lib/lang/fi_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Tämä aliasosoite on jo olemassa'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/fr_mail_alias.lng b/interface/web/mail/lib/lang/fr_mail_alias.lng index 2baa476c65..b3868afc2c 100644 --- a/interface/web/mail/lib/lang/fr_mail_alias.lng +++ b/interface/web/mail/lib/lang/fr_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/fr_mail_forward.lng b/interface/web/mail/lib/lang/fr_mail_forward.lng index fd6d13c6bb..87caec79e0 100644 --- a/interface/web/mail/lib/lang/fr_mail_forward.lng +++ b/interface/web/mail/lib/lang/fr_mail_forward.lng @@ -9,7 +9,7 @@ $wb['source_txt'] = 'Source Email'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Dupliquer l’adresse e-mail.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/hr_mail_alias.lng b/interface/web/mail/lib/lang/hr_mail_alias.lng index 180bcbeacd..152172a6b5 100644 --- a/interface/web/mail/lib/lang/hr_mail_alias.lng +++ b/interface/web/mail/lib/lang/hr_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/hr_mail_forward.lng b/interface/web/mail/lib/lang/hr_mail_forward.lng index 10abd5fe92..86430d19f7 100644 --- a/interface/web/mail/lib/lang/hr_mail_forward.lng +++ b/interface/web/mail/lib/lang/hr_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Duplicirane email adrese.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/hu_mail_alias.lng b/interface/web/mail/lib/lang/hu_mail_alias.lng index 7fc9e7a1d3..f2b5fab45a 100644 --- a/interface/web/mail/lib/lang/hu_mail_alias.lng +++ b/interface/web/mail/lib/lang/hu_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/hu_mail_forward.lng b/interface/web/mail/lib/lang/hu_mail_forward.lng index c58ae29d31..936b9781ef 100644 --- a/interface/web/mail/lib/lang/hu_mail_forward.lng +++ b/interface/web/mail/lib/lang/hu_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Már létező email cím'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/id_mail_alias.lng b/interface/web/mail/lib/lang/id_mail_alias.lng index e0efdb1504..aae76432fd 100644 --- a/interface/web/mail/lib/lang/id_mail_alias.lng +++ b/interface/web/mail/lib/lang/id_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/id_mail_forward.lng b/interface/web/mail/lib/lang/id_mail_forward.lng index 5f0c788878..792070d920 100644 --- a/interface/web/mail/lib/lang/id_mail_forward.lng +++ b/interface/web/mail/lib/lang/id_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Alamat Email Ganda.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/it_mail_alias.lng b/interface/web/mail/lib/lang/it_mail_alias.lng index fea4fe0c12..eab82caf51 100644 --- a/interface/web/mail/lib/lang/it_mail_alias.lng +++ b/interface/web/mail/lib/lang/it_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/it_mail_forward.lng b/interface/web/mail/lib/lang/it_mail_forward.lng index 3b5210fba1..6c4690c750 100644 --- a/interface/web/mail/lib/lang/it_mail_forward.lng +++ b/interface/web/mail/lib/lang/it_mail_forward.lng @@ -9,7 +9,7 @@ $wb['source_txt'] = 'Source Email'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Indirizzo email duplicato.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; $wb['greylisting_txt'] = 'Enable greylisting'; -?> diff --git a/interface/web/mail/lib/lang/ja_mail_alias.lng b/interface/web/mail/lib/lang/ja_mail_alias.lng index c03bb825da..317a28337f 100644 --- a/interface/web/mail/lib/lang/ja_mail_alias.lng +++ b/interface/web/mail/lib/lang/ja_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/ja_mail_forward.lng b/interface/web/mail/lib/lang/ja_mail_forward.lng index f849f7bf18..0d6b4312ef 100644 --- a/interface/web/mail/lib/lang/ja_mail_forward.lng +++ b/interface/web/mail/lib/lang/ja_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'メールアドレスが重複しています。'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/nl_mail_alias.lng b/interface/web/mail/lib/lang/nl_mail_alias.lng index d327afa90c..1ab52542ab 100644 --- a/interface/web/mail/lib/lang/nl_mail_alias.lng +++ b/interface/web/mail/lib/lang/nl_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/nl_mail_forward.lng b/interface/web/mail/lib/lang/nl_mail_forward.lng index 6bf586a0d2..33dadeef6b 100644 --- a/interface/web/mail/lib/lang/nl_mail_forward.lng +++ b/interface/web/mail/lib/lang/nl_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Duplicaat E-mail adres.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/pl_mail_alias.lng b/interface/web/mail/lib/lang/pl_mail_alias.lng index 4833383342..6c49433b60 100644 --- a/interface/web/mail/lib/lang/pl_mail_alias.lng +++ b/interface/web/mail/lib/lang/pl_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/pl_mail_forward.lng b/interface/web/mail/lib/lang/pl_mail_forward.lng index ce79e10938..2c9c32adf7 100644 --- a/interface/web/mail/lib/lang/pl_mail_forward.lng +++ b/interface/web/mail/lib/lang/pl_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Duplikat adresów e-mail.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/pt_mail_alias.lng b/interface/web/mail/lib/lang/pt_mail_alias.lng index 91736e3020..afb7408eab 100644 --- a/interface/web/mail/lib/lang/pt_mail_alias.lng +++ b/interface/web/mail/lib/lang/pt_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/pt_mail_forward.lng b/interface/web/mail/lib/lang/pt_mail_forward.lng index db67461967..3f0dc04f7c 100644 --- a/interface/web/mail/lib/lang/pt_mail_forward.lng +++ b/interface/web/mail/lib/lang/pt_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Endereço de correio duplicado.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/ro_mail_alias.lng b/interface/web/mail/lib/lang/ro_mail_alias.lng index d5e8e0fb0f..65b9abbd52 100644 --- a/interface/web/mail/lib/lang/ro_mail_alias.lng +++ b/interface/web/mail/lib/lang/ro_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/ro_mail_forward.lng b/interface/web/mail/lib/lang/ro_mail_forward.lng index 5e00bf0527..3103f26dc8 100644 --- a/interface/web/mail/lib/lang/ro_mail_forward.lng +++ b/interface/web/mail/lib/lang/ro_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Duplicat Emailaddress.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/ru_mail_alias.lng b/interface/web/mail/lib/lang/ru_mail_alias.lng index e093ad9986..fd15ffbc91 100644 --- a/interface/web/mail/lib/lang/ru_mail_alias.lng +++ b/interface/web/mail/lib/lang/ru_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Алиас'; $wb['greylisting_txt'] = 'Включить серый список (Greylisting)'; $wb['send_as_txt'] = 'Отправить как'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/ru_mail_forward.lng b/interface/web/mail/lib/lang/ru_mail_forward.lng index 6eb11f4f91..0be6608b80 100644 --- a/interface/web/mail/lib/lang/ru_mail_forward.lng +++ b/interface/web/mail/lib/lang/ru_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Включить серый список (Greylisting) $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Некорректный почтовый адрес.'; +$wb['email_error_unique'] = 'Такая запись уже есть.'; $wb['send_as_txt'] = 'Отправить как'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/se_mail_alias.lng b/interface/web/mail/lib/lang/se_mail_alias.lng index 441e33eac2..5011c02a1f 100644 --- a/interface/web/mail/lib/lang/se_mail_alias.lng +++ b/interface/web/mail/lib/lang/se_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/se_mail_forward.lng b/interface/web/mail/lib/lang/se_mail_forward.lng index 7b0aa2bc16..4ac59fb99c 100644 --- a/interface/web/mail/lib/lang/se_mail_forward.lng +++ b/interface/web/mail/lib/lang/se_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Epostadressen finns redan.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/sk_mail_alias.lng b/interface/web/mail/lib/lang/sk_mail_alias.lng index 70b6b1c246..da89509e76 100644 --- a/interface/web/mail/lib/lang/sk_mail_alias.lng +++ b/interface/web/mail/lib/lang/sk_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Alias'; $wb['greylisting_txt'] = 'Enable greylisting'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -?> diff --git a/interface/web/mail/lib/lang/sk_mail_forward.lng b/interface/web/mail/lib/lang/sk_mail_forward.lng index 399971261a..7730600125 100644 --- a/interface/web/mail/lib/lang/sk_mail_forward.lng +++ b/interface/web/mail/lib/lang/sk_mail_forward.lng @@ -10,6 +10,6 @@ $wb['greylisting_txt'] = 'Enable greylisting'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Please enter a valid email address.'; +$wb['email_error_unique'] = 'Duplicitná email adresa.'; $wb['send_as_txt'] = 'Send as'; $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -?> diff --git a/interface/web/mail/lib/lang/tr_mail_alias.lng b/interface/web/mail/lib/lang/tr_mail_alias.lng index ea440b2e63..f049c2b270 100644 --- a/interface/web/mail/lib/lang/tr_mail_alias.lng +++ b/interface/web/mail/lib/lang/tr_mail_alias.lng @@ -14,4 +14,3 @@ $wb['source_txt'] = 'Takma Ad'; $wb['send_as_txt'] = 'Gönderen'; $wb['send_as_exp'] = 'Hedef bu adresi kaynak olarak göstererek e-posta gönderebilsin'; $wb['greylisting_txt'] = 'Gri Liste Kullanılsın'; -?> diff --git a/interface/web/mail/lib/lang/tr_mail_forward.lng b/interface/web/mail/lib/lang/tr_mail_forward.lng index bdcd02a862..03624e56b6 100644 --- a/interface/web/mail/lib/lang/tr_mail_forward.lng +++ b/interface/web/mail/lib/lang/tr_mail_forward.lng @@ -9,7 +9,7 @@ $wb['source_txt'] = 'Kaynak E-posta'; $wb['destination_error_empty'] = 'The destination must not be empty.'; $wb['destination_error_isemail'] = 'The destination contains at least one invalid email address.'; $wb['email_error_isemail'] = 'Lütfen geçerli bir e-posta adresi yazın.'; +$wb['email_error_unique'] = 'Bu e-posta adresi zaten var'; $wb['send_as_txt'] = 'Gönderen'; $wb['send_as_exp'] = 'Hedef bu adresi kaynak olarak göstererek e-posta gönderebilsin (hedef iç kullanıcı ise)'; $wb['greylisting_txt'] = 'Gri Liste Kullanılsın'; -?> -- GitLab From 36a29359184f68a04093182912e41bced9c01581 Mon Sep 17 00:00:00 2001 From: Jesse Norell Date: Mon, 23 Aug 2021 18:07:07 -0600 Subject: [PATCH 2/2] installer: remove duplicate mail_forwarding prior to adding unique key --- install/patches/upd_0094.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 install/patches/upd_0094.php diff --git a/install/patches/upd_0094.php b/install/patches/upd_0094.php new file mode 100644 index 0000000000..b9516e232e --- /dev/null +++ b/install/patches/upd_0094.php @@ -0,0 +1,14 @@ +db->query("DELETE FROM mail_forwarding WHERE forwarding_id IN (SELECT forwarding_id FROM (SELECT forwarding_id, COUNT(source) AS source_count FROM mail_forwarding GROUP BY source HAVING source_count > 1) as t1)"); + } + +} -- GitLab