• Hello! Love both, this and the booking manager plugin. They were exactly what we’re looking for. But I noticed a few issues (or limitations?) while trying to get the free version running on our site.

    1. The time of imported events from an Outlook365 shared calendar is always off by two hours. In the HTML view of the shared calendar, the events have the correct time. But as soon as they’re imported, they are all shown as original time + 2 hours. The WordPress site has it’s timezone set to Europe/Berlin. The same is done in synchronization setting of WP booking calendar. In the settings for “Date and Time Formats”, it’s showing the timezone of the server as UTC, WordPress timezone as Europe/Berlin. Am I missing something here, or is this a bug? As far as I know users don’t have any control over the output formatting of an Outlook calendar. Here is an example event from the ICS. In Outlook, it’s shown as 11:00 to 12:00 – which is correct. In WP booking calendar, it’s shown as 13:00 to 14:00.
    BEGIN:VEVENT
    UID:040000008200E00074C5B7101A82E00800000000DE271269F326DC01000000000000000
    010000000B531024AEAB38144A3A7F436C948665A
    SUMMARY:Gebucht
    DTSTART;TZID=W. Europe Standard Time:20251006T110000
    DTEND;TZID=W. Europe Standard Time:20251006T120000
    CLASS:PUBLIC
    PRIORITY:5
    DTSTAMP:20251002T103857Z
    TRANSP:OPAQUE
    STATUS:CONFIRMED
    SEQUENCE:0
    X-MICROSOFT-CDO-APPT-SEQUENCE:0
    X-MICROSOFT-CDO-BUSYSTATUS:BUSY
    X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
    X-MICROSOFT-CDO-ALLDAYEVENT:FALSE
    X-MICROSOFT-CDO-IMPORTANCE:1
    X-MICROSOFT-CDO-INSTTYPE:0
    X-MICROSOFT-DONOTFORWARDMEETING:FALSE
    X-MICROSOFT-DISALLOW-COUNTER:FALSE
    X-MICROSOFT-REQUESTEDATTENDANCEMODE:DEFAULT
    X-MICROSOFT-ISRESPONSEREQUESTED:FALSE
    END:VEVENT
    Imported event

    2. Some recurring events seem to be imported / handled as one continuous event from start date time to end of occurrence date / time, instead of treating them as a daily 9:00 to 11:00 event – thus blocking all time slots on each day of the occurrence.

    BEGIN:VEVENT
    RRULE:FREQ=WEEKLY;UNTIL=20251231T080000Z;INTERVAL=1;BYDAY=MO,TU,WE,TH,FR;WK
    ST=SU
    UID:040000008200E00074C5B7101A82E008000000008858E90C786DDB01000000000000000
    010000000F32FDBA8817B1247AF563E4C688F4D83
    SUMMARY:Gebucht
    DTSTART;TZID=W. Europe Standard Time:20250127T090000
    DTEND;TZID=W. Europe Standard Time:20250127T110000
    CLASS:PUBLIC
    PRIORITY:5
    DTSTAMP:20251002T103857Z
    TRANSP:OPAQUE
    STATUS:CONFIRMED
    X-MICROSOFT-CDO-BUSYSTATUS:BUSY
    X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
    X-MICROSOFT-CDO-ALLDAYEVENT:FALSE
    X-MICROSOFT-CDO-IMPORTANCE:1
    X-MICROSOFT-CDO-INSTTYPE:1
    X-MICROSOFT-DONOTFORWARDMEETING:FALSE
    X-MICROSOFT-DISALLOW-COUNTER:FALSE
    X-MICROSOFT-REQUESTEDATTENDANCEMODE:DEFAULT
    X-MICROSOFT-ISRESPONSEREQUESTED:FALSE
    END:VEVENT
    Imported event

    Other recurring events are blocking time slots / the whole day despite being set as “available” in Outlook. Example:

    BEGIN:VEVENT
    UID:040000008200E00074C5B7101A82E00800000000B3C11895CAC0DB01000000000000000
    01000000093AFACA27B9EF24B8B107F23E38DF11A
    SUMMARY:Frei
    DTSTART;VALUE=DATE:20251010
    DTEND;VALUE=DATE:20251013
    CLASS:PUBLIC
    PRIORITY:5
    DTSTAMP:20251002T103857Z
    TRANSP:TRANSPARENT
    STATUS:CONFIRMED
    SEQUENCE:0
    X-MICROSOFT-CDO-APPT-SEQUENCE:0
    X-MICROSOFT-CDO-BUSYSTATUS:FREE
    X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
    X-MICROSOFT-CDO-ALLDAYEVENT:TRUE
    X-MICROSOFT-CDO-IMPORTANCE:1
    X-MICROSOFT-CDO-INSTTYPE:0
    X-MICROSOFT-DONOTFORWARDMEETING:FALSE
    X-MICROSOFT-DISALLOW-COUNTER:FALSE
    X-MICROSOFT-REQUESTEDATTENDANCEMODE:DEFAULT
    X-MICROSOFT-ISRESPONSEREQUESTED:FALSE
    END:VEVENT
    Imported event
    == Server Environment ==
    Operating System: Linux
    Software: Apache
    MySQL version: mariadb.org binary distribution v11.7.2-MariaDB-ubu2004
    PHP Version: 8.2.29
    PHP Memory Limit: 8G
    PHP Max Input Vars: 1000
    PHP Max Post Size: 120M
    GD Installed: Yes
    ZIP Installed: Yes
    Write Permissions: All right
    Elementor Library: Connected

    == WordPress Environment ==
    Version: 6.8.3
    Site URL: https://xwd.x22889.de
    Home URL: https://xwd.x22889.de
    WP Multisite: No
    Max Upload Size: 120 MB
    Memory limit: 40M
    Max Memory limit: 8G
    Permalink Structure: /%postname%/
    Language: de_DE
    Timezone: Europe/Berlin
    Admin Email: [email protected]
    Debug Mode: Inactive

    == Theme ==
    Name: OceanWP Child Theme
    Version: 1.0
    Author: OceanWP
    Child Theme: Yes
    Parent Theme Name: OceanWP
    Parent Theme Version: 4.1.3
    Parent Theme Author: OceanWP

    == User ==
    Role: administrator
    WP Profile lang: de
    User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36

    == Active Plugins ==
    Booking Calendar
    Version: 10.14.6
    Author: wpdevelop, oplugins

    Booking Manager
    Version: 2.1.16
    Author: wpdevelop, oplugins

    Elementor
    Version: 3.32.2
    Author: Elementor.com

    Limit Login Attempts Reloaded
    Version: 2.26.23
    Author: Limit Login Attempts Reloaded

    Ocean Extra
    Version: 2.5.1
    Author: OceanWP

    Real Cookie Banner (Free)
    Version: 5.2.4
    Author: devowl.io

    UpdraftPlus - Backup/Restore
    Version: 1.25.7
    Author: TeamUpdraft, DavidAnderson

    WebP Express
    Version: 0.25.9
    Author: Bjørn Rosell

    WPForms Lite
    Version: 1.9.7.3
    Author: WPForms

    Yoast SEO
    Version: 26.0
    Author: Team Yoast

    Imported .ICS from Outlook365: https://pastebin.com/uhwaX618
    Exported .ICS from WP booking manager: https://pastebin.com/PDWB9nJx

    Could you please shed some light into these issues? Do you need additional details to debug this?

    Thanks
    Stefan

Viewing 6 replies - 1 through 6 (of 6 total)
  • Plugin Author wpdevelop

    (@wpdevelop)

    Hello.
    Thank you, for detailed description.

    1. Please set correct timezone on the WP Booking Calendar > Settings > Sync > Sync Options page. System gets Timezone from there, and not from the WordPress Timezone.
    2. It is because in your initial .ics feed the bookings defined as:
      RRULE:FREQ=WEEKLY;UNTIL=20251231T080000Z;
      DTSTART;TZID=W. Europe Standard Time:20250127T090000
      DTEND;TZID=W. Europe Standard Time:20250127T110000

      and it’s means that it’s time slots from 09:00 to 11:00 started on 2025-01-27 and repeated weekly and ended on 20251231

      Your other booking in your .ics feed has the other conditions
      DTSTART;VALUE=DATE:20251010
      DTEND;VALUE=DATE:20251013

      So it is full day booking.

      Booking Manager just import such bookings with those initial conditions.


      Kind Regards.

    Thread Starter TryAllTheThings

    (@roots84)

    1. Like I mentioned, this is already set correctly to Europe/Berlin. Sorry for the German, didn’t want to change my user profile language to not introduce additional issues.

    It is because in your initial .ics feed the bookings defined as:
    RRULE:FREQ=WEEKLY;UNTIL=20251231T080000Z;
    DTSTART;TZID=W. Europe Standard Time:20250127T090000
    DTEND;TZID=W. Europe Standard Time:20250127T110000

    and it’s means that it’s time slots from 09:00 to 11:00 started on 2025-01-27 and repeated weekly and ended on 20251231

    2. Sorry, I don’t understand. From the imported .ICS, the only time slots that should be blocked on 6.10.2025 are 9:00 to 11:00 and 11:00 to 12:00, but instead there are other, full day events that shouldn’t be there on this date. Here’s what it looks like in Outlook. Notice, that there is no full day event on 6.10.2025, only 2 busy events. One of which is recurring “Occurs every Monday, Tuesday, Wednesday, Thursday, and Friday effective 27.01.2025 until 31.12.2025 from 09:00 to 11:00”, one single busy event and 1 free event.

    And here’s the what’s shown in WP booking manager after importing. The event marked as “free” is blocking a time slot, and recurring events are counted as full-day despite all of them having fixed from-to times.

    Same week in Outlook.

    Your other booking in your .ics feed has the other conditions
    DTSTART;VALUE=DATE:20251010
    DTEND;VALUE=DATE:20251013

    Yes, but the busy status is free for that event but isn’t treated as such.

    X-MICROSOFT-CDO-BUSYSTATUS:FREE
    Plugin Author wpdevelop

    (@wpdevelop)

    Hello.
    1) Please try to set there “Default” timezone. And then test it.

    2) Can you provide the full ics feed content of ics feed so I can test more detail about this import?

    3) The Booking Manager does not mark the date as available if the statues in the ics feed is

    X-MICROSOFT-CDO-BUSYSTATUS:FREE

    such booking just will be marked as pending (it no other option defined to auto approve it).
    Kind Regards.

    Thread Starter TryAllTheThings

    (@roots84)

    Hello,

    Thanks for taking a look.

    1. Timezone behavior
      With the plugin timezone set to “Default,” events import at the correct times. When I select the correct explicit timezone (e.g., Europe/Berlin), the same events appear +2 hours off. This looks like a bug.
    2. ICS files
      I’ve uploaded both .ics files and included the links at the end of my initial post.
    3. Free/Busy handling
      Events marked as free are currently treated as busy and block the slot. From a user perspective, “free” shouldn’t block availability. If these items need to be imported for other features, could they either be ignored for availability by default or controlled via a setting?

    Happy to share anything else that helps. Thanks again for your support.

    Plugin Author wpdevelop

    (@wpdevelop)

    Hello.

    1. Regarding Timezone. Just set the default timezone.
    2. I will test more about this issue.
    3. Currently events can be imported into the Booking Calendar as a bookings (only) and each such bookings, is means that the dates becomes unavailable. I will add to the todo list ability to ignore of importing such events.

      Kind Regards.
    Plugin Author wpdevelop

    (@wpdevelop)

    Hello.

    Regarding point #2.

    2.1.) Enable the “Use selected times for each booking date” option on the WP Booking Calendar > Settings > Calendar > Calendar Settings page. This option is only visible if you have activated the Multiple or Range days selection mode, not the single day selection mode.

    2.2.) Update the Booking Manager to the latest version (2.1.17), which was just released. This update includes a fix for importing recurrent bookings that have time slots on each date, as opposed to check-in/out times only for the first and last dates.

    Kind Regards.

Viewing 6 replies - 1 through 6 (of 6 total)

You must be logged in to reply to this topic.