From: Eileen McNaughton Date: Fri, 20 Jun 2014 05:26:51 +0000 (+1200) Subject: CRM-14263 further fix for CRM-14263 fix phone in search profile situation X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=1740a07ee16963f71704940432c79fc7a8a30c62;p=civicrm-core.git CRM-14263 further fix for CRM-14263 fix phone in search profile situation --- diff --git a/CRM/Contact/BAO/Query.php b/CRM/Contact/BAO/Query.php index 7e659c7cec..00ced63b9e 100644 --- a/CRM/Contact/BAO/Query.php +++ b/CRM/Contact/BAO/Query.php @@ -2547,11 +2547,18 @@ class CRM_Contact_BAO_Query { continue; default: + $locationTypeName = ''; if (strpos($name, '-address') != 0) { - //we have a join on an address table - possibly in conjunction with search builder - CRM-14263 + $locationTypeName = 'address'; + } + elseif (strpos($name, '-phone') != 0) { + $locationTypeName = 'phone'; + } + if($locationTypeName) { + //we have a join on an location table - possibly in conjunction with search builder - CRM-14263 $parts = explode('-', $name); $locationID = array_search($parts[0], CRM_Core_BAO_Address::buildOptions('location_type_id', 'get', array('name' => $parts[0]))); - $from .= " $side JOIN civicrm_address `{$name}` ON ( contact_a.id = `{$name}`.contact_id ) and `{$name}`.location_type_id = $locationID "; + $from .= " $side JOIN civicrm_{$locationTypeName} `{$name}` ON ( contact_a.id = `{$name}`.contact_id ) and `{$name}`.location_type_id = $locationID "; } else { $from .= CRM_Core_Component::from($name, $mode, $side);