2

I have an online registration with a donation-based registration fee (zero to any amount is accepted).

Everything works great until I change the Payment Processor of the event registration. When I change it, the continue button of the registration form disappears as long as there is no donation amount entered, which then does not allow the user to register without donating anything.

I've set up 2 completely identical events, besides their Payment Processor to demonstrate the issue:

The good one: https://terranova.tamera.org/en/civicrm/event/register?reset=1&id=1945

The missing button one: https://terranova.tamera.org/en/civicrm/event/register?reset=1&id=1946

Another thing to mention, is that the 2 Payment Processors are completely identical except for the PayPal's 'Pay' button image url, and their name.

My question is, what makes the continue button disappear in the 2nd one?

2
  • 1
    When I click the link of the missing button one. I see a button after I have filled in an amount. May 9, 2018 at 11:41
  • yes, exactly, but ONLY then. The idea was to allow registration even without any amount entered, because it is a donation, and one does not have to donate anything.
    – Elad
    May 9, 2018 at 16:19

3 Answers 3

1

The missing button is there - it just has display set to none. It looks like there is a bunch of javascript on the page that hides various things, then reshows them - but I'm guessing behaves differently for different payment processors.

The issue looks to be the javascript is using .prop to reshow the element.

      $('.crm-submit-buttons input').prop('disabled', false);

This function was added to jQuery in 1.6 but it looks like you are using jQuery 1.4.4. If you are able to use a more recent version of jQuery you should hopefully see the missing button load. There are a number of solutions documented here:

To easily update your jquery you can use this module to check if it resolves the issue. https://www.drupal.org/project/jquery_update

2
  • If this is a jquery version, I still don't get why it works on a different payment processor. Anyway, I updated the jquery version to 1.9 and it still doesn't work, link to see updated jquery on dev: dev.terranova.tamera.org/en/civicrm/event/…
    – Elad
    May 9, 2018 at 10:55
  • Sorry dashed off the above in a rush last night - you are right and the above is for the input as well not the button! Given the comment above re it appearing when you fill out the form I'm guessing unfortunately this is a feature... I guess you could hack out some JS to show the button but not ideal. May 10, 2018 at 5:59
0

This is still an issue, im sure subject matter experts at Civi would know how to solve the issue: more information in post continue button missing for free event registration

continue button missing for free event registration

0

I am answering this because the problem remains at least up to 5.48.2.

I have worked around the problem by adding the following code as an HTML block in the profile used on that page. It runs a function every three seconds that checks to see if the page value is $ 0.00, and if it is, unsets the "display: none" value that has been given to the continue button.

<script>
      function myFunction () {
        var node = document.getElementById('pricevalue');
        var nodetext = node.innerText;
        if (nodetext == "$ 0.00") {
            document.getElementById("_qf_Register_upload-bottom").style.display = ""
        }
      }
      setInterval(myFunction, 3000);
</script>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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