api test e-notice compliance provide appropriate default for 'date_format' where...
authoreileen <eileen@fuzion.co.nz>
Sat, 22 Jun 2013 03:38:23 +0000 (15:38 +1200)
committereileen <eileen@fuzion.co.nz>
Sat, 22 Jun 2013 08:18:11 +0000 (20:18 +1200)
CRM/Core/BAO/CustomField.php

index 7fc6e1457f0aa14d84d77491f557b2f36816af16..2dd58106ae4e7d1480d1ef2c440c9f2e5fed87e0 100644 (file)
@@ -149,32 +149,40 @@ class CRM_Core_BAO_CustomField extends CRM_Core_DAO_CustomField {
       $indexExist = CRM_Core_DAO::getFieldValue('CRM_Core_DAO_CustomField', $params['id'], 'is_searchable');
     }
 
-    if (($params['html_type'] == 'CheckBox' ||
-        $params['html_type'] == 'AdvMulti-Select' ||
-        $params['html_type'] == 'Multi-Select'
-      ) &&
-      isset($params['default_checkbox_option'])
-    ) {
-      $tempArray = array_keys($params['default_checkbox_option']);
-      $defaultArray = array();
-      foreach ($tempArray as $k => $v) {
-        if ($params['option_value'][$v]) {
-          $defaultArray[] = $params['option_value'][$v];
+    switch (CRM_Utils_Array::value('html_type', $params)){
+      case 'Select Date':
+        if(empty($params['date_format'])){
+          $config = CRM_Core_Config::singleton();
+          $params['date_format'] = $config->dateInputFormat;
         }
-      }
+        break;
+      case 'CheckBox':
+      case 'AdvMulti-Select':
+      case 'Multi-Select':
+        if (isset($params['default_checkbox_option'])) {
+          $tempArray = array_keys($params['default_checkbox_option']);
+          $defaultArray = array();
+          foreach ($tempArray as $k => $v) {
+            if ($params['option_value'][$v]) {
+              $defaultArray[] = $params['option_value'][$v];
+            }
+          }
 
-      if (!empty($defaultArray)) {
-        // also add the seperator before and after the value per new conventio (CRM-1604)
-        $params['default_value'] = CRM_Core_DAO::VALUE_SEPARATOR . implode(CRM_Core_DAO::VALUE_SEPARATOR, $defaultArray) . CRM_Core_DAO::VALUE_SEPARATOR;
-      }
-    }
-    else {
-      if (CRM_Utils_Array::value('default_option', $params)
-        && isset($params['option_value'][$params['default_option']])
-      ) {
-        $params['default_value'] = $params['option_value'][$params['default_option']];
-      }
+          if (!empty($defaultArray)) {
+            // also add the seperator before and after the value per new conventio (CRM-1604)
+            $params['default_value'] = CRM_Core_DAO::VALUE_SEPARATOR . implode(CRM_Core_DAO::VALUE_SEPARATOR, $defaultArray) . CRM_Core_DAO::VALUE_SEPARATOR;
+          }
+        }
+        else {
+          if (CRM_Utils_Array::value('default_option', $params)
+            && isset($params['option_value'][$params['default_option']])
+          ) {
+            $params['default_value'] = $params['option_value'][$params['default_option']];
+          }
+        }
+       break;
     }
+
     $transaction = new CRM_Core_Transaction();
     // create any option group & values if required
     if ($params['html_type'] != 'Text' &&