diff --git a/README.md b/README.md index 393880e..e9c37c6 100644 --- a/README.md +++ b/README.md @@ -10,4 +10,11 @@ 6. Updating an events description via caldav creates weird sequences, e.g. a space ends up as: text/html,%C2%A0": 7. In a private window, Click on event from not-logged-in calendar page shows event as a dialog box, it should show it as a panel with a subset of the edit event panel - i.e. the title, category, location, start and end and description. - -8. Thunderbird cutting/pasting/moving events is - TBD. +8. Thunderbird cutting/pasting/moving events is - TBD.# + + +## Enhancements + +Calendar sidebar, hide description if there is one, but present an expansion "caret". + +List mode view, list or configure data range of display. diff --git a/code/calendar-plugin.php b/code/calendar-plugin.php index b37b95d..dd771ff 100644 --- a/code/calendar-plugin.php +++ b/code/calendar-plugin.php @@ -3,7 +3,7 @@ * Plugin Name: Calendar Plugin * Plugin URI: https://chezstephens.org.uk * Description: Provides a single shared calendar for WordPress with public display, authenticated event editing, user approval workflow, ICS publishing, and CalDAV read/write sync. Supports recurring events, single-occurrence exceptions, admin setup and diagnostics pages, and shortcode rendering for full calendar and upcoming-events sidebar views. - * Version: 1.0.1 + * Version: 1.0.2 * Requires at least: 6.0 * Requires PHP: 8.1 * Author: Adrian Stephens (with AI assistance) diff --git a/code/src/Plugin.php b/code/src/Plugin.php index cc66c90..4896357 100644 --- a/code/src/Plugin.php +++ b/code/src/Plugin.php @@ -1019,7 +1019,7 @@ HTML $end = (string) ($item['occurrence_end'] ?? ''); $startDt = $this->toSidebarDateTime($start, $sidebarTz); $endDt = $this->toSidebarDateTime($end, $sidebarTz); - $dateLabel = $startDt !== null ? $startDt->format('j F Y') : substr($start, 0, 10); + $dateLabel = $startDt !== null ? $startDt->format('l j F Y') : substr($start, 0, 10); $timeLabel = ''; if ($startDt !== null && $endDt !== null) { $startTime = $startDt->format('H:i'); @@ -1422,7 +1422,7 @@ HTML return [ 'status' => 'ok', 'plugin' => 'calendar-plugin', - 'version' => '1.0.1', + 'version' => '1.0.2', 'db_prefix' => $this->db->getPrefix(), ]; }, diff --git a/compatibility-layer/e2e_wp_emulation.php b/compatibility-layer/e2e_wp_emulation.php index 471c044..0c3d393 100755 --- a/compatibility-layer/e2e_wp_emulation.php +++ b/compatibility-layer/e2e_wp_emulation.php @@ -340,7 +340,20 @@ $sluggedCalendarHtml = do_shortcode('[calendar]'); assert_true(str_contains($sluggedCalendarHtml, 'href="/events/calendar.ics"'), 'calendar shortcode should use slugged ICS path'); assert_true(str_contains($sluggedCalendarHtml, 'href="/events/caldav/"'), 'calendar shortcode should use slugged CalDAV path'); +unwrap( + request('POST', '/calendar/v1/events', [ + 'title' => 'Sidebar Weekday Event', + 'description' => 'sidebar date label', + 'start_datetime' => '2026-05-03T09:00:00+01:00', + 'end_datetime' => '2026-05-03T10:00:00+01:00', + 'repeat_type' => 'none', + 'repeat_interval' => 1, + 'repeat_range_mode' => 'none', + ]), + 'create sidebar weekday event' +); $sidebarHtml = do_shortcode('[calendar_sidebar_upcoming]'); assert_true(str_contains($sidebarHtml, '