Merge pull request #3679 from yashodha/CRM-14951
[civicrm-core.git] / api / v3 / DashboardContact.php
index f7f7ba6c1dfdabbf03973484cc28f32d8e67fe50..4df7815f4b84ede66aaedd72925016569729d45f 100644 (file)
@@ -2,9 +2,9 @@
 
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.4                                                |
+ | CiviCRM version 4.5                                                |
  +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013                                |
+ | Copyright CiviCRM LLC (c) 2004-2014                                |
  +--------------------------------------------------------------------+
  | This file is a part of CiviCRM.                                    |
  |                                                                    |
@@ -32,7 +32,7 @@
  * @package CiviCRM_APIv3
  * @subpackage API_ActionSchedule
  *
- * @copyright CiviCRM LLC (c) 2004-2013
+ * @copyright CiviCRM LLC (c) 2004-2014
  *
  */
 
@@ -83,13 +83,31 @@ function _civicrm_api3_dashboard_contact_create_spec(&$params) {
   unset($params['version']);
 }
 
+/**
+ * @param $params
+ *
+ * @return array|null
+ */
 function _civicrm_api3_dashboard_contact_check_params(&$params) {
   $dashboard_id = CRM_Utils_Array::value('dashboard_id', $params);
   if ($dashboard_id) {
-    $allDashlets = CRM_Core_BAO_Dashboard::getDashlets();
+    $allDashlets = CRM_Core_BAO_Dashboard::getDashlets(TRUE, CRM_Utils_Array::value('check_permissions', $params, 0));
     if (!isset($allDashlets[$dashboard_id])) {
-      return civicrm_api3_create_error('Invalid Dashboard ID');
+      return civicrm_api3_create_error('Invalid or inaccessible dashboard ID');
     }
   }
   return NULL;
-}
\ No newline at end of file
+}
+
+/**
+ * Delete an existing dashboard-contact
+ *
+ * This method is used to delete any existing dashboard-board. the id of the dashboard-contact
+ * is required field in $params array
+ *
+ * {@getfields dashboard_contact_delete}
+ * @access public
+ */
+function civicrm_api3_dashboard_contact_delete($params) {
+  return _civicrm_api3_basic_delete(_civicrm_api3_get_BAO(__FUNCTION__), $params);
+}