• Hello,

    I’d like to customize how the plugin is displayed to users a bit more. Here are a few questions, just in case you have solution for them :

    1. In service selection (when in multi service mode), I can’t find a way to customize the “Read more” text (while I can customize almost everything else)
    2. I’d like a more compact view in multi service mode, each service takes a lot of height. I’d like to compact it by, for ex, putting the duration on same line than service title
    3. On the date/time choice tab (2nd), I’d like to be able to remove the first date selection input (the one which display a calendar when you click on it). I could do it with some CSS tricks but the fact they don’t have really specific class or id does not help (have to play with child-n / sibbling, not the most reliable)
    4. When a service can have multiple person (I set most of them to a min of 1, max of 2, each person can only book 1) and the name are displayed, there is a layout difference between slot without booking (text is vertically centered) and one with names (which fills the whole container and looks aligned on top). Could look better to have all of them vertically aligned on top, so time / available seats would be aligned the same, no matter if there is some name or not
    5. Still on the same tab (2nd), I’d like to have the duration of each service near the service title, it’d help to remember how long the slot is without having to display end time on all slot, which burdens the layout
    6. Last (but definitely not least) for the 2nd tab, I’d love to be able to set specific description / details on specific time slots. Right now I have to split them in multiple services. Being able to add specific description to some slot would solve this, but I do understand this looks like a big feature to implement.
    7. Would love a summary of all slots on the last tab, as while you scroll down to select slots in the 2nd tab, you hide the list of selected slot
    8. I don’t care about phone / comment. I ‘ve seen you integrated with contact form 7, but the example shows that you have to put them back. Once again I could hide them with some CSS, but would love a bit more customization option here.

    Thanks again for this awesome product ??

    • This topic was modified 4 months, 1 week ago by sp4rky35.
Viewing 15 replies - 16 through 30 (of 34 total)
  • Plugin Author WebbaPlugins

    (@webba-agency)

    Apologies for the confusion with step 7. Could you clarify where exactly you expect to see this list?

    Thread Starter sp4rky35

    (@sp4rky35)

    I would imagine an extra step before the final form. So basically workflow would change from :

    • choose services -> choose slots -> add personal information in form -> confirmation

    to :

    • choose services -> choose slots -> get a summary of all booked slots (either validate or go back to modify) -> add personal information in form -> confirmation

    Plugin Author WebbaPlugins

    (@webba-agency)

    Thank you again for your suggestion. We’ll discuss this with the team next days and I will let you know.

    Plugin Author WebbaPlugins

    (@webba-agency)

    Hello,

    First, thank you once again for your suggestions – they definitely help improve the product.

    Regarding point 7, after discussing it with the team, we decided not to include it. The reasons are:

    1) each additional step in the form can negatively impact the user experience, and
    2) we haven’t received similar requests from other customers.

    However, if you have any ideas on how to display the time slots list without adding a separate step, please feel free to share them!

    Thread Starter sp4rky35

    (@sp4rky35)

    Given the quality of your product (compared to the others I tried), that’s the least I can do ??

    I perfectly understand that, thanks for your (fast) answer anyway ! Maybe there could have a way to include it as part of the 3rd step, just at the beginning of the form ? As you support both default from and custom from contact form 7, I have no idea about how this could be easily done (shortcode ? filter ?)

    Plugin Author WebbaPlugins

    (@webba-agency)

    Just to confirm – should the list of time slots be displayed before the form fields?

    Thread Starter sp4rky35

    (@sp4rky35)

    I think so. It would looks nicer if it is “integrated” in the form layout, but having it just above seems much less work. My guess is to provide some filter with current submission data (ie, list of chosen timeslots), and display the result above the form. This way it does not change anything by default but allow people to customize the summary as they wish, without messing with the form itself (which seems much more complex)

    Plugin Author WebbaPlugins

    (@webba-agency)

    Thank you for clarifying. Same as for point 6 you can filter the template file of the booking form title

    $file_name = apply_filters(
    'wbk_template_file',
    $file_name,
    $template,
    $data
    );

    This is how HTML for the form title is prepared:

     $html = WBK_Renderer::load_template('frontend/form_title', [
    $service_ids,
    $time,
    $category_id,
    ]);

    Hope this helps.

    Thread Starter sp4rky35

    (@sp4rky35)

    I’m still playing with filter, works for my needs, thanks ??

    In meantime I noticed a small bug with summary in thank you message :

                        <li>
    <span class="list-icon-w">
    <img src="<?php echo WP_WEBBA_BOOKING__PLUGIN_URL . '/public/images/calendar-icon.png' ?>" alt="star">
    </span>
    <?php echo wp_date( $time_format, $booking->get_start(), new DateTimeZone( date_default_timezone_get() ) ); ?>
    </li>
    <li>
    <span class="list-icon-w">
    <img src="<?php echo WP_WEBBA_BOOKING__PLUGIN_URL . '/public/images/clock-black-icon.png' ?>" alt="star">
    </span>
    <?php echo wp_date( $date_format, $booking->get_start(), new DateTimeZone( date_default_timezone_get() ) ); ?>
    </li>

    I’d expect calendar icon for date, and clock icon for time ??

    • This reply was modified 2 months, 3 weeks ago by sp4rky35.
    Plugin Author WebbaPlugins

    (@webba-agency)

    Could you please clarify whether the issue is resolved in the code you provided?

    Thread Starter sp4rky35

    (@sp4rky35)

    Nop it isn’t, this is your code, unmodified. You can see than first image is “calendar icon” but format is $time_format, and the icon is clock but format is date format. I ‘d have expected calendar for date and clock for time ??

    Plugin Author WebbaPlugins

    (@webba-agency)

    Ah, thanks for this notice! We will include the fix in the next release.

    Thread Starter sp4rky35

    (@sp4rky35)

    Yw ! Btw, my point 7 is solved with a customer template like :

    if ( !defined( 'ABSPATH' ) ) exit;
    $services_ids = $data[0];
    $times = $data[1];
    $category_id = $data[2];

    // Build a service -> [list,of,times] dict
    $times_by_service = array();
    foreach ($services_ids as $slot_id => $service_id) {
    // Get existing slots for this service, if any
    $slots = $times_by_service[$service_id] ?? [];
    // Append this slot time
    $slots[] = $times[$slot_id];
    // and store it in array again
    $times_by_service[$service_id] = $slots;
    }

    $time_format = WBK_Format_Utils::get_time_format();
    $date_format = WBK_Format_Utils::get_date_format();
    foreach ($times_by_service as $service_id => $slots){
    $service = new WBK_Service( $service_id );
    if( !$service->is_loaded() ){
    continue;
    }
    ?>
    <h4><?php echo esc_html( $service->get_name() ) ?></h4>
    <ul>
    <?php
    foreach ($slots as $slot) {
    ?><li>
    <?php echo wp_date( $date_format, $slot, new DateTimeZone( date_default_timezone_get() ) ); ?>
    à
    <?php echo wp_date( $time_format, $slot, new DateTimeZone( date_default_timezone_get() ) ); ?>
    </li>
    <?php
    }
    ?>
    </ul>
    <?php
    }
    $html = WBK_Placeholder_Processor::process_not_booked_item_placeholders( $services_ids, $times, $category_id );
    if( get_option ('wbk_mode', 'webba5' ) != 'webba5' ){
    $html .= '<hr class="wbk-form-separator">';

    } else {
    $html = '<p class="first-text-w">' . $html . '<p>';
    }
    echo $html;

    ?>

    Still many improvements (no need 2 different date/time formatting for ex, and css is terrible), but it does work ??

    Plugin Author WebbaPlugins

    (@webba-agency)

    Happy to hear solution worked for you for the point 7:)

    Thread Starter sp4rky35

    (@sp4rky35)

    Hi again, noticed another small bug.

    On mobile, the code to define the next step name does not work on 3rd step.

    # in wbk5-frontend.js

    this.container.find('.current-step-w').html(acive_step_title)
    var next_li = this.container
    .find('.appointment-status-list-w > li.active-w')
    .nextAll('li')

    if (next_li.length > 0) {
    var next_text = this.container.find('.button-next-w').html()
    this.container
    .find('.next-step-w')
    .html(next_text + ': ' + next_li.find('.text-title-w').html())
    }

    As there is no else, the p.next-step-w content is not deleted / updated for last step (confirmation / submission), so when you’re on 3rd step, you still see a “Next : 3rd-step-name”

Viewing 15 replies - 16 through 30 (of 34 total)
  • You must be logged in to reply to this topic.