=== OpenCalendarKit === Contributors: voigtjo Tags: opening-hours, calendar, business-hours, shortcode, events Requires at least: 6.0 Tested up to: 6.9 Requires PHP: 7.4 Stable tag: 1.1.2 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Lightweight business-hours plugin for opening hours, status today, closed days, special opening times, and calendar events. == Description == OpenCalendarKit helps small websites show clear public opening information without turning the site into a booking system. It is a good fit for: * restaurants * cafes * studios * practices * local shops It helps you: * show recurring opening hours * show whether you are open today, opening later today, or already closed * manage closed days and exceptions * add calendar events for specific days * add special opening times for a single day * show a monthly calendar on the frontend * show a current event or special-opening card for today or a requested date * offer staff a simple login or backend link to the plugin screens OpenCalendarKit stays focused on public business information. It does not add reservations, appointments, ticketing, or other large workflows. Each calendar day can store one event. That event can be either: * a text event * a time event with special opening hours for that date For the daily opening logic, the priority is: 1. Closed day 2. Time event 3. Open exception 4. Normal weekly opening hours That means a closed day still wins, but a time event can override the regular weekday rule for that one date. Available shortcodes: * `[openkit_opening_hours]` * `[openkit_status_today]` * `[openkit_calendar]` * `[openkit_calendar_event]` * `[openkit_event_notice]` * `[openkit_admin_link]` The plugin ZIP includes the bundled language files from `languages/`, including `.pot`, `.po`, `.mo`, and JavaScript translation JSON files. == Installation == 1. Upload the `open-calendar-kit` folder to `/wp-content/plugins/`, or install it as a ZIP package in the WordPress admin. 2. Activate **OpenCalendarKit** through the Plugins screen. 3. Open **OpenCalendarKit** in the WordPress admin. 4. Configure settings, opening hours, closed days, calendar events, and the optional notice. 5. Place the provided shortcodes in pages, posts, or widget areas. == Frequently Asked Questions == = Is this a booking or reservation plugin? = No. OpenCalendarKit is intentionally focused on public schedule display. = What can I manage in the calendar area? = You can manage: * closed days * exceptional openings * one event per day * text events * special opening times for a single date = How do time events work? = A time event stores an opening time and an optional closing time for a specific day. It is useful for days that should have different hours than the normal weekly schedule. = What does the admin-link shortcode do? = `[openkit_admin_link]` gives staff a simple frontend link. If the user is logged out, it links to `wp-login.php` and redirects to the requested OpenCalendarKit backend page after login. If the user is logged in and has the `openkit_manage` capability, it links directly to the requested backend screen. Supported targets: * `calendar` * `opening-hours` Examples: * `[openkit_admin_link target="calendar"]` * `[openkit_admin_link target="opening-hours"]` = Can I theme it later? = Yes. The frontend stylesheet already uses CSS custom properties for day states, notices, and event callouts so later theme variants can build on a stable base. == Changelog == = 1.1.2 = - Fixed the calendar-events admin form so it stays a real POST form after admin HTML sanitization. - Preserved the event type selector and form attributes on the calendar admin page to prevent white-screen redirects on save. = 1.1.1 = * Added day-specific time events with opening and closing times in the calendar-events table * Updated the daily status logic to respect time events with the priority closed day > time event > open exception > weekly opening hours * Added the new `[openkit_admin_link]` shortcode for staff login and quick backend access * Updated frontend event output for special opening times * Clarified the public plugin description, shortcode overview, and feature summary = 1.1.0 = * Added simple day-based calendar events below the admin calendar * Added frontend event highlights and the `[openkit_calendar_event]` shortcode * Bundled German and French language files and JavaScript translation files * Prepared frontend CSS custom properties for future theme variants