diff options
author | Aleksander Machniak <alec@alec.pl> | 2012-05-26 20:40:47 +0200 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2012-05-26 20:40:47 +0200 |
commit | a9055c5a81b3c7552c2cfa909ccd399c50f42b76 (patch) | |
tree | c1bd997864a0b34201a03372ba7b0cbd3c79ebbd /program/include/rcmail.php | |
parent | ad8552ea6ffc656fb65480290d00f0572bc1fcd0 (diff) |
Fix host autoselection when default_host is an array (#1488495)
Diffstat (limited to 'program/include/rcmail.php')
-rw-r--r-- | program/include/rcmail.php | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/program/include/rcmail.php b/program/include/rcmail.php index c0defa6d4..66e9a5c06 100644 --- a/program/include/rcmail.php +++ b/program/include/rcmail.php @@ -1017,15 +1017,16 @@ class rcmail if (is_array($default_host)) { $post_host = get_input_value('_host', RCUBE_INPUT_POST); + $post_user = get_input_value('_user', RCUBE_INPUT_POST); + + list($user, $domain) = explode('@', $post_user); // direct match in default_host array - if ($default_host[$post_host] || in_array($post_host, array_values($default_host))) { + if ($default_host[$post_host] || in_array($post_host, $default_host)) { $host = $post_host; } - // try to select host by mail domain - list($user, $domain) = explode('@', get_input_value('_user', RCUBE_INPUT_POST)); - if (!empty($domain)) { + else if (!empty($domain)) { foreach ($default_host as $storage_host => $mail_domains) { if (is_array($mail_domains) && in_array_nocase($domain, $mail_domains)) { $host = $storage_host; |