What’s a Custom Attribute #
Custom Attributes are a powerful extension point. You can add additional custom attributes to Reservations, Resources, Resource Types and Users.
Attributes can be configured as single line text box, a multi-line text box, a select list (drop down), a multiple option select list, a link, a date time, or a checkbox. They can be configured to be required or optional.
Textbox attributes allow an optional validation expression to be set. This value must be a valid regular expression. For example, to require a digit to be entered, the validation expression would be /\d+/
Custom attributes are available to plugins and can be used to extend the functionality of Booked.
Reservation Attributes #
Reservation attributes are collected during the reservation process.
User Attributes #
User attributes are collected when registering and updating a user’s profile.
Resource Attributes #
Resources attributes are collected when managing resources and will be displayed when viewing resource details.
Resource Type Attributes #
Resource Type attributes are collected when managing resource types and will be displayed when viewing resource details.
Limiting Attributes #
User, Resource, and Resource Type attributes can be limited to a single entity, meaning a specific user, resource, or resource type. These attributes have an Applies To property. If an attribute is configured to apply to a single entity then it will only be collected for that entity. By default all custom attributes will apply to everything in that category – so all users, resources, or resource types.
Reservation Attributes can be configured to collect an attribute value only for specific users or resources being booked.
Admin only attributes are only shown to users who have administrative privileges over that reservation.
Private attributes are only shown to the reservation owner and those users who have administrative privileges over that reservation.
Attribute Dependencies #
Reservation attributes can be dependent on other attribute values. Dependent attributes will only become available if their dependency criteria is met. For example, an attribute can become available only if another attribute has a specific value.
User Managed Reservation Attributes #
Reservation custom attributes offer a special attribute type of User Managed Select list. This works similar to a standard select list attribute, but each user is able to manage the available options for their account. This allows for more consistent data and a better user experience when requiring something that would otherwise by entered manually for each reservation.
Users can set the available options in their profile. Administrators may also include required options in the list by defining them when configuring the attribute.