Category: Development

New Custom Links Addon

MIDAS has a growing range of optional “addons” available. These extend the capabilities of your booking and scheduling system with additional features and functionality.

To coincide with the v4.17 update to MIDAS, we’ll also be launching a brand new “Custom Links” addon. This new optional addon is based upon feedback we’ve received from some of our customers.

Customers have expressed the desire to be able to add their own custom links after the standard “Logout”, “Change Password”, “Help” and “Full Screen” links underneath the main date near the top of the screen when logged in:

Standard links when logged into MIDAS
Standard links when logged into MIDAS

Our new “Custom Links” addon allows administrators to do just that! They can add up to three additional custom links for logged-in users:

MIDAS Custom Links Addon
MIDAS Custom Links Addon

Administrators can specify the URL to the web page or resource to link to. A name for the link as it will appear on screen can also be set. Furthermore, administrators can specify whether each link should open in a new tab/window, or within the main booking grid area:

Custom link to Wikipedia opened within MIDAS
Custom link to Wikipedia opened within MIDAS
Custom link to an Accuweather forecast opened within MIDAS
Custom link to an Accuweather forecast opened within MIDAS

A note about opening custom links in the booking grid area:

Some 3rd party websites prevent their content from being directly embedded within other websites/apps. In such instances, you would need to specify that your custom link opens in a new window instead.

As mentioned, the new Custom Links addon is expected to become available with the upcoming release of v4.17. In the meantime be sure to also check out some of our other exciting addons available for MIDAS at https://mid.as/addons


Improvements to Booking Types

The next update (v4.17) to our room booking and resource scheduling system, MIDAS, is just around the corner. So we’re giving you a first look at some of the new features and improvements in v4.17.

In this post, we’ll look at the improvements coming to “booking types”. Booking Types allow you to color-code bookings based on their “type” making them easier to spot in the booking grid. Furthermore, you can assign discounts to each booking type. This allows charging different rates depending upon the type of booking.

You can also set booking types to be “tentative“. Bookings assigned as “tentative” will automatically be removed if not confirmed in a timely manner.

This time last year, for v4.14, we introduced the ability to set a default booking type on a per-client basis. For v4.17, we’re also giving you the ability to specify a global default booking type. If set, then any bookings added without a booking type being specified, will automatically be assigned the default type. This is especially useful if you’ve “hidden” the booking type selector from view, as you can still assign bookings a default booking type.

Additionally, following customer feedback, we’re making it possible for you to limit which booking types are available for selection on the public web request/booking screens. Many organizations have “internal” booking types/classifications. They may not wish to make these available for selection by external clients. This new feature will allow this to be achieved!

You’ll find the new “Public?” and “Set as Default?” options on the Manage Booking Types screen. This may be accessed via MIDAS Admin Options → Manage Booking Types. These settings can be set independently for each of your booking types. If a booking type is set as being the default, this will be indicated by an “*” after its name in the “All Booking Types” list.

Set Booking Types as Public and/or Default in MIDAS
Set Booking Types as Public and/or as the Default type

Custom Resource Categories

So it’s been a little while since we last blogged. But that’s because we’ve been busy working away on the next update to our room booking and resource scheduling software, MIDAS.

Over the next few posts, we’re excited to give you a first look at some of the new features and improvements in this forthcoming update.

First up – Custom Resource Categories!

“Resources” are additional items/services you can add to your bookings. Until now, resources have been split into three distinct categories; “Equipment”, “Staffing”, and “Consumables”.

The differences between each of these three categories are outlined below:

Equipment:

Resources categorized as “Equipment” are those which are charged per booking, irrespective of the length of a booking. For example, a Flip Chart may be added to this section, as its charge would be the same for 30 minutes or 2 hours. The “Quantity Available” allows you to define how many flip charts are available site-wide at any one time. So, if you own 5 flip charts, set the “Quantity Available” to 5. MIDAS will then not allow more than 5 flip charts to be in-use at the same time.

Consumables

Resources categorized as “Consumables” are those which would only be used one-time, and cannot be reused. For example, paper for a flip chart could be classed as a consumable. The “Quantity Available” figure is very fluid in this category. For example, you may have bulk purchased 100 flip chart paper pads. You would therefore set the “Quantity Available” to 100. However, unlike the other categories, whenever consumables are added to a booking, the remaining “Quantity Available” of that resource decreases by the amount added. So once all 100 flip chart pads have been used, they will no longer be able to be added to any further bookings. That is, until your stocks are replenished, and the “Quantity Available” updated accordingly. Consumables, like Equipment, are charged per booking.

