[TikiWiki-commits] [Git][tikiwiki/tiki][master] [ENH] Webmail: search contacts by nickname and company when composing email
"Victor Emanouilov \(@kroky\) via TikiWiki-cvs" <[email protected]>
| Newsgroups | gmane.comp.cms.tiki.cvs |
|---|---|
| Message-ID | <69aef1a4d2e4d_3b18932c894@gitlab-sidekiq-low-urgency-cpu-bound-v2-74685b5685-kt4r5.mail> |
Victor Emanouilov pushed to branch master at Tiki Wiki CMS Groupware / Tiki
Commits:
a7c3e5f3 by Alfred Syatsukwa at 2026-03-09T15:50:04+00:00
[ENH] Webmail: search contacts by nickname and company when composing email
---
* [ENH] Webmail: search contacts by nickname and company when composing email
See merge request tikiwiki/tiki!9718
- - - - -
1 changed file:
- lib/cypht/modules/tiki/general_modules.php
Changes:
=====================================
lib/cypht/modules/tiki/general_modules.php
=====================================
@@ -25,16 +25,40 @@ class Hm_Handler_load_tiki_contacts extends Hm_Handler_Module
global $user;
$contactlib = TikiLib::lib('contact');
$contacts = $this->get('contact_store');
+
+ $company_field_ids = [];
+ $ext_fields = $contactlib->get_ext_list($user);
+ $company_field_names = ['Company', 'Organization', 'Department', 'Division'];
+ if (is_array($ext_fields)) {
+ foreach ($ext_fields as $ext_field) {
+ if (in_array($ext_field['fieldname'], $company_field_names)) {
+ $company_field_ids[(int) $ext_field['fieldId']] = $ext_field['fieldname'];
+ }
+ }
+ }
+
$tiki_contacts = $contactlib->list_contacts($user);
foreach ($tiki_contacts as $contact) {
// skip adding if it already exists
if ($contacts->get(null, false, $contact['email'])) {
continue;
}
+
+ $company_parts = [];
+ if (! empty($contact['ext']) && ! empty($company_field_ids)) {
+ foreach ($company_field_ids as $field_id => $field_name) {
+ if (! empty($contact['ext'][$field_id])) {
+ $company_parts[] = $contact['ext'][$field_id];
+ }
+ }
+ }
+
$contacts->add_contact([
'source' => 'tiki',
'email_address' => $contact['email'],
'display_name' => $contact['firstName'] . ($contact['lastName'] ? ' ' . $contact['lastName'] : ''),
+ 'nickname' => ! empty($contact['nickname']) ? $contact['nickname'] : '',
+ 'company' => implode(', ', $company_parts),
'external' => true,
]);
}
View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/a7c3e5f3a0f070badca3a2c2bd971b9dce60ac60
--
View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/a7c3e5f3a0f070badca3a2c2bd971b9dce60ac60
You're receiving this email because of your account on gitlab.com. Manage all notifications: https://gitlab.com/-/profile/notifications | Help: https://gitlab.com/help
_______________________________________________
TikiWiki-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tikiwiki-cvs