Merge pull request #18500 from eileenmcnaughton/loc
[civicrm-core.git] / settings / Search.setting.php
CommitLineData
6a488035
TO
1<?php
2/*
3 +--------------------------------------------------------------------+
6b7eb9df 4 | Copyright CiviCRM LLC. All rights reserved. |
6a488035 5 | |
6b7eb9df
TO
6 | This work is published under the GNU AGPLv3 license with some |
7 | permitted exceptions and without any warranty. For full license |
8 | and copyright information, see https://civicrm.org/licensing |
6a488035 9 +--------------------------------------------------------------------+
d25dd0ee 10 */
6a488035
TO
11
12/**
13 *
14 * @package CRM
ca5cec67 15 * @copyright CiviCRM LLC https://civicrm.org/licensing
6a488035
TO
16 */
17/*
18 * Settings metadata file
19 */
dfe1f88a
CW
20return [
21 'search_autocomplete_count' => [
6a488035
TO
22 'group_name' => 'Search Preferences',
23 'group' => 'Search Preferences',
24 'name' => 'search_autocomplete_count',
6a488035
TO
25 'type' => 'Integer',
26 'quick_form_type' => 'Element',
bfd9c358 27 'html_type' => 'number',
6a488035
TO
28 'default' => 10,
29 'add' => '4.3',
6b013845 30 'title' => ts('Autocomplete Results'),
6a488035
TO
31 'is_domain' => 1,
32 'is_contact' => 0,
6b013845 33 'description' => ts('The maximum number of contacts to show at a time when typing in an autocomplete field.'),
08e57c58 34 'help_text' => NULL,
dfe1f88a
CW
35 ],
36 'enable_innodb_fts' => [
56c2750b
TO
37 'group_name' => 'Search Preferences',
38 'group' => 'Search Preferences',
39 'name' => 'enable_innodb_fts',
56c2750b
TO
40 'type' => 'Boolean',
41 'quick_form_type' => 'YesNo',
42 'default' => 0,
43 'add' => '4.4',
6b013845 44 'title' => ts('InnoDB Full Text Search'),
56c2750b
TO
45 'is_domain' => 1,
46 'is_contact' => 0,
6b013845 47 'description' => ts('Enable InnoDB full-text search optimizations. (Requires MySQL 5.6+)'),
08e57c58 48 'help_text' => NULL,
dfe1f88a
CW
49 'on_change' => [
50 ['CRM_Core_InnoDBIndexer', 'onToggleFts'],
51 ],
52 ],
53 'fts_query_mode' => [
7d1b110a
TO
54 'group_name' => 'Search Preferences',
55 'group' => 'Search Preferences',
56 'name' => 'fts_query_mode',
7d1b110a
TO
57 'type' => 'String',
58 'quick_form_type' => 'Element',
dfe1f88a 59 'html_attributes' => [
7d1b110a
TO
60 'size' => 64,
61 'maxlength' => 64,
dfe1f88a 62 ],
c1a2145a 63 'html_type' => 'text',
7d1b110a
TO
64 'default' => 'simple',
65 'add' => '4.5',
6304e6c0 66 'title' => ts('How to handle full-text queries'),
7d1b110a
TO
67 'is_domain' => 1,
68 'is_contact' => 0,
08e57c58 69 'help_text' => NULL,
dfe1f88a
CW
70 ],
71 'includeOrderByClause' => [
08f4ab8d 72 'group_name' => 'Search Preferences',
73 'group' => 'Search Preferences',
74 'name' => 'includeOrderByClause',
08f4ab8d 75 'type' => 'Boolean',
76 'quick_form_type' => 'YesNo',
77 'default' => 1,
78 'add' => '4.6',
6b013845 79 'title' => ts('Include Order By Clause'),
08f4ab8d 80 'is_domain' => 1,
81 'is_contact' => 0,
6b013845 82 'description' => ts('If disabled, the search results will not be ordered. This may improve response time on search results on large datasets.'),
08f4ab8d 83 'help_text' => NULL,
dfe1f88a
CW
84 ],
85 'includeWildCardInName' => [
c3bc1eaf 86 'group_name' => 'Search Preferences',
87 'group' => 'Search Preferences',
88 'name' => 'includeWildCardInName',
c3bc1eaf 89 'type' => 'Boolean',
90 'quick_form_type' => 'YesNo',
91 'default' => 1,
92 'add' => '4.6',
6b013845 93 'title' => ts('Automatic Wildcard'),
c3bc1eaf 94 'is_domain' => 1,
95 'is_contact' => 0,
6b013845 96 'description' => ts("If enabled, wildcards are automatically added to the beginning AND end of the search term when users search for contacts by Name. EXAMPLE: Searching for 'ada' will return any contact whose name includes those letters - e.g. 'Adams, Janet', 'Nadal, Jorge', etc. If disabled, a wildcard is added to the end of the search term only. EXAMPLE: Searching for 'ada' will return any contact whose last name begins with those letters - e.g. 'Adams, Janet' but NOT 'Nadal, Jorge'. Disabling this feature will speed up search significantly for larger databases, but users must manually enter wildcards ('%' or '_') to the beginning of the search term if they want to find all records which contain those letters. EXAMPLE: '%ada' will return 'Nadal, Jorge'."),
c3bc1eaf 97 'help_text' => NULL,
dfe1f88a
CW
98 ],
99 'includeEmailInName' => [
c3bc1eaf 100 'group_name' => 'Search Preferences',
101 'group' => 'Search Preferences',
102 'name' => 'includeEmailInName',
c3bc1eaf 103 'type' => 'Boolean',
104 'quick_form_type' => 'YesNo',
105 'default' => 1,
106 'add' => '4.6',
6b013845 107 'title' => ts('Include Email'),
c3bc1eaf 108 'is_domain' => 1,
109 'is_contact' => 0,
6b013845 110 'description' => ts('If enabled, email addresses are automatically included when users search by Name. Disabling this feature will speed up search significantly for larger databases, but users will need to use the Email search fields (from Advanced Search, Search Builder, or Profiles) to find contacts by email address.'),
c3bc1eaf 111 'help_text' => NULL,
dfe1f88a
CW
112 ],
113 'includeNickNameInName' => [
c3bc1eaf 114 'group_name' => 'Search Preferences',
115 'group' => 'Search Preferences',
116 'name' => 'includeNickNameInName',
c3bc1eaf 117 'type' => 'Boolean',
118 'quick_form_type' => 'YesNo',
dc378d98 119 'default' => 0,
c3bc1eaf 120 'add' => '4.6',
6b013845 121 'title' => ts('Include Nickname'),
c3bc1eaf 122 'is_domain' => 1,
123 'is_contact' => 0,
6b013845 124 'description' => ts('If enabled, nicknames are automatically included when users search by Name.'),
c3bc1eaf 125 'help_text' => NULL,
dfe1f88a
CW
126 ],
127 'includeAlphabeticalPager' => [
c3bc1eaf 128 'group_name' => 'Search Preferences',
129 'group' => 'Search Preferences',
130 'name' => 'includeAlphabeticalPager',
c3bc1eaf 131 'type' => 'Boolean',
132 'quick_form_type' => 'YesNo',
133 'default' => 1,
134 'add' => '4.6',
6b013845 135 'title' => ts('Include Alphabetical Pager'),
c3bc1eaf 136 'is_domain' => 1,
137 'is_contact' => 0,
6b013845 138 'description' => ts('If disabled, the alphabetical pager will not be displayed on the search screens. This will improve response time on search results on large datasets.'),
c3bc1eaf 139 'help_text' => NULL,
dfe1f88a
CW
140 ],
141 'smartGroupCacheTimeout' => [
c3bc1eaf 142 'group_name' => 'Search Preferences',
143 'group' => 'Search Preferences',
144 'name' => 'smartGroupCacheTimeout',
c3bc1eaf 145 'type' => 'Integer',
dc378d98 146 'quick_form_type' => 'Element',
bfd9c358 147 'html_type' => 'number',
dc378d98 148 'default' => 5,
c3bc1eaf 149 'add' => '4.6',
6b013845 150 'title' => ts('Smart group cache timeout'),
c3bc1eaf 151 'is_domain' => 1,
152 'is_contact' => 0,
6b013845 153 'description' => ts('The number of minutes to cache smart group contacts. We strongly recommend that this value be greater than zero, since a value of zero means no caching at all. If your contact data changes frequently, you should set this value to at least 5 minutes.'),
c3bc1eaf 154 'help_text' => NULL,
dfe1f88a
CW
155 ],
156 'defaultSearchProfileID' => [
c3bc1eaf 157 'group_name' => 'Search Preferences',
158 'group' => 'Search Preferences',
159 'name' => 'defaultSearchProfileID',
c3bc1eaf 160 'type' => 'Integer',
dc378d98
TO
161 'quick_form_type' => 'Select',
162 'html_type' => 'Select',
dfe1f88a 163 'html_attributes' => [
dc378d98 164 'class' => 'crm-select2',
dfe1f88a
CW
165 ],
166 'pseudoconstant' => [
dc378d98 167 'callback' => 'CRM_Admin_Form_Setting_Search::getAvailableProfiles',
dfe1f88a 168 ],
dc378d98 169 'default' => NULL,
c3bc1eaf 170 'add' => '4.6',
6b013845 171 'title' => ts('Default Contact Search Profile'),
c3bc1eaf 172 'is_domain' => 1,
173 'is_contact' => 0,
6b013845 174 'description' => ts('If set, this will be the default profile used for contact search.'),
c3bc1eaf 175 'help_text' => NULL,
dfe1f88a
CW
176 ],
177 'prevNextBackend' => [
e28bf654
TO
178 'group_name' => 'Search Preferences',
179 'group' => 'Search Preferences',
180 'name' => 'prevNextBackend',
181 'type' => 'String',
182 'quick_form_type' => 'Select',
183 'html_type' => 'Select',
dfe1f88a 184 'html_attributes' => [
e28bf654 185 //'class' => 'crm-select2',
dfe1f88a 186 ],
e28bf654 187 'default' => 'default',
4d8899e3 188 'add' => '5.9',
6b013845 189 'title' => ts('PrevNext Cache'),
e28bf654
TO
190 'is_domain' => 1,
191 'is_contact' => 0,
dfe1f88a 192 'pseudoconstant' => [
e28bf654 193 'callback' => 'CRM_Core_BAO_PrevNextCache::getPrevNextBackends',
dfe1f88a 194 ],
6b013845 195 'description' => ts('When performing a search, how should the search-results be cached?'),
e28bf654 196 'help_text' => '',
dfe1f88a
CW
197 ],
198 'searchPrimaryDetailsOnly' => [
b3e1c09d 199 'group_name' => 'Search Preferences',
200 'group' => 'Search Preferences',
a3fccfc7 201 'name' => 'searchPrimaryDetailsOnly',
b3e1c09d 202 'type' => 'Boolean',
203 'quick_form_type' => 'YesNo',
204 'default' => 1,
205 'add' => '4.7',
6b013845 206 'title' => ts('Search Primary Details Only'),
b3e1c09d 207 'is_domain' => 1,
208 'is_contact' => 0,
6b013845 209 'description' => ts('If enabled, only primary details (eg contact\'s primary email, phone, etc) will be included in Basic and Advanced Search results. Disabling this feature will allow users to match contacts using any email, phone etc detail.'),
b3e1c09d 210 'help_text' => NULL,
dfe1f88a
CW
211 ],
212 'quicksearch_options' => [
4235341b
CW
213 'group_name' => 'Search Preferences',
214 'group' => 'Search Preferences',
215 'name' => 'quicksearch_options',
216 'type' => 'string',
217 'serialize' => CRM_Core_DAO::SERIALIZE_SEPARATOR_BOOKEND,
4235341b 218 'html_type' => 'checkboxes',
4e086328 219 'sortable' => TRUE,
dfe1f88a 220 'pseudoconstant' => [
4235341b 221 'callback' => 'CRM_Core_SelectValues::quicksearchOptions',
dfe1f88a
CW
222 ],
223 'default' => ['sort_name', 'contact_id', 'external_identifier', 'first_name', 'last_name', 'email', 'phone_numeric', 'street_address', 'city', 'postal_code', 'job_title'],
4235341b
CW
224 'add' => '5.8',
225 'title' => ts('Quicksearch options'),
226 'is_domain' => '1',
227 'is_contact' => 0,
228 'description' => ts("Which fields can be searched on in the menubar quicksearch box? Don't see your custom field here? Make sure it is marked as Searchable."),
229 'help_text' => NULL,
dfe1f88a
CW
230 ],
231];