Support

Home Forums Event Espresso Premium Unable to register for Members only tickets

Unable to register for Members only tickets

Posted: January 4, 2016 at 2:09 am


Matt Coffman

January 4, 2016 at 2:09 am

Hi

I am working on a site where there is a need for some tickets to be free for members. I have a role called “Member” which has “read” capability and have set a ticket for that priced zero. However, if a logged in Member tried to register then they get a message:
An error has occurred:
You need to select a ticket quantity before you can proceed.

Any ideas what could be the issue? (have already updated to the latest version of the plugin)


Tony

  • Support Staff

January 4, 2016 at 4:44 am

Hi Matt,

Can you link to an event we can view this on please?

I will need to login to see the ticket, if you could send temporary login details using this form:

https://eventespresso.com/send-login-details/

I’ll take a look.


Matt Coffman

January 4, 2016 at 6:03 am

Hi there — I just sent you the login info for the Member user so you can see the behavior. Do you need an admin user as well?

Here’s the link where I’m seeing the behavior:

http://69.195.124.73/~ifmanash/events-detail/developing-leadership-that-matters/


Matt Coffman

January 4, 2016 at 6:09 am

Additionally, if I actually go in and attempt to register for an event, when I click “Finalize My Registration”, I see the spinning gear icon and the event registration never resolves.

If you can help me figure out how to make it so members of the site can register for their events at their correct role level as well as having event registrations fully complete, that would be a huge help. We’re trying to take the site live this week and these are the last complications we have to iron out. Thanks!


Tony

  • Support Staff

January 4, 2016 at 6:41 am

An error has occurred:
You need to select a ticket quantity before you can proceed.

The members ticket is not available with that user account, it should show up as another ticket on the ticket selector which the user needs to select a ticket for.

That’s why the error message is shown, as no tickets have been selected.

Can you take a screenshot of the ticket capability and post it here please?

You’ll need to host the image and post the link or usea service such as monosnap, we have some examples here:

https://eventespresso.com/wiki/troubleshooting-checklist/#screenshots

Additionally, if I actually go in and attempt to register for an event, when I click “Finalize My Registration”, I see the spinning gear icon and the event registration never resolves.

The registration does work it just takes a really long time.

We’ve seen this happen with some mailserver setups and recommend using a transactional email service such as Mandill or PostMark. You emails will then be send through their server which are generally much quicker.

You can read more on those services here:

https://eventespresso.com/wiki/postmark-app-mandrill-transactional-email-handling-services/


Matt Coffman

January 4, 2016 at 7:01 am

Would speed of our overall host plan also affect speed of registration? I’ve been surprised to see how many resources EE requires — if I upgrade to a higher level VPS would that speed up the registration process (and I would do this in addition to adding a transactional email service)?


Lorenzo Orlando Caum

  • Support Staff

January 4, 2016 at 8:08 am

Hi Matt,

The slow down appears to be happening towards the end of registration checkout which is when Event Espresso uses wp_mail which then triggers the local mail server to send out those notifications.

Try temporarily turning off the messages system through Event Espresso –> Messages –> Settings. There will be a toggle on this page.

Then try another test registration. Does it then process much faster?

If so, then a transactional email service can help as they’ll take over sending emails from the local email server. Some of the services also offer a free tier. For example Postmark app offers 25,000 emails for free and Sendgrid offers 12,000 per month for free.


Lorenzo


Matt Coffman

January 4, 2016 at 8:43 pm

Regarding the issue I initially posted about, I have set the user capability to “read”. Please see this screenshot:

http://69.195.124.73/~ifmanash/wp-content/uploads/2016/01/Edit-Event—–IFMA-Nashville—–WordPress.png

Please advise how to resolve the issue of the ticket option not appearing for my users who are set to role “member”. Thank you.


Tony

  • Support Staff

January 5, 2016 at 3:09 am

Hmm, that should be working fine.

The user account provided, is that a ‘subscriber’ or a custom role you have created with the ‘read’ capability? It shouldn’t matter (both are working for me) but I’m just trying to narrow this down a little.

If I set a ticket to use a cap that my account does not have – http://take.ms/fETa5

Then view the tickets, I get this – http://take.ms/27Pf1

If I then set ‘read2’ to just ‘read’, update the event and refresh the page I get this – http://take.ms/0UE1J

That’s using both a Subscriber member and also a user with a ‘Member’ role using only the read cap.

Are you using the latest version of the WP Users Integration add-on? (currently 2.0.8)


Matt Coffman

January 5, 2016 at 7:26 am

The version of the WP Users Integration add-on is 2.0.8.p

The Member role is a custom role with the “read” capability.

Please advise.


Matt Coffman

January 5, 2016 at 7:43 am

I’m confused how it’s working for you — I’ve created a new event and followed that capability setting first to read, then tried read2, then back to read — none work to allow a logged in member to see the Member ticket as something they can attempt to purchase for the event.


Lorenzo Orlando Caum

  • Support Staff

January 5, 2016 at 9:14 am

Hi Matt, could you send a temporary WP-admin login via the link below?

https://eventespresso.com/send-login-details/

Also, go ahead and update Event Espresso 4.


Lorenzo


Matt Coffman

January 5, 2016 at 9:21 am

I just submitted the requested User account info.


Tony

  • Support Staff

January 5, 2016 at 9:43 am

I looked into this and within your themes functions.php file you have a custom function for dealing with capabilites on the EE tickets which is causing this.

I commented out the hook:

add_filter( 'FHEE__ticket_selector_chart_template__do_ticket_inside_row_ifma', 'maybe_restrict_ticket_option_by_cap_ifma', 10, 9 )

Refreshed the event page and the ticket showed up fine. Remove the comments and refresh and the ticket no longer shows again.

So its an issue caused by that function, did you add that yourself?


Matt Coffman

January 5, 2016 at 9:44 am

Also, I see the current version as 4.8.29.p in the header of the EE site, but I can’t see version 4.8.28 when I go to my /users/myusername page on EE to download it. Where do I get it?


Tony

  • Support Staff

January 5, 2016 at 10:00 am

The download will always be the latest version of the plugin there, the version 4.8.28 version number shown on the button was taken from cache, I’ve cleared this and you should now see the correct version number on the button.


Matt Coffman

January 5, 2016 at 11:09 am

With that function, I was trying to make it so the display of the ticket is conditional and only able to be purchased if a user is logged in as a Member. I believe I found that code in the EE support forum or someplace else — it was a few months ago I was working on that.

How would you go about setting things up so that the “Members” ticket is only able to be selected and then registered/purchased if a Member user is logged in? We really need this to minimize confusion for our not-so-technical members.

Thanks for your assistance.

Note also, I’ve upgraded to version 4.8.29


Tony

  • Support Staff

January 5, 2016 at 1:41 pm

It looks like a modified version of the WP Users function which does the same.

So you want to completely remove the ticket from the ticket selector rather than displaying it is unavailable without logging in?

Using just the capability set within ticket prevents users selecting the ticket unless logged in, which sounds like what you are asking?


Matt Coffman

January 5, 2016 at 1:59 pm

I would like to have the ticket for which someone must be a Member to somehow not be available with a notice saying something like what we had before — “This ticket is available to members only.”

Is there a way to conditionally display something like that message/warning if a person isn’t logged in or isn’t a “Member” with read rights?


Tony

  • Support Staff

January 5, 2016 at 2:28 pm

Event Espresso does that by default when using the WP User Integration add-on (which you are)

You set a minimum require capabiliy within the ticket and that ticket will only be available to users that have that capability assigned to them (logged out users don’t have capabilities)

However you are also customizing the ticket selector and loading your own version of the template, I’m assuming to try and do the same check within the template? That’s what is breaking the capabilities setup, the custom code you have running is not working as expected.

To test this I once again edited your functions.php file and commented out:

add_filter ('FHEE__EE_Ticket_Selector__display_ticket_selector__template_path', 'ifma_custom_ticket_selector_template_location');

The ticket selector then works as expected (as its using the template from code), here is how it looks when logged out – http://take.ms/0Afrt

Then when removing the comments again (loading your custom template) this happens – http://take.ms/O433k

You’ll need to remove your custom code that is trying to hide the tickets for logged out users, it seems to be doing the exact opposite of what your expecting. The default behavior for EE when using the WP Users Add-on as described is what you have asked for above so this should not need custom code.

The support post ‘Unable to register for Members only tickets’ is closed to new replies.

Have a question about this support post? Create a new support post in our support forums and include a link to this existing support post so we can help you.

Event Espresso