CRM-14778 set name by default on price_field & price_field_value
authorEileen McNaughton <eileen@fuzion.co.nz>
Tue, 3 Jun 2014 11:49:58 +0000 (23:49 +1200)
committerEileen McNaughton <eileen@fuzion.co.nz>
Tue, 3 Jun 2014 11:49:58 +0000 (23:49 +1200)
CRM/Price/BAO/PriceField.php
CRM/Price/BAO/PriceFieldValue.php
api/v3/PriceField.php

index 89598bf8c6e050ad3472458479134855c8b57338..a1c27d965d16dd7e95806537478d932914c43063 100644 (file)
@@ -81,6 +81,9 @@ class CRM_Price_BAO_PriceField extends CRM_Price_DAO_PriceField {
    * @static
    */
   static function create(&$params) {
+    if(empty($params['id']) && empty($params['name'])) {
+      $params['name'] = CRM_Utils_String::munge($params['label'], '_', 242);
+    }
     $transaction = new CRM_Core_Transaction();
 
     $priceField = self::add($params);
index 218374732685bd9e613b87eb6a49120c76b4cb3e..0690f8358acb6eae2e113dea5b99df8384415e32 100644 (file)
@@ -50,7 +50,7 @@ class CRM_Price_BAO_PriceFieldValue extends CRM_Price_DAO_PriceFieldValue {
    * @access public
    * @static
    */
-  static function &add(&$params, $ids) {
+  static function add(&$params, $ids = array()) {
 
     $fieldValueBAO = new CRM_Price_BAO_PriceFieldValue();
     $fieldValueBAO->copyValues($params);
@@ -79,11 +79,14 @@ class CRM_Price_BAO_PriceFieldValue extends CRM_Price_DAO_PriceFieldValue {
    * @access public
    * @static
    */
-  static function create(&$params, $ids) {
+  static function create(&$params, $ids = array()) {
 
     if (!is_array($params) || empty($params)) {
       return;
     }
+    if(empty($params['id']) && empty($params['name'])) {
+      $params['name'] = CRM_Utils_String::munge($params['label'], '_', 242);
+    }
 
     if ($id = CRM_Utils_Array::value('id', $ids)) {
       if (isset($params['name']))unset($params['name']);
@@ -188,14 +191,13 @@ class CRM_Price_BAO_PriceFieldValue extends CRM_Price_DAO_PriceFieldValue {
    *
    * @param  int    $fieldId    Price field id
    *
-   * @return boolean
    *
    * @access public
    * @static
    */
   static function deleteValues($fieldId) {
     if (!$fieldId) {
-      return FALSE;
+      return;
     }
 
     $fieldValueDAO = new CRM_Price_DAO_PriceFieldValue();
@@ -231,13 +233,12 @@ class CRM_Price_BAO_PriceFieldValue extends CRM_Price_DAO_PriceFieldValue {
    * @param   String $entityTable entity table
    * @param   String $financialTypeID financial type id
    *
-   * @return bool
    * @access public
    * @static
    */
   static function updateFinancialType($entityId, $entityTable, $financialTypeID) {
     if (!$entityId || !$entityTable || !$financialTypeID) {
-      return FALSE;
+      return;
     }
     $params = array(
       1 => array($entityId, 'Integer'),
index 7901b7dd5e4657dd81fbaedc0f86d2e8ecdd5993..1fdbe9800d1582ee11ed12d49e366b4af984f65f 100644 (file)
@@ -57,6 +57,7 @@ function civicrm_api3_price_field_create($params) {
  * @param array $params array or parameters determined by getfields
  */
 function _civicrm_api3_price_field_create_spec(&$params) {
+  $params['label']['api.required'] = TRUE;
 }
 
 /**