Repository navigation
Bookingistic v2.5.5
Bookingistic v2.5.5
Bookingistic 2.5.5 fixes a functional break on sites using plain permalinks — the WordPress default on every fresh install: all REST calls from the booking form and the admin calendar failed with "No route was found matching the URL and request method." The attached zip is the exact package submitted back to the WordPress.org review team.
The bug
Under plain permalinks, rest_url() returns a query-string form (…/?rest_route=/bookingistic/v1/). The JavaScript concatenated endpoint paths and parameters directly onto that string (…?rest_route=/bookingistic/v1/calendar/events?from=…), corrupting the rest_route value, so every REST request — booking-form availability, booking submission, the admin calendar — returned rest_no_route.
The fix
Both scripts (assets/frontend/js/booking-form.js, assets/admin/js/admin.js) now build endpoint URLs through an apiUrl() helper that appends the route to the base and joins parameters with ? or & depending on whether the base already carries a query string. Works identically under pretty (/wp-json/…) and plain (?rest_route=…) permalinks.
Verification performed (on a clean-install site running plain permalinks)
- Admin Calendar loads and renders the month grid; the
calendar/eventsREST call returns HTTP 200 (no "No route" error). availabilityendpoint returns 200 with the same URL construction the booking form uses.POST bookingsreaches the route and returns a proper validation response (422 bad_email) instead ofrest_no_route— proving route resolution.- Unit-level assertion of the URL join for both permalink forms.
- Standard fresh-install suite: activation with no "unexpected output", cron events scheduled, settings save works, Plugin Check 0 errors / 0 warnings. Standalone tests 32/32; PHP 8.0–8.3 lint clean; JS syntax-checked.
Upgrade notes
- No database changes — a safe one-click update from 2.5.x.
- Compatibility: WordPress 6.4+, PHP 8.0+, any permalink structure.
Release assets
| File | What it is |
|---|---|
bookingistic-2.5.5.zip |
The WordPress plugin. Upload it under Plugins → Add New → Upload Plugin. |
SHA256SUMS.txt |
Checksums for every file. |
Verify with sha256sum -c SHA256SUMS.txt after download.