Just noting that this patch works for me on CiviCRM v5.69.2 and CiviDiscount v3.8.10. Thanks @JonGold!
@monish.deb could you please investigate the patch and merge if appropriate? Thanks @lottie !
Thanks @olayiwola_compucorp!
We will review this and merge appropriately.
Hey @nicol
We believe we have fixed this and will release a new version of the extension shortly. Thanks for the report!
Thanks for the confirmation @nicol
We will look into this.
Hey @nicol
Which version of CiviCRM are you using this extension with? Since CiviCRM 5.x, CiviCRM Grant has been moved into it's own separate extension, so could you please check if you have the CiviGrant extension installed?
@jamienovick we will be releasing a new version that makes the number of supported line items a configurable option as @JoeMurray suggests above.
This PR increase the number of supported line items from 10 to 50
Edselopez (d36e0b37) at 01 Jun 14:17
Merge branch 'Increase-line-items' into 'master'
... and 1 more commit
Thanks for this @jamienovick !
@seamuslee please review the MR and merge appropriately.
On a membership price set, it is possible to specify a mix of auto renewing memberships as well as non auto renewing memberships, but allow the selection of only one at a time (by virtue of it being a radio select). It seems CiviCRM doesn't know how to handle this properly, as it assumes that multiple options can be selected.
The code here https://github.com/civicrm/civicrm-core/blob/master/CRM/Price/BAO/PriceSet.php#L1290 seems to fetch the HTML type (which should be the deciding factor on if the payment processor is compatible with handling multiple concurrent transactions) but doesn't really do anything with it.
(I have tested this for PayPal - Website Payments Standard, but it should be replicable for any payment processor which doesn't support "MultipleConcurrentPayments".
Error shown when trying to save
"Price Set The membership price set associated with this online contribution allows a user to select BOTH an auto-renew AND a non-auto-renew membership. This requires submitting multiple processor transactions, and is not supported for one or more of the payment processors enabled under the Amounts tab."
The contribution form should recognize that the price field is a single select field, and therefore allow me to save the configuration.
Hey @JonGold
Ah, I think you're right. My use case was that one of our clients had all of the countries and state provinces enabled, and I was doing the lookup matching the state to the country on my own. They were using an ACF form for intake. What I found was that $countries = \CRM_Core_PseudoConstant::country();
did not give me the list of all the countries, so, when the formprocessor received a country which wasn't found in the $countries list, it failed to save the country to the database. It's strange that the limit that the default pseudoconstant imposed did not return all of the enabled countries, so I might have to take a look at that again.
Edselopez (7360949e) at 25 Jul 07:31
When a large number of state/provinces or countries are enabled in CiviCRM, the form processor should be able to recognize all of them. Instead, the default Pseudoconstant functions impose a limit, which in turn cause the form processors to break.
Edselopez (7360949e) at 08 Jul 08:52
Fixed pseudoconstant limit