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.
What's Changed
- dev-bootstrap5 by @labmecanicatec in #406
- Dev bootstrap5 by @labmecanicatec in #409
- Resurrect unit tests by @hakito in #408
- Switch to utf8mb4 by @hakito in #415
- Replace use of deprecated ldap_connect function with supported one by @nrundle in #422
- Mail translations by @hakito in #423
- PICKME Refactor Email system to builder pattern by @hakito in #426
- Revert " PICKME Refactor Email system to builder pattern" by @effgarces in #441
- Dev bootstrap5 by @labmecanicatec in #443
- Mail translations 2nd attempt by @hakito in #450
- Fix checkin/out button on Reservation page by @njm506 in #458
- Improved SAML instructions by @cgutteridge in #456
- fix: add secure and httponly flags to cookies and also add samsite 'l… by @VitorVieira20 in #461
- fix: add uri and params validations in guest-reservation, view-schedu… by @VitorVieira20 in #462
- Update Server.php by @cgutteridge in #465
- Update emailheader.tpl by @cgutteridge in #466
- New Styling plugin by @JohnXLivingston in #467
- Show ical subscription link only for logged in users by @lucs7 in #468
- feature: Allow hiding specific fields in the registration form (#367) by @VitorVieira20 in #469
- Fix Facebook login, smarty upgrade, Fix error on reservation page, when accessory is NULL on max or min. by @lennert1986 in #448
- docs: add information about the Discord channel by @JohnVillalovos in #475
- Dev bootstrap5 by @labmecanicatec in #477
- Added keycloak as external auth provider by @lucs7 in #482
- Updated js for datatables and resource admin view and editor fordescription/notefield by @lucs7 in #478
- Dev bootstrap5 by @labmecanicatec in #486
- Dev bootstrap5 by @labmecanicatec in #489
- chore(CAS): Use '.' instead of '_' for 'cas.logout.servers' by @JohnVillalovos in #519
- ci: add a 'stale' automatic workflow by @JohnVillalovos in #524
- ci(stale): don't require label to mark as stale by @JohnVillalovos in #525
- chore(ci): enable manual triggering of stale workflow by @JohnVillalovos in #526
- chore: setup issue templates by @JohnVillalovos in #527
- chore(issue_template): fix filename of 01-bug_report.md by @JohnVillalovos in #528
- docs: update Discord invite link by @JohnVillalovos in #529
- chore(stale): increase operations-per-run value by @JohnVillalovos in #530
- chore(authentication): support Drupal >= 10.1 hash algorithm by @JohnVillalovos in #531
- Add Oauth2 auth Provider by @larsl-net in #499
- Cleanup documentation and enable linter for the Markdown files. by @JohnVillalovos in #535
- chore: update composer.json and validate it in CI by @JohnVillalovos in #536
- chore: add '[Enhancement]' to Feature Request issue titles by @JohnVillalovos in #539
- fix: database 2.9 schema upgrade was invalid by @JohnVillalovos in #541
- chore: remove usage of deprecated
E_STRICTby @JohnVillalovos in #542 - Cleanup and resolve deprecations in
lib/Common/SmartyPage.phpby @JohnVillalovos in #545 - chore: enable error reporting for
config.devel.phpby @JohnVillalovos in #546 - chore: fix deprecated message in unit tests. by @JohnVillalovos in #550
- chore(tpl/Schedule): add comment headers for development use by @JohnVillalovos in #551
- chore: run Rector 'php81' rule on 'Jobs/' by @JohnVillalovos in #559
- chore: run Rector 'php81' rule on 'phing-tasks/' by @JohnVillalovos in #560
- chore: run Rector 'php81' rule on 'Controls/' by @JohnVillalovos in #561
- chore(.gitignore): ignore everything in
.phpunit.cache/by @JohnVillalovos in #562 - feat: add granular API access based on groups by @JohnVillalovos in #552
- test: default timezone must be 'America/Chicago' for unit tests by @JohnVillalovos in #564
- Revert "test: default timezone must be 'America/Chicago' for unit tests" by @JohnVillalovos in #565
- chore: fix another Smarty deprecation issue by @JohnVillalovos in #566
- chore: update Discord link again. by @JohnVillalovos in #569
- Fix for url validation issue with public schedule/calendar by @lucs7 in #570
- chore: fix deprecation warning by @JohnVillalovos in #571
- keep description and note edit from closing when losing focus by @lucs7 in #572
- chore: add CONTRIBUTING.md file by @JohnVillalovos in #575
- Fix .ics File by @supaeasy in #577
- Minor style improvements, removal of unnecessary code by @labmecanicatec in #579
- Trumbowyg is implemented in announcements by @labmecanicatec in #580
- ci: initial tox setup and environment to run commitizen by @JohnVillalovos in #583
- Composer migrate deps by @labmecanicatec in #585
- chore(resource creation): don't grant access by default by @JohnVillalovos in #554
- Resolve #558: Enable configurable mobile views and auto-scroll by @labmecanicatec in #586
- chore: drop docker-related objects by @colisee in #589
- New Export plugin: by @JohnXLivingston in #582
- fix: unclosed div in tpl\Dashboard\announcements.tpl by @labmecanicatec in #590
- fix(layout): Adjust tooltip and inline element alignment for custom footer by @labmecanicatec in #591
- docs(ldap): Show example ldap hosts with 'ldap://' prefix by @JohnVillalovos in #592
- refactor: fix PHPDoc annotations and register additional classes in SmartyPage by @labmecanicatec in #601
- docs(readme): modernize structure, add demo, checklist features, and badge section by @lucs7 in #602
- fix: register 'ResourcePermissionType' in Smarty by @JohnVillalovos in #603
- chore: remove font-awesome in favor of Bootstrap 5 icons by @JohnVillalovos in #605
- chore: remove unused LESS styles from Web/css/less by @JohnVillalovos in #606
- chore: remove deprecated external login images by @JohnVillalovos in #607
- refactor: replace colorpicker.js with Bootstrap 5 color input by @JohnVillalovos in #608
- chore(css): Move entityChoices styles to librebooking.css by @JohnVillalovos in #609
- refactor: monitor-display.css & monitor-display-schedule.tpl by @JohnVillalovos in #610
- chore: stop loading unused CSS files in preparation for removal by @JohnVillalovos in #611
- feat: Enable searchClear for filterCapacity by @JohnVillalovos in #612
- refactor(schedule.css): Remove @media (max-width: 1000px) by @JohnVillalovos in #613
- chore: remove unused assets from ColorPicker and ColorBox by @JohnVillalovos in #614
- chore: remove 83 unused or replaced images with Bootstrap icons by @JohnVillalovos in #615
- chore: remove unused JS libraries by @JohnVillalovos in #617
- refactor: simplify show_resource_qr.tpl layout and styles by @JohnVillalovos in #619
- chore: update jquery.contextMenu to the latest version by @JohnVillalovos in #616
- chore: remove commented-out code after Bootstrap 5 upgrade by @JohnVillalovos in #618
- refactor: remove commented-out code and implement DataTables by @JohnVillalovos in #620
- feat: enable search clear functionality in userFilter field by @JohnVillalovos in #621
- refactor: reorganize HTML structure to improve layout and readability by @JohnVillalovos in #622
- chore: remove unused CSS files by @JohnVillalovos in #623
- fix: remove redundant script that prevented modal from opening correctly by @JohnVillalovos in #624
- fix: update PayPal payment logic for compatibility by @JohnVillalovos in #625
- Cleanup/remove legacy assets post bs5 migration by @labmecanicatec in #604
- docs: update CONTRIBUTORS.md by @JohnVillalovos in #627
- DB upgrade scripts by @JohnVillalovos in #630
- fix: require PHP 8.2 or newer by @JohnVillalovos in #631
- Update smarty5.5 by @labmecanicatec in #632
- docs: minor cleanup to the docs by @JohnVillalovos in #634
- docs: remove reference to hedgedoc as it is gone by @JohnVillalovos in #635
- ci: remove PHP 8.1 jobs and references by @JohnVillalovos in #636
- docs(SAML-Configuration.md): fix missing space by @JohnVillalovos in #638
- docs(readme): added demo section to README by @lucs7 in #639
- docs: fix typo by @JohnVillalovos in #640
- docs: initial setup of a Sphinx based docs by @JohnVillalovos in #633
- ci(stale): correct message formatting, exempt assigned by @JohnVillalovos in #641
New Contributors
- @nrundle made their first contribution in #422
- @effgarces made their first contribution in #441
- @njm506 made their first contribution in #458
- @cgutteridge made their first contribution in #456
- @VitorVieira20 made their first contribution in #461
- @JohnXLivingston made their first contribution in #467
- @lucs7 made their first contribution in #468
- @lennert1986 made their first contribution in #448
- @larsl-net made their first contribution in #499
- @supaeasy made their first contribution in #577
Full Changelog: 2.8.6.2...v3.0.0