CRM-14824 fix intemittant bug on priceset processing
authorEileen McNaughton <eileen@fuzion.co.nz>
Mon, 9 Jun 2014 14:10:19 +0000 (02:10 +1200)
committerEileen McNaughton <eileen@fuzion.co.nz>
Wed, 3 Sep 2014 10:30:59 +0000 (22:30 +1200)
CRM/Price/BAO/PriceSet.php

index 1c4ed9675a3f11a171c8e0761d3af1ab8dcef2b6..621f2aac281089e5c29ca782950da7b0ec4941bb 100644 (file)
@@ -658,9 +658,10 @@ WHERE  id = %1";
 
       switch ($field['html_type']) {
         case 'Text':
-          $params["price_{$id}"] = array(key($field['options']) => $params["price_{$id}"]);
+          $firstOption = reset($field['options']);
+          $params["price_{$id}"] = array($firstOption['id'] => $params["price_{$id}"]);
           CRM_Price_BAO_LineItem::format($id, $params, $field, $lineItem);
-          $totalPrice += $lineItem[key($field['options'])]['line_total'];
+          $totalPrice += $lineItem[$firstOption['id']]['line_total'];
           break;
 
         case 'Radio':