Fix for CRM-15750 advanced search using relationship and smart group produces backtrace
[civicrm-core.git] / CRM / Contact / BAO / Relationship.php
index 19f2a9d3a6fcb24a3b2122425561819d81208117..15c4dc0d4a02492ed63b1c4f829abee876b7cc22 100644 (file)
@@ -261,7 +261,7 @@ class CRM_Contact_BAO_Relationship extends CRM_Contact_DAO_Relationship {
 
     $relationship->free();
 
-    CRM_Utils_Hook::post($hook, 'Relationship', $relationshipId, $relationship);
+    CRM_Utils_Hook::post($hook, 'Relationship', $relationship->id, $relationship);
 
     return $relationship;
   }
@@ -491,7 +491,7 @@ class CRM_Contact_BAO_Relationship extends CRM_Contact_DAO_Relationship {
     $relationship->delete();
     CRM_Core_Session::setStatus(ts('Selected relationship has been deleted successfully.'), ts('Record Deleted'), 'success');
 
-    CRM_Utils_Hook::post('delete', 'Relationship', $relationship->id, $relationship);
+    CRM_Utils_Hook::post('delete', 'Relationship', $id, $relationship);
 
     // delete the recently created Relationship
     $relationshipRecent = array(
@@ -846,6 +846,7 @@ WHERE  relationship_type_id = " . CRM_Utils_Type::escape($type, 'Integer');
                               civicrm_state_province.abbreviation as state,
                               civicrm_country.name as country,
                               civicrm_email.email as email,
+                              civicrm_contact.contact_type as contact_type,
                               civicrm_phone.phone as phone,
                               civicrm_contact.id as civicrm_contact_id,
                               civicrm_relationship.contact_id_b as contact_id_b,
@@ -861,13 +862,11 @@ WHERE  relationship_type_id = " . CRM_Utils_Type::escape($type, 'Integer');
 
       if ($direction == 'a_b') {
         $select .= ', civicrm_relationship_type.label_a_b as label_a_b,
-                              civicrm_relationship_type.label_b_a as relation,
-                              civicrm_contact.contact_type as contact_type_a_b ';
+                              civicrm_relationship_type.label_b_a as relation ';
       }
       else {
         $select .= ', civicrm_relationship_type.label_a_b as label_a_b,
-                              civicrm_relationship_type.label_a_b as relation,
-                              civicrm_contact.contact_type as contact_type_b_a ';
+                              civicrm_relationship_type.label_a_b as relation ';
       }
     }
 
@@ -1055,8 +1054,7 @@ LEFT JOIN  civicrm_country ON (civicrm_address.country_id = civicrm_country.id)
         $values[$rid]['cid'] = $cid;
         $values[$rid]['contact_id_a'] = $relationship->contact_id_a;
         $values[$rid]['contact_id_b'] = $relationship->contact_id_b;
-        $values[$rid]['contact_type_a_b'] = $relationship->contact_type_a_b;
-        $values[$rid]['contact_type_b_a'] = $relationship->contact_type_b_a;
+        $values[$rid]['contact_type'] = $relationship->contact_type;
         $values[$rid]['relationship_type_id'] = $relationship->civicrm_relationship_type_id;
         $values[$rid]['relation'] = $relationship->relation;
         $values[$rid]['name'] = $relationship->sort_name;
@@ -1709,7 +1707,7 @@ AND cc.sort_name LIKE '%$name%'";
       // format params
       foreach ($relationships as $relationshipId => $values) {
         //Add image icon for related contacts: CRM-14919
-        $icon = CRM_Contact_BAO_Contact_Utils::getImage($values['contact_type_a_b'],
+        $icon = CRM_Contact_BAO_Contact_Utils::getImage($values['contact_type'],
           FALSE,
           $values['cid']
         );