Merge remote-tracking branch 'upstream/4.4' into 4.4-master-2014-04-03-23-46-36
[civicrm-core.git] / api / v3 / Group.php
index a24879a50ad72fb6ccb48ecd30f4067ede9d74d5..6cc7647ebcab2bdefdd7e066856a75a7995cb195 100644 (file)
@@ -1,11 +1,10 @@
 <?php
-// $Id$
 
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.3                                                |
+ | CiviCRM version 4.5                                                |
  +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013                                |
+ | Copyright CiviCRM LLC (c) 2004-2014                                |
  +--------------------------------------------------------------------+
  | This file is a part of CiviCRM.                                    |
  |                                                                    |
  *
  * @package CiviCRM_APIv3
  * @subpackage API_Group
- * @copyright CiviCRM LLC (c) 2004-2013
+ * @copyright CiviCRM LLC (c) 2004-2014
  * @version $Id: Group.php 30171 2010-10-14 09:11:27Z mover $
  */
 
-/**
- * Include utility functions
- */
-require_once 'CRM/Contact/BAO/Group.php';
-
 /**
  * create/update group
  *
@@ -71,7 +65,8 @@ function civicrm_api3_group_create($params) {
     return civicrm_api3_create_success($values, $params, 'group', 'create', $group);
   }
 }
-/*
+
+/**
  * Adjust Metadata for Create action
  *
  * The metadata is used for setting defaults, documentation & validation
@@ -96,7 +91,7 @@ function _civicrm_api3_group_create_spec(&$params) {
  */
 function civicrm_api3_group_get($params) {
 
-  $options          = _civicrm_api3_get_options_from_params($params, TRUE, 'get');
+  $options          = _civicrm_api3_get_options_from_params($params, TRUE, 'group', 'get');
   $sort             = CRM_Utils_Array::value('sort', $options, NULL);
   $offset           = CRM_Utils_Array::value('offset', $options);
   $rowCount         = CRM_Utils_Array::value('limit', $options);
@@ -104,9 +99,13 @@ function civicrm_api3_group_get($params) {
   $inputParams      = CRM_Utils_Array::value('input_params', $options, array());
   if(is_array($returnProperties) && !empty($returnProperties)){
     // group function takes $returnProperties in non standard format & doesn't add id
+    unset($returnProperties['group_id']);
     $returnProperties['id'] = 1;
     $returnProperties = array_keys($returnProperties);
   }
+  if (!empty($inputParams['group_id'])) {
+    $inputParams['id'] = $inputParams['group_id'];
+  }
   $groupObjects = CRM_Contact_BAO_Group::getGroups($inputParams, $returnProperties, $sort, $offset, $rowCount);
   if (empty($groupObjects)) {
     return civicrm_api3_create_success(FALSE);