Search Results for 'booking form'

WordPress Event Management, Calendars & Registration Forums Search Search Results for 'booking form'

Viewing 15 results - 736 through 750 (of 932 total)
  • Author
    Search Results
  • #9660

    In reply to: Multiple dates


    Stephen Harris

    Hi Barry,

    There isn’t a tag for listing all dates of an event, but you could use the following snippet to add a %my_event_dates% tag which lists all the dates of the event:

    add_filter( 'eventorganiser_email_template_tags', 'my_dates_email_tag', 10, 3 ); 
    function my_dates_email_tag( $parsed_message, $booking_id, $original_message ){
       //$parsed_message Email body with tags parsed
       //$booking_id The booking ID
       //$original_message Email body without tags parsed
    
       $event_id = eo_get_booking_meta( $booking_id, 'event_id' );
       $occurrences = eo_get_the_occurrences_of( $event_id );
       $formatted_dates = array();
       if( $occurrences ){
           foreach( $occurrences as $occurrence) {
                $formatted_dates[] = eo_format_datetime( $occurrence['start'] , 'jS F' );
           }
       }       
       $dates_list = implode( ', ', $formatted_dates );
       $parsed_message = str_replace( '%my_event_dates%', $dates_list, $parsed_message );
       return $parsed_message;
    }
    #9646

    Andrew Shankie

    Hi Stephen,

    One of my clients would like to be able to set separate booking notification addresses by event (or at the very least, by booking form). This is because they have a number of different event organisers who would like to receive notifications.

    Hope that makes sense…

    Andrew

    #9608

    Barry Meadows

    Sorry, I don’t know what you mean
    Here is the event: http://casaf.co.uk/events/event/coast-pamper-days/

    you can see at the top the three days are there, but on the booking form only the first on is available

    WHat am I missing?

    #9598

    Barry Meadows

    I didn’t think this could be a plugin conflict, but as per your advice I’ve gone through and identified a conflict: the ‘Page Management’ plugin by Premium Plugins. With this disabled the dates show.

    So I can now allocate the three days I need to, and these show on the event, but on the booking form the calendar shows, but only the first date is available – the others don’t show!

    As there are only three days it would be better as a drop down or check bix

    #9595

    In reply to: add on mechandize


    Stephen Harris

    Hi Wolf,
    Glad you like the plug-in.

    Currently you could create several tickets (with/without t-shirt) with different prices, and add t-shirt size field option (although this option would still appear to those not selecting the with t-shirt ticket).

    If you were to go down the manual HTML route (though I wouldn’t recommend it) you could use the ‘HTML’ form field, which allows arbitrary HTML to be added to the booking form. Or the ‘hook’ field which triggers a particular action (allowing you to hook onto that with a callback function).

    To adjust the booking total you could use the eventorganiser_pre_gateway_checkout_paypal filter, which filters the ‘cart’ that is sent to PayPal. Additionally you could adjust the booking amount using the filter eventorganiser_get_booking_meta_booking_amount (this adjusts what is seen on the bookings page / e-mails etc).

    To give you an idea of how to alter the cart sent to PayPal

    function my_alter_paypal_cart( $cart, $booking ){
        //$booking is an array. $booking['booking_id'] contains the booking ID
        /*
        $cart is of the form:
        $cart = array(
             'return' => //return url
             'item_name_0' => //Ticket name,
             'amount_0' => //Ticket price
             'quantity_0' => //Ticket quantity,
             'item_name_1' => //Ticket name (second ticket type),
             'amount_1' => //Ticket price (second ticket type),
             'quantity_1' => //Ticket quantity (second ticket type),
            ....
             'custom' => //custom data as query variables. e.g. booking_id=X&event_id=Y...
        );
        */
        //Adjust $cart and return it        
        return $cart;
    }
    add_filter( 'eventorganiser_pre_gateway_checkout_paypal', 'my_alter_paypal_cart', 5, 2 );

    Each ticket type being purchased appears as a separate item, and there’s no limit to the number of ticket types there could be. You would need to add another item after them with a name (e.g. “T-shirt”), price and quantity (1, probably).

    As you can see its not for the faint-hearted :).

    “Priced fields” (booking form fields which adjust the price of the booking) are on the road map – though there is currently no ETA for this feature.

    #9572

    Dario

    The top name and email fields are automatically shown if the user is logged out, and hidden if the user is logged in, with the idea that a logged-in user has already provided their name and email address. That information is then used to send out confirmation emails and display the name next to the booking in the admin screen.

    The lower name and email fields were added manually by you in the booking form customiser and should really be removed.

    I know that there’s a thread with the same question on the forums somewhere, but I can’t find it 🙁
    I think it addresses concerns over having some logged-in users that have incorrect email addresses and names associated with their accounts.

    #9571

    wolf wolf

    Hi great plugin just wondering what would be the best way to add on mechanise say a t-shirt into the booking form ..at piont of sale
    – does it play well with other ecommerce pluggins like woo commerce?

    or is it easer to hard code that into the booking form with html.. pic of t-shirt> size : select button – price.. how would I add an extra fixed cost object into that form.. mm

    #9565

    In reply to: Booking form


    Stephen Harris

    Hi Vilius,

    I’ll look into adding that first feature for 1.7 (at the very least it shouldn’t display “you’ve already booked” if they’ve not paid ;).

    Regarding the second proposal, in 1.7 I’ll be updating the booking form API to allow callbacks to be hooked onto the form validation to allow validity checks of data. This is already possible:

    function my_booking_validation_callback( $input, $form, $errors ){
    
            //Save custom booking meta
            foreach( $form->get_elements() as $element_id => $element ){
    
                $data = $input[$element_id]; //What the user entered for the form element $element_id;
                $type = $element->type; //The element type, e.g. 'phone'.
    
                //Add an error if you wish....
                $errors->add( 'my-error-code', 'This message appears on the form' );        
            }
    
        //If user input can be modified to ensure its correct, you can do so by changing $input.
        //but obviously you don't want to change the meanting of whats entered
    
        //Return $input.    
        return $input;
    }
    add_filter( 'eventorganiser_validate_booking_submission', 'my_booking_validation_callback', 10, 3 );

    (but 1.7 will make some changes to make this easier – all backwards compatible). Phone/post-code validation isn’t handled by EO because what is a valid telephone / post code varies wildly between countries – and if it included it, it’ll end up breaking something, somewhere :).

    #9564

    Topic: Booking form

    in forum General Question

    Vilius Metelionis

    Hi,

    Thank you in advance for your support. I have a few questions about the booking form:
    1. At the moment I have many customers who enter their details into the booking form and then exit the gateway without confirming their payment. The problem is that their bookings are registered as pending and once they return on the website again the booking form only notifies them that they have already made a booking but does not give an option to pay for the pending bookings. I was wondering how could I render a booking cart before the booking form?

    1. The gateway I am using requires valid telephone numbers and post codes – is it possible to add data validation for these particular fields before the user is allowed to submit the booking?

    Kind regards,
    Vilius

    #9552

    In reply to: Booking confirmation


    Dario

    Yes, that is correct, a booking is made as soon as the booking form is submitted and is valid.
    That booking is then assigned the “pending” status until the payment gateway returns confirmation of payment, which then changes to status to “confirmed”.

    The “reserve pending tickets” option counts “pending” bookings in the total number of tickets sold, and so makes sure that tickets aren’t oversold in the time that it takes someone to go through the payment gateway and change the booking status from pending to confirmed. This option is particularly relevant if you allow a slow payment method (eg offline payment, bank transfer) where you may have to manually confirm bookings or you have a large number of people booking simultaneously.

    The booking confirmation emails are only sent to the bookee once the booking is confirmed.

    If bookees abandon the booking after they submit it, but before they complete payment (as you described), then the booking will remain “pending” as the site will never receive a callback from the payment gateway.

    Stephen may have more to add to this explanation and may have suggestions for a workaround for you.

    #9535

    Stephen Harris

    We allredy had customers calls asking us how about the tickets pricing because they are only visible when cliked on the datepicker. This may be the right programmers-logic but not the expected behaviour.

    Totally agree on this – I had be meaning to address the problem that the datepicker opens on todays date, not the date of the next occurrence, which would much more useful (particular when booking long in advance). 1.6 is about to go out the door, but I think this is something that can be addressed fairly easily now – particularly since 1.6 brings a more structure javascript API.

    If there isn’t a ‘next event’, that isn’t an issue because the booking form shouldn’t display anyway.

    This is also ties in well with VAT (having tickets/prices automatically appear gives the VAT row some context!).

    Thank you for the feedback, and for posting your current solution 🙂

    #9524

    Adrian Maleska

    This one is crucial. We allredy had customers calls asking us how about the tickets pricing because they are only visible when cliked on the datepicker. This may be the right programmers-logic but not the expected behaviour. Usually tickets are on other websites visible right from the start.
    Also it may be confusing to find the right date that can be clicked. We’ve got workshops that reoccur in 3 months – then it’s neccessery to click three times forward to find that date. This is to much for the small brains of the most customers.

    In the moment we use this workaround that performs this trick with jquery. It’s placed in our child theme in eo-booking-form.php :

    //--------------------------------------------------------------------------------------------------
    //  Get the next occurrence date and click on it via jQuery to reveal tickets an pricing info
    //  Author: Augenpulver
    // -------------------------------------------------------------------------------------------------
        $this_event_id = $booking_form->get('event_id');                
        $next_event_occ_date = get_closest_occurrence_of($this_event_id); 
    
            if($next_event_occ_date)
            {
    
                echo "
                    <script type='text/javascript'>
    
                        jQuery(function() {
                            setTimeout(function(){
                                jQuery('#eo-booking-occurrence-picker').datepicker('setDate', '{$next_event_occ_date}');
                                jQuery('#eo-booking-occurrence-picker .ui-state-active').click();
                            }, 1000);
                        });
    
                    </script>
                ";
            }
            else
            {
                 if(current_user_can( 'manage_options' ))
                 {
                    $curr_debuginfo = __FILE__.__LINE__;
                    echo "
                        <script type='text/javascript'>
                            console.log('{$curr_debuginfo}');
                            console.log('Sorry, No next event found for event id {$this_event_id}');
                        </script>
                    ";
                 }
            }

    And the function:

    //--------------------------------------------------------------------------------------------------
    //  Returns the next occurrence of the current event 
    //  Author: Augenpulver
    // -------------------------------------------------------------------------------------------------
    
    function get_closest_occurrence_of($post_id)
    {
            $occur_array =  eo_get_the_future_occurrences_of($post_id);
            if($occur_array)
            {
                if($occur_array)
                {
                    foreach ($occur_array as $value) 
                    {
                        $date = $value["start"];    
                        $occur_datelist[] = $date->format('Y-m-d');
                    }
                    return $occur_datelist[0];
                }
                else 
                    return false;
            }
            else 
                return null;
    }
    
    // -------------------------------------------------------------------------------------------------

    Even if this works very fine it would be great to not be forced to fake around some day to achieve this.

    #9515

    Stephen Harris

    Hi Nicholas,

    Logged out users are required to provide a name and e-mail address regardless of whether an account is created for them. In a future update those form fields will be moved ‘inside’ the form customiser, but they won’t still be able to be removed. The e-mail address is required for e-mailing confirmations of bookings and the name so the %first_name% tag can be used.

Viewing 15 results - 736 through 750 (of 932 total)