Repository navigation
Releases: dsputa4197/wp-calendar-plugin
Release list
v1.3.1: Make "Refresh now" update the cache the site actually reads
Make "Refresh now" update the cache the site actually reads
The shortcode resolves the configured default URL itself before calling
WCAL_Feed::get_events(), but is_override() treated any non-empty URL as a
second calendar deserving its own cache keys. So the public page read
wcal_events_, while the settings page's "Refresh now" — which passes
no URL — primed plain wcal_events. A manual refresh reported the freshly
fetched event count while writing to a cache nothing ever read, leaving new
events invisible until the front end's own copy expired hours later.
is_override() now compares against the configured default instead of just
testing for emptiness, so resolving the default URL before handing it over
stays on the shared keys. Genuine per-shortcode overrides are unaffected.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
v1.3.0: Show every occurrence of repeating calendar events
Show every occurrence of repeating calendar events
Google publishes a repeating event as one VEVENT with an RRULE, not as one
VEVENT per occurrence. The parser read only the master, so a weekly or
monthly event appeared once and then vanished from the schedule for good
once its first date had passed — and "Refresh now" couldn't reveal that,
since it reported success unconditionally and discarded refresh()'s result.
- Expand RRULE (DAILY/WEEKLY/MONTHLY/YEARLY, INTERVAL, COUNT, UNTIL, BYDAY)
over a 24-month horizon, honoring EXDATE, RECURRENCE-ID overrides and
STATUS:CANCELLED. Monthly steps are anchored to the series start so a run
on the 31st skips short months instead of sliding onto the 1st. - Report the real refresh outcome: the event count on success, or the
underlying HTTP/parse error, noting that the last saved copy is still live. - Pin all-day events to midnight; they were inheriting the current time and
sorting into the wrong day. - Honor a DTSTART's own TZID rather than assuming the site's timezone.
- Drop the feed cache on version upgrade, so a parser change takes effect on
the next page view instead of up to wcal_cache_hours later.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
v1.2.1
Adds readme.txt (WordPress.org format), which fills out the wp-admin
"View version details" popup with a fuller description, an FAQ, and two
screenshots of the widget and settings page — previously that popup only
showed the plugin header's one-line description.
See CHANGELOG.md for details.
v1.2.0
New settings: Font (a curated list of system/web-safe fonts, applies to
all widget text — no external font files to load) and Text color (with
an automatically-derived muted tone for secondary text like addresses and
month labels). Both follow the same override pattern as the existing accent
color settings.
See CHANGELOG.md for details.
v1.1.3
Set Author to Comenium Consulting (https://www.comenium.info/).
v1.1.2
Fixes the update checker itself: it was configured to require a manually
uploaded zip on every release, which never actually got uploaded — so
updates would have silently found nothing to install. Now uses GitHub's
automatic per-tag source archive instead.
See CHANGELOG.md for details.
v1.1.1
- Renamed the plugin, admin menu, and shortcode to be generic
([calendar_schedule], previously[mass_schedule]— the old tag still
works as an alias, nothing embedded on an existing page needs to change). - Event-noun settings now default to "Event"/"Events" instead of a specific
example noun. - Hardened the per-shortcode
ics_urloverride to only accept
calendar.google.comURLs, closing a minor SSRF surface (any post author
could otherwise point the server at an arbitrary URL via a shortcode
attribute, since shortcode content isn't capability-checked at render time).
See CHANGELOG.md for details.
v1.1.0
- Self-updates via GitHub Releases.
- New settings: accent color, heading color, second-language month names
(None/Czech/Spanish/Polish/Vietnamese), and singular/plural event-noun
labels driving the "Next ..." flag and "Show more" toggle. - New
ics_urlshortcode attribute to show a second calendar on one page. - The widget heading is now optional — leave it blank for no title.
- Generalized defaults for public/multi-site use — a fresh install no
longer pre-fills any site-specific calendar or heading text; existing
installs keep their configuration unchanged via an upgrade routine. - Compact type scale and a native
<details>/<summary>"Show more" fold
for schedules spanning more than one month — no JavaScript. - Address line is de-duplicated when consecutive events share a location.
- Dropped the
prefers-color-scheme: darkvariant.
See CHANGELOG.md for details.