| | |
| | | * @param array Hash array with contact data as key-value pairs |
| | | * @param string Optional email address |
| | | * @param string Optional name (self::compose_list_name() result) |
| | | * @param string Optional template to use (defaults to the 'contact_search_name' config option) |
| | | * |
| | | * @return string Display name |
| | | */ |
| | | public static function compose_search_name($contact, $email = null, $name = null) |
| | | public static function compose_search_name($contact, $email = null, $name = null, $templ = null) |
| | | { |
| | | static $template; |
| | | |
| | | if (!isset($template)) { // cache this |
| | | if (empty($templ) && !isset($template)) { // cache this |
| | | $template = rcube::get_instance()->config->get('contact_search_name'); |
| | | if (empty($template)) { |
| | | $template = '{name} <{email}>'; |
| | | } |
| | | } |
| | | |
| | | $result = $template; |
| | | $result = $templ ?: $template; |
| | | |
| | | if (preg_match_all('/\{[a-z]+\}/', $result, $matches)) { |
| | | foreach ($matches[0] as $key) { |