CHANGELOG¶
v5.0.3 (2026-06-03)¶
Bug Fixes¶
404 on plus icon in condensed week schedule display (
c02df1a)Changes to the date formats for the german translation (
1486841)Grammar and spelling errors fixes for german localization (
5a5d5a1)Updated and added german translation for E-Mail-Templates (
cc9bcc6)auth: Block unsafe external redirect targets (
813c232)DeprecatedPHP8.5: Transforming null values to an empty string (
d4e2d44)reservation.label: Avoid null replacement in attribute label formatting (
6ff0ecc)reservations: Validate reservation owner on create (
bd087cd)schedule: Centralize render completion and auto-scroll (
2c58149)schedule: Improved accessibility in schedule labels (
adcc7a9)
Code Style¶
Documentation¶
Refactoring¶
reservation: UI improvements (
6ce75dc)
v5.0.2 (2026-05-04)¶
Bug Fixes¶
theme: Enhance color contrast for better accessibility (
5cf0301)
v5.0.1 (2026-05-03)¶
Bug Fixes¶
accessibility: Enhance UI elements with improved ARIA labels and visual hierarchy (
da4f60e)
v5.0.0 (2026-05-03)¶
Bug Fixes¶
Improve ‘Info’ string for
en_us(6773f92)config: Fix the default ‘x-xss’ value in config.dist.php (
a3a9414)config: Update default config.dist.php (
3e5b0aa)config: Use section-qualified env names for plugin config (
54bcd2c)datatables: Add data-order attributes for date in various templates (
b77a9d7)datepicker: Fix Flatpickr 1px calendar width on hidden date pickers (
259bc36)ldap: Suppress net_ldap2 deprecations during connect (
70e3b12)reservation-extensions: Update default list of allowed extensions (
03731ea)resource-types: Load custom attribute values without entity join (
f211492)schedule: Replace html2canvas with html2canvas-pro to support color-mix() (
740bee0)security: Remove obsolete X-XSS-Protection header support (
f594942)ui: Align schedule toolbar icons and update icon images (
6ea3ff1)
Documentation¶
Features¶
api: Add groupId filter to GET Resources endpoint (
37273ad)api: Return 404 for non-existent scheduleId in GET Resources endpoint (
ccb5d3d)config: Add .env.example generator from ConfigKeys metadata (
3375f28)config: Add config.dist.php generator from ConfigKeys metadata (
d4805e6)config: Add DeprecatedConfigKeys registry for removed config keys (
909f7f0)DatePickerSetupControl: Improved resolution of the alternative format and documentation. (
e9e6a3f)i18n: Add per-language string overrides (
67a22b8)schedule: Improve default schedule notification and highlight current calendar (
a3cc88c)
Refactoring¶
api: Extract helper to parse comma-separated positive integer IDs (
1e58e1d)availability: Simplify template using section config loop (
82f14da)config: Extract ConfigKeysMeta into its own file (
26c7219)config: Remove app version from ConfigKeys (
1c1f63e)date-helper: Use dateHelper.formatDate for date formatting in reservation.js (
4088480)FullCalendar: Update FullCalendar to v6.1 (
661db3d)inlineAttributeEdit: Simplify inline DATETIME editing with native Flatpickr (
14c3c95)ldap: Switch LDAP server config from host/port to uri (
bd01c04)reservation: Build PDF config in PHP (
5d74666)reservation: Migrate PDF generation to pdfmake (
10a2db0)schedule: Use of color-mix, legacy cleanup, and visual improvements (
ffebae5)
v4.3.0 (2026-04-03)¶
Bug Fixes¶
Allow special characters in passwords for user creation (
a903be1)Correct check-in status display in resource details popup (
ed3dcbc)Improve tooltip rendering and fix Smarty issues (
3eb0179)Show the Custom Attribute label name when deleting (
b1b06e5)Update the reservation email templates for various languages (
667ddc3)Update the reservation email templates for various languages (
e94ad11)admin: Prevent permission loss when DataTables paginates resources (
cec8823)auth: Use per-user database language when no language cookie is set (
b2437db)blackouts: Require repeat-until in recurrence UI (
8840ec0)blackouts: Require termination date for recurring blackouts (
4cda32d)calendar: Generate correct reservation detail URLs server-side for guest views (
25e2391)calendar: Pass correct groupSeriesByResource boolean instead of privacyFilter object (
5a7d9ee)config: Avoid empty buckets when rewriting legacy keys (
e091b3f)config: Make config key lookup case-insensitive (
822ccfe)config: Preserve existing config values when merging new keys from config.dist.php (
e2006d1)config: Reject case-insensitive key collisions (
eeea6f9)config: Restore legacy config key mappings (
74db95a)config: Rewrite legacy section keys into canonical sections (
64964cb)config: Treat empty-string section as unsectioned in GetKey (
7241c59)database: Make 2.9+ upgrades idempotent and raise DB minimums (
3f632d4)dataTable: Add default page size configuration and update DataTable length menu (
a959247)email: Correctly render reservation attributes in created emails (
0d2bce9)email: Honor secondary category in reservation email attributes (
42c98d5)email: Populate resource custom attribute values when loading reservation from DB (
5a9756e)email: Restore submitter language after sending approval notification emails (
e33a6ab)en_gb: Show only time in popup (
5999309)i18n: Add English fallback for 3 languages missing parent translation calls (
e202d44)i18n: Add English fallback for 8 languages missing parent translation calls (
4ee1ab8)i18n: Add missing embedded_datetime date format to en_gb locale (
a4e45d6)i18n: Replace HTML entities with UTF-8 characters in Italian locale (
a0c0f46)js: Add no-unused-vars rule, remove dead code, and fix bugs (
f009211)lang/es.php: Spanish translations (
1b91ad3)ldap: Install the ‘pear/net_ldap2’ library by default (
f3d225e)ldap: Require ‘ext-ldap’ (
e55e63a)registration: Resolve a server error when more than one attributes in the register page (
71a3f73)reports: Prevent chart modal from hanging on render errors (
e81f465)reservation: Correct guest reservation URI validation from calendar and schedule view (
9aca6a1)reservation: Correct guest reservation URI validation from calendar and schedule view (
1f9a739)reservation: Resolve a crash when the email field is not an array (
618a2f4)resource-display: Update date input handling in resource display (
fbee303)schedule: Avoid recursive buffer item ids (
b139461)schedule: Correct tall view rendering for reservations with hidden blocked periods (
7e80933)schedule: Use correct StartDate field in reservation sort (
a83246c)spanish-translations: Update Spanish terms for consistency and clarity (
698cbec)time: Make Time parsing/formatting DST-safe for time-only values (
6bef7db)translation: Fix date formats for italian (
44ceb2b)UI: Standardized the size of remaining form inputs and buttons to sm across the interface. (
cab32b6)validators: Allow empty schedule filter params (
9aca6a1)validators: Remove redundant EXISTS from combined route validators (
9aca6a1)validators: Remove redundant EXISTS from combined route validators (
47860f1)view-reservation: Correctly display the duration of the reservation (
af1e2ce)webservice: Respect configured inactivity timeout per session (
3da795d)
Build System¶
assets: Vendor Hind font for local frontend usage (
22b283a)
Chores¶
Correct the location of jquery-migrate (
6e828e8)Remove bootstrapValidator CSS includes (
7079d8e)Remove unused wysihtml5 assets (
ccaf27b)Upgrade jQuery UI assets to 1.14.2 (
4a0818e)Upgrade jquery-migrate from 3.0.1 to 3.6.0 (
74802ea)api: Remove trailing slash in Authentication POSTs (
e69e636)dependabot: Add a 7 day cooldown for updates (
7154bac)phpcsfixer: Add ‘node_modules/’ to the ignore list (
4b9600d)vendor: Remove unused jquery-dynamiccontextmenu asset (
670f143)vendor: Upgrade select2 library to 4.1.0-rc.0 (
8700159)
Code Style¶
Have AI agents flag “magic number” usage in code reviews (
8cfd27b)blackouts: Stylize the presentation of Blackouts and reservations when there are conflicts (
cedce2f)changelog: Add ‘v’ prefix to version headings for consistency (
d4447d3)jqtree: Add Bootstrap form-check-input to missing checkboxes (
45e88df)
Continuous Integration¶
For some CI failures provide info on how to fix (
4bd036f)frontend: Have the prettier check run first (
cb9a937)integration: Switch from MySQL to MariaDB and use Docker mirror (
f499fbd)lint: Add Node.js setup hint to frontend lint failure messages (
ee32d8f)phpcsfixer: When it fails, tell how to fix it (
b534c4e)release: Change monthly release schedule to 17:00 UTC (
4e3cc08)
Documentation¶
Update description of schedule.fast.reservation.load (
f323b16)api: Add some curl examples to the API docs (
1465819)api: Change the Authentication docs to use sample values (
05dce48)api: Correct the responses for account actions (
89f6ec2)API: Document retryParameters and skipconflicts for reservation endpoints (
6f10d2f)api: Emphasize to not use a / for authentication endpoint (
5294edc)api: Put the ‘request’ before the ‘response’ (
7cdb4da)api: Use the term “Endpoints” instead of “Services” (
d306a41)config: Document admin exemption from start.time.constraint (
e1b10da)css: Improve the documentation for
css.extension.fileconfig (a6d00b6)faq: Add an initial FAQ document (
2b54b66)ldap: Add note about using the LDAP schema for the host (
8015721)oauth2: Document the
oauth2.strip.trailing.slashconfig (2c361b7)oauth2: Update config examples for new config format (
5110088)
Features¶
Add large sample database and setup script (
9b202d2)Add option CAS_VERSION_3_0 for config key CAS_VERSION in CAS Authentication plugin (
7d6c3d4)Enable use of local JavaScript libraries by default (
c2d663e)Enhance reservation emails with resource metadata and details table (
57497bc)OAuth trailing slash variable (
662fa90)api: Add scheduleId filter to GET Resources endpoint (
6ef6011)ci: Add initial minimal frontend linting with ESLint and Stylelint (
4fe45d5)ci: Add Prettier for standardized frontend formatting (
5346f52)ci: Promote all ESLint rules to error and block warnings (
d3f9c4b)config: Add config migration script and documentation (
2371fea)config: Support custom footer version override (
157a4cb)github: Convert issue templates to YAML forms with required fields (
996d654)i18n: Add enabled.languages config to restrict language selector (
7063f26)i18n: Add language selector to navbar (
138fecc)install: Add option to load large sample data in web installer (
3cafcdb)schedule: Add tooltips to schedule action buttons (
27dcd39)UI: Add noscript warning for users with JavaScript disabled (
334eeb7)
Refactoring¶
Move 3rd party Javascript and CSS code (
0bdff5a)Remove legacy qTip references (
f73a717)Remove qTip assets and related files (
12e187a)Reservation email template context for multi-resource emails (
0ae98b6)config: Clarify config key schema dispatch (
88b1350)config: Extract shared config key base class (
27e7e31)dashboard-tooltip: Show reservation tooltip only on .reservationTitle (
d6afdec)domain: Rename User::GetAllowedResourceIds() to GetFullAccessResourceIds() (
0acb94e)domain: Rename User::GetAllowedViewResourceIds() to GetViewAccessResourceIds() (
2081bc6)js: Add prefer-const ESLint rule and fix violations (
84cd017)manage-blackouts: Tooltips to appear only on .reservationTitle (
9ad945e)manage-reservations: Tooltips to appear only on .reservationTitle (
e6ed697)participation: Tooltips to appear only on .reservationTitle (
b408344)recurrence: Replace native date time input with flatpickr (
0f1071e)reports: Add charts.js assets (
3c27c04)reports: Remove dead code and standardize jQuery event handling (
0b65c4e)reports: Remove jqPlot assets (
fa0f2bd)reports: Switch Reports from jqPlot to Chart.js (
afec9c0)schedules: Replace qTip with Bootstrap tooltips for reservation tooltip (
9283493)tooltip: Tooltips to appear only on .reservationTitle (search-reservations) (
9a5875e)tooltips: Standardize popup template names and update references (
3fcedd6)validators: Replace regex param extraction with parse_url/parse_str (
c74bdf6)validators: Simplify XSS guard with early return and add PHPDoc comments (
691e91e)
Testing¶
v4.2.0 (2026-03-03)¶
Bug Fixes¶
Add
composer.lockto the repository (febdc12)Add null-safety for PHP 8.1+ string function deprecations (
b817269)Issue with GetHeader called with non-existing header (
0f387cc)Null parameter error in debug mode (
f1719d8)Pdf generation for on the reservation page (
4d84247)When an unknown error happens use HTTP 500 (
20521ac)admin: Correct bulk checkbox handling in blackouts and clean up user script (
a1fa73d)admin: Fetch reservation deletion checkboxes when needed instead of from a cache (
0224527)admin: Make delete button visible on all user table pages (
e285c95)auth: Repair MoodleAdv config access and add regression coverage (
109ac86)authentication: Preserve guest sessions during cookie login (
a0b96e4)config: Time constraint ‘same_day’ config not working (
772ad0e)db: Give a more helpful error if can’t connect to database (
48f5818)documentation: Start and end reminders can only be minutes, hours and days (
e8105b0)documentation: Update reservation start time constraint documentation (
0d15ca3)htaccess: Correct possible redirect loop (
411e787)htaccess: Infinite redirect to base URL (
e42cb4a)preflight: Resolve phpstan issue with PHP 8.5 (
93fef16)shibboleth: Use correct config key names (
937cfb2)
Chores¶
Add some agents files (
8933f86)Add the .github/copilot-instructions.md symbolic link (
14541f9)Fix malformed test file (
a707a92)Have ‘php-cs-fixer’ be composer installed (
13e26c9)Remove dev dependency ‘kint’ as unused (
c27d335)Run php-cs-fixer on the code base (
1c7e576)Update flatpickr.min.js version 4.6.13 (
06654c5)dependabot: Increase version in composer.json (
94bfb2a)dependabot: Run updates each day for composer (
aebf8d8)monolog: Change use of deprecated variables (
0d0692e)phpstan: Add comments to
phpstan.neon(b053d4c)phpstan: Enable level 2 on tests with phpstan-phpunit extension (
b30b1ab)phpstan: Enable level 2 without a baseline (excluding tests) (
051f21c)stripe: Handle non-existing
invoiceattribute (d54cb07)translations: Updates to French translation (
e34fdda)
Code Style¶
data-cleanup: Enhance admin interface with responsive card design (
60c0e73)
Continuous Integration¶
Remove duplicate ‘setup-php’ in GitHub CI (
9540596)Run the phpstan and phpcsfixer job on push (
0221450)Start testing with PHP 8.5 (
bbdd167)dependabot: Initial setup of dependabot (
537620c)php-cs-fixer: Enforce php-cs-fixer in CI (
59e8b9b)phplint: Parallelize the phplint run (
aa0739a)phpstan: Add an initial ‘phpstan_next’ check (
55b9cb1)phpstan: Add caching to speed up the CI (
daf5166)phpstan: If phpstan fails, run again with verbose/debug (
bcb3fdc)phpstan: Use a matrix for phpstan jobs (
c15bd82)refactor: Move phpunit to its own YAML file (
cd5e596)
Documentation¶
Create comprehensive copilot-instructions.md file (
098b48f)Repository renamed to ‘Librebooking/librebooking’ (
b8e7751)api: Add note to API web page about slash characters (
032fea7)API: Add warning about trailing slash characters (
d5bda61)changelog: Add the CHANGELOG to the documentation site (
d083950)changelog: Update CHANGELOG.md to use PSR formatting style (
84e8038)ci: Use ‘doc8’ to check ReStructuredText files (
4efd995)config: Clarify prevent.participation setting description (
93b2f02)config: Correct the
app.debughelp text (96d0ea6)cron: Add documentation on how to setup cron jobs (
75d7539)logging: Correct LB_LOGGING_* names (
88551cf)README: Update the demo site link to have the
/Web/path (e005a61)saml: Minor cleanup of SAML docs (
3952a26)translation: Add missing Finnish lang strings (
4468d76)translation: Add missing Finnish language email templates (
2b928db)translation: Finnish lang typos and small rewording (
416f027)
Features¶
Display friendly error messages for LDAP authentication failures (
cc320fa)Generate a helpful web page if missing composer (
c996aa5)Provide a helpful error message if no DB access (
4f48ec2)assets: Load Flatpickr globally with themed month dropdown styles (
ff4ee81)config: Support optional footer version suffix (
6cc8a4c)email: Add SMTP AutoTLS configuration option (
381ad2b)flatpickr: Replace legacy datepicker with modern Flatpickr integration (
d407ccc)preflight: Add an initial preflight check (
0d9b0ce)
Refactoring¶
announcement: Replace native date inputs with flatpickr (
46db645)data-cleanup: Replace native date inputs with flatpickr (
0110ab2)date-attribute: Replace native date time input with flatpickr (
63465be)generate-reports: Replace native date inputs with flatpickr (
b80aabc)ldap: Migrate to using the
pear/net_ldap2package (2bbdc83)manage-reservations: Replace native date time input with flatpickr (
22d7b7d)manage-schedules: Replace native date inputs with flatpickr (
c3fa374)ScheduleStyle: Convert ScheduleStyle to an enum (
f6e8404)search-reservations: Replace native date inputs with flatpickr (
77b512c)
Testing¶
Enable
strict_types=1fortests/(c46536b)Enable
strict_types=1fortests/Application/(31f78bc)Enable
strict_types=1fortests/Application/Authentication/(22826e0)Enable
strict_types=1fortests/Domain/(042d284)Enable
strict_types=1fortests/Infrastructure/(9404c15)Enable
strict_types=1fortests/Plugins/(cb871d4)Enable
strict_types=1fortests/Presenters/(8fd1fc7)Enable
strict_types=1fortests/WebService/(84b454a)Enable
strict_types=1fortests/WebServices/(074917a)Fix date/time dependent test failure (
3151445)Fix date/time dependent test failure (again) (
9d46a88)Setup a basic integration in the CI (
6dfaf06)phpstan: Enable PHPStan level 3 for
Pages/Ajax/(58917c1)phpstan: Enable PHPStan level 3 for
WebServices/(481f700)phpstan: Enable PHPStan level 3 for some of
Pages/(43cb19e)phpstan: Enable phpstan level 3 typing in
Controls/(77f1cea)phpstan: Fix level 3 typing issues in
tests/fakes/(2c15873)phpstan: Fix remaining level 3 typing issues in
tests/(c1dd848)phpstan: Fix some level 3 typing issues in
tests/(1c5d6d7)plugins: Use correct directory name (
7f735d9)reservation: Stabilize full-series recurrence test (
ede46c2)
v4.1.0 (2026-02-05)¶
Bug Fixes¶
Add command-line usage instructions for CombineDbFilesTask and UpgradeDbTask causing phpstan issue (
bea840d)Add default value handling in ConfigurationFile::GetKey method (
0f785cb)Add null check in EnsureNull method (
1bda603)Api group update will create a new group rather than updating the group (
b939389)Availability edit button disappears after editing schedule (
f12d65f)Cannot access offset type on ShibbolethConfigKeys (
a853e09)Changed wrong auth details response code to 401 (
da4d633)Database migration for 4.0 (
0b6c844)Display current reservation on tablet view and refine layout (#803,
570b889)Edited plugin config example to use nested layout (
1b14b35)Error in keycloak/oauth url generation (
eb548ff)Error in reservation.start.time.constraint (
98b72b4)Exporter page broken after config validation (
f7c6c3d)Flatpickr week start day ignored for Starts Today schedules (
a46c31a)GetConfigGroup and ConfiKeys in API (
12fc5dc)Ignore invalid configs in ManageConfiguration (
711e01e)Include conditionally displaying title and description (#941,
46d3069)Informational log message changed to more appropriate level (DEBUG instead of ERROR) (
dadca6b)Null error on unknown key (
a8363f1)Reorder PSR12 rule (
7c3473a)Show option key rather than values on config wrong choice (
e35a030)Standardize log messages and improve error handling in configuration tests (
0214c6d)Trumbowyg fails to load when use.local.js.libs is set to true (
ccaba0b)Update environment variable keys and add resource options in config files (
5cbd1a1)Update manual database setup documentation (
9c175bf)Use BooleanConverter for TABLET_VIEW_ALLOW_RESERVATIONS (
d941886)Use ConfigKey instead of hard-coded name (
62a1e9b)Use default logging level of ‘error’ (
0e850d3)Use lower-case log_level (
44ca668)Wrong section for slack token (
f407878)auth: Prevent auto-registration when self-registration is disabled (
9f24a5a)auth: Updated plugin configuration keys into nested structures (
1cfe196)AutocompleteUser: Handle potential null values (
d90b7ab)chore: Resolve many html escape issues (
c8a6396)config: Preserve unknown subkeys in original structure for validation and improve error logging for invalid config values (
723f238)config: Update configurator to new plugin config (
3fe962b)htaccess: Prevent redirect loop for /Web path without trailing slash (
ad8bde2)image-upload: Use correct directory for uploading image (
88cb94a)ldap: Rename debug configuration key for consistency (
f8efae3)ldap: Update default search filter to be optional with improved description (
7c17c7c)pdf: Enhance PDF generation error handling and improve table formatting (
b165000)pdf: Handle default values for repeat options and reservation details in PDF generation (
fda8a76)profile: Resolve loading the profile page when multiple attributes (
e5e423f)profile: Resolve saving of unchecked checkbox in the profile (
2672584)reservation: Resolve html rendering in announcement emails (
1fad3be)reservation: Resolve weekly series checkbox status on load (
d7a62b4)Resources: Improve string retrieval logic (
7e27ac5)schedule: Correct date display and layout issues (
d684695)templates: Replace regex check with empty check in Italian email templates (
1e71f81)test: Update configuration key test (
3444e6c)tests: Update symbolic link creation and improve PHPUnit error handling (
ae628bc)
Chores¶
Update phpstan-baseline.neon (
200517a)git: Enforce LF line endings (
85a929f)git: Normalize all line endings to LF (
b211a9a)phpstan: Update for 2.1.25 release (
86594c1)phpstan: Update phpstan-baseline.neon (
79ac102)scripts: Remove jQuery Timepicker plugin files (
1632653)templates: Remove unused Timepicker includes (
9d25543)
Code Style¶
Continuous Integration¶
Mark the ‘develop’ branch as a release branch (
02c4e20)Prevent merge-commits in a PR (
ebe5589)cz-lint: Give a more helpful message when ‘cz’ fails (
4a3a105)release: Add the ‘id-token’ permissions (
9b6b28a)release: Setup an automated release system (
464e117)release: Use the ‘release’ environment (
397e1bf)release: Use the release token for the git checkout action (
bd1e881)release: Use the RELEASE_GITHUB_TOKEN (
1bdd93d)
Documentation¶
Add info on privacy.view.schedules config option (
9fed6b2)Update comment for privacy->view.schedules (
8ae0a5f)auth: Add detailed configuration instructions for LDAP and Active Directory authentication (
40b00f6)auth: Enhance description for Admin Username in Active Directory configuration (
c150e2f)auth: Enhance description for properties in plugins (
12dfeea)
Features¶
Refactoring¶
Pageload in Login presenter (
2a554b1)Replaced die for proper server response (
4c75a91)Unify time formats using period_time (
35f6295)Url generation for external login (
26511e3)date-helper: Drop moment.js for native dates (
0533579)date-helper.js: Centralize midnight handling in time-range validation (
c85fb34)manage_blackouts: Use dateHelper for timepickers (
3fe1f8a)manage_peak_times: Use raw times and centralize formatting (
f099d00)manage_quotas: Integrate dateHelper & collapse in UI (
63b1782)manage_schedules: DateHelper for peak pickers & validation (
348329b)search-availability: Use select pickers for time inputs (
a87100a)
Testing¶
Allow unit tests to be run without setup (
d1221ff)Prevent flaky tests caused by midnight boundary issues (
c004670)Update AuthenticationWebServiceTest to expect response codes (
9c690f6)auth: Add comprehensive tests for authentication plugin configuration loading and validation (
5522764)config: Changed expected test values to reflect intended behavior of expecting a default value (
9f253ef)timezone: Replace deprecated US/* timezones with IANA equivalents (
8e7645b)
v4.0.0 - 2025-08-06¶
Highlights¶
New configuration file format. Please read the documentation for more details. Thanks to @lucs7 for all of their work.
Initial work on getting PHPStan setup and working. We have level 1 working with no baseline and are currently using level 2 with a baseline.
Add configuration option to be able to choose the resource contact from a drop-down list of registered users.
Language selector now working on the login page.
New date selector library used, thanks @labmecanicatec
What’s Changed¶
style(manage_resources): don’t default collapse CustomAttributes by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/682
fix: EmailMessage.php variable defined after use by @lucs7 in https://github.com/LibreBooking/librebooking/pull/683
fix: captchas not working by @lucs7 in https://github.com/LibreBooking/librebooking/pull/684
fix(participation): add missing ParticipationNotification import by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/686
chore: ensure all config variables are in both config files by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/689
fix(reservation): fix the delete reason not submitted when a reservation is not approved. by @belcirelk in https://github.com/LibreBooking/librebooking/pull/696
fix(reservation): pdf generation is not working in French by @belcirelk in https://github.com/LibreBooking/librebooking/pull/697
fix(API): stop storing multiple custom attributes of same type for Reources by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/681
chore: Replace jQuery UI datepicker with flatpickr by @labmecanicatec in https://github.com/LibreBooking/librebooking/pull/756
fix(login): Language selector is not working due to httponly cookie by @belcirelk in https://github.com/LibreBooking/librebooking/pull/763
fix: allow setting language for non-HTTPS by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/764
chore: remove exec permission from some files by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/765
chore: add text to the “More Resource Actions” drop-down by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/766
refactor: timezone handling and remove jstz library by @labmecanicatec in https://github.com/LibreBooking/librebooking/pull/769
feat: optional: resource contact may be chosen via a drop-down list of users by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/770
Fix for reminders on cancelled reservations by @cgutteridge in https://github.com/LibreBooking/librebooking/pull/773
Fix for phpunit tests and additional error check by @lucs7 in https://github.com/LibreBooking/librebooking/pull/774
fix: error in WebAuthenticationTest and Facebook login by @lucs7 in https://github.com/LibreBooking/librebooking/pull/781
New Contributors¶
@belcirelk made their first contribution in https://github.com/LibreBooking/librebooking/pull/696
Full Changelog: https://github.com/LibreBooking/librebooking/compare/v3.0.3…v4.0.0
v3.0.3 - 2025-07-09¶
Highlights¶
Improvements to the Installation guide at https://librebooking.readthedocs.io/en/latest/INSTALLATION.html
What’s Changed¶
fix(API): add endpoint to get resource types by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/663
remove old docs by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/665
fix(schedule): datepicker conflicts with url validation by @lucs7 in https://github.com/LibreBooking/librebooking/pull/661
Fix for #671 / Adjusting css to enable datepicker styling by @lucs7 in https://github.com/LibreBooking/librebooking/pull/673
doc: remove trailing whitespace from *.rst files by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/674
fix(CustomAttribute): handle invalid data by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/662
fix: allow guests to book reservations by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/668
update(docs): update installation documentation: cloning, composer setup, and database config by @labmecanicatec in https://github.com/LibreBooking/librebooking/pull/675
docs: add link to API docs, use notes, update PHP version by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/676
Full Changelog: https://github.com/LibreBooking/librebooking/compare/v3.0.2…v3.0.3
v3.0.2 - 2025-07-07¶
Highlights¶
Now have a documentation/home page website at https://librebooking.readthedocs.io/
What’s Changed¶
docs: add a
.readthedocs.ymlfile by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/647docs: remove ‘beta’ designation of the
developbranch by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/649docs: fix theme options list by @ClemCordier in https://github.com/LibreBooking/librebooking/pull/650
Fix date and autogrow issues by @lucs7 in https://github.com/LibreBooking/librebooking/pull/657
fix: correct datepicker issue introduced in e0cfcbc by @lucs7 in https://github.com/LibreBooking/librebooking/pull/658
fix: don’t attempt to reserve view-only resource by @JohnVillalovos in https://github.com/LibreBooking/librebooking/pull/656
Full Changelog: https://github.com/LibreBooking/librebooking/compare/v3.0.1…v3.0.2
v3.0.1 - 2025-06-25¶
Update the version number in the code base. This was missed in the v3.0.0 release.
Full Changelog: https://github.com/LibreBooking/librebooking/compare/v3.0.0…v3.0.1
v3.0.0 - 2025-06-24¶
Highlights¶
Bootstrap 5 Framework and Bootstrap icons now used.
Modernization of the user interface.
Integration of libraries such as Datatables and Trumbowyg.
Migrate external libraries to be pulled in via composer instead of storing the code for those projects in the repository. Also upgraded versions of external libraries used.
Improvements to the CI system.
Thanks to @labmecanicatec and @lucs7 for all their work this release.
Full Changelog: https://github.com/LibreBooking/librebooking/compare/v2.8.6.2…v3.0.0
v2.8.6.2 - 2024-08-18¶
See all the changes at https://github.com/LibreBooking/librebooking/commits/develop
v2.8.6.1 - 2023-09-26¶
Mainly Bug fixes, special mention for the ldap plugin, more details at https://github.com/LibreBooking/librebooking/commits/develop
v2.8.6 - 2023-04-18¶
Librebooking now has PHP8 support Many bugs, updates and even new features were added but the list is a bit long so for further details please check the commit history https://github.com/LibreBooking/librebooking/commits/develop
v2.8.5.5 - 2022-02-11¶
This version is no longer developed by Twinkle Toes Software (https://www.bookedscheduler.com)
Based on the original open source version of Booked, now available at: https://github.com/LibreBooking/librebooking
Fork this repo, contribute and help keep it alive
Small update to fix a security issue
v2.8.5.4 - 2021-09-03¶
This version is no longer developed by Twinkle Toes Software (https://www.bookedscheduler.com)
Based on the original open source version of Booked, now available at: https://github.com/LibreBooking/librebooking
Fork this repo, contribute and help keep it alive
Way too many changes, bugfixes and improvements to list them all here, so please take a look at: https://github.com/LibreBooking/librebooking/commits/master
v2.8.5.3 - 2021-03-10¶
This version is no longer developed by Twinkle Toes Software (https://www.bookedscheduler.com)
Based on the original open source version of Booked, now available at: https://github.com/LibreBooking/librebooking
Fork this repo, contribute and help keep it alive
Added translation: Greek
Updated jsPDF
Bugfixes
v2.8.5.2 - 2021-01-25¶
This version is no longer developed by Twinkle Toes Software (https://www.bookedscheduler.com)
Based on the original open source version of Booked, now available at: https://github.com/LibreBooking/librebooking
Fork this repo, contribute and help keep it alive - Bugfixes
v2.8.5.1 - 2020-11-11¶
This version is no longer developed by Twinkle Toes Software (https://www.bookedscheduler.com) Based on the original open source version of Booked, now available at: https://github.com/LibreBooking/librebooking
Fork this repo, contribute and help keep it alive - Added intial support for generating pdf’s on the reservation page
Added two plugins (Moodle Advanced Authentication and Admin Check-in/out Only)
Updated portuguese translation
Bugfixes
v2.8.5¶
Added import and export of groups
Updated Danish translation
Allow lower level administrators edit in-progress reservations
Added optional email to be sent to users when changing resource status
Added setting to show week numbers on calendars
Added settings to require phone, position, and organization during registration
Bugfixes
v2.8.4¶
Allow reservations on the schedule to be filtered by owner or participant
Include participant list in reports output
Add resource concurrency to resource import and export
Bugfixes
v2.8.3¶
Do not require logging in to set up resource tablet display
Bugfixes
v2.8.2¶
Added the ability to set a limit on the number of concurrent reservations per resource
Removed the ability to set a schedule as allowing unlimited concurrent reservations per resource
Bugfixes
v2.8.1¶
Added ability to limit the total number of concurrent reservations for a schedule
Added ability to limit the number of resources per reservation for a schedule
v2.7.8¶
Added ability to repeat a reservation on non-sequential dates
Updated PayPal API to version 2
Added option to sync group membership when logging in via SAML
Updated Portuguese, German, and Spanish translations
Updated PhpCAS to 1.3.8
MySQL 8+ compatibility
Bugfixes
v2.7.7¶
Added a configuration option to show whether a reservation is new or updated for a period of time
Added Hungarian translation
Bugfixes
v2.7.6¶
Added email notifications when participants of a reservation accept or decline invites
Added reservation waitlist signup on view reservation page
Added ability to restrict guests from using tablet view
Notify users if the creation of a blackout time deletes their reservation
Updated Portuguese and Finnish translations
Bugfixes
v2.7.5¶
Added utilization reports
Added ability to find a specific time
Added recurring reservation series ending emails
Added credits to reservation emails
Added link to add to Google Calendar to reservation emails
Bugfixes
v2.7.4¶
Added availability view to reservation page
Added participant list to reservation emails
Redesign of resource tablet display
Added ability to search for reservations that missed checkin/checkout
Bugfixes
v2.7.3¶
Added ability to set user status on CSV import
Added ability to share reservation details via email
Added ability set the resources, groups, and schedules a group can administer from Groups tool
Bugfixes
v2.7.2¶
Added monitor display view
Resolved accessibility issues
Added Serbian
Bugfixes
v2.7.1¶
Added ability to purchase credits
Added credit usage to the reservation page
Added ability to set comma or semicolon delimited admin.email configuration setting to allow multiple admin emails
Added ability to send a reservation to Google Calendar
Added ability to select a resource image while adding
Added ability to begin a reservation directly from Slack
Added ability to set default group membership
Added ability to require terms of service acknowledgment
Added ability to set login page announcements
Added ability to set schedule availability dates
Added ability to configure different minimum notice rules for reservation add, edit and delete
Added ability to allow multiple reservations on the same resource at the same time for a schedule
Added ability to set multiple resource images
Added ability to set view-only resource permissions
Added ability to sync group membership from LDAP and CAS
Added ability to set fully custom layout slots
Added blackouts to schedule and resource calendar view
Added view calendar page
Added ability to embed a Booked calendar view on an external website
Added ability to require reservation title and description
Added user groups to report output
Added ability to set custom favicon
Added ability to customize email messages
Added ability to bulk delete resources
Resource QR code will open ongoing reservation if it requires check in
Added ability to find an open recurring time
Upgraded jQuery to latest
Bugfixes
v2.6.8¶
Added ability to see real time availability when selecting additional resources
Added the ability to set a delete/reject reason
Added the ability to update users and resources on import from CSV
Allow setting phone, organization and position when creating a user from the admin section
Better highlight pending reservations on Dashboard and popups
Optimize JavaScript file loading for better page rendering times
Bugfixes
v2.6.7¶
Added real-time indication of additional resource availability in reservation screen
Added ability to search for reservations
Added ability to send user an email when an account is created for them
Added option to show captcha on login
Updated reCaptcha to use nocaptcha
If recurring start and end dates are not the same, then include both in the emails
Added Basque language
Added Thai language
Bugfixes
v2.6.6¶
Added ability to set default start and end reminders
Added ability to import resources from CSV
Added ability to export resources to CSV
Added ability to export users to CSV
Added ability to include custom attributes in user CSV import
Added ability to import reservations from CSV
Added ability to bulk delete users
Added ability to bulk delete reservations
Added ability to bulk delete blackouts
Added ability to drag and drop reservations from calendar views
Added ability to select multiple options for most report filters
Added password update API
Added ability to set number of past and future days to include for Atom and iCalendar subscriptions
Added ability to apply configured default homepage to existing users
Saved reports and exported reports will use same columns
Added credits to manage reservations and reports
Show if a reservation is pending approval on popups and edit page
Added config option to notify users if they missed their reservation check in time
Numerous security fixes
Bugfixes
v2.6.5¶
Ensure only one reminder email is sent per reservation when multiple resources are booked
Added Vietnamese
Added ability to automatically fill in blocked time slots based on gaps in available slots
Added ability to update a reservation before approving it
Added resource type filter to reports
Bugfixes
v2.6.4¶
Use resource color on availability dashboard
Display reservations for multiple resources as one item on dashboard
Better handling of dates on the reservation page when an entire day is unavailable
Allow view schedule to be changed to alternate schedule views
Upgrade PHPMailer
Bugfixes
v2.6.3¶
Include resource name in all email subjects
Added ‘Today’ link to schedule navigation
Added real time accessory quantity availability
Added ability to include email and phone in reservation popup
Added support for MySQL 5.7+
Added use sso flag for Active Directory authentication
Added user available credits to the reservation page
Added ability to copy a resource
Added Russian
Bugfixes and security updates
v2.6.2¶
Added ability to invite users to join Booked
Added ability to repeat multi-day reservations
Added additional columns to reports
Bugfixes
Updated French language pack
v2.6.1¶
Bugfixes
v2.6¶
Mobile first, fully responsive user interface
Allow guests to book and be invited to reservations
Allow users to join wait list if requested time not available
Control resource usage with credits
Ability to request that users check in and out of reservations, optionally auto-releasing the reservation
Allow users to sign in using Facebook or Google
Require users to register with an email address from a known domain
Set specific days and hours which quotas are enforced
Allow quotas to exclude completed reservations
Added ability to search for an available time rather than browsing schedule
Require minimum and maximum number of accessories when specific resources are booked
Ability to restrict announcements to certain groups or users with access to certain resources
Added ability to book around conflicting reservations
Added ability to set reservation color by user, resource, or custom attribute value
Added tablet view that can be used to display resource schedule and allow sign ups
Added private custom attributes
Added admin-only custom attributes
Added resource-aware custom reservation attributes
Invites are attached to reservation emails as .ics file
On mobile, allow a picture to be taken for resource image
The first user to register will automatically be setup as the primary admin
Numerous minor enhancements and bug fixes
v2.5.21¶
Added ability to duplicate a reservation
Added ability to move reservations by dragging to new slot
Added ability to blackout around existing reservations
Added delete confirmation to reservation window
Fix API bugs
Fix bug not showing custom user attributes on manage user page
Fix for account deleted email
v2.5.20¶
Added multi-date selection to bookings page
Added ability to send announcements as emails
Added ability to send email to all users when reservation is cancelled
Added ability to filter on multiple resources on bookings page
Added ability to allow cross origin requests for API
Added ability to import ICS files
Fixed click and drag on condensed week view
Fixed problem showing hidden resources on dashboard
v2.5.19¶
Fixed some packaging issues from 2.5.18
Added ability to filter multiple resources on the schedule
Updated Japanese language files
v2.5.18¶
Fixed bugs with CSRF checks
Changed the manage reservation search filter to be inclusive of reservations spanning filtered time
Fixed issue that didn’t maintain selected date in schedule calendar popup
Fixed double html encode issue for custom attributes
Fixed issue filtering on custom attributes on manage reservations page
Added fix to allow larger datasets returned when using group_concat
Fixed the ‘deleted by’ name in the account deletion email
v2.5.17¶
Fixed bug preventing schedule view switching on Chrome and IE
Fixed bug with reports showing no results when searching on accessories
Fixed issue displaying schedule dates even when no slots are defined
If register or forgot password urls open in external site, open in new window
Include total hours in reports
Changed reservation email message to come from whoever made the reservation
Added ability to override language strings
Fixed missing homepageid upon registration
Fixed missing email address in reservation reminders
Properly custom attribute regex format if user supplied version is incorrect
Added ability to remove all assigned permissions for resource
Added ability to include all reservation attributes in display labels
Save calendar expand/collapse on schedule page
Fixed bug determining when to send notification emails
Fixed bug with PR language
Changed resource availability web service to use same logic as dashboard
Fixed issue displaying reservations when date had no slots
Fixed bug that prevented cookies from being written properly in IE
Fixed warning when path property is not found in the url
Removed CSRF check on registration page
Ensure session is started when rendering captcha
Fixed syntax issue on PHP 5.3 and lower
v2.5.16¶
Added datetime custom attribute type
Added ability to import a list of users
Added ability to manage custom attributes through the API
Added ability to customize report columns
Added a yearly quota
Added API for getting resource types and ability to set resource type in add/update
Added ability to restrict showing user details to simply on/off or past/future reservations
Added user deleted email notification
When a reservation is created on behalf of another user, the user taking action is included in the email notifications
When a user is created on behalf of another user, the user taking action is included in the email notification
Improved rendering of schedule when being printed
Resource details are now shown even if user does not have permission
Added ability to include Google Analytics
Fixed bug which prevented joining or canceling a recurring reservation instance if it violated a notice rule
Fixed resource availability dashboard timeout issues
Fixed bug with creating and updating reservations through the API
Fixed bug which over-counted accessories when reservation contained multiple resources
Fixed bug loading resource type attributes when managing custom attributes
Fixed bug requiring user to uncheck removed resources from all groups
Fixed bug for resource groups when they are returned from the db sorted incorrectly
Fixed bug with upcoming reservations dashboard
Changed cookies to be scoped to Booked root path
Implemented CSRF checks (thank you Netsparker)
Updated French language pack
Updated Croatian language pack
v2.5.15¶
Added ability for users to join reservations without being invited
Upgraded CAS library to 1.3.3
Added Active Directory option to sync group membership into Booked
Added user details popup
Added ability to manage user and group permissions from resource management page
Fixed bug preventing recurring reservations from being deleted in management page
Fixed bug incorrectly grouping recurring reservations on calendar views
Updated Italian language
Updated Spanish language
v2.5.14¶
Added notice to schedule when no resources have been added
Added emails to participants and invitees when a reservation is updated
Added resource image to reservation email
Added ability to set default homepage for new users
Added dashboard item for current resource availability
Fixed bug displaying wrong reservation dates on reservation save confirmation message
Fixed bug on view schedule page when using daily layouts
Fixed bug preventing individual reservations from being added to external calendars
Fixed bug which did not check Sunday checkbox on recurring reservations
Fixed bug on dst change preventing all reservations on that day
Fixed bug causing permission updates performed by schedule admins to wipe out certain permissions
Updated Italian language pack
Updated Spanish language pack
v2.5.13¶
Fixed bug preventing reservations from being added to Outlook
Fixed bug preventing accessories from showing in reservation popup
Fixed bug preventing resource filter from working on view schedule
Added Drupal authentication plugin (Drupal 7.x with MySQL only)
Added ability to display participant and invitee lists in the reservation label
Applied patch for HTTP security headers
Updated Italian language
v2.5.12¶
Fixed English admin help page
v2.5.11¶
Fixed issue that was sending approval request emails on every reservation create/update if approval emails were enabled
v2.5.10¶
Fixed issue sending email from *nix servers
v2.5.9¶
Added custom attributes to reports
Added resource groups to calendar views
Added ability to enter maintenance mode
Added ability manage user groups through API
Added more options for customizing the reservation slot label, including using custom attributes
Added ability to customize reservation label for My Calendar, Resource Calendar, ICS feeds, RSS feeds and the reservation popup
Added list of dates and resources to reservation confirmation message
Added ability to receive reservation approval request emails
Added API to get schedule slots
Added finer-grained control over what profile values can be managed through Booked when using an authentication plugin
Reduced the size of the bookings page
Fixed bug graying out resources and dates when user and schedule timezone don’t match
Fixed bug handling non-UTC dates in API
Fixed bug performing case sensitive match when checking if user is admin
Fixed bug for GetAvailability API
Updated German language files
Updated Portuguese language files
v2.5.8¶
Added schedule and resource filter to My Calendar
Fixed bug displaying week in calendar views
Reduced the size of the bookings page by ~35%
Updated German language files
Updated Japanese language files
Updated Portuguese language files
v2.5.7¶
Fixed potential XSS vulnerability on login page
v2.5.6¶
Fixed problem navigating to reservation details from tall schedule view
Fixed problem rendering resource group management page
v2.5.5¶
Fixed problem updating plugin config files through UI
Fixed date parsing in web services
v2.5.4¶
Fixed error updating resources
v2.5.3¶
Fixed manage reservations/resources custom attribute filter when multiple attributes are provided
Fixed javascript error when recaptcha is disabled during registration
Fixed error updating usage configuration of resources
Fixed installer to handle the case when the database exists but no tables have been created
Changed installer to use mysqli
Fixed error filtering blackouts by resource
Fixed error creating recurring reservation which sometimes picked the wrong week of the month
v2.5.2¶
Added ability for admins to filter reservations by custom attributes
Added ability for admins update reservation custom attributes inline on manage reservations page
Added paging and filtering on Manage Resources
Added bulk update on Manage Resources
Added admin dashboard for all upcoming reservations
Added ability to leave protocol off script.url setting to auto-detect http vs https
Fixed bug failing to display error message when invalid daily layout is being created
Fixed missing HTML tags on print report page
Added Croatian translation
Updated Czech translation
Fixed overly restrictive password validator
Changed reservation confirmation screen to notify when the reservation requires approval
Updates to Italian language pack
v2.5.1¶
Updated German language files
Changed reservations web service to not default to current user if no user is provided
Added resource availability web service
Added reservation approval web service
Fixed bug creating a opening new reservation window without a selected resource id
Fixed bug where reservations ending at midnight would show on the next day for condensed view
Fixed bug where role restricted pages could not be opened up to everyone
Fixed bug when a hidden resource belongs to a group
Fixed bug with schedule admin being able to see reservation list and see blackout list
Fixed bug where readonly schedule page failed to render
Fixed bug adding/removing resource images
Fixed sample data import
Cleaned up sample post-reservation plugin example
v2.5¶
Application renamed from phpScheduleIt to Booked Scheduler (why?)
Added ability to reserve resource groups
Added ability to filter schedule resources
Added ability to specify resource type
Added enhanced resource status management
Added ability to specify buffer time between reservations (per resource)
Custom attributes now appear on all reservation emails and balloons
Added ability set custom attributes for an individual resource, user or resource type
Added ability manage config files for all plugins through the UI
Added ability to set reservation colors per user
Added ability to subscribe to reservation Atom feeds
Added ability update blackouts
Added ability attach multiple items to a reservation
Added Shibboleth authentication plugin (thank you to the folks at UCSF)
Added ability to email admin for all new account creations
Updates and cleanup on the API
Removed password regex setting in favor of password complexity settings
Changed schedule drop downs to exclude schedules if the user does not have permission to any of the resources belonging to it
Added wide and condensed booking page views
Added option to allow all users access to reports
Added setting for default ‘from’ email address
Changed the reservation page to default to the minimum resource reservation time
Changed reservation update to grant permissions to all users if auto-assign permissions is being turned on
Fixed showing ‘Private’ when the current user is the reservation owner
Fixed bug where recurring reservations across daylight savings time boundaries were not being updated to the correct time
Fixed bug where schedule would freeze on certain daylight savings boundaries
Fixed pagination bug on manage reservations page
Fixed bug allowing invitees to join a reservation that was already at capacity
Fixed bug not enforcing resource cross day reservation constraint
Fixed bug where quota rules were being enforced cumulatively for resources on a schedule
Fixed bug where reminders were being sent for deleted reservations
Updated all mysql_* calls to mysqli_*
Numerous other minor fixes and updates
v2.4.2¶
Added ability to click and drag to create reservations
Added ability hide blocked slots on schedule
Added ability to view reservation participation on schedule
Changed migration process to be asynchronous
Fixed bug preventing reminders from running on some servers
Fixed bug hiding labels for periods less than 1 hour
Fixed bug in configuration management escaping special characters
Fixed bug when changing start date/end date on reservation page
Fixed bug selecting wrong start time when user and schedule timezones are different
Updated German, Portuguese and Hebrew languages
v2.4.1¶
Changed periods spanning less than an hour to display tick marks instead of times
Fixed bug when displaying vertical schedule when reservation title contained special characters
Fixed bug in migration script not copying legacy password correctly
Fixed bugs generating API documentation
v2.4¶
Added restful API
Added ability to set different layouts for each day of the week
Added ability to set reminders for reservation beginning and end
Added UI management page for changing configuration
Added ability for users to set default schedule
Added ability to display schedules vertically
Text for slot labels is now tokenized
Added WordPress authentication plugin
Added ability to use reCAPTCHA instead of built in captcha
Added ability to set logo and custom css files
Added configurable home page and logout urls
Added ability to manage user groups from user management page
Added Bulgarian and Flemisch language packs
Localized the installation and configuration pages
Fixed issues with accessory and reservation migration
Added ability to disable password reset
Numerous bug fixes and minor enhancements
v2.3¶
Added ability for administrators of all levels to create reports
Added ability to create a reservation from the schedule and resource calendar views
Added ability to create recurring blackout dates
Added schedule admin role
Added setting to disable recurring reservations for non-admins
Added setting to automatically subscribe users to all emails
Added setting to prevent reservation invitations and participation
Added setting to load jQuery from CDN
Added setting to return reservation to pending when updated
Added Swedish translation
Added full resource and accessory list to reservation emails
Added ability to set resource order
Added email address to user autocomplete
Numerous minor enhancements added and defects fixed
v2.2¶
Breaking change: For Active Directory authentication, please set your authentication plugin to ActiveDirectory. Ldap plugin is now targeted at non-Active Directory.
Added ability to create custom attributes
Rewrote CAPTCHA functionality
Added account activation emails
Added ability to upload reservation attachments
Made post-registration action pluggable
Added Saml SSO Authentication plugin
Made configuring resource image directories easier
Added ability to start schedules on Today
Numerous minor enhancements added and defects fixed
v2.1¶
Added resource administrator role
Added configurable ability for application admins, resource admins and group admins to recieve reservation activity emails
Added configuration options for user name formatting, resource editing rules, privacy settings and CSS extension file
Added ability to subscribe to schedule, resource and personal calendars
Added option for owner to receive emails when reservations are deleted
Added participant email notifications when reservations are deleted
Added ability use full HTML in announcements and resource descriptions/notes
Many bug fixes, including: reservation approval, reservation admin delete, resource configuration, admin user creation, group user management, registration CAPTCHA
Added Dutch, Spanish, Italian, Japanese, Polish, Catalan languages
v2.0.2¶
Fix and additional logging for migration
Minor UI cleanup of validation group error div
Fixed defect with captcha
Fixed defect not translating full day names properly when using date formatting
Fixed some IE7 display problems
Updated install instructions to be more clear for cPanel users
Dashboard now shows upcoming reservations for owned/invited/participating
Fixed defect on quotas which was not working for non English
Fixed defect where accessories with unlimited quantities were being rejected
Fixed defect on manage blackouts
Added pre-reservation plugin example
Ajax reservation now displays errors
Fixed defect selecting first period instead of last period when reservation ends at start time of first period
Fixed defect displaying reservation on first period of the day if it ends at the first period’s start time
Fixed bug adding users from the admin tool
Fixed javascript single quote bugs
v2.0.1¶
Perfomance improvements on bookings page
Added Spanish and Dutch translations
Added ability to view reservation details from view schedule page
Fixed defect loading translated emails
Fixed defect approving reservations
Fixed defects when using IE
Fixed defect showing an error during log out when using LDAP
v2.0¶
Fully rewritten from scratch with a focus on testability, extensibility and maintainability
All new, more intuitive and friendly user interface
Pluggable authentication, authorization, permissions, pre/post reservation actions
Ability to reserve multiple resources at one time
Flexible layout configuration and time slot labeling
Quotas
Roles
Better Microsoft Outlook integration
Easier installation process