Solidres for Joomla 4.4.0 Stable
The highlight of this release is a rebuilt tourist tax. A property can now charge several tourist taxes, each with its own dated rates, rules for children and night caps. Guests see each tax by name, a tax collected at the desk is kept out of online payments, and a new report gives the figures a municipal return asks for. Existing settings are migrated when you upgrade.
Highlight: tourist tax
- Its own screen: tourist taxes are no longer a setting inside the property. They have their own list under System Info → Tourist taxes, and the property form's Set up tourist taxes button opens that property's taxes. A property can charge several taxes, each shown as its own line: a US city's percentage occupancy tax and flat per-room fee, for example.
- Every common regime: a tax is charged per person per night, per room per night, per person per stay or per booking. It can be a fixed amount or a percentage of the room price, taken before or including VAT and always after discounts. Children can be exempt or pay a reduced share by age. A tax can apply to the first nights of a stay only, and a percentage tax can be capped per person per night.
- Dated rates: you can enter next year's rate as soon as it is announced. Each night of a stay is charged at the rate in force that night, or at the rate on the check-in date where the authority requires that. Booked from keeps earlier bookings on the old rate, and a season is a rate with an end date. Add next year's rate copies the latest rate forward. The list and the edit screen warn when no rate covers the nights ahead.
- VAT on the tax: where the tourist tax is itself subject to VAT, guests see a separate "VAT on …" line.
- Paid at the property: a tax the guest pays at the desk stays in the booking total and reads "(payable at the property)". It is left out of everything charged online: full payments, deposits, an invoice's amount due and balance reminders. A booking paid in full online counts as settled.
- Shown by name: each tax has its own row, under the name the guest was quoted, in the room price preview, the confirmation step, Your stay, the reservation details, the booking e-mails, the invoice PDFs and the registration card.
- Staff override: staff amending a booking can set the amount of each tax and must give a reason. Entering 0 exempts the booking. The amount stays through later amendments, and clearing the override box goes back to the calculated tax. VAT is charged on the amount entered, at the tax's own rate.
- Tourist tax report: System Info → Tourist tax report shows each tax by month, quarter or year: bookings, taxed nights, guests at the full rate, at the reduced rate and exempt, untaxed nights, the taxable base, the tax, its VAT and how much was paid online and at the property. Each night is counted in the period it falls in, so a stay across a month end is split between the two months. Figures stay in the currency the booking was made in. The report exports to CSV.
- Several properties: Copy to property copies a tax and all its rates to another property. The copy is unpublished so you can check it first.
- Hub: partners set up their own properties' tourist taxes and view the report from the partner dashboard. This needs Hub 2.3.0.
- API: the reservation resource now includes the tourist tax breakdown, read-only: each tax with its per-night charges, and the part payable at the property. A single reservation can be read at
v1/solidres/reservations/{id}. - Correct amounts: the old calculation's errors are gone. The night cap works, per-person charges are multiplied by the nights, children are counted per room, and a blank child rate no longer makes a booking fail. Per-booking taxes are no longer shown once per room in the price preview.
- Languages & sample data: the new screens are translated into every language Solidres ships, tax names can be translated with FaLang, and the sample properties include example tourist taxes.
Booking & reservations
- Extras on phones: each extra in the room form is one row with a checkbox, name and quantity. Tapping the name ticks the extra, an extra that can be booked only once has no quantity list, and the Extras heading and Details are buttons that work with a keyboard.
- Price breakdown on phones: each night is a small tile showing the day and price, and the tiles wrap into columns, so a long stay no longer takes up most of the screen. The breakdown is no longer inside the room heading, so screen readers stop reading every price as part of the heading. Package rates show their package type.
- Cancelled at the gateway: a guest who cancels on the payment gateway's page now has the reservation cancelled, as the message they see says. Before, it stayed pending. A reservation whose payment is already confirmed is left unchanged.
- Approval: with Booking require approval on, reservations that staff add in the back end or the partner dashboard send the "pending approval" e-mail. They used to send "Your reservation is completed". Amending an approved reservation no longer sets it back to not approved.
- Guest changes: the customer dashboard and the tracking page now obey the property's Enable reservation amending and Enable reservation cancellation switches. Before, guests could amend or cancel even with both off. Cancelling also checks the property's cancellation deadline.
- Removing a deposit: typing 0 or clearing the deposit on the amend screen now removes it. The old deposit used to stay on the booking, and a later online payment charged it.
- Admin and Hub booking form: Load available rooms warns when no room is free for the selected dates. The general info block has a label above every field, including the date range, and the fields line up on an even grid.
- Customers: setting a customer's group back to Public or clearing their state now saves.
- Custom field files: guests whose e-mail address contains a plus sign can now download files uploaded through a custom field from their reservation e-mail.
Date picker
- Availability calendar: Select all shown, the week-number toggle and resizing the window no longer jump back to the current month. The calendar and its buttons now follow the administrator template's dark mode, not only the system setting.
- Coupons: the coupon start date opens one date picker instead of two.
- Lighter pages: the room type, reservation and customer profile screens and the Hub reservation form no longer load the jQuery UI date picker, which none of them used.
Accessibility, printing & dark mode
- Property page headings: layout styles 2 and 3 now use the same heading order as the default layout: H2 for "Your stay", "Available rooms" and each room type, and H3 for room facilities. They keep their previous look.
- Printing: printed pages always use light colours. On a device set to dark mode, pages such as booking tracking used to print pale text on white paper, with headings almost invisible.
- Booking form panels: the extras list and the price breakdown use the template's colours, so they display correctly in dark mode.
Administration
- Template override check: the System page compares each template override with the Solidres file it replaces, using the
@versionboth files carry. Only outdated overrides are shown in red. Before, an exact copy of an unchanged file was reported as outdated after every release, and a module override could never pass. Every file a template can override now carries a version. - Admin view overrides: template overrides of the Discounts admin screen, and of the Experience and Invoice admin screens, now take effect. They used to be ignored.
- Inventory: the Inventory menu item shows a notice when the Inventory plugin is not installed, instead of a "View not found" error. The System page lists the plugin.
- Extension plugin: removed the Facebook and Twitter options, which never had any effect. Each network keeps its own Show switch on the property.
- Command line: scheduled tasks started with
scheduler:runno longer fail in Solidres code that expected a web request.
Security
- Hub partner dashboard: a crafted link could turn off partner scoping on the extras, coupons, room types, discounts, invoices, housekeeping and limit booking lists and show another partner's records. Request parameters can no longer change that scoping.
- Approving reservations: the Approve buttons in the back end and the partner dashboard now carry a form token, so a crafted link cannot make a signed-in administrator or partner approve a booking. A booking is approved only once, so a double click no longer sends every e-mail twice.
Installation & packaging
- Add-on packages: iCal, Invoice and Channel Manager now ship as Joomla packages, like Hub, Experience and Feedback. Each package installs, updates and uninstalls as a unit. Installing a package on a site that already has its extensions takes them over, with nothing to migrate.
- iCal 3.1.0: the iCal plugin and its sync task plugin.
- Invoice 2.1.0: the Invoice plugin and its balance reminder task plugin.
- Channel Manager 4.1.0: the Channel Manager plugin and its sync task plugin. An update never re-enables a Channel Manager that an administrator has disabled.
- Discount: the Discount plugin (1.0.2) installs on sites without the Experience plugin.
Before you upgrade
- Tourist tax migration: during the upgrade, each property that had tourist tax switched on gets a tourist tax of its own, with one open-ended rate carrying its amount, age limit and night cap. The old setting is then switched off. After upgrading, open System Info → Tourist taxes and check each tax.
- Amounts change for "Per person per room": that charge type ignored the number of nights, and its night cap did nothing. It is now charged for every taxed night, and the cap works, so quotes for stays of more than one night go up.
- "Per person per stay": migrated as per person per night with nobody exempt, which is what it charged. If children should be exempt, set Exempt under age.
- Unusual setups: a setup that cannot be reproduced exactly, such as an adult rate of 0 with a child rate or a child rate above the adult rate, is migrated unpublished, with a notice naming the property. It charges nothing until you review and publish it.
- Past bookings: keep the tourist tax they were charged. They have no night-by-night breakdown, so the report counts them under Without breakdown.
- Complex Tourist Tax plugin: if you use it, its yearly rates are imported as dated rates, and the System page warns while it is enabled. After checking the imported rates, disable and uninstall it.
- Requirements: Hub 2.3.0 and Invoice 2.1.0 need Solidres 4.4.0. Update Solidres first.
- Template overrides: the room form, extras, price breakdown, confirmation, reservation details and booking e-mail layouts have changed, and the System page flags overrides that need updating. An e-mail override made before 4.4.0 keeps showing a single tourist tax line until it is updated. On property layout styles 2 and 3, headings moved from H4/H5 to H2/H3, so check any custom CSS that targets them.
Solidres_Core_Package_v4.4.0.zip
- File size
- 3.67 Mb
- SHA1 Signature
- 07ca490d2e5e042982ab25ad7631f714dd6c74d6
- Compatibility