From: Andrew Engelbrecht Date: Fri, 19 Jan 2018 02:16:08 +0000 (-0500) Subject: revert commit that modified getRecurDetails() X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=f6776aaf2121fde24a274b2db4d23412a3b6b228;p=civicrm-core.git revert commit that modified getRecurDetails() we aren't quite sure what this was supposed to do, but this patch was breaking our site, and it now works with these changes reverted. --- diff --git a/CRM/Contribute/Form/ContributionBase.php b/CRM/Contribute/Form/ContributionBase.php index 9399f5c10e..0d4bd1b266 100644 --- a/CRM/Contribute/Form/ContributionBase.php +++ b/CRM/Contribute/Form/ContributionBase.php @@ -1367,11 +1367,7 @@ class CRM_Contribute_Form_ContributionBase extends CRM_Core_Form { $this->_params['is_recur'] = $this->_values['is_recur'] = 1; // check if price set is not quick config if (!empty($this->_params['priceSetId']) && !CRM_Core_DAO::getFieldValue('CRM_Price_DAO_PriceSet', $this->_params['priceSetId'], 'is_quick_config')) { - // based on Lisa's commit 520680c63f7b886643e80c2400d9e9b6f1a1fd52 - // Extract the ids for all of the line items that have been - // chosen. - $priceFieldValueIds = array_keys($this->_lineItem[$this->_params['priceSetId']]); - list($this->_params['frequency_interval'], $this->_params['frequency_unit']) = CRM_Price_BAO_PriceSet::getRecurDetails($this->_params['priceSetId'], $priceFieldValueIds); + list($this->_params['frequency_interval'], $this->_params['frequency_unit']) = CRM_Price_BAO_PriceSet::getRecurDetails($this->_params['priceSetId']); } else { // FIXME: set interval and unit based on selected membership type diff --git a/CRM/Price/BAO/PriceSet.php b/CRM/Price/BAO/PriceSet.php index b985a45002..e31d0ce273 100644 --- a/CRM/Price/BAO/PriceSet.php +++ b/CRM/Price/BAO/PriceSet.php @@ -1467,18 +1467,13 @@ GROUP BY mt.member_of_contact_id "; * @return array * associate array of frequency interval and unit */ - public static function getRecurDetails($priceSetId, $priceFieldValueIds) { - // Escape the array of ids. - foreach ($priceFieldValueIds as $index => $id) { - $priceFieldValueIds[$index] = CRM_Utils_Type::escape($id, 'Integer'); - } + public static function getRecurDetails($priceSetId) { $query = 'SELECT mt.duration_interval, mt.duration_unit FROM civicrm_price_field_value pfv INNER JOIN civicrm_membership_type mt ON pfv.membership_type_id = mt.id INNER JOIN civicrm_price_field pf ON pfv.price_field_id = pf.id - WHERE pf.price_set_id = %1 AND pfv.id IN (' - . implode(',', $priceFieldValueIds) . ') LIMIT 1'; + WHERE pf.price_set_id = %1 LIMIT 1'; $params = [1 => [$priceSetId, 'Integer']]; $dao = CRM_Core_DAO::executeQuery($query, $params);