diff options
Diffstat (limited to 'plugins/virtuser_query')
-rw-r--r-- | plugins/virtuser_query/virtuser_query.php | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/plugins/virtuser_query/virtuser_query.php b/plugins/virtuser_query/virtuser_query.php index 803c2702d..0264bf8f9 100644 --- a/plugins/virtuser_query/virtuser_query.php +++ b/plugins/virtuser_query/virtuser_query.php @@ -7,7 +7,9 @@ * SQL query to resolve user names and e-mail addresses from the database * %u will be replaced with the current username for login. * The query should select the user's e-mail address as first column - * and optional identity name as second column + * and optional identity data columns in specified order: + * name, organization, reply-to, bcc, signature, html_signature + * * $rcmail_config['virtuser_query'] = ''; * * @version 1.0 @@ -40,12 +42,27 @@ class virtuser_query extends rcube_plugin while ($sql_arr = $dbh->fetch_array($sql_result)) { if (strpos($sql_arr[0], '@')) { - $result[] = ($p['extended'] && count($sql_arr) > 1) ? $sql_arr : $sql_arr[0]; + if ($p['extended'] && count($sql_arr) > 1) { + $result[] = array( + 'email' => $sql_arr[0], + 'name' => $sql_arr[1], + 'organization' => $sql_arr[2], + 'reply-to' => $sql_arr[3], + 'bcc' => $sql_arr[4], + 'signature' => $sql_arr[5], + 'html_signature' => (int)$sql_arr[6], + ); + } + else { + $result[] = $sql_arr[0]; + } if ($p['first']) - return $result[0]; + break; } } + + $p['email'] = $result; return $p; } |