Skip to content

refactor(FullCalendar): Update FullCalendar to v6.1#1359

Merged
JohnVillalovos merged 1 commit intoLibreBooking:developfrom
labmecanicatec:update-fullcalendar
Apr 24, 2026
Merged

refactor(FullCalendar): Update FullCalendar to v6.1#1359
JohnVillalovos merged 1 commit intoLibreBooking:developfrom
labmecanicatec:update-fullcalendar

Conversation

@labmecanicatec
Copy link
Copy Markdown
Collaborator

@labmecanicatec labmecanicatec commented Apr 23, 2026

  • Upgrade FullCalendar from v3.4 to v6.1.
image
  • The List view of FullCalendar is implemented.
image
  • In dayDialog, the dayDialogCreate button is hidden if a schedule is selected in the filter; this prevents an incorrect redirect to a reservation that cannot be created.
image
  • Remove the use of Moment.js and replace it with date-helper.js.

Assisted-by: Copilot:GPT-4.5

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Upgrades the app’s calendar integration from FullCalendar v3.4 to v6.1, adds List view support, and replaces Moment.js-dependent date handling with date-helper.js.

Changes:

  • Switch FullCalendar JS includes to v6 global bundles (core + locales) and remove v3 CSS includes.
  • Refactor calendar and admin schedule management scripts to FullCalendar v6 APIs (events, clicks, drag/drop, view mapping).
  • Extend UI: add List view button text and hide the day-dialog “Create” action when a schedule-only filter is selected.

Reviewed changes

Copilot reviewed 9 out of 85 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
tpl/javascript-includes.tpl Loads FullCalendar v6 global JS and locales bundle.
tpl/globalheader.tpl Removes v3 FullCalendar CSS includes (needs v6 CSS replacement).
tpl/Calendar/calendar-page-base.tpl Adds date-helper.js, updates default date handling, adds List label.
tpl/Admin/Schedules/manage_schedules.tpl Enlarges custom layout modal; adds List label for FullCalendar buttons.
eslint.config.mjs Declares FullCalendar global for linting.
Web/scripts/date-helper.js Exports pad and provides date/time utilities to replace Moment usage.
Web/scripts/calendar.js Migrates main calendar to FullCalendar v6 API; adds List view + dayDialog create-button hiding logic.
Web/scripts/admin/schedule.js Migrates admin schedule layout calendar to FullCalendar v6 API.
Web/css/librebooking.css Adds/adjusts styles targeting FullCalendar v6 DOM/CSS classes.
Web/assets/vendor/fullcalendar/6.1.20/metadata.json Updates vendored FullCalendar metadata to v6.1.20.
Web/assets/vendor/fullcalendar/6.1.20/js/locales-all.global.min.js Adds FullCalendar v6 locales bundle.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/af.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ar-dz.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ar-kw.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ar-ly.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ar-ma.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ar-sa.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ar-tn.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ar.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/bg.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ca.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/cs.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/da.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/de-at.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/de-ch.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/de.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/el.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/en-au.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/en-ca.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/en-gb.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/en-ie.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/en-nz.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/es-do.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/es.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/et.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/eu.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/fa.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/fi.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/fr-ca.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/fr-ch.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/fr.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/gl.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/he.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/hi.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/hr.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/hu.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/id.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/is.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/it.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ja.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/kk.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ko.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/lb.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/lt.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/lv.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/mk.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ms-my.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ms.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/nb.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/nl-be.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/nl.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/nn.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/pl.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/pt-br.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/pt.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ro.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/ru.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/sk.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/sl.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/sr-cyrl.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/sr.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/sv.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/th.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/tr.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/uk.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/vi.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/zh-cn.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/js/lang/zh-tw.js Removes v3 locale file.
Web/assets/vendor/fullcalendar/3.4.0/css/fullcalendar.print.min.css Removes v3 print CSS.
Web/assets/vendor/fullcalendar/3.4.0/css/fullcalendar.print.css Removes v3 print CSS (unminified).
Web/assets/vendor/fullcalendar/3.4.0/css/fullcalendar.min.css Removes v3 base CSS.
Comments suppressed due to low confidence (1)

Web/scripts/calendar.js:201

  • gid is always reset to an empty string on filter change, which will clear any currently-selected group (the page supports gid in the URL and _options.eventsData.gid is initialized from it). This likely breaks group filtering when changing schedule/resource. Preserve the existing group id (e.g., from _options.eventsData.gid or getQueryStringValue('gid')) instead of forcing gid = ''.

Comment thread tpl/globalheader.tpl
Comment thread Web/scripts/calendar.js
Comment thread Web/scripts/calendar.js Outdated
Comment thread Web/scripts/calendar.js Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 9 out of 85 changed files in this pull request and generated 1 comment.

Comment thread Web/scripts/calendar.js
- Upgrade FullCalendar from v3.4 to v6.1.
- The List view of FullCalendar is implemented.
- In dayDialog, the dayDialogCreate button is hidden if a schedule is selected in the filter; this prevents an incorrect redirect to a reservation that cannot be created.
- Remove the use of Moment.js and replace it with date-helper.js.

Assisted-by: Copilot:GPT-4.5
Copy link
Copy Markdown
Collaborator

@JohnVillalovos JohnVillalovos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JohnVillalovos JohnVillalovos merged commit 661db3d into LibreBooking:develop Apr 24, 2026
16 checks passed
@labmecanicatec labmecanicatec deleted the update-fullcalendar branch April 24, 2026 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants