************************** Scheduler Changelog *************************
Scheduler Changelog per year: 2011 / 2012 / 2013 / 2014 2015 / 2016 / 2017 / 2018 2019 / 2020 / 2021 / 2022 / 2023 / 2024/ 2025 / 2026
******************2011******************
# 2.00 2011/11/22:
-new scheduler engine; new database;
-update 1.X to 2.00 maye change old data houre: it convert it in UTC format (GMT+0 time)
-add rules for user / equipment / category reservation (new setup)
-add equimpent notifications
-add time limit for reservation (new setup)
******************2012******************
# 2.0.1 2012/02/08:
-bug correction (double quote in equipment name)
-add link on equipment name on Timeline view to access to this equipment. 2012/03/06
-patch bug (now display equipment even if category is null)
-patch bug: empty category are now allowed
-add possibility to see all uncategorized equipments 2012-04-19
-CSS correction 2012-08-01
– Alert setup bug (checkbox)
– Email alert sending bug corrected (wrong manager email)
– Added location and INV ref to equipment list # 2.0.3 2012/10/24:
– Bug fix: reservation limits set to 0 now accepted
– Reservation outside limit ranges are ignored/blocked
– Layout CSS correction (doctype) – GMT to local time conversion in alerts
-small lang correction (en) ***Fix
– Bug in some recurrent situations using FF (fixed in connector.php).
# 2.0.5 2012/03/29:
– New calendar/scheduler engine DhtmlxScheduler v3.7
– minor fixes in scheduler logic
# 2.0.6 2012/05/02:
– Filter equipment categories: do not show categories with no equipment
– Bug with DELETE reservation icon
2012/05/13:
– BUG fix: utf8_encode added to text of reservations to prevent XML breaking
******************2013******************
# 2.1 2013/09/05:
– New calendar/scheduler engine DhtmlxScheduler v4.0
– BUG fix: Multi day display on regular calendar
– BUG fix: Timeline display when dragging on scrolled page
– IMPROVEMENT: Better setup management (not losing checkboxes when changing page views) for alerts, limits, etc.
******************2014******************
2014/02/28:
– BUG fix: equipment special reservation rules setup unreactive checboxes
– BUG fix: reporting for long reservations
2014/03/07:
– BUG fix: Equipment setup. New version of bxslider
– Added: equipment setup
2014/03/13:
– BUG fix: Calendar crash with users having quotes in name
2014/03/18:
– BUG: corected for PHP5.4 support
# 2.2 2014/03/28:
– BUG: Chrome >> delete reservation
– Added: Reservation billing/costs management (OPTION)
– Charts size increased
# 2.3 2014/06/26:
– BUG: Time line end hour limit
– ADDED: Admin users per equipment
– New calendar dhtmlxscheduler: better drag & drop usage, multiday drag…
# 2.35 2014/06/26:
– BUG: add events
– New layout dhtmlxscheduler: compatible IE11 # 2.36.1 2014/08/19: – correction on drag reservations
– correction on timeline collisions
– correction on timeline step and day limits
******************2015******************
# 2.4 2015/01/29:
– ADDED: same time reservations for defined equipments
– ADDED: same time reservations setup 2015/05/20:
– BUG: session bug when filtering users
# 2.45 2015/05/29:
– BUG: name of reservation’s user in reservation alert email
– ADDED: iCal export
– ADDED: iCal import
2015/06/11: – Minor style change: new login design
2015-07-22: – BUG: multiple reservations
# 2.46 2015-09-02:
– BUG: search for reservations blocks the half hour before
– ADDED: user email added to the reservations
2015-09-21:
– BUG: reservations weren’t saved in DB (render_sql can’t have a JOIN in the query)
******************2016******************
2016-02-18:
– Collision
– BUG: arquived equipment still appeared in the category reserve list
# 2.5 2016-07-29:
– ADDED: admin equipment calendar
– ADDED: favorites equipment calendar
– ADDED: favorites equipment links in “normal” equipment calendar view
– ADDED: favorites equipment admin area
– ADDED: home dashboard
2016-09-09:
– Dhtmlx connector now can handle special chars
– Favorite selection list now takes into consideration equip and user filters
# 2.6 2016-10-04:
– Block equipments that are under maintenance
– Admin area to select which equipments are to be blocked when under maintenance
– Associated Info area was created with an upload field and custom fields (type: field, date, select)
– Admin area to manage custom fields
– BUG: install.php table ‘labcal_setup’ had missing fields
# 2.7 2016-11-23:
– DHTMLX scheduler upgraded to 4.3.35
– New full month timeline
# 2.701 2016-12-21:
– DHTMLX now works correctly in IE 11
******************2017******************
2017-01-05:
– BUG: bug when deleting reservations
2017-01-13:
– NEW: support for new PHPEmail
2017-01-17:
– BUG: in favorite calendar the past event alert would show up even if it wasn’t a past event
– BUG: multiple edits triggered the max collisions warning 2017-02-15:
– BUG: DHTMLX now works correctly in IE 11 (new correction)
– BUG: bug when deleting reservations (new correction)
******************2018******************
# 2.8 2018-01-04/12:
– CHANGED: DHTMLX uses the native JS function DATE with the server_utc to false
– BUG: users with no permissions could (only visible) change a reservation
– CHANGED: scheduler end hour is ok (the last hour shown is the previous step before the end hour)
– BUG: sometimes the name and email of the reservantion owner was shown as undefined
– BUG: the top LC menu would appear over the scheduler in full page view
– BUG: archived equipment was accessible in the setup to configure what equipments can be reserved
– BUG: in the setup to configure what equipments can be reserved the keyword filter would only work if the word written was the first one in the equipment name
– BUG: english text correction (equipment is an uncountable noun)
– NEW: ability to select multiple options (user, equipment, equipment category) on the report generator instead of just one
– CHANGED: column description in the report and report export
– NEW: private/public notes per equipment system
– BUG: repeated reservations can now be deleted (the deletion stops the recurrance)
******************2019******************
2019-05-28/29:
– BUG: when the create reservation form was open simultaneously in multiple browsers the check for multiple reservations would fail (M1509)(M1830)
– BUG: the reservation dates that were sent in the new reservation alert email were incorrect (2h hours different) (M1832)
– BUG: incorrect demo licence (M2588)
– BUG: autocomplete of equipment input was being incorrectly built (M1494)
– CHANGED: equipment and category autocomplete now shows all options (M1495)
2019-07-08/09:
– BUG: report per selected equipment wouldn’t retrieve any data (M2709)
– CHANGED: location filter when selecting equipment (M2274)
– CHANGED: report generation improvements like allowing the selection of simultaneous equipment/category filter with user filter(M1510)
# 2.81 2019-07-17:
– BUG: CSS adjust to left calendar and scheduler’s view titles (M3663)
– BUG: text was shown outside for small interval reservation (M3664)
– BUG: home page charts incorrect encoding when reloading (M3665)
– BUG: z-index correction to prevent scheduler from cutting the LC header menu (M3666)
******************2020******************
# 2.9 2020-02-10:
– NEW: API (M4238)
– ADDED: new columns ‘status’, ‘check_in_date’ and ‘check_out_date’ in ‘labcal_reservations_v2’ table
– ADDED: new columns ‘modify_reserv_time’ and ‘checkin_cat_list’ in ‘labcal_setup’ table
– ADDED: ability to activate check-in/out system by equipment category and to modify reservation start/end time (M4239)
– ADDED: new section on home page (displaying the information of user cnonnected reservations) (M4240)
– NEW: ability to manage reservations check-in/out (M4241)
– BUG: multiple reservations in favorite calendar if an equipment is not the same (M4242)
– BUG: time period in time select on lightbox is not limited by first and last hours (M4256)
# 3.0 2020-03-30:
– NEW: Moved to layout LC v6.0
– CHANGED: using PHP_Mailer from LC
– REMOVED Artishow
2020-04-17:
– BUG: Reports bug due to lang
2020-04-20:
– BUG: Reports bug due to rewriting of variable $report_period
– BUG: Reservation list bug due to administrator rights
2020-04-24:
– IMPROVEMENT: avoid check-in/out for recurring events
– IMPROVEMENT: Set more permissions to check-in/out
– IMPROVEMENT: Move “repeat event” section of lightbox to LCv6.0 layout
– IMPROVEMENT: Small modification in dhtmlx code source to display correctly the ‘Full day’ checkbox of the lightbox
# 3.01 2020-04-30:
– BUG: multiple reservation setup bug due to not setting a unique index for the field ‘equipment_id’ in the table ‘labcal_multi_reservations’
– BUG: multiple reservation bug in favorite calendar’
# 3.011 2020-05-04
– BUG: multiple reservation bug while reservation editing in all calendars
# 3.012 2020-05-07
– BUG: collision bug due to recurring reservations while creating of a new simple reservation (dayly, weekly, monthly)
2020-05-13
– BUG: collision bug due to recurring reservations while creating of a new recurring reservation (dayly, weekly)
2020-06-09
– BUG: Fix previous modifications due to the ‘Full day’ checkbox of the lightbox in DHTMLX source code (dhtmlxscheduler.js and dhtmlxscheduler_minical.js) # 3.013 2020-09-23
– NEW: added “copy activation key to clipboard” feature 2020-11-17
– BUG: encoding issue with Morris chart on dashboard page 2020-11-18
– NEW: added a tooltip when activation key is copied 2020-12-11
– BUG: adjust date displaying on mini calendar when reservation by categories (ticket #593551)
– BUG: scheduler blocks always selecting category on maintenance even if setup option says not to (ticket #593551)
******************2021******************
# 3.1 2021-02-25
– IMPROVEMENT: enable reservation of multi-day events
# 3.11 2021-04-22
– BUG: e-mails are not sent
– IMPROVEMENT: Email alert: use new LC function send_email_phpmailer with new layout #3.12 2021-05-04
– CHANGED: update DHTMLX (v5.3.9)
– CHANGED: format equipment usage costs page
– CHANGED: use $DB_ENGINE #3.13 2021-05-21
– BUG: check collisions => exclude event date endpoints (M5312)
– BUG: calendar view => set right value (‘bar’) to timline property render
– BUG: category timeline => for some categories equipment ids are broken during rendering #3.14 2021-05-21
– BUG: escape line break in equipment names
– NEW: support saas mode licences #3.15 2021-07-13
– BUG: fix scheduler tooltip #3.16 2021-08-05 – BUG: mySQL 8 => add conditions to DHTML source code when insert event 2021-09-06
– BUG: save equipment per user options #3.2 2021/09/07-09 – IMPROVEMENT: my favorites => put favorite equipments first to display
– IMPROVEMENT: my favorites => improve pagination display
– IMPROVEMENT: setup => users: * put double pagination to reduce response time * improve data base logic * improve UI et UX 2021/10/20
– BUG: fix a small layout bug in the event creation popup #3.21 2021/10/29 – BUG: reports => a query parameter of the links had a bad value #3.3 2021/11/02-10
– IMPROVEMENT: reports => multiple user selection (M5586)
– IMPROVEMENT: reports => multiple equipment selection (M5586)
– IMPROVEMENT: apply checki-in/out feature in calendar (4213)
– IMPROVEMENT: date format + time zone
– IMPROVEMENT: transparent install.php
– IMPROVEMENT: integrate scheduling to LC equipment module 2021/11/16
– IMPROVEMENT: setup => display an alert if there are no more categories #3.31 2021/11/17
– IMPROVEMENT: reservantions list => open an equipment in LC
– IMPROVEMENT: reservantions list => edit description
– BUG: fix includeLangFile function #3.32 2020/11/29
– IMPROVEMENT: improve integration with LSM #3.33 2020/12/20
– IMPROVEMENT: disable/enable selects of day/month/year in the lightbox when switching repeat event view (M5682) 2021/01/07
– BUG: users setup => wrong variable name user_filter (was user_filer) #3.4 2021/01/07
– IMPROVEMENT: setup => users and res admins 2021/01/10
– BUG: dashboard => wrong logic for selecting users with most reservations
– IMPROVEMENT: dashboard => Dashboard: reduce the visibility depending on user’s level (M5702)
******************2022******************
#3.41 2022/01/24
– BUG: report reservation list => occurrences of recurring events have been miscalculated
– IMPROVEMENT: report reservation list => show end date (M5719) 2022/02/04 – BUG: fix layout issue on the home_dashboard page 2022/02/10
– BUG: fix a small layout issue in Firefox on the home_dashboard page #3.43 2022/03/02
– NEW: add a new setup option ‘start page’
– NEW: add a new setup option ‘timeline label width’ #3.44 2022/03/10
– BUG: fix session issue 2022/03/18 – IMPROVEMENT: setup => multiple reservantions 2022/03/21
– IMPROVEMENT: setup => equimpent and alerts 2022/03/22
– IMPROVEMENT: setup => reservantion time limit #3.441
2022/03/28- 31
– IMPROVEMENT: setup => cost definitions
– BUG: do not take into account a LC selected language which is not presented in the scheduler
– IMPROVEMENT: add an icon to go to the calendar in reservation lists
– IMPROVEMENT: open event additional info in fancybox
#3.442 2022/04/06
– IMPROVEMENT: improve event additional info
#3.443 2022/04/20
– BUG: fix insert reservation in MySQL8
– BUG: clean some apache warnings
#3.444 2022/06/06
– BUG: dropdown select list took a long time to load, now works with a fast search of equipment. (M5897).
2022/07/12
– BUG: category timelime was not working very well.
– BUG: print, import and export features was unavaible.
– BUG: when sunday is selected as a first day always get -1 day when select on scheduler
2022/07/20
– IMPROVEMENT: added user and equipment search no report.
2022/07/29
– IMPROVEMENT: Linked colors to categories: Equipment Categories (5997)
#3.445 2022/08/17
– BUG: anticollision events and no create events in the past feature.
2022/08/25
– IMPROVEMENT: show colors on equipments category list (M5997).
– BUG: uncategorized equipments must be listed under Uncategorized option and pagination(M6050).
– IMPROVEMENT: show category color when equipment selected on calendar (M6051).
2022/08/30
– IMPROVEMENT: Location field in select list nested with equipment and styles (M6064).
2022/09/19
– BUG: Fix unlisted favorite equipment and blocked booking on Repeatable events. (M6093 & M6094)
2022/09/20
– BUG: Hide blocked equipment and avoid scheduler in calendar. (M6097)
– IMPROVEMENT: Show equipment name on the top bar (M6098)
– IMPROVEMENT: Change lables for better understanding (M6099)
2022/09/22
– BUG: The modification in a reservation was not taken into account. (M6092)
2022/09/23
– CHANGE: Add equipment name in the scheduler. (M6098)
******************2023******************
2023/01/01
– IMPROVEMENT: Selects became wider and adopted to mobile/tablet/small/wide screens. (M6278)
– IMPROVEMENT: Clear button added to autocomplete selects. (M6279)
2023/03/09
– BUG: Make save button work in different scenarios. (M6395)
2023/03/18
– IMPROVEMENT: Grant superadmin permissions for admins in scheduler addon. (M6483)
2023/04/20
– IMPROVEMENT: Upgrade DHTMLX scheduler to v6.0.3. (M6566)
2023/04/26
– IMPROVEMENT: Fix bugs and rewrite UX/UI part of scheduler calendar (M6566)
2023/05/04
– IMPROVEMENT: Fix more bugs
#3.45
2023/05/31
– IMPROVEMENT: Add project code to reservation (M5834)
– IMPROVEMENT: Project Code as filter for generate report (M6629)
2023-09-29
– IMPROVEMENT: PHP8.2 support
– BUG: fullscreen fix header nav display
2023-10-11
– BUG: fix install process
2023-11-23
– BUG: fix license check
2023-11-27
– IMPROVEMENT: Allow each equipment to have available hours (M6957)
2023-11-27
– BUG: Fix special character which blocks the equipment dropdown (M6990)
******************2024******************
#3.46
2024-01-08
– BUG: Fix My Favorites Calendar UI bug (M6376)
2024-02-15
– BUG: Fix issue with reservation in day view (M7092)
– BUG: Fix issue equipment dropdown on “select equipment” page
2024-02-20
– BUG: Fix encoding display + add loading indicator on locations and equipments filters
#3.47 2024-02-21
– IMPROVEMENT: Move additional fields to reservantion popup in equipment scheduling (M7127)
#3.48 2024-02-21
– IMPROVEMENT: Update data base fields
2024-03-12
– IMPROVEMENT: Report graph to display all the equipment names (M7207)
2024-03-14
– BUG: fix Equipment select dropdown and show all the available equimpent for the particular user (M7258)
2024-03-22
– BUG: fix session lost after reservation (M7291)
2024-04-11
– BUG: fix when check-in is not done, check-out is not possible (M7340) 2024-04-18
– BUG: fix a random error in setup page
2024-05-16
– BUG: fix install finish fatal error
– BUG: fix event saving error
2024-05-17
– BUG: fix duplicate functions fatals
#3.51 2024-05-17
– BUG: Fix EQ select issue
#3.52 2024-05-24
– BUG: Fix start page, fix blocked equipments for schedule, add collisions check on drag and drop
2024-05-27
– IMPROVEMENT: Add more securization on COOKIE
#3.53 2024-05-30
– BUG: Fix DB compatibility
– BUG: Fix select all issue in Reservation Administrators Setup
– BUG: Fix TrainingManagement permissions
2024-06-07
– BUG: Fix SQL fatal
2024-06-18
– IMPROVEMENT: Imrove report charts
******************2025******************
#3.54 2025-01-17
– BUG: Security fix (DEV-709)
2025-01-22
– BUG: fix FR encoding issue
2025-01-29
– BUG: fix encoding fatal on Setup Users (DEV-783)
#3.55 2025-03-11
– BUG: Fix category timeline does not save when dragging (DEV-924)
– BUG: Fix drop down menu behind favorites Calendar (DEV-926)
2025-06-06
- BUG: Fix bug when undefined TimeZone
2025-06-30
- BUG: Fix some Potential SQL Injections (DEV-1041)
2025-07-02
- BUG: Fix some Potential SQL Injections (DEV-1041)
2025-07-08
- BUG: Security fix (DEV-1041)
2025-07-17
- BUG: Security fix (DEV-1041)
#3.56 - 17/07/2025
2025-10-17
- BUG: fix potential SQL injection (DEV-1439)
******************2026******************
2026-02-18
- BUG: fix Setup->Users update all action
2026-02-19
- BUG: fix a potential SQL injection (DEV-1781)
#3.57 - 19/02/2026
2026-04-17
- IMPROVEMENT: Select Equipment screen — card layout, spacing, unified panel heights and scroll areas
- IMPROVEMENT: My Favorites panel — list of favorite equipment, Calendar disabled when none; footer aligned with other cards
- IMPROVEMENT: Location and equipment fields — full-width flex rows, taller controls, rounded inputs (addon CSS)
- BUG: Decode HTML entities in equipment names and locations (Hebrew, Chinese, etc.) for autocomplete and lists; avoid mysql_prepare redeclare with php7_bridge
2026-04-16
- IMPROVEMENT: Reservations Additional Info (associated_info) — card-style blocks, header flex layout, table styling (`addon.css`); extra vertical spacing between cards and padding above the list
- IMPROVEMENT: Reports → Equipment notes (`reports_equip`) — bordered card panels with padding and column gutter; taller note field and flex layout so “Post” and “View” blocks align in height (`sched-reports-equip-*` in `addon.css`); inner wrapper (`sched-reports-equip-page-inner`) adds padding between the module `lc-card` border and the two panels
- IMPROVEMENT: Equipment notes — submit rows use `sched-reports-equip-submit-row` (`margin-top: auto`) so Write / View buttons align at the bottom of each card; removed jQuery fixed form heights that conflicted with flex; report results wrapped in `sched-reports-equip-results-section` with top spacing and border so the toolbar/table no longer sits flush under the cards
- BUG: Core `js/print.js` — removed stray `alert(); return;` so `printSpecial()` can run when given a target element id (default `#content_print`)
- IMPROVEMENT: Equipment notes printable report — `schedPrintEquipmentNotesReport()` opens a styled print document (banner, proper `<thead>`/`<tbody>` table, avatars hidden on paper) and calls `window.print()` directly; screen table gets banner + horizontal scroll (`addon.css`)
- BUG: Equipment notes print — empty tab caused by `window.open(..., 'noopener')` returning `null` while the blank tab still opened; print now uses an off-screen iframe (+ blob URL fallback) so content is written reliably before `print()`
- IMPROVEMENT: Equipment notes cards — same layout pattern as Select Equipment: scrollable `sched-reports-equip-form-body`, pinned `sched-reports-equip-footer` with border/top strip so Write / View submit rows align at the bottom across both columns
- IMPROVEMENT: Equipment notes — smaller default note textarea (`rows` 5, `min-height` ~132px, `max-height` 220px); note row no longer flex-grows so the left panel does not force excess height and the View card keeps less empty space
- IMPROVEMENT: Usage reports (`action=reports`) — same boxed card pattern as Select Equipment / equipment notes: `sched-reports-main-page-inner` inset, card + scrollable `sched-reports-main-form-body` + `sched-reports-main-footer` on the generator and history shortcut; chart/list/bill output in `sched-reports-main-results-shell` (`addon.css`)
- BUG: Usage reports generator — Run Report control was still inside `sched-reports-main-form-body` (missing closing `</div>`); moved into `sched-reports-main-footer` and restored closing wrapper for the card column
- BUG: Usage reports (`sched-reports-main-*`) — `overflow` on card/form-body clipped multiselect dropdowns; switched to `overflow: visible`, dropped inner scroll so the module/page scrolls; raised `.multiselect-container.dropdown-menu` z-index (`addon.css`)
- BUG: Setup → Equipment costs — narrow cost inputs (`width:30px`) looked clipped under global LC input CSS; scoped overrides on `#target_refrech_from_filter.sched-setup-equip-costs` (`addon.css`)
- IMPROVEMENT: Setup → Equipment costs — `#data` wrapped with `sched-setup-costs-data-panel` (border, radius, padding, light background) so filter + grid read as one card (`addon.css`)
- IMPROVEMENT: Setup → Equipment costs — hour/unit inputs default width **72px** (`sched-setup-cost-numeric-input`, `addon.css`) for two-decimal values; column cells **88px** (`scheduler_equip_costs_sort.php`)
- IMPROVEMENT: Setup → Scheduler (`action2=scheduler`) — two bordered cards (`sched-setup-scheduler-*`): padded form body + grey footer strip with Update buttons; inset inner panel for daily-view options (`frmschedsetup.inc.php`, `addon.css`)
- BUG: Setup → Scheduler — restored missing `</div>` closing `sched-setup-scheduler-form-body`; unclosed markup broke page flex layout (narrow column / misplaced footer content)
- IMPROVEMENT: Setup → Scheduler — footer strip uses `border-radius: 0 0 11px 11px` so bottom corners align with the card shell (`addon.css`)
- IMPROVEMENT: Setup → Scheduler — inner “daily view” panel: white shell + last `.form-group.tablerow` bottom radius/clip so the 8px frame shows at the bottom without clipping the help image or category menu (`addon.css`)
- BUG: Theme toolbar border (global `.tabletitre`) flush against first card — scoped toolbar class and CSS overrides (including fragment `<style>`) so accent border does not touch cards
- BUG: Associated info AJAX reload — custom field rows output after the documents row (valid table structure); custom fields query selects `field_id` where required
2026-04-17
- BUG: Favorites calendar (Select Equipment → Calendar) — `onEventCreated` assigned the pipe-separated favorites string to `equipment_id`; lightbox select/save treated it as invalid and showed "You should select an equipment." — default new events to the first favorite equipment id (same pattern as single-equipment day view)
- BUG: Favorites quick-switch links (top bar) were hidden on `favorite_view` by mistake — show them on the combined favorites calendar again; only `admin_view` omits the row
- IMPROVEMENT: Dashboard first main row (Reservations line chart + Last reservations) — equal-height two-column layout
- BUG: Dashboard — Firefox stacked the second chart row over the first row (`sch_estilos.css`: `.container_div { float:left; width:50% }` broke the layout); main row uses CSS Grid + `float:none`/auto width on those columns
- IMPROVEMENT: Dashboard main row — left “Reservations” chart cell stretches to the same height as “Last reservations” (column flex + full-height table body; chart `div` flex-grows)
- BUG: Reports → equipment notes (`action=reports_equip`, View Notes) — `doOnLoad2()` used wrong calendar refs (`myCalendar` / start calendar for end date); SQL could run with unset period filters — fix calendar init + build query only after valid date range
#3.6 - 17/04/2026
2026-05-07
- IMPROVEMENT: improve support of recurrent equipment maintenance alert on reservation blocking system
#3.61 - 07/05/2026
2026-05-08
- BUG: Embedded scheduler (`scheduler_content.php` with `lc=1`) — remove redundant 500px `#parentId` spacer (empty mini-calendar slot) that doubled vertical space; flex layout so `#scheduler_here` fills the iframe while DHTMLX scrolls inside; parent Equipment record iframe resized from real document height (capped to viewport) plus `scheduler.setSizes()` hints.
- BUG: Embedded scheduler iframe — `$loginsession_id` was often unset (blacklisted from GET), so `#scheduler_here` was never output (blank below header); sync from `$_SESSION['loginsession_id']` and use same fallback in `scheduler_content_cal.php`. Fix blocked-equipment `if` parentheses on first line.
#3.62 - 08/05/2026
2026-05-08
- BUG: `scheduler_header_cal.php` — `init_scheduler()` used `attachObject(scheduler_div)` without quotes (undefined JS variable); use `'scheduler_div'` so the layout attaches the main scheduler pane (matches other scheduler headers).
- BUG: Embedded scheduler (`lc=1`) — skipped dhtmlX layout branch when `#cal_div` is absent: attaching `#scheduler_div` into hidden `#parentId` moved the grid under `display:none` (calendar vanished after load). When `lc` is set, skip `dhtmlXLayoutObject` / `attachObject` for that path.
- IMPROVEMENT: Equipment record iframe (`equipments_record_view.php`) — for `lc=1` scheduler URL, size iframe to available viewport height (not low `scrollHeight` from flex layout); extra resize passes + `scheduler.setSizes()`; flex chain on embed (`scheduler_content.php` / `scheduler_content_cal.php`).
- IMPROVEMENT: Embedded scheduler header (`scheduler_content.php`) — square top edge, white shell, bottom border only (avoid white corner gaps vs iframe).
- IMPROVEMENT: Day/week view UI (`css/addon.css`) — soften mini-calendar / layout shadows; hairline between layout panes; thin scrollbars where supported.
- BUG: Main calendar — nested vertical scrollbars: core `.dhx_cal_data` already scrolls; scoped `#scheduler_here div[ida="dhxMainCont"]` to `overflow-y: visible` while mini-cal `#cal_div` keeps inner scroll; `dhxMainCont` uses `overflow: auto` instead of forced `scroll` where applicable (`scheduler_content_cal.php`).
- IMPROVEMENT: Mini-calendars — `sync: true` on both `renderCalendar` configs so prev/next arrows advance both months together (`scheduler_header_cal.php`, fav/cat/cat_longer/admin headers); existing `linkCalendar(..., +1 month)` keeps lower calendar at month+1.
- BUG: Left mini-cal column — layout cell `.dhxcont_global_content_area` had `overflow: hidden` with no scroll; first column now `overflow-y: auto` so tall `#cal_div` content is reachable (`addon.css`).
26-06-17
- BUG: fix list of users isn't synchronised with LC list (DEV-1716)
- BUG: fix bugs in Problematic reservations (DEV-1216)
#3.63 - 22/07/2026
2026-07-22
- BUG: add 'scheduler_superadmin' field to upgrade and install script
2026-09-09
- BUG: Reports - "Next 3/6 months" periods rewrote $report_period before the date cleanup, so the billing report, both Excel exports and the print pages filtered on a past window and came back empty (DEV-1064)
- BUG: Reports - recurring reservations were expanded up to the recurrence end date instead of their booked number of occurrences, adding one event and its hours to every count (new getRecurrenceOccurrenceLimit() in inc/functions.php) (DEV-1064)
- BUG: Reports - summary tables counted per user and per project code before the date filter was applied, so the detail rows did not add up to the totals shown next to them (DEV-1064)
- BUG: Reports - equipment name, category and location were empty for recurring reservations in the graphic summary (DEV-1064)
- BUG: Reports - the "Select user" checkbox was ticked again on every run when no equipment or category was selected (DEV-1064)
- BUG: Reports - a project code alone did not run any report; it is now a valid filter on the summary, list and billing reports (DEV-1064)
- BUG: Reports - reservation list showed the project code of the last reservation of the equipment instead of the one of the row, and rendered a duplicate empty "Project code" header (DEV-1064)
- IMPROVEMENT: Reports - project code is exported in both Excel files and carried over in the Excel links of the list and billing reports (DEV-1064)
- IMPROVEMENT: Setup menu - entries reserved to equipment administrators are greyed out for user level accounts instead of being hidden (DEV-1064)
- UX: better naming on Reservation Options (DEV-1717)
- IMPROVEMENT: add support of additional reservation information on report export (DEV-1894)
#3.64 - 09/09/2026
2026-09-10
- IMPROVEMENT: reservation alert email uses LabCollector core branded template and CTAs to Open Scheduler + Open Quick View (DEV-838)
- UX: direct link to equipment detail from Dashboard (DEV-1602)
- IMPROVEMENT: add more events on audit trail to cover at least Reservations life events from any input
2026-09-16
- IMPROVEMENT: Equipment reservation now enforces group-based visibility and access rules across the entire Scheduler add-on, including timelines, reports and exports (DEV-1882)
- SECURITY: Added server-side validation on all equipment queries and reservation actions to prevent cross-group access through forged identifiers (DEV-1882)
- BUG: Fixed maintenance blocking, equipment filtering and autocomplete issues related to group restrictions and Scheduler allow-lists (DEV-1882)
- BUG: encoding fix on dashboard
2026-09-17
- FEATURE: "Add to my calendar" for reservations: Google Calendar, Outlook.com, Microsoft 365, Yahoo Calendar links and an .ics download for Apple Calendar, Outlook desktop and other calendars (DEV-1512)
- IMPROVEMENT: a new reservation offers to be added to the user's calendar right after it is saved; the option is also in the event menu of the equipment and favorites calendars and in My current/future reservations (DEV-1512)
- IMPROVEMENT: recurring reservations are exported with their recurrence rule, timezone and modified/deleted occurrences; group scoping rules of DEV-1882 apply to the export (DEV-1512)