1

In Civi 4.6.12 I am testing recurring PayPal Pro payments for a membership.

A simple recurring contribution works OK once CRM-16698 in place.

However when testing with a new membership, no option for auto-renew appears. CRM-17197 fixed a similar issue when a price-set is used. Any suggestions for fixing this without a price-set?

Thanks, Chris

  • I've found that enabling Pay Later on the contribution page is what is stopping the "Please renew my membership automatically" checkbox to appear. Does that sounds right? With an optional auto-renew, I'd simply expect opting for pay later to disable this checkbox. In 4.6.14 this is around line 927 in CRM/Member/BAO/Membership.php With Pay Later disabled, the checkbox is readonly (even though Auto-renew is optional for the membership) - not tracked down why this is yet. – chriscant Mar 24 '16 at 15:18
2

Chris,

I just tested this on my site, and you're right.

If you have the "Pay Later" option selected, the auto-renewal checkbox does not appear.

The checkbox should always appear, and then when the page goes through verification if 'Pay Later' is selected, and the 'auto-renew' box is selected, that should throw an error to the user.

I've created an issue report on this:

https://issues.civicrm.org/jira/browse/CRM-18299

  • Thanks. There's also the problem of the checkbox being readonly and checked when auto-renew is optional which I'm seeing on 4.6.14, which also needs sorting. I haven't had a chance to look at this any more yet. – chriscant Mar 26 '16 at 14:59
  • Sorry, ignore my last comment: I must have accidentally chosen Required at some point in my testing. – chriscant Mar 29 '16 at 8:58
  • In JavaScript I can untick and hide the auto-renew box (and show it again). However I don't know where the verification happens server side. Here's an addition toggleConfirmButton() in crm/contribute/form/contribution/Main.tpl ie before the line if (flag === true) { if( processorTypeId==0){ cj("#auto_renew").prop('checked', false ); cj("#allow_auto_renew").hide(); } else { cj("#allow_auto_renew").show(); } – chriscant Mar 29 '16 at 14:50
  • I added the patches as shown in issues.civicrm.org/jira/browse/CRM-18299 and the auto-renew option now displays properly. The system will throw an error if auto-renew and pay later are both selected by the user. – Neil Z Apr 1 '16 at 13:27
  • Just a note that this behavior has always existed: See issues.civicrm.org/jira/browse/CRM-14924. – Jon G - Megaphone Tech Apr 1 '16 at 14:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.