Latest News: MIDAS v4.30 Out Now | Refer-a-Friend | We Stand With Ukraine

Category: Development

Limit the number of bookings a user can make for any given period
Limit the number of bookings a user can make for any given period

For MIDAS v4.30 we’ve improved the range of options available for the “Maximum bookings allowed” setting.

This is a per-user setting which allows administrators the ability to restrict the number of bookings that a particular user can make during a given period.

First introduced in v4.11, initially, this setting only allowed an administrator to set a maximum number of bookings each user could add to any individual date.

For v4.15, the setting was expanded to include an alternative “per Week” option allowing restrictions to be placed on the maximum number of bookings a user could add to any given week.

With MIDAS v4.30, we’ve now added a further two options to this setting – Month and Year.

The addition of these two new options now allows administrators to easily limit the maximum number of bookings a user can make to any date, week, calendar month, or calendar year.

Two New Invoice Tools

For MIDAS v4.30 we’ve added a couple of new “Database Tools” to our software.

The “Database Tools” in MIDAS allow administrators to perform operations on the software’s database.

For example an administrator could “merge” similar client records, “merge” bookings from two or more venues into a single venue, remove inactive clients or users, and more.

The two new Database Tools we’ve added for v4.30 are…

“Unfinalize” Invoices

To understand what the “Unfinalize Invoice” tool does, we first need to understand what a “Finalized” invoice is.

In MIDAS, whenever a new invoice is generated (or manually created), it’s contents may be freely edited up until the point at which the invoice is either first printed or emailed to the client.

Once an invoice has been either printed or emailed to the client, MIDAS assumes that the invoice has been “Finalized”, and protects its contents from further editing (other than updating its status/paid amount).

This is done to ensure that the invoice that has been printed/emailed matches the invoice stored in the system.

Without this protection, it would be possible for an invoice to be printed/emailed and sent to the client, and then for a user to change the items, quantitates, or charges included on it. At which point the invoice the client received would be different to the invoice held in the system.

So to prevent this, MIDAS “Finalizes” (locks) invoices once they are first printed/emailed.

Now, there may be some rare circumstances where you need to modify the contents of an existing invoice instead of issuing a new invoice or a credit note.

To that end, we’ve now included an “Unfinalize Invoice” tool.

We don’t encourage the regular use of this tool, for the reasons outlined above. But in exceptional circumstances, this will allow an administrator to remove the “Invoice Date” from a previously “Finalized” invoice, allowing it’s contents to be fully editable again.

Remove Obsolete Invoices

Similar to the “Remove Obsolete Bookings” tool (which allows an administrator to removes ancient bookings from the system), the “Remove Obsolete Invoices” tool does something very similar, but for invoices.

By default, MIDAS retains invoices indefinitely, and many organization’s financial procedures require that they keep records for a number of years.

But if you’ve been using MIDAS for many years, do you really need to retain invoices that were paid over a decade ago!? Probably not! – That’s where the “Remove Obsolete Invoices” tool comes in.

You select a period (6 months – 10 years) before which invoices that were paid in full should be removed from the database.

For example, selecting the “5 years ago” option would remove all invoices that were paid in full at any time before today’s date 5 years ago.

Removing obsolete invoices – and indeed bookings – using these tools are a great way of keeping your database running efficiently.

The “Booking Request” features of MIDAS, allow people to check venue availability and submit booking “request” for your rooms.

By default, all booking “requests” must then be approved by a venue’s administrator (manager) before becoming a “confirmed” booking.

Back in MIDAS v4.27, we introduced an option to allow booking requests that were received from certain email addresses/domains to be be “Auto-Approved“.

“Auto-Approved” booking requests do not require a manager’s authorization. As soon as the request is received, it it automatically approved by MIDAS – just as if the user have made a regular “confirmed” booking.

For v4.30 we’ve extended the “Auto-Approve” options for booking requests to now allow requests to alternatively be automatically approved based upon the “type” of booking request that has been made.

Auto-Approve Booking Requests Based Upon Their Type
Auto-Approve Booking Requests Based Upon Their Type

With this option enabled, booking requests that have had a matching booking type selected at time of requesting will be automatically approved.

All other booking requests will still require a venue manager’s approved as before.

So for example, you could configure this option so that all “internal” booking requests are to be automatically approved, where as all others require approval.

In MIDAS v4.30 we’ve introduced a new “Send invoices in compatibility” option.

In this post, we’ll look at why such an option was needed…

Now, back in MIDAS v4.26 we made some changes to improve the way that invoices were rendered.

This involved updating some of the HTML code that MIDAS uses to display invoices to user newer standards.

Prior to v4.26, invoices were laid out using HTML “tables”. Using tables allowed data to be set out in columns and rows. This allowed a dedicated “row” for each item on an invoice, and dedicated columns for its description, quantity, rate, etc.

Since v4.26, MIDAS has instead used a more modern CSS “grid” layout. This allowed invoices to better adapt to fit different screen widths.

However, whilst all the browsers we support also support CSS “grid” layouts, sadly not all email clients do!

To our surprise, some editions of Outlook and Gmail don’t support CSS grid layouts. Instead, they actually modify any emails they receive so that when they are displayed any CSS grid layout information is “stripped” from them!

There is really no logic to this, or indeed consistancy!

For instance, Gmail’s “desktop” webmail strips out CSS grid information, but their “mobile” webmail doesnt!

Another example if Outlook; if you view an email using the Windows Outlook client, the CSS grid information is removed. If you view the same email using the MacOS Outlook client, the CSS grid information is retained!

Other popular email clients, including Thunderbrid and Apple Mail support CSS grid layouts without issue.

You can find a current list of which email clients support (or otherwise) CSS grid layouts here.

The result is that if you view an emailed invoice from MIDAS, how that invoice is presented depends very much on the recipient’s email client.

To illustrate, take a look at the following invoice….

A MIDAS invoice emailed to a client as viewed in Thunderbird
A MIDAS invoice emailed to a client as viewed in Thunderbird
A MIDAS invoice emailed to a client as viewed in Outlook
A MIDAS invoice emailed to a client as viewed in Outlook

Above is the exact same invoice viewed by two different mail clients. The first (and correctly displayed) uses Thunderbird to view the invoice. The second views the same invoice via outlook.com.

As you can see, because outlook.com strips out any CSS grid information from the HTML email, the result is that the email doesn’t display as intended. Rather than Description, Quantity, Rate, Tax, and Amount all being in separate columns, Outlook’s removal of the important CSS grid information causes these items to be displayed on separate rows instead!

We are at a loss to explain why certain email clients decide to “strip” out and remove CSS grid layouts, especially when CSS Grid Layouts are an official W3C specification, and supported by all modern browsers.

However, to work around this issue, we’ve now introduced a “Send invoices in compatibility” option. You’ll find this setting via MIDAS Admin Options → Manage MIDAS → Email → Advanced.

With this option enabled, MIDAS will revert to using HTML “tables”, rather than a CSS grid layout for invoices emailed through the system.

So if you have clients who aren’t able to view invoices you send them correctly, then enabling this setting should help.

We hope going forward that popular email clients – including Outlook and Gmail – will review their stance on not supporting modern layout standards – such as CSS grid. There’s really no reason not to support CSS grid. This is especially true for web-based email clients, where the client’s own browser support’s CSS grid, but the email client forcibly removes this information from emails.