Welcome to Solidres - A Complete Hotel Booking Solution for Joomla & WordPress

  • Solidres's Blog
  • News
  • Solidres 4.2.0 is here — 25 languages, dark mode, and our own Channel Manager

Solidres 4.2.0 is here — 25 languages, dark mode, and our own Channel Manager

Solidres 4.2.0 is out. It is a big one — not because of a single headline feature, but because it is the release where several things we have been building in the open all summer finally land in the stable channel at the same time: 25 languages, the new date picker, dark mode across the board, a spreadsheet-style Inventory grid — and the foundation the brand-new Solidres Channel Manager runs on.

The headline: your own channel manager, inside Joomla

4.2.0 is the minimum version for the Solidres Channel Manager, our own channel connection service: your property, room types and rate plans are created on the channel side for you, availability and rates sync both ways automatically, and channel bookings land in Solidres within seconds — all from your Joomla administrator, with no second dashboard and no second vendor. It launches today alongside this release.

We have written it up properly in its own post: Introducing the Solidres Channel Manager →

Two things in 4.2.0 exist because of it and are worth calling out here:

  • Channel restrictions — stop-sell, closed-to-arrival and closed-to-departure, per rate plan and per date, pushed to your channels like any other update. Close your channels on the dates you would fill anyway, and keep taking commission-free bookings on your own site.
  • The Inventory grid (new plg_solidres_inventory plugin) — availability, nightly rates, minimum and maximum stay and restriction flags for every room type and rate plan, laid out day by day in one screen. Edit cells inline, or bulk-update several date ranges across several room types and rate plans in a single pass, and everything saves through the normal Solidres pipelines. It is genuinely the fastest way to prepare a season, and it shows you exactly the numbers your channels see.

What you previewed with us, now shipping

Solidres speaks 25 languages. The translation effort we wrote about in July is in the box: every locale at full parity with en-GB across the component, the modules and every add-on plugin, with consistent terminology throughout — and the new Channel Manager, Inventory and Rate Plan strings translated along with everything else.

The modern date picker is everywhere. The zero-dependency range picker now covers the whole booking funnel, the search modules, the hub, the admin reservation form and the availability calendars, with an OTA-style occupancy popover on the search bar. Every remaining single-date field moved to Joomla’s own native calendar. The old jQuery UI engine is still there as the Legacy option, so nothing changes under you until you switch.

Dark mode across the component. The remaining hard-coded colours in the core stylesheets and the Lumina booking views are tokenised, with proper overrides under both prefers-color-scheme and Joomla’s own dark theme. Light mode is pixel-identical to before.

Fixes that matter

Roughly two dozen real bugs, several of which were blocking people outright:

  • Rate Plan: creating a rate plan with no check-in day restriction silently failed to save and reloaded the list with no message. It saves, and the editor now tells you when something goes wrong. Rate plans are also honoured everywhere again on a site that migrated off the legacy Complex Tariff editor — previously the frontend pricing pipeline quietly fell back to default-tariff-only mode and ignored them.
  • My Profile: a logged-in customer clicking My Profile got a 404. Fixed, and a customer can now only edit the profile row they actually own.
  • Availability calendar: the check-out diagonal disappeared for every reservation that spanned two months. It is back.
  • Dates shifting by a day: saving a date in an admin field could store the day before it, for anyone east of UTC. Fixed — calendar dates now round-trip exactly.
  • Router: SEF links built for a plugin-owned view could fatal outright. Experience links in particular now build correctly with no com_solidres menu item.
  • Update checker: it ran dozens of duplicate queries on every admin page load, refetched on every page when the update server was unreachable, and could cache an error response and read it back as pending updates. Rewritten, with a themed badge for the update notice instead of the old plain message.
  • File Verification (System view) works again, and now covers the frontend, media and API paths that never had checksums generated for them.
  • Uninstalling Solidres while add-on plugins and modules are still installed is now blocked, with the offending extensions listed, instead of silently stranding them.
  • Validation messages appear in your own language on every page that validates a form, not just the four that happened to load the locale file. 64 of Joomla’s 78 language tags now resolve.
  • Room type editor: deleting a room row from the Rooms tab worked again, and the add-row button has a label instead of a raw language key.
  • Hub: the embed form tab in the property editor rendered the wrong layout and had never run under Joomla 6. Rewritten in vanilla JavaScript, no jQuery, dark-mode safe.
  • Beds24: a booking the channel already collected payment for is now marked paid, with the amount mirrored into the payment history, and payment reminders no longer chase a settled booking.
  • Feedback: deleting a reservation with the Feedback plugin enabled was fatal. Fixed.
  • Sample data is now a single generated file, imported inside a transaction — a half-imported sample set used to leave you stuck with no way to retry.

Security

4.2.0 is also a security release. In summary, and without the detail that would help anyone reproduce them:

  • Image uploads are validated by extension against a hard allow-list and by decoding the actual bytes, rather than trusting what the browser said the file was.
  • The media manager now only accepts record field names from a per-type allow-list, checks a form token on every task, and requires edit or create rights rather than just the right to open the screen.
  • Frontend controllers that inherit from administrator controllers now publish an explicit list of permitted tasks and refuse everything else, so back-end methods are no longer reachable under a site task name.
  • Payment gateway callbacks got a systematic pass: signatures and secure hashes are verified before anything is written, an unconfigured shared secret counts as a failure rather than an exemption, every callback is bound to the reservation it names, retried callbacks change nothing, and the amount is checked against what is actually owed. This runs through a shared, unit-tested settlement path instead of being restated — or omitted — per gateway.
  • The refund endpoint requires a form token and a genuine refund right, and refuses a booking with nothing captured to send back.
  • Channel manager inbound deliveries are authenticated, and the channel console endpoints require a signed-in manager of that property plus a token.

Merchants running a gateway with no secure hash or shared secret configured should configure one before updating: those callbacks are now refused rather than trusted.

Update today

Solidres 4.2.0 needs Joomla 6 and PHP 8.4. Update from the Joomla updater as usual, or download it from your solidres.com account — the full changelog ships with the release.

If you are a subscriber, you already have the Rate Plan, Limit Booking, Front Desk and Dashboard plugins that the Channel Manager builds on. If you are not, a subscription is what brings them, along with the templates and support. And if selling on Booking.com, Expedia, Airbnb, Agoda or Vrbo from inside Joomla is what you have been waiting for, the Channel Manager is ready.

Trackback from your site.

All the things you need to make your work easier. Did you like Solidres?