This is an automated email from the ASF dual-hosted git repository.

solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git


The following commit(s) were added to refs/heads/master by this push:
     new f7b67eae9 [OPENMEETINGS-2824] wicketstuff, fullcalendar, h2 and 
maven-surefire
f7b67eae9 is described below

commit f7b67eae973b4eafa78059f2e8a061d9097c2385
Author: Maxim Solodovnik <[email protected]>
AuthorDate: Wed Sep 9 11:11:49 2026 +0700

    [OPENMEETINGS-2824] wicketstuff, fullcalendar, h2 and maven-surefire
---
 LICENSE                                            | 40 ++++++------
 .../web/user/calendar/AppointmentModel.java        |  6 +-
 .../web/user/calendar/CalendarPanel.java           | 72 ++++++++++++++--------
 .../web/user/calendar/OmCalendarEvent.java         |  2 +-
 .../web/user/calendar/calendar-functions.js        | 61 +++++++++---------
 pom.xml                                            | 11 ++--
 6 files changed, 105 insertions(+), 87 deletions(-)

diff --git a/LICENSE b/LICENSE
index 8266fbf7e..02b4e50e3 100644
--- a/LICENSE
+++ b/LICENSE
@@ -262,7 +262,7 @@ conditions of the following licenses.
 
     Eclipse Public License, Version 1.0
 
-        * H2 Database Engine (com.h2database:h2:2.4.240 - 
https://h2database.com)
+        * H2 Database Engine (com.h2database:h2:2.5.250 - 
https://h2database.com)
 
     Eclipse Public License v2.0
 
@@ -290,14 +290,10 @@ conditions of the following licenses.
     MIT License
 
         * @eonasdan/tempus-dominus 
(org.webjars.npm:eonasdan__tempus-dominus:6.10.4 - https://www.webjars.org)
-        * @fullcalendar/bootstrap5 
(org.webjars.npm:fullcalendar__bootstrap5:6.1.20 - https://www.webjars.org)
-        * @fullcalendar/core (org.webjars.npm:fullcalendar__core:6.1.20 - 
https://www.webjars.org)
-        * @fullcalendar/daygrid (org.webjars.npm:fullcalendar__daygrid:6.1.20 
- https://www.webjars.org)
-        * @fullcalendar/google-calendar 
(org.webjars.npm:fullcalendar__google-calendar:6.1.15 - https://www.webjars.org)
-        * @fullcalendar/interaction 
(org.webjars.npm:fullcalendar__interaction:6.1.20 - https://www.webjars.org)
-        * @fullcalendar/list (org.webjars.npm:fullcalendar__list:6.1.20 - 
https://www.webjars.org)
-        * @fullcalendar/multimonth 
(org.webjars.npm:fullcalendar__multimonth:6.1.20 - https://www.webjars.org)
-        * @fullcalendar/timegrid 
(org.webjars.npm:fullcalendar__timegrid:6.1.20 - https://www.webjars.org)
+        * @fullcalendar/bootstrap5 
(org.webjars.npm:fullcalendar__bootstrap5:7.1.0 - https://www.webjars.org)
+        * @fullcalendar/core (org.webjars.npm:fullcalendar__core:7.1.0 - 
https://www.webjars.org)
+        * @fullcalendar/google-calendar 
(org.webjars.npm:fullcalendar__google-calendar:7.1.0 - https://www.webjars.org)
+        * @full-ui/headless-calendar 
(org.webjars.npm:full-ui__headless-calendar:7.1.0 - https://www.webjars.org)
         * @popperjs/core (org.webjars.npm:popperjs__core:2.11.8 - 
https://www.webjars.org)
         * @splidejs/splide (org.webjars.npm:splidejs__splide:4.1.4 - 
https://www.webjars.org)
         * @types/bootstrap (org.webjars.npm:types__bootstrap:5.2.10 - 
https://www.webjars.org)
@@ -311,7 +307,7 @@ conditions of the following licenses.
         * Checker Qual (org.checkerframework:checker-qual:3.55.1 - 
https://checkerframework.org/)
         * dd-plist (com.googlecode.plist:dd-plist:1.30 - 
http://www.github.com/3breadt/dd-plist)
         * dev.samstevens.totp:totp (dev.samstevens.totp:totp:1.7.1 - 
https://github.com/samdjstevens/java-totp/totp)
-        * fullcalendar (org.webjars.npm:fullcalendar:6.1.15 - 
https://www.webjars.org)
+        * fullcalendar (org.webjars.npm:fullcalendar:7.1.0 - 
https://www.webjars.org)
         * inputmask (org.webjars.npm:inputmask:5.0.9 - https://www.webjars.org)
         * JCL 1.2 implemented over SLF4J (org.slf4j:jcl-over-slf4j:1.7.27 - 
http://www.slf4j.org)
         * jQuery++ (org.webjars:jquerypp:1.0.1 - http://webjars.org)
@@ -335,7 +331,7 @@ conditions of the following licenses.
         * Tempus Dominus Bootstrap 4 
(org.webjars:tempusdominus-bootstrap-4:5.39.0 - http://webjars.org)
         * typeahead.js (org.webjars:typeaheadjs:0.10.5-1 - http://webjars.org)
         * uuid (org.webjars.npm:uuid:9.0.0-beta.0 - https://www.webjars.org)
-        * wicketstuff-urlfragment 
(org.wicketstuff:wicketstuff-urlfragment:10.10.0 - 
https://github.com/Horsed/WicketUrlFragment/wicketstuff-urlfragment)
+        * wicketstuff-urlfragment 
(org.wicketstuff:wicketstuff-urlfragment:10.11.0 - 
https://github.com/Horsed/WicketUrlFragment/wicketstuff-urlfragment)
 
     NOASSERTION
 
@@ -436,8 +432,8 @@ conditions of the following licenses.
         * Apache Tika XML parser module 
(org.apache.tika:tika-parser-xml-module:4.0.0 - 
https://tika.apache.org/tika-parser-xml-module/)
         * Apache Tika XMP commons 
(org.apache.tika:tika-parser-xmp-commons:4.0.0 - 
https://tika.apache.org/tika-parser-xmp-commons/)
         * Apache Tika ZIP commons 
(org.apache.tika:tika-parser-zip-commons:4.0.0 - 
https://tika.apache.org/tika-parser-zip-commons/)
-        * Apache Wicket IPageStore Common 
(org.wicketstuff:wicketstuff-datastore-common:10.10.0 - 
http://wicketstuff.org/datastores-parent/wicketstuff-datastore-common)
-        * Apache Wicket IPageStore Hazelcast 
(org.wicketstuff:wicketstuff-datastore-hazelcast:10.10.0 - 
http://wicketstuff.org/datastores-parent/wicketstuff-datastore-hazelcast)
+        * Apache Wicket IPageStore Common 
(org.wicketstuff:wicketstuff-datastore-common:10.11.0 - 
http://wicketstuff.org/datastores-parent/wicketstuff-datastore-common)
+        * Apache Wicket IPageStore Hazelcast 
(org.wicketstuff:wicketstuff-datastore-hazelcast:10.11.0 - 
http://wicketstuff.org/datastores-parent/wicketstuff-datastore-hazelcast)
         * Apache XBean :: ASM shaded (repackaged) 
(org.apache.xbean:xbean-asm9-shaded:4.26 - 
http://geronimo.apache.org/maven/xbean/4.26/xbean-asm9-shaded)
         * Asterisk-Java (org.asteriskjava:asterisk-java:3.42.2 - 
https://github.com/asterisk-java/asterisk-java)
         * Bootstrap (org.webjars:bootstrap:5.3.8 - http://webjars.org)
@@ -485,14 +481,14 @@ conditions of the following licenses.
         * Jettison (org.codehaus.jettison:jettison:1.5.7 - 
https://github.com/jettison-json/jettison)
         * JODConverter Core (org.jodconverter:jodconverter-core:4.4.11 - 
https://github.com/jodconverter/jodconverter/)
         * JODConverter Local (org.jodconverter:jodconverter-local:4.4.11 - 
https://github.com/jodconverter/jodconverter/)
-        * jqplot4java (org.wicketstuff:jqplot4java:10.10.0 - 
http://maven.apache.org)
-        * JqPlot Plugin Integration (org.wicketstuff:jqplot:10.10.0 - 
http://wicketstuff.org/jqplot-parent/jqplot)
+        * jqplot4java (org.wicketstuff:jqplot4java:10.11.0 - 
http://maven.apache.org)
+        * JqPlot Plugin Integration (org.wicketstuff:jqplot:10.11.0 - 
http://wicketstuff.org/jqplot-parent/jqplot)
         * JSpecify annotations (org.jspecify:jspecify:1.0.0 - 
http://jspecify.org/)
         * jwarc (org.netpreserve:jwarc:0.36.0 - https://github.com/iipc/jwarc)
         * Kurento Client (org.kurento:kurento-client:7.3.0 - 
https://kurento.openvidu.io/)
         * Kurento Common utils (org.kurento:kurento-commons:7.3.0 - 
https://kurento.openvidu.io/kurento-commons/)
         * Kurento JSON-RPC Client (org.kurento:kurento-jsonrpc-client:7.3.0 - 
https://kurento.openvidu.io/kurento-jsonrpc/kurento-jsonrpc-client/)
-        * library (de.agilecoders.wicket.webjars:wicket-webjars:4.0.14 - 
https://github.com/l0rdn1kk0n/wicket-webjars/wicket-webjars)
+        * library (de.agilecoders.wicket.webjars:wicket-webjars:4.0.15 - 
https://github.com/l0rdn1kk0n/wicket-webjars/wicket-webjars)
         * Log4j Implemented Over SLF4J (org.slf4j:log4j-over-slf4j:2.0.18 - 
http://www.slf4j.org)
         * micrometer-commons (io.micrometer:micrometer-commons:1.16.7 - 
https://github.com/micrometer-metrics/micrometer-commercial)
         * micrometer-observation (io.micrometer:micrometer-observation:1.16.7 
- https://github.com/micrometer-metrics/micrometer-commercial)
@@ -562,16 +558,16 @@ conditions of the following licenses.
         * Wicket Extensions (org.apache.wicket:wicket-extensions:10.11.0 - 
http://wicket.apache.org/wicket-extensions)
         * Wicket IoC common code (org.apache.wicket:wicket-ioc:10.11.0 - 
http://wicket.apache.org/wicket-ioc)
         * Wicket JQuery Selectors 
(de.agilecoders.wicket:jquery-selectors:4.0.15 - 
http://nexus.sonatype.org/oss-repository-hosting.html/jquery-selectors)
-        * wicket-jquery-ui-calendar 
(org.wicketstuff:wicketstuff-jquery-ui-calendar:10.10.0 - 
https://github.com/sebfz1/wicket-jquery-ui/wicketstuff-jquery-ui-calendar)
-        * wicket-jquery-ui-core 
(org.wicketstuff:wicketstuff-jquery-ui-core:10.10.0 - 
https://github.com/sebfz1/wicket-jquery-ui/wicketstuff-jquery-ui-core)
-        * wicket-jquery-ui-plugins 
(org.wicketstuff:wicketstuff-jquery-ui-plugins:10.10.0 - 
https://github.com/sebfz1/wicket-jquery-ui/wicketstuff-jquery-ui-plugins)
+        * wicket-jquery-ui-calendar 
(org.wicketstuff:wicketstuff-jquery-ui-calendar:10.11.0 - 
https://github.com/sebfz1/wicket-jquery-ui/wicketstuff-jquery-ui-calendar)
+        * wicket-jquery-ui-core 
(org.wicketstuff:wicketstuff-jquery-ui-core:10.11.0 - 
https://github.com/sebfz1/wicket-jquery-ui/wicketstuff-jquery-ui-core)
+        * wicket-jquery-ui-plugins 
(org.wicketstuff:wicketstuff-jquery-ui-plugins:10.11.0 - 
https://github.com/sebfz1/wicket-jquery-ui/wicketstuff-jquery-ui-plugins)
         * Wicket Native WebSocket Core 
(org.apache.wicket:wicket-native-websocket-core:10.11.0 - 
http://wicket.apache.org/wicket-native-websocket/wicket-native-websocket-core)
         * Wicket Native WebSocket Javax 
(org.apache.wicket:wicket-native-websocket-javax:10.11.0 - 
http://wicket.apache.org/wicket-native-websocket/wicket-native-websocket-javax)
         * Wicket Request (org.apache.wicket:wicket-request:10.11.0 - 
http://maven.apache.org)
         * Wicket Spring Integration (org.apache.wicket:wicket-spring:10.11.0 - 
http://wicket.apache.org/wicket-spring)
-        * Wicketstuff Dashboard Core 
(org.wicketstuff:wicketstuff-dashboard-core:10.10.0 - 
http://wicketstuff.org/wicketstuff-dashboard-parent/wicketstuff-dashboard-core)
-        * wicketstuff-jquery-ui (org.wicketstuff:wicketstuff-jquery-ui:10.10.0 
- https://github.com/sebfz1/wicket-jquery-ui/wicketstuff-jquery-ui)
-        * Wicketstuff-Select2 Components 
(org.wicketstuff:wicketstuff-select2:10.10.0 - 
http://wicketstuff.org/wicketstuff-select2-parent/wicketstuff-select2)
+        * Wicketstuff Dashboard Core 
(org.wicketstuff:wicketstuff-dashboard-core:10.11.0 - 
http://wicketstuff.org/wicketstuff-dashboard-parent/wicketstuff-dashboard-core)
+        * wicketstuff-jquery-ui (org.wicketstuff:wicketstuff-jquery-ui:10.11.0 
- https://github.com/sebfz1/wicket-jquery-ui/wicketstuff-jquery-ui)
+        * Wicketstuff-Select2 Components 
(org.wicketstuff:wicketstuff-select2:10.11.0 - 
http://wicketstuff.org/wicketstuff-select2-parent/wicketstuff-select2)
         * Wicket Util (org.apache.wicket:wicket-util:10.11.0 - 
http://wicket.apache.org/wicket-util)
         * Woodstox (com.fasterxml.woodstox:woodstox-core:7.2.1 - 
https://github.com/FasterXML/woodstox)
         * XmlBeans (org.apache.xmlbeans:xmlbeans:5.3.0 - 
https://xmlbeans.apache.org/)
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentModel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentModel.java
index 95aca466d..b39cf10e2 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentModel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentModel.java
@@ -28,9 +28,9 @@ import java.util.List;
 import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 
-import org.wicketstuff.jquery.ui.calendar6.CalendarEvent;
-import org.wicketstuff.jquery.ui.calendar6.CalendarModel;
-import org.wicketstuff.jquery.ui.calendar6.ICalendarVisitor;
+import org.wicketstuff.jquery.ui.calendar7.CalendarEvent;
+import org.wicketstuff.jquery.ui.calendar7.CalendarModel;
+import org.wicketstuff.jquery.ui.calendar7.ICalendarVisitor;
 
 public class AppointmentModel extends CalendarModel implements 
ICalendarVisitor {
        private static final long serialVersionUID = 1L;
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
index 43b2a87a6..6a07bdb30 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
@@ -47,6 +47,7 @@ import org.apache.wicket.ajax.AbstractAjaxTimerBehavior;
 import org.apache.wicket.ajax.AjaxEventBehavior;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
+import org.apache.wicket.markup.head.CssHeaderItem;
 import org.apache.wicket.markup.head.IHeaderResponse;
 import org.apache.wicket.markup.head.JavaScriptHeaderItem;
 import org.apache.wicket.markup.html.WebMarkupContainer;
@@ -63,15 +64,15 @@ import org.apache.wicket.request.resource.ResourceReference;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.github.openjson.JSONObject;
 import org.wicketstuff.jquery.core.Options;
-import org.wicketstuff.jquery.ui.calendar6.Calendar;
-import org.wicketstuff.jquery.ui.calendar6.CalendarView;
-import org.wicketstuff.jquery.ui.calendar6.DateTimeDelta;
-import org.wicketstuff.jquery.ui.calendar6.EventSource.GoogleCalendar;
+import org.wicketstuff.jquery.ui.calendar7.Calendar;
+import org.wicketstuff.jquery.ui.calendar7.CalendarView;
+import org.wicketstuff.jquery.ui.calendar7.DateTimeDelta;
+import org.wicketstuff.jquery.ui.calendar7.EventSource.GoogleCalendar;
 
 import 
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink;
 import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
+import 
de.agilecoders.wicket.webjars.request.resource.WebjarsCssResourceReference;
 import 
de.agilecoders.wicket.webjars.request.resource.WebjarsJavaScriptResourceReference;
 import jakarta.inject.Inject;
 
@@ -79,7 +80,8 @@ public class CalendarPanel extends UserBasePanel {
        private static final Logger log = 
LoggerFactory.getLogger(CalendarPanel.class);
        private static final long serialVersionUID = 1L;
        private static final ResourceReference CALJS = new 
JavaScriptResourceReference(CalendarPanel.class, "calendar-functions.js");
-       private static final ResourceReference BS5_THEME = new 
WebjarsJavaScriptResourceReference("fullcalendar__bootstrap5/current/index.global.js");
+       private static final ResourceReference BS5_JS = new 
WebjarsJavaScriptResourceReference("fullcalendar__bootstrap5/current/global.js");
+       private static final ResourceReference BS5_THEME = new 
WebjarsCssResourceReference("fullcalendar__bootstrap5/current/theme.css");
        private final AbstractAjaxTimerBehavior refreshTimer = new 
AbstractAjaxTimerBehavior(Duration.ofSeconds(10)) {
                private static final long serialVersionUID = 1L;
 
@@ -131,28 +133,48 @@ public class CalendarPanel extends UserBasePanel {
                Options options = new Options()
                                .set("direction", Options.asString(isRtl ? 
"rtl" : "ltr"))
                                .set("height", Options.asString("100%"))
-                               .set("customButtons", "{gotoBtn: {text: ' ', 
click: onOmGotoClick}}")
+                               .set("buttons", """
+                                       {
+                                               gotoBtn: {
+                                                       text: ' ',
+                                                       className: 
'fc-gotoBtn-button',
+                                                       click: onOmGotoClick
+                                               },
+                                               close: {
+                                                       iconClass: 'bi fa-solid 
fa-times'
+                                               },
+                                               prev: {
+                                                       iconClass: 'bi fa-solid 
fa-chevron-%1$s'
+                                               },
+                                               next: {
+                                                       iconClass: 'bi fa-solid 
fa-chevron-%2$s'
+                                               },
+                                               prevYear: {
+                                                       iconClass: 'bi fa-solid 
fa-angles-%1$s'
+                                               },
+                                               nextYear: {
+                                                       iconClass: 'bi fa-solid 
fa-angles-%2$s'
+                                               },
+                                               month: {
+                                                       text: '%3$s'
+                                               },
+                                               week: {
+                                                       text: '%4$s'
+                                               },
+                                               day: {
+                                                       text: '%5$s'
+                                               },
+                                               today: {
+                                                       text: '%6$s'
+                                               }
+                                       }
+                                       """.formatted(isRtl ? "right" : "left", 
isRtl ? "left" : "right"
+                                                       , getString("801"), 
getString("800"), getString("799"), getString("1555")))
                                .set("headerToolbar", "{start: 
'prevYear,prev,next,nextYear today,gotoBtn', center: 'title', end: 
'dayGridMonth,timeGridWeek,timeGridDay'}")
                                .set("allDaySlot", false)
                                .set("nowIndicator", true)
                                .set("defaultTimedEventDuration", 
Options.asString("01:00"))
                                .set("selectMirror", true)
-
-                               .set("themeSystem", 
Options.asString("bootstrap5"))
-                               .set("buttonIcons", new JSONObject()
-                                               .put("close", "bi fa-solid 
fa-times")
-                                               .put("prev", isRtl ? "bi 
fa-solid fa-chevron-right" : "bi fa-solid fa-chevron-left")
-                                               .put("next", isRtl ? "bi 
fa-solid fa-chevron-left" : "bi fa-solid fa-chevron-right")
-                                               .put("prevYear", isRtl ? "bi 
fa-solid fa-angles-right" : "bi fa-solid fa-angles-left")
-                                               .put("nextYear", isRtl ? "bi 
fa-solid fa-angles-left" : "bi fa-solid fa-angles-right")
-                                               .toString())
-                               .set("buttonText", new JSONObject()
-                                               .put("month", getString("801"))
-                                               .put("week", getString("800"))
-                                               .put("day", getString("799"))
-                                               .put("today", getString("1555"))
-                                               .toString())
-
                                .set("locale", 
Options.asString(WebSession.get().getLocale().toLanguageTag()));
 
                calendar = new Calendar("calendar", new AppointmentModel(), 
options) {
@@ -360,8 +382,8 @@ public class CalendarPanel extends UserBasePanel {
                super.renderHead(response);
                response.render(JavaScriptHeaderItem.forReference(CALJS));
                
response.render(JavaScriptHeaderItem.forReference(TouchPunchResourceReference.instance()));
-               response.render(JavaScriptHeaderItem.forReference(BS5_THEME));
-               
response.render(JavaScriptHeaderItem.forScript("FullCalendar.Bootstrap5.Internal.BootstrapTheme.prototype.rtlIconClasses
 = null", "fullcalendar-bootstrap-reset-rtl"));
+               response.render(JavaScriptHeaderItem.forReference(BS5_JS));
+               response.render(CssHeaderItem.forReference(BS5_THEME));
        }
 
        // Client creation here, because the client is not created until 
necessary
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/OmCalendarEvent.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/OmCalendarEvent.java
index 4b8728c73..01aec5e04 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/OmCalendarEvent.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/OmCalendarEvent.java
@@ -22,7 +22,7 @@ import static 
org.apache.openmeetings.web.util.CalendarWebHelper.getDateTime;
 
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 
-import org.wicketstuff.jquery.ui.calendar6.CalendarEvent;
+import org.wicketstuff.jquery.ui.calendar7.CalendarEvent;
 
 public class OmCalendarEvent extends CalendarEvent {
        private static final long serialVersionUID = 1L;
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js
index 3a42ab081..9fc602a3c 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js
@@ -1,35 +1,34 @@
 /* Licensed under the Apache License, Version 2.0 (the "License") 
http://www.apache.org/licenses/LICENSE-2.0 */
 function onOmGotoClick() {
-       const gotoBtn = $('#calendar .fc-gotoBtn-button');
-       let gotoSpan = gotoBtn.parent().find('.goto-span');
-       if (gotoSpan.length < 1) {
-               gotoBtn.parent().append($('<span 
class="goto-span"><span/></span>'));
+       const gotoBtn = document.querySelector('#calendar .fc-gotoBtn-button');
+       if (gotoBtn.datetimepicker === undefined) {
+               gotoBtn.datetimepicker = new 
tempusDominus.TempusDominus(gotoBtn, {
+                       display: {
+                               icons: {
+                                       time: 'fas fa-clock'
+                                       , date: 'fas fa-calendar'
+                                       , up: 'fas fa-arrow-up'
+                                       , down: 'fas fa-arrow-down'
+                                       , previous: 'fas fa-chevron-left'
+                                       , next: 'fas fa-chevron-right'
+                                       , today: 'fas fa-calendar-check'
+                                       , clear: 'fas fa-trash'
+                                       , close: 'fas fa-times'
+                               }
+                               , buttons: {
+                                       today: true
+                                       , clear: true
+                                       , close: true
+                               }
+                       }
+                       , localization: {
+                               locale: 
document.querySelector('#calendar').calendar.getOption('locale')
+                               , format: 'LLL'
+                       }
+               });
+               
gotoBtn.datetimepicker.subscribe(tempusDominus.Namespace.events.hide, (e) => {
+                       
document.querySelector('#calendar').calendar.gotoDate(e.date.startOf('date'));
+               });
+               gotoBtn.datetimepicker.show();
        }
-       gotoSpan = gotoBtn.parent().find('.goto-span');
-       gotoSpan.datetimepicker({
-               locale: 
document.querySelector('#calendar').calendar.getOption('locale')
-               , format: 'L'
-               , icons: {
-                       time: 'fas fa-clock'
-                       , date: 'fas fa-calendar'
-                       , up: 'fas fa-arrow-up'
-                       , down: 'fas fa-arrow-down'
-                       , previous: 'fas fa-chevron-left'
-                       , next: 'fas fa-chevron-right'
-                       , today: 'fas fa-calendar-check'
-                       , clear: 'fas fa-trash'
-                       , close: 'fas fa-times'
-               }
-               , buttons: {
-                       showToday: true
-                       , showClear: true
-                       , showClose: true
-               }
-       });
-       gotoSpan
-               .off()
-               .on('hide.datetimepicker', function(e){
-                       
document.querySelector('#calendar').calendar.gotoDate(e.date.startOf('day').toDate());
-               })
-               .datetimepicker('show');
 }
diff --git a/pom.xml b/pom.xml
index ea8fc80ba..286774712 100644
--- a/pom.xml
+++ b/pom.xml
@@ -45,7 +45,7 @@
 
                <!-- plugin versions -->
                
<version.maven-javadoc-plugin>3.12.0</version.maven-javadoc-plugin>
-               <version.maven-surefire>3.5.5</version.maven-surefire>
+               <version.maven-surefire>3.6.0</version.maven-surefire>
                <version.maven-site-plugin>4.0.0-M16</version.maven-site-plugin>
                
<version.maven-enforcer-plugin>3.6.3</version.maven-enforcer-plugin>
                <version.maven-source-plugin>3.4.0</version.maven-source-plugin>
@@ -88,9 +88,9 @@
                <!-- dependency versions -->
                <junit.version>6.1.3</junit.version>
                <wicket.version>10.11.0</wicket.version>
-               <wicketstuff.version>10.10.0</wicketstuff.version>
+               <wicketstuff.version>10.11.0</wicketstuff.version>
                <wicket-bootstrap.version>7.0.15</wicket-bootstrap.version>
-               <fullcalendar.version>6.1.20</fullcalendar.version>
+               <fullcalendar.version>7.1.0</fullcalendar.version>
                <spring.version>7.0.9</spring.version>
                <tomcat.version>11.0.25</tomcat.version>
                <jetty.version>11.0.26</jetty.version>
@@ -119,7 +119,7 @@
                <commons-text.version>1.15.0</commons-text.version>
                <commons-net.version>3.13.0</commons-net.version>
                <dom4j.version>2.2.0</dom4j.version>
-               <h2.version>2.4.240</h2.version>
+               <h2.version>2.5.250</h2.version>
                <postgresql.version>42.7.13</postgresql.version>
                <mysql.version>26.7.0</mysql.version>
                <mssql.version>13.4.0.jre11</mssql.version>
@@ -1267,10 +1267,11 @@
                                                <source>${javaVersion}</source>
                                                <notimestamp>true</notimestamp>
                                                <links>
+                                                       
<link>https://docs.oracle.com/en/java/javase/21/docs/api/</link>
                                                        
<link>https://openmeetings.apache.org/openmeetings-db/apidocs/</link>
                                                        
<link>https://docs.spring.io/spring-framework/docs/current/javadoc-api/</link>
                                                        
<link>https://jakartaee.github.io/rest/apidocs/3.0.0/</link>
-                                                       
<link>https://cxf.apache.org/javadoc/latest-4.0.x/</link>
+                                                       
<link>https://cxf.apache.org/javadoc/latest/</link>
                                                </links>
                                        </configuration>
                                </plugin>

Reply via email to