Support

Home Forums Event Espresso Premium Multiple Event Registration – complex

Multiple Event Registration – complex

Posted: August 21, 2013 at 9:00 am


Dawne Morison

August 21, 2013 at 9:00 am

hello,

I’m using WP version 3.6, Event Espresso is 3.1.34.1.P, several add ons including multi event mgr.

I have several events in my clients calendar: http://www.brightspotplayplace.net/calendar-2/

however, there is a very complex system of registration and I’m not sure it’s possible to do with Event Espresso.

What I need to do, is allow a customer to register for each class as one day per week for the series of 8 weeks. For example Delighted Discoverers meets on Monday & Tuesday. Customers can purchase Monday classes or Tuesday classes or both. That seems like no problem, putting an “add to cart” button for each day, removing the registration forms, etc.

However – customers can enroll at any time in the series and pay a prorated price for the remainder of the weeks. Is it possible to Have a customer register for all 8 weeks, and show as registered for each class, as well as register during week 6 and show for the remaining 2 classes in the series?

Sorry if this is confusing!


Sidney Harrell

August 21, 2013 at 8:15 pm

I think you could use a multiple event add-to-cart shortcode, [ESPRESSO_CART_LINK event_id=”17-18-19-20-21-22″ direct_to_cart=1 moving_to_cart=”Redirecting to cart…”], to add the 8 week series to the cart. But you’ll have to use an advance copy of EE 3.1.36. It has a bug fix in it so that when someone goes to use the link and some of the events have already passed, it won’t break the cart. That way, someone who waited until week 6 to sign up would get the last two sessions in their cart.


Dawne Morison

August 22, 2013 at 4:17 am

Worth a shot! How can I go about installing EE 3.1.36? And is it stable enough not to put any of my other events at risk?
Thank you so much for your help, Sidney!


Sidney Harrell

August 26, 2013 at 2:04 pm

You can download it from here. It should be fairly stable. Most of the work that is going into the iterations of 3.1 are bug fixes, mostly minor.


Ron Opher

September 24, 2013 at 3:20 pm

I am having a similar issue, as I wanted to create a bundle containing weekly classes throughout a season. However, at any given time some of the events are already passed, while others are not yet open for registration (because they open 6 weeks at a time). I tried installing EE 3.1.36 A as recommended. But I get two errors:

In the Dashboard I get one that reads “Plugin Update Engine is unable to setup correctly because there are the following keys missing from the options array sent to the PluginUpdateEngineChecker class when it is instantiated: • options_page_slug • plugin_basename”

And on the checkout screen when I choose the number of tickets for each item I get an error at the bottom that reads “An error occured, a valid price is required.”

If I try to proceed to the checkout screen I get an error about having not chosen the number of tickets, even though I did.


Ron Opher

September 24, 2013 at 3:57 pm

Update: I found and installed the Beta version of 3.1.36 from the other thread on this issue. Now I am not getting either error described. But the past events are still being added to the cart.


Sidney Harrell

September 24, 2013 at 9:29 pm

It needs a check on the events in the cart when it is updated to make sure that they are active events. I thought it had been fixed, but it’s easy to add. Open up includes/functions/cart.php and find line 158 and add the following, so that it then reads:

foreach ($events_in_session as $event_id => $v) {
  if (event_espresso_get_status($event_id) != 'ACTIVE') {
    unset($updated_events_in_session[$event_id]);
    continue;
  }
$event_cost = 0;


Sidney Harrell

September 24, 2013 at 10:30 pm

After some more research, I think the following is a better fix than the above. Starting on line 73 of includes/functions/cart.php change it so that it reads:

function event_espresso_add_event_process($event_id, $event_name) {

		do_action('action_hook_espresso_log', __FILE__, __FUNCTION__, '');


		if (event_espresso_get_status($event_id) != 'ACTIVE') {
			return false;
		}

		$_SESSION['espresso_session']['events_in_session'][$event_id] = array(

Then I noticed that if you pass an invalid event id in the add-to-cart shortcode, like 0, it breaks, so if you go into includes/functions/main.php and starting at line 345 change it to

$events = $wpdb->get_results($sql);
			if (empty($events)) {
				$event_status = array('status' => 'INVALID', 'display' => '<span style="color: #000; font-weight:bold;">' . __('INVALID', 'event_espresso') . '</span>', 'display_custom' => '<span class="espresso_deleted">' . __('Invalid', 'event_espresso') . '</span>');
				//print_r( $event_status);
				return $event_status;
			}
			$start_date = $wpdb->last_result[0]->start_date;

Both changes are insertions of code, so I’ve included lines that are before and after the inserted lines so you can orient where the inserted lines go.


Ron Opher

September 25, 2013 at 7:54 am

Thank you for the edits. I made these two changes to the code. I am adding a group of events to the cart, which includes events in the past, active events, and events not yet open for registration. The good news is that it is not breaking or generating errors, and it is not adding the events that are not open for registration. However, it is still adding events that are in the past to the cart.


Ron Opher

September 25, 2013 at 8:02 am

I found a solution – I can set each event to close registration after it is over. However, I still think that the plugin should check whether the event date itself has passed before adding it to the cart. When entering a series of weekly classes it’s more convenient to choose a single registration window for the block. Can you consider adding something that would check if the event itself is in the past?


Ron Opher

September 26, 2013 at 6:57 am

I don’t know what changed but I think I am back to square one as far as adding multiple events to the cart.

I made a button to add 12 events, 4-5-6-7-8-9-26-27-28-29-30-32 to the cart, where events 4 and 5 are already over and 26-32 will open to registration at a future date. Theoretically I want events 6, 7, 8, and 9 to go into the cart. But when I click the button I inexplicably get events 1, 7, 3, and 9 in the cart.

Please let me know if you have more suggestions for me!

The support post ‘Multiple Event Registration – complex’ 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