Staffing

Staffing is a section to list human resources you have available to clients. These are charged per hour when added to bookings. For example, you may have 3 AV Technician’s on staff, with an hourly rate of $40. Adding these details to the Staffing section of resources allows your staff to be allocated to bookings with the client charged accordingly.


Following requests from a number of our users, for MIDAS v4.17, we’re adding more flexibility. You can now add your own custom resource categories to compliment the three default categories:

Custom Resource Categories in MIDAS
Custom Resource Categories

This will be beneficial to organizations with large numbers of resources. Resources can now be broken down into smaller groups.

Each custom resource category you add can be named, and resources assigned to it accordingly. You can also specify how resources assigned to the category should behave in terms of billing and remaining quantities. Items in custom categories can behave as either Equipment, Consumables, or Staffing for these purposes.

When adding resources to bookings, additional tabs will be shown on the Add Resources dialog for each of your custom categories:

Adding Resources From Custom Categories to Bookings in MIDAS
Adding resources from custom categories to bookings

We believe this new feature offers even more flexibility in managing your resources along with your venues in MIDAS!

You can become more familiar with how “Resources” work within MIDAS in our short video tutorial:

How To Setup Resources & Add Them To Bookings

How to setup resources and add them to bookings

Upcoming New Features in the MIDAS API

To coincide with our next release of MIDAS, v4.16, we’ll also be releasing an update to the optional MIDAS API.

Our optional API access addon offers a programmatic and bi-directional interface to a MIDAS scheduling system.

The API can be used to extract data from a MIDAS system. This data can then be processed and used within your website and applications.

The API can also be used to make changes to settings and data within a MIDAS system. For instance, the API could be used to automate the adding of new bookings.

Or, the API can be used to interface MIDAS with other 3rd party software apps…. the possibilities are near endless!

API

To further increase the power and usefulness of the MIDAS API, we’re adding a couple of significant features in the forthcoming API update:

NEW: Command Line Support

Until now, all calls to the API had to be made via HTTP transactions. With the next update, you’ll also be able to make API calls directly from the command line! (self hosted editions only). API calls made in this way have the added benefit of being significantly more efficient and faster (assuming the call is made from the command line on the same server as the MIDAS system), as they do not require an HTTP transaction to be conducted.

To make API calls from the command line, simply call “api.pl” (located within your server’s MIDAS directory) and pass API parameters and values via command line switches.

For example, to retrieve the currently installed version of MIDAS from the Windows command line (cmd):

A MIDAS API call made from the Windows Command line (cmd)

…or from Windows PowerShell:

A MIDAS API call made from Windows PowerShell

NEW: Optional JSONP Support

By default, the MIDAS API outputs in JSON format. However following feedback from API users, we’re also introducing optional JSONP support with the next update to the API.

If you don’t know what JSONP is, then you probably don’t need it!

JSONP is a method commonly used to bypass the cross-domain policies in web browsers. Typically, modern browsers won’t allow you to make AJAX (Asynchronous Javascript) requests from one domain to another domain perceived to be on a different server.

For instance, if your MIDAS system is running on server A, and you wish to make client-side API calls through Javascript, you would typically only be able to make such AJAX requests from pages residing on server A itself. Attempting to initiate an AJAX request for server A from server B would be blocked by the user’s browser.

JSON and JSONP behave differently on the client and the server. JSONP requests are not dispatched using the XMLHTTPRequest and the associated browser methods. Instead, a <script> tag is created, the source of which is set to the target URL. This script tag is then added to the DOM (normally inside the element).

JSONP support in the MIDAS API (which is disabled by default) can be enabled via the API settings screen.

WARNING: Before enabling JSONP support, you should instead look to use CORS (Cross Origin Resource Sharing) wherever possible, as JSONP has inherent security risks as it injects Jasacript code directly into your web pages

With JSONP support enabled, you’d then be able to pass the name of a Javascript function in a “callback” parameter along with your API calls.

Consider a simple API call to retrieve the version number of MIDAS (passing the “action” parameter with a value of “get_setting“, and a “setting” parameter with a value of “version“). The typical JSON response would be:

{"version":"4.16"}

Now consider the same API call, with JSONP support enabled, and an additional “callback” parameter passed with a value of “myfunction“. The JSONP response would then be:

myfunction({"version":"4.16"})

The “callback” parameter must contain the name of an existing Javascript function on the calling page.

Upon receiving the JSONP response, the user’s browser will execute the “myfunction” Javascript function, passing the JSON data {"version":"4.16"} to it accordingly.