5 * @copyright CiviCRM LLC https://civicrm.org/licensing
7 * Generated from xml/schema/CRM/Core/Address.xml
8 * DO NOT EDIT. Generated by CRM_Core_CodeGen
9 * (GenCodeChecksum:63f758987eb3ff9fb47750eddb1a9ee8)
13 * Database access object for the Address entity.
15 class CRM_Core_DAO_Address
extends CRM_Core_DAO
{
16 const EXT
= 'civicrm';
17 const TABLE_ADDED
= '1.1';
20 * Static instance to hold the table name.
24 public static $_tableName = 'civicrm_address';
27 * Icon associated with this entity.
31 public static $_icon = 'fa-map-marker';
34 * Should CiviCRM log any modifications to this table in the civicrm_log table.
38 public static $_log = TRUE;
43 * @var int|string|null
44 * (SQL type: int unsigned)
45 * Note that values will be retrieved from the database as a string.
52 * @var int|string|null
53 * (SQL type: int unsigned)
54 * Note that values will be retrieved from the database as a string.
59 * Which Location does this address belong to.
61 * @var int|string|null
62 * (SQL type: int unsigned)
63 * Note that values will be retrieved from the database as a string.
65 public $location_type_id;
68 * Is this the primary address.
72 * Note that values will be retrieved from the database as a string.
77 * Is this the billing address.
81 * Note that values will be retrieved from the database as a string.
86 * Concatenation of all routable street address components (prefix, street number, street name, suffix, unit
87 * number OR P.O. Box). Apps should be able to determine physical location with this data (for mapping, mail
91 * (SQL type: varchar(96))
92 * Note that values will be retrieved from the database as a string.
94 public $street_address;
97 * Numeric portion of address number on the street, e.g. For 112A Main St, the street_number = 112.
99 * @var int|string|null
101 * Note that values will be retrieved from the database as a string.
103 public $street_number;
106 * Non-numeric portion of address number on the street, e.g. For 112A Main St, the street_number_suffix = A
109 * (SQL type: varchar(8))
110 * Note that values will be retrieved from the database as a string.
112 public $street_number_suffix;
115 * Directional prefix, e.g. SE Main St, SE is the prefix.
118 * (SQL type: varchar(8))
119 * Note that values will be retrieved from the database as a string.
121 public $street_number_predirectional;
124 * Actual street name, excluding St, Dr, Rd, Ave, e.g. For 112 Main St, the street_name = Main.
127 * (SQL type: varchar(64))
128 * Note that values will be retrieved from the database as a string.
136 * (SQL type: varchar(8))
137 * Note that values will be retrieved from the database as a string.
142 * Directional prefix, e.g. Main St S, S is the suffix.
145 * (SQL type: varchar(8))
146 * Note that values will be retrieved from the database as a string.
148 public $street_number_postdirectional;
151 * Secondary unit designator, e.g. Apt 3 or Unit # 14, or Bldg 1200
154 * (SQL type: varchar(16))
155 * Note that values will be retrieved from the database as a string.
160 * Supplemental Address Information, Line 1
163 * (SQL type: varchar(96))
164 * Note that values will be retrieved from the database as a string.
166 public $supplemental_address_1;
169 * Supplemental Address Information, Line 2
172 * (SQL type: varchar(96))
173 * Note that values will be retrieved from the database as a string.
175 public $supplemental_address_2;
178 * Supplemental Address Information, Line 3
181 * (SQL type: varchar(96))
182 * Note that values will be retrieved from the database as a string.
184 public $supplemental_address_3;
187 * City, Town or Village Name.
190 * (SQL type: varchar(64))
191 * Note that values will be retrieved from the database as a string.
196 * Which County does this address belong to.
198 * @var int|string|null
199 * (SQL type: int unsigned)
200 * Note that values will be retrieved from the database as a string.
205 * Which State_Province does this address belong to.
207 * @var int|string|null
208 * (SQL type: int unsigned)
209 * Note that values will be retrieved from the database as a string.
211 public $state_province_id;
214 * Store the suffix, like the +4 part in the USPS system.
217 * (SQL type: varchar(12))
218 * Note that values will be retrieved from the database as a string.
220 public $postal_code_suffix;
223 * Store both US (zip5) AND international postal codes. App is responsible for country/region appropriate validation.
226 * (SQL type: varchar(64))
227 * Note that values will be retrieved from the database as a string.
232 * USPS Bulk mailing code.
235 * (SQL type: varchar(32))
236 * Note that values will be retrieved from the database as a string.
241 * Which Country does this address belong to.
243 * @var int|string|null
244 * (SQL type: int unsigned)
245 * Note that values will be retrieved from the database as a string.
252 * @var float|string|null
254 * Note that values will be retrieved from the database as a string.
261 * @var float|string|null
263 * Note that values will be retrieved from the database as a string.
268 * Is this a manually entered geo code
271 * (SQL type: tinyint)
272 * Note that values will be retrieved from the database as a string.
274 public $manual_geo_code;
277 * Timezone expressed as a UTC offset - e.g. United States CST would be written as "UTC-6".
280 * (SQL type: varchar(8))
281 * Note that values will be retrieved from the database as a string.
287 * (SQL type: varchar(255))
288 * Note that values will be retrieved from the database as a string.
295 * @var int|string|null
296 * (SQL type: int unsigned)
297 * Note that values will be retrieved from the database as a string.
304 public function __construct() {
305 $this->__table
= 'civicrm_address';
306 parent
::__construct();
310 * Returns localized title of this entity.
312 * @param bool $plural
313 * Whether to return the plural version of the title.
315 public static function getEntityTitle($plural = FALSE) {
316 return $plural ?
ts('Addresses') : ts('Address');
320 * Returns foreign keys and entity references.
323 * [CRM_Core_Reference_Interface]
325 public static function getReferenceColumns() {
326 if (!isset(Civi
::$statics[__CLASS__
]['links'])) {
327 Civi
::$statics[__CLASS__
]['links'] = static::createReferenceColumns(__CLASS__
);
328 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'contact_id', 'civicrm_contact', 'id');
329 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'county_id', 'civicrm_county', 'id');
330 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'state_province_id', 'civicrm_state_province', 'id');
331 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'country_id', 'civicrm_country', 'id');
332 Civi
::$statics[__CLASS__
]['links'][] = new CRM_Core_Reference_Basic(self
::getTableName(), 'master_id', 'civicrm_address', 'id');
333 CRM_Core_DAO_AllCoreTables
::invoke(__CLASS__
, 'links_callback', Civi
::$statics[__CLASS__
]['links']);
335 return Civi
::$statics[__CLASS__
]['links'];
339 * Returns all the column names of this table
343 public static function &fields() {
344 if (!isset(Civi
::$statics[__CLASS__
]['fields'])) {
345 Civi
::$statics[__CLASS__
]['fields'] = [
348 'type' => CRM_Utils_Type
::T_INT
,
349 'title' => ts('Address ID'),
350 'description' => ts('Unique Address ID'),
352 'where' => 'civicrm_address.id',
354 'table_name' => 'civicrm_address',
355 'entity' => 'Address',
356 'bao' => 'CRM_Core_BAO_Address',
365 'name' => 'contact_id',
366 'type' => CRM_Utils_Type
::T_INT
,
367 'title' => ts('Contact ID'),
368 'description' => ts('FK to Contact ID'),
369 'where' => 'civicrm_address.contact_id',
370 'table_name' => 'civicrm_address',
371 'entity' => 'Address',
372 'bao' => 'CRM_Core_BAO_Address',
374 'FKClassName' => 'CRM_Contact_DAO_Contact',
376 'label' => ts("Contact"),
380 'location_type_id' => [
381 'name' => 'location_type_id',
382 'type' => CRM_Utils_Type
::T_INT
,
383 'title' => ts('Address Location Type'),
384 'description' => ts('Which Location does this address belong to.'),
385 'where' => 'civicrm_address.location_type_id',
386 'table_name' => 'civicrm_address',
387 'entity' => 'Address',
388 'bao' => 'CRM_Core_BAO_Address',
393 'pseudoconstant' => [
394 'table' => 'civicrm_location_type',
396 'labelColumn' => 'display_name',
401 'name' => 'is_primary',
402 'type' => CRM_Utils_Type
::T_BOOLEAN
,
403 'title' => ts('Primary address'),
404 'description' => ts('Is this the primary address.'),
406 'where' => 'civicrm_address.is_primary',
408 'table_name' => 'civicrm_address',
409 'entity' => 'Address',
410 'bao' => 'CRM_Core_BAO_Address',
418 'name' => 'is_billing',
419 'type' => CRM_Utils_Type
::T_BOOLEAN
,
420 'title' => ts('Is Billing Address'),
421 'description' => ts('Is this the billing address.'),
423 'where' => 'civicrm_address.is_billing',
425 'table_name' => 'civicrm_address',
426 'entity' => 'Address',
427 'bao' => 'CRM_Core_BAO_Address',
430 'type' => 'CheckBox',
434 'street_address' => [
435 'name' => 'street_address',
436 'type' => CRM_Utils_Type
::T_STRING
,
437 'title' => ts('Street Address'),
438 'description' => ts('Concatenation of all routable street address components (prefix, street number, street name, suffix, unit
439 number OR P.O. Box). Apps should be able to determine physical location with this data (for mapping, mail
442 'size' => CRM_Utils_Type
::HUGE
,
444 'where' => 'civicrm_address.street_address',
445 'headerPattern' => '/(street|address)/i',
446 'dataPattern' => '/^(\d{1,5}( [0-9A-Za-z]+)+)$|^(P\.?O\.\? Box \d{1,5})$/i',
448 'table_name' => 'civicrm_address',
449 'entity' => 'Address',
450 'bao' => 'CRM_Core_BAO_Address',
458 'name' => 'street_number',
459 'type' => CRM_Utils_Type
::T_INT
,
460 'title' => ts('Street Number'),
461 'description' => ts('Numeric portion of address number on the street, e.g. For 112A Main St, the street_number = 112.'),
462 'where' => 'civicrm_address.street_number',
464 'table_name' => 'civicrm_address',
465 'entity' => 'Address',
466 'bao' => 'CRM_Core_BAO_Address',
473 'street_number_suffix' => [
474 'name' => 'street_number_suffix',
475 'type' => CRM_Utils_Type
::T_STRING
,
476 'title' => ts('Street Number Suffix'),
477 'description' => ts('Non-numeric portion of address number on the street, e.g. For 112A Main St, the street_number_suffix = A'),
479 'size' => CRM_Utils_Type
::EIGHT
,
480 'where' => 'civicrm_address.street_number_suffix',
482 'table_name' => 'civicrm_address',
483 'entity' => 'Address',
484 'bao' => 'CRM_Core_BAO_Address',
491 'street_number_predirectional' => [
492 'name' => 'street_number_predirectional',
493 'type' => CRM_Utils_Type
::T_STRING
,
494 'title' => ts('Street Direction Prefix'),
495 'description' => ts('Directional prefix, e.g. SE Main St, SE is the prefix.'),
497 'size' => CRM_Utils_Type
::EIGHT
,
498 'where' => 'civicrm_address.street_number_predirectional',
499 'table_name' => 'civicrm_address',
500 'entity' => 'Address',
501 'bao' => 'CRM_Core_BAO_Address',
509 'name' => 'street_name',
510 'type' => CRM_Utils_Type
::T_STRING
,
511 'title' => ts('Street Name'),
512 'description' => ts('Actual street name, excluding St, Dr, Rd, Ave, e.g. For 112 Main St, the street_name = Main.'),
514 'size' => CRM_Utils_Type
::BIG
,
515 'where' => 'civicrm_address.street_name',
517 'table_name' => 'civicrm_address',
518 'entity' => 'Address',
519 'bao' => 'CRM_Core_BAO_Address',
527 'name' => 'street_type',
528 'type' => CRM_Utils_Type
::T_STRING
,
529 'title' => ts('Street Type'),
530 'description' => ts('St, Rd, Dr, etc.'),
532 'size' => CRM_Utils_Type
::EIGHT
,
533 'where' => 'civicrm_address.street_type',
534 'table_name' => 'civicrm_address',
535 'entity' => 'Address',
536 'bao' => 'CRM_Core_BAO_Address',
543 'street_number_postdirectional' => [
544 'name' => 'street_number_postdirectional',
545 'type' => CRM_Utils_Type
::T_STRING
,
546 'title' => ts('Street Direction Suffix'),
547 'description' => ts('Directional prefix, e.g. Main St S, S is the suffix.'),
549 'size' => CRM_Utils_Type
::EIGHT
,
550 'where' => 'civicrm_address.street_number_postdirectional',
551 'table_name' => 'civicrm_address',
552 'entity' => 'Address',
553 'bao' => 'CRM_Core_BAO_Address',
561 'name' => 'street_unit',
562 'type' => CRM_Utils_Type
::T_STRING
,
563 'title' => ts('Street Unit'),
564 'description' => ts('Secondary unit designator, e.g. Apt 3 or Unit # 14, or Bldg 1200'),
566 'size' => CRM_Utils_Type
::TWELVE
,
567 'where' => 'civicrm_address.street_unit',
569 'table_name' => 'civicrm_address',
570 'entity' => 'Address',
571 'bao' => 'CRM_Core_BAO_Address',
578 'supplemental_address_1' => [
579 'name' => 'supplemental_address_1',
580 'type' => CRM_Utils_Type
::T_STRING
,
581 'title' => ts('Supplemental Address 1'),
582 'description' => ts('Supplemental Address Information, Line 1'),
584 'size' => CRM_Utils_Type
::HUGE
,
586 'where' => 'civicrm_address.supplemental_address_1',
587 'headerPattern' => '/(supplemental(\s)?)?address(\s\d+)?/i',
588 'dataPattern' => '/unit|ap(ar)?t(ment)?\s(\d|\w)+/i',
590 'table_name' => 'civicrm_address',
591 'entity' => 'Address',
592 'bao' => 'CRM_Core_BAO_Address',
599 'supplemental_address_2' => [
600 'name' => 'supplemental_address_2',
601 'type' => CRM_Utils_Type
::T_STRING
,
602 'title' => ts('Supplemental Address 2'),
603 'description' => ts('Supplemental Address Information, Line 2'),
605 'size' => CRM_Utils_Type
::HUGE
,
607 'where' => 'civicrm_address.supplemental_address_2',
608 'headerPattern' => '/(supplemental(\s)?)?address(\s\d+)?/i',
609 'dataPattern' => '/unit|ap(ar)?t(ment)?\s(\d|\w)+/i',
611 'table_name' => 'civicrm_address',
612 'entity' => 'Address',
613 'bao' => 'CRM_Core_BAO_Address',
620 'supplemental_address_3' => [
621 'name' => 'supplemental_address_3',
622 'type' => CRM_Utils_Type
::T_STRING
,
623 'title' => ts('Supplemental Address 3'),
624 'description' => ts('Supplemental Address Information, Line 3'),
626 'size' => CRM_Utils_Type
::HUGE
,
628 'where' => 'civicrm_address.supplemental_address_3',
629 'headerPattern' => '/(supplemental(\s)?)?address(\s\d+)?/i',
630 'dataPattern' => '/unit|ap(ar)?t(ment)?\s(\d|\w)+/i',
632 'table_name' => 'civicrm_address',
633 'entity' => 'Address',
634 'bao' => 'CRM_Core_BAO_Address',
643 'type' => CRM_Utils_Type
::T_STRING
,
644 'title' => ts('City'),
645 'description' => ts('City, Town or Village Name.'),
647 'size' => CRM_Utils_Type
::BIG
,
649 'where' => 'civicrm_address.city',
650 'headerPattern' => '/city/i',
651 'dataPattern' => '/^[A-Za-z]+(\.?)(\s?[A-Za-z]+){0,2}$/',
653 'table_name' => 'civicrm_address',
654 'entity' => 'Address',
655 'bao' => 'CRM_Core_BAO_Address',
663 'name' => 'county_id',
664 'type' => CRM_Utils_Type
::T_INT
,
665 'title' => ts('County ID'),
666 'description' => ts('Which County does this address belong to.'),
667 'where' => 'civicrm_address.county_id',
668 'table_name' => 'civicrm_address',
669 'entity' => 'Address',
670 'bao' => 'CRM_Core_BAO_Address',
672 'FKClassName' => 'CRM_Core_DAO_County',
674 'type' => 'ChainSelect',
675 'label' => ts("County"),
676 'controlField' => 'state_province_id',
678 'pseudoconstant' => [
679 'table' => 'civicrm_county',
681 'labelColumn' => 'name',
682 'abbrColumn' => 'abbreviation',
686 'state_province_id' => [
687 'name' => 'state_province_id',
688 'type' => CRM_Utils_Type
::T_INT
,
689 'title' => ts('State/Province ID'),
690 'description' => ts('Which State_Province does this address belong to.'),
691 'where' => 'civicrm_address.state_province_id',
692 'table_name' => 'civicrm_address',
693 'entity' => 'Address',
694 'bao' => 'CRM_Core_BAO_Address',
696 'localize_context' => 'province',
697 'FKClassName' => 'CRM_Core_DAO_StateProvince',
699 'type' => 'ChainSelect',
700 'label' => ts("State/Province"),
701 'controlField' => 'country_id',
703 'pseudoconstant' => [
704 'table' => 'civicrm_state_province',
706 'labelColumn' => 'name',
707 'abbrColumn' => 'abbreviation',
711 'postal_code_suffix' => [
712 'name' => 'postal_code_suffix',
713 'type' => CRM_Utils_Type
::T_STRING
,
714 'title' => ts('Postal Code Suffix'),
715 'description' => ts('Store the suffix, like the +4 part in the USPS system.'),
719 'where' => 'civicrm_address.postal_code_suffix',
720 'headerPattern' => '/p(ostal)\sc(ode)\ss(uffix)/i',
721 'dataPattern' => '/\d?\d{4}(-\d{4})?/',
723 'table_name' => 'civicrm_address',
724 'entity' => 'Address',
725 'bao' => 'CRM_Core_BAO_Address',
733 'name' => 'postal_code',
734 'type' => CRM_Utils_Type
::T_STRING
,
735 'title' => ts('Postal Code'),
736 'description' => ts('Store both US (zip5) AND international postal codes. App is responsible for country/region appropriate validation.'),
740 'where' => 'civicrm_address.postal_code',
741 'headerPattern' => '/postal|zip/i',
742 'dataPattern' => '/\d?\d{4}(-\d{4})?/',
744 'table_name' => 'civicrm_address',
745 'entity' => 'Address',
746 'bao' => 'CRM_Core_BAO_Address',
754 'name' => 'usps_adc',
755 'type' => CRM_Utils_Type
::T_STRING
,
756 'title' => ts('USPS Code'),
757 'description' => ts('USPS Bulk mailing code.'),
759 'size' => CRM_Utils_Type
::MEDIUM
,
760 'where' => 'civicrm_address.usps_adc',
761 'table_name' => 'civicrm_address',
762 'entity' => 'Address',
763 'bao' => 'CRM_Core_BAO_Address',
768 'name' => 'country_id',
769 'type' => CRM_Utils_Type
::T_INT
,
770 'title' => ts('Country ID'),
771 'description' => ts('Which Country does this address belong to.'),
772 'where' => 'civicrm_address.country_id',
773 'table_name' => 'civicrm_address',
774 'entity' => 'Address',
775 'bao' => 'CRM_Core_BAO_Address',
777 'localize_context' => 'country',
778 'FKClassName' => 'CRM_Core_DAO_Country',
781 'label' => ts("Country"),
783 'pseudoconstant' => [
784 'table' => 'civicrm_country',
786 'labelColumn' => 'name',
787 'nameColumn' => 'iso_code',
788 'abbrColumn' => 'iso_code',
793 'name' => 'geo_code_1',
794 'type' => CRM_Utils_Type
::T_FLOAT
,
795 'title' => ts('Latitude'),
796 'description' => ts('Latitude'),
798 'where' => 'civicrm_address.geo_code_1',
799 'headerPattern' => '/geo/i',
801 'table_name' => 'civicrm_address',
802 'entity' => 'Address',
803 'bao' => 'CRM_Core_BAO_Address',
811 'name' => 'geo_code_2',
812 'type' => CRM_Utils_Type
::T_FLOAT
,
813 'title' => ts('Longitude'),
814 'description' => ts('Longitude'),
816 'where' => 'civicrm_address.geo_code_2',
817 'headerPattern' => '/geo/i',
819 'table_name' => 'civicrm_address',
820 'entity' => 'Address',
821 'bao' => 'CRM_Core_BAO_Address',
828 'manual_geo_code' => [
829 'name' => 'manual_geo_code',
830 'type' => CRM_Utils_Type
::T_BOOLEAN
,
831 'title' => ts('Is Manually Geocoded'),
832 'description' => ts('Is this a manually entered geo code'),
834 'where' => 'civicrm_address.manual_geo_code',
837 'table_name' => 'civicrm_address',
838 'entity' => 'Address',
839 'bao' => 'CRM_Core_BAO_Address',
842 'type' => 'CheckBox',
847 'name' => 'timezone',
848 'type' => CRM_Utils_Type
::T_STRING
,
849 'title' => ts('Timezone'),
850 'description' => ts('Timezone expressed as a UTC offset - e.g. United States CST would be written as "UTC-6".'),
852 'size' => CRM_Utils_Type
::EIGHT
,
853 'where' => 'civicrm_address.timezone',
854 'table_name' => 'civicrm_address',
855 'entity' => 'Address',
856 'bao' => 'CRM_Core_BAO_Address',
865 'type' => CRM_Utils_Type
::T_STRING
,
866 'title' => ts('Address Name'),
868 'size' => CRM_Utils_Type
::HUGE
,
870 'where' => 'civicrm_address.name',
871 'headerPattern' => '/^location|(l(ocation\s)?name)$/i',
872 'dataPattern' => '/^\w+$/',
874 'table_name' => 'civicrm_address',
875 'entity' => 'Address',
876 'bao' => 'CRM_Core_BAO_Address',
884 'name' => 'master_id',
885 'type' => CRM_Utils_Type
::T_INT
,
886 'title' => ts('Master Address ID'),
887 'description' => ts('FK to Address ID'),
889 'where' => 'civicrm_address.master_id',
891 'table_name' => 'civicrm_address',
892 'entity' => 'Address',
893 'bao' => 'CRM_Core_BAO_Address',
895 'FKClassName' => 'CRM_Core_DAO_Address',
897 'label' => ts("Master Address Belongs To"),
902 CRM_Core_DAO_AllCoreTables
::invoke(__CLASS__
, 'fields_callback', Civi
::$statics[__CLASS__
]['fields']);
904 return Civi
::$statics[__CLASS__
]['fields'];
908 * Return a mapping from field-name to the corresponding key (as used in fields()).
911 * Array(string $name => string $uniqueName).
913 public static function &fieldKeys() {
914 if (!isset(Civi
::$statics[__CLASS__
]['fieldKeys'])) {
915 Civi
::$statics[__CLASS__
]['fieldKeys'] = array_flip(CRM_Utils_Array
::collect('name', self
::fields()));
917 return Civi
::$statics[__CLASS__
]['fieldKeys'];
921 * Returns the names of this table
925 public static function getTableName() {
926 return self
::$_tableName;
930 * Returns if this table needs to be logged
934 public function getLog() {
939 * Returns the list of fields that can be imported
941 * @param bool $prefix
945 public static function &import($prefix = FALSE) {
946 $r = CRM_Core_DAO_AllCoreTables
::getImports(__CLASS__
, 'address', $prefix, [
947 'CRM_Core_DAO_County',
948 'CRM_Core_DAO_StateProvince',
949 'CRM_Core_DAO_Country',
955 * Returns the list of fields that can be exported
957 * @param bool $prefix
961 public static function &export($prefix = FALSE) {
962 $r = CRM_Core_DAO_AllCoreTables
::getExports(__CLASS__
, 'address', $prefix, [
963 'CRM_Core_DAO_County',
964 'CRM_Core_DAO_StateProvince',
965 'CRM_Core_DAO_Country',
971 * Returns the list of indices
973 * @param bool $localize
977 public static function indices($localize = TRUE) {
979 'index_location_type' => [
980 'name' => 'index_location_type',
982 0 => 'location_type_id',
984 'localizable' => FALSE,
985 'sig' => 'civicrm_address::0::location_type_id',
987 'index_is_primary' => [
988 'name' => 'index_is_primary',
992 'localizable' => FALSE,
993 'sig' => 'civicrm_address::0::is_primary',
995 'index_is_billing' => [
996 'name' => 'index_is_billing',
1000 'localizable' => FALSE,
1001 'sig' => 'civicrm_address::0::is_billing',
1003 'index_street_name' => [
1004 'name' => 'index_street_name',
1008 'localizable' => FALSE,
1009 'sig' => 'civicrm_address::0::street_name',
1012 'name' => 'index_city',
1016 'localizable' => FALSE,
1017 'sig' => 'civicrm_address::0::city',
1019 'index_geo_code_1_geo_code_2' => [
1020 'name' => 'index_geo_code_1_geo_code_2',
1025 'localizable' => FALSE,
1026 'sig' => 'civicrm_address::0::geo_code_1::geo_code_2',
1029 return ($localize && !empty($indices)) ? CRM_Core_DAO_AllCoreTables
::multilingualize(__CLASS__
, $indices) : $indices;