CRM-16701 - worked around issue creating saved search.
[civicrm-core.git] / api / v3 / MailingAB.php
index 0661d49f48f0565d7960493ce8bacc69f21c53f7..2d29de095e5aa05372bebbf99b1845f6d948d485 100755 (executable)
@@ -3,7 +3,7 @@
  +--------------------------------------------------------------------+
  | CiviCRM version 4.6                                                |
  +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2014                                |
+ | Copyright CiviCRM LLC (c) 2004-2015                                |
  +--------------------------------------------------------------------+
  | This file is a part of CiviCRM.                                    |
  |                                                                    |
  * APIv3 functions for registering/processing mailing ab testing events.
  *
  * @package CiviCRM_APIv3
- * @subpackage API_MailingAB
- * @copyright CiviCRM LLC (c) 2004-2014
- * $Id$
- *
  */
 
 /**
- * Handle a create mailing ab testing
+ * @param array $spec
+ */
+function _civicrm_api3_mailing_a_b_create_spec(&$spec) {
+  $spec['created_date']['api.default'] = 'now';
+  $spec['created_id']['api.required'] = 1;
+  $spec['created_id']['api.default'] = 'user_contact_id';
+}
+
+/**
+ * Handle a create mailing ab testing.
  *
  * @param array $params
  *
@@ -64,6 +69,7 @@ function civicrm_api3_mailing_a_b_delete($params) {
  * Handle a get event.
  *
  * @param array $params
+ *
  * @return array
  */
 function civicrm_api3_mailing_a_b_get($params) {
@@ -71,13 +77,14 @@ function civicrm_api3_mailing_a_b_get($params) {
 }
 
 /**
- * Adjust Metadata for submit action
+ * Adjust Metadata for submit action.
  *
- * The metadata is used for setting defaults, documentation & validation
- * @param array $params
- *   Array or parameters determined by getfields.
+ * The metadata is used for setting defaults, documentation & validation.
+ *
+ * @param array $spec
+ *   Array of parameters determined by getfields.
  */
-function _civicrm_api3_mailing_a_b_submit_spec(&$params) {
+function _civicrm_api3_mailing_a_b_submit_spec(&$spec) {
   $mailingFields = CRM_Mailing_DAO_Mailing::fields();
   $mailingAbFields = CRM_Mailing_DAO_MailingAB::fields();
   $spec['id'] = $mailingAbFields['id'];
@@ -92,9 +99,10 @@ function _civicrm_api3_mailing_a_b_submit_spec(&$params) {
 }
 
 /**
- * Send A/B mail to A/B recipients respectively
+ * Send A/B mail to A/B recipients respectively.
  *
  * @param array $params
+ *
  * @return array
  * @throws API_Exception
  */
@@ -161,29 +169,38 @@ function civicrm_api3_mailing_a_b_submit($params) {
 }
 
 /**
- * Adjust Metadata for graph_stats action
+ * Adjust Metadata for graph_stats action.
+ *
+ * The metadata is used for setting defaults, documentation & validation.
  *
- * The metadata is used for setting defaults, documentation & validation
  * @param array $params
- *   Array or parameters determined by getfields.
+ *   Array of parameters determined by getfields.
  */
 function _civicrm_api3_mailing_a_b_graph_stats_spec(&$params) {
-  $params['criteria']['title'] = 'Criteria';
-  $params['criteria']['default'] = 'Open';
+  $params['criteria'] = array(
+    'title' => 'Criteria',
+    'default' => 'Open',
+    'type' => CRM_Utils_Type::T_STRING,
+  );
+
   // mailing_ab_winner_criteria
   $params['target_date']['title'] = 'Target Date';
   $params['target_date']['type'] = CRM_Utils_Type::T_DATE + CRM_Utils_Type::T_TIME;
-  $params['split_count']['title'] = 'Split Count';
-  $params['split_count']['api.default'] = 6;
+  $params['split_count'] = array(
+    'title' => 'Split Count',
+    'api.default' => 6,
+    'type' => CRM_Utils_Type::T_INT,
+  );
   $params['split_count_select']['title'] = 'Split Count Select';
   $params['split_count_select']['api.required'] = 1;
   $params['target_url']['title'] = 'Target URL';
 }
 
 /**
- * Send graph detail for A/B tests mail
+ * Send graph detail for A/B tests mail.
  *
  * @param array $params
+ *
  * @return array
  * @throws API_Exception
  */