/*
+--------------------------------------------------------------------+
- | CiviCRM version 4.3 |
+ | CiviCRM version 4.4 |
+--------------------------------------------------------------------+
| Copyright CiviCRM LLC (c) 2004-2013 |
+--------------------------------------------------------------------+
_civicrm_api3_relationship_format_params($params, $values);
$ids = array();
- if (CRM_Utils_Array::value('id', $params)) {
+ if (!empty($params['id'])) {
$ids['contactTarget'] = $values['contact_id_b'];
}
* @access public
*/
function civicrm_api3_relationship_get($params) {
+ $options = _civicrm_api3_get_options_from_params($params);
- if (!CRM_Utils_Array::value('contact_id', $params)) {
+ if (empty($params['contact_id'])) {
+ if(!empty($params['membership_type_id']) && empty($params['relationship_type_id'])) {
+ CRM_Contact_BAO_Relationship::membershipTypeToRelationshipTypes($params);
+ }
$relationships = _civicrm_api3_basic_get(_civicrm_api3_get_BAO(__FUNCTION__), $params, FALSE);
}
else {
$relationships = CRM_Contact_BAO_Relationship::getRelationship($params['contact_id'],
CRM_Utils_Array::value('status_id', $params),
0,
- 0,
- CRM_Utils_Array::value('id', $params), NULL
+ CRM_Utils_Array::value('is_count', $options),
+ CRM_Utils_Array::value('id', $params),
+ NULL,
+ NULL,
+ FALSE,
+ $params
);
}
+ //perhaps we should add a 'getcount' but at this stage lets just handle getcount output
+ if($options['is_count']) {
+ return array('count' => $relationships);
+ }
foreach ($relationships as $relationshipId => $values) {
_civicrm_api3_custom_data_get($relationships[$relationshipId], 'Relationship', $relationshipId, NULL, CRM_Utils_Array::value('relationship_type_id',$values));
}
-
-
return civicrm_api3_create_success($relationships, $params);
}
_civicrm_api3_store_values($fields, $params, $values);
$relationTypes = CRM_Core_PseudoConstant::relationshipType('name');
- if (CRM_Utils_Array::value('id', $params)) {
+ if (!empty($params['id'])) {
$relation = new CRM_Contact_BAO_Relationship();
$relation->id = $params['id'];
if (!$relation->find(TRUE)) {
}
if ($relationshipTypeId) {
- if (CRM_Utils_Array::value('relationship_type_id', $values) &&
+ if (!empty($values['relationship_type_id']) &&
$relationshipTypeId != $values['relationship_type_id']
) {
throw new Exception('Mismatched Relationship Type and Relationship Type Id');