+
+
+
+
+
+
+
+
+
diff --git a/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_28__make_event_startdate_nullable.sql b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_28__make_event_startdate_nullable.sql
new file mode 100644
index 000000000..2c666b3ff
--- /dev/null
+++ b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_28__make_event_startdate_nullable.sql
@@ -0,0 +1 @@
+alter table ccm_cms.events alter COLUMN start_date drop not null;
\ No newline at end of file
diff --git a/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_28__make_event_startdate_nullable.sql b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_28__make_event_startdate_nullable.sql
new file mode 100644
index 000000000..2c666b3ff
--- /dev/null
+++ b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_28__make_event_startdate_nullable.sql
@@ -0,0 +1 @@
+alter table ccm_cms.events alter COLUMN start_date drop not null;
\ No newline at end of file
diff --git a/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/EventBundle.properties b/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/EventBundle.properties
new file mode 100644
index 000000000..32c70457f
--- /dev/null
+++ b/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/EventBundle.properties
@@ -0,0 +1,117 @@
+
+authoringsteps.basicproperties.description=General properties of an event, for example the start and end of the event.
+authoringsteps.basicproperties.label=Basic Properties
+authoringsteps.info.description=Extended information about the event, for example about the location.
+authoringstep.info.label=Event Info
+createstep.description=Creates a new event.
+createstep.name.error.missing=The name of the event is missing.
+createstep.name.error.invalid=The name of the event is not valid. The name can only contain the letters a to z and A to Z, numbers (0 to 9), the underscore ("_") and the dash ("-").
+createstep.title.error.missing=The title of the event is missing.
+createstep.summary.error.missing=The summary of the event is missing.
+createstep.initial_locale.error.missing=The initial locale of the event is missing.
+createstep.workflow.none_selected=No workflow was selected.
+createstep.workflow.error.not_available=The selected workflow is not available.
+createform.title=Create a new event
+createform.name.help=The name of the new event. Can only contain the letters a to z and A to Z, numbers, the underscore ("_") and the dash ("-").
+createform.name.label=Name
+createform.initial_locale.help=The initial locale of the new event. All localizable provided using this form is created for the selected language.
+createform.title.help=The title of the new event.
+createform.title.label=Title
+createform.summary.help=A short summary of the new event.
+createform.workflow.label=Summary
+createform.cancel=Cancel
+createform.submit=Create new event
+eventinfo_step.header=Event Information
+eventdate.editor.header=Additonal information about the date of the event
+eventdate.editor.add_variant=Add language
+location.editor.add_variant=Add language
+location.editor.header=Information about the location of the event
+main_contributor.editor.add_variant=Add language
+main_contributor.editor.header=Information about the organizer of the event
+eventtype.editor.add_variant=Add language
+eventtype.editor.header=Information about the type of the event
+eventinfo_step.back=Back
+eventinfo_step.eventdate.header.view=Viewing information about event date of event {0} for language {1}
+eventinfo_step.edit=Edit
+eventinfo_step.eventtype.header.view=Showing information about event type of event {0} for language {1}
+eventinfo_step.location.header.view=Showing information about location of event {0} for language {1}
+eventinfo_step.main_contributor.header.view=Showing information about organizer of event {0} for language {1}
+eventinfo_step.eventdate.header.edit=Edit information about event date of event {0} for language {1}
+eventinfo_step.eventdate.editor.header=Information about the date of the event
+eventinfo_step.eventtype.header.edit=Edit information about the type of event {0} for language {1}
+eventinfo_step.eventtype.editor.header=Information about the type of event
+eventinfo_step.main_contributor.header.edit=Edit information about the organizer of event {0} for language {1}
+eventinfo_step.location.editor.header=Informatio about the location of the event
+eventinfo_step.location.header.edit=Edit information about the location of event {0} for language {1}
+eventinfo_step.main_contributor.editor.header=Information about the organizier of the event
+createform.initial_locale.label=Initial Locale
+createform.summary.label=Summary
+createform.workflow.help=The workflow to use for the new event.
+basicproperties.eventdatetime.header=Start and End of the Event
+basicproperties.startdate=Start of the event
+basicproperties.enddate=End of the event
+createform.startdate.help=Date and time of the start of the event.
+createform.startdate.label=Start of the event
+createstep.startdate.error.missing=The start of event set.
+basicproperties.startdate.edit=Edit start of event
+basicproperties.enddate.edit=Edit end of event
+basicproperties.eventdatetime.edit=Edit
+createstep.startdate.error.malformed=The date/time for the start of the event is malformed.
+basicproperties.header=Edit basic properties of event {0}
+basicproperties.name.header=Name
+basicproperties.name.edit=Edit name
+basicproperties.description.header=Description
+basicproperties.name.edit.close=Cancel
+basicproperties.name.edit.title=Edit name of event
+basicproperties.name.help=The name of the event. Can only contain the letters a to z and A to Z, numbers, the underscore ("_") and the dash ("-").
+basicproperties.name.label=Name
+basicproperties.name.edit.submit=Update name of event
+basicproperties.title.add=Add locale
+basicproperties.title.add.cancel=Cancel
+basicproperties.title.add.locale.help=The language to add.
+basicproperties.title.add.locale.label=Locale
+basicproperties.title.add.submit=Add locale
+basicproperties.title.add.header=Add title locale
+basicproperties.title.add.value.help=The localized title of the event.
+basicproperties.title.add.value.label=Title
+basicproperties.title.edit=Edit
+basicproperties.title.edit.cancel=Cancel
+basicproperties.title.edit.submit=Save
+basicproperties.title.edit.header=Edit title
+basicproperties.title.edit.value.help=The localized title of the event.
+basicproperties.title.edit.value.label=Title
+basicproperties.title.remove=Remove
+basicproperties.title.remove.cancel=Cancel
+basicproperties.title.remove.submit=Remove
+basicproperties.title.remove.text=Are you sure to remove the localized title for the folloing locale?
+basicproperties.title.remove.header=Remove localized title
+basicproperties.title.header=Title
+basicproperties.description.add=Add localized description
+basicproperties.description.add.cancel=Cancel
+basicproperties.description.add.locale.help=The locale of the localized description.
+basicproperties.description.add.locale.label=Locale
+basicproperties.description.add.submit=Add localized description
+basicproperties.description.add.header=Add localized description
+basicproperties.description.add.value.help=The localized description.
+basicproperties.description.add.value.label=Description
+basicproperties.description.edit=Edit
+basicproperties.description.edit.cancel=Cancel
+basicproperties.description.edit.submit=Submit
+basicproperties.description.edit.header=Edit localized description
+basicproperties.description.edit.value.help=The localized description.
+basicproperties.description.edit.value.label=Description
+basicproperties.description.remove=Remove
+basicproperties.description.remove.cancel=Cancel
+basicproperties.description.remove.submit=Remove localized description
+basicproperties.description.remove.text=Are you sure to remove the localized description for this locale?
+basicproperties.description.remove.header=Remove localized description
+basicproperties.startdate.none=Start of event is missing.
+basicproperties.enddate.none=End of event is missing
+basicproperties.eventdatetime.edit.dialog.title=Edit start and end of the event
+basicproperties.eventdatetime.edit.dialog.close=Cancel
+basicproperties.eventdatetime.edit.dialog.startdate.help=Start of the event (date and time).
+basicproperties.eventdatetime.edit.dialog.startdate.label=Start
+basicproperties.eventdatetime.edit.dialog.enddate.help=The end of the event (date and time)
+basicproperties.eventdatetime.edit.dialog.enddate.label=End
+basicproperties.eventdatetime.edit.dialog.submit=Submit
+text.editor.add.locale.help=The language to add.
diff --git a/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/EventBundle_de.properties b/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/EventBundle_de.properties
new file mode 100644
index 000000000..8d1bf13fd
--- /dev/null
+++ b/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/EventBundle_de.properties
@@ -0,0 +1,117 @@
+
+authoringsteps.basicproperties.description=Basiseigenschaften einer Veranstaltung, z.B. das Datum der Veranstaltung
+authoringsteps.basicproperties.label=Basiseigenschaften
+authoringsteps.info.description=Weitere Informationen \u00fcber die Veranstaltung, z.B. \u00fcber den Veranstaltungsort.
+authoringstep.info.label=Informationen zur Veranstaltung
+createstep.description=Legt eine neue Veranstaltung an.
+createstep.name.error.missing=Der Name der Veranstaltung wurde nicht angegeben.
+createstep.name.error.invalid=Der Name der Veranstaltung ist nicht valide. Der Name darf nur die Buchstaben a bis z und A bis Z, Ziffern (0 to 9), den Unterstrich ("_") und den Bindestrich ("-") enthalten.
+createstep.title.error.missing=Der Titel der Veranstaltung wurde nicht angegeben.
+createstep.summary.error.missing=Es wurde keine Zusammenfassung der Veranstaltung angegeben.
+createstep.initial_locale.error.missing=Die initale Sprache f\u00fcr die Veranstaltung wurde nicht angegeben.
+createstep.workflow.none_selected=Es wurde kein Arbeitsablauf ausgew\u00e4hlt.
+createstep.workflow.error.not_available=Der ausgew\u00e4hlte Arbeitsablauf ist nicht verf\u00fcgbar.
+createform.title=Eine neue Veranstaltung anlegen
+createform.name.help=Der Name der neuen Veranstaltung. Darf nur die Buchstaben a bis z, A bis Z, Ziffern, den Bindestrich ("-") und den Unterstrich ("_") enthalten.
+createform.name.label=Name
+createform.initial_locale.help=Initiale Sprache
+createform.title.help=Der Titel der neuen Veranstaltung.
+createform.title.label=Titel
+createform.summary.help=Eine kurze Zusammenfassung der neuen Veranstaltung.
+createform.workflow.label=Zusammenfassung
+createform.cancel=Abbrechen
+createform.submit=Neue Veranstaltung anlegen
+eventinfo_step.header=Informationen \u00fcber die Veranstaltung
+eventdate.editor.header=Zus\u00e4tzliche Informationen \u00fcber den Zeitpunkt der Veranstaltung
+eventdate.editor.add_variant=Sprache hinzuf\u00fcgen
+location.editor.add_variant=Sprache hinzuf\u00fcgen
+location.editor.header=Informationen \u00fcber den Veranstaltungsort
+main_contributor.editor.add_variant=Sprache hinzuf\u00fcgen
+main_contributor.editor.header=Informationen \u00fcber den Veranstalter
+eventtype.editor.add_variant=Sprache hinzuf\u00fcgen
+eventtype.editor.header=Informationen \u00fcber die Art der Veranstaltung
+eventinfo_step.back=Zur\u00fcck
+eventinfo_step.eventdate.header.view=Zeige Informationen \u00fcber Veranstaltungsdatum in Sprache {1} f\u00fcr Veranstaltung {0}
+eventinfo_step.edit=Bearbeiten
+eventinfo_step.eventtype.header.view=Zeige Informationen \u00fcber den Typ der Veranstaltung {0} in Sprache {1}
+eventinfo_step.location.header.view=Zeige Informationen \u00fcber Veranstaltungsort f\u00fcr Veranstaltung {0} in Sprache {1}
+eventinfo_step.main_contributor.header.view=Zeige Informationen \u00fcber Veranstalter der Veranstaltung {0} f\u00fcr Sprache {1}
+eventinfo_step.eventdate.header.edit=Informationen \u00fcber den Zeitpunkt der Veranstaltung {0} f\u00fcr Sprache {1} bearbeiten
+eventinfo_step.eventdate.editor.header=Informationen \u00fcber den Zeitpunkt der Veranstaltung
+eventinfo_step.eventtype.header.edit=Informationen \u00fcber die Art der Veranstaltung {0} f\u00fcr Sprache {1} bearbeiten
+eventinfo_step.eventtype.editor.header=Informationen \u00fcber die Art der Veranstaltung
+eventinfo_step.main_contributor.header.edit=Informationen \u00fcber den Veranstalter der Veranstaltung {0} f\u00fcr Sprache {1} bearbeiten
+eventinfo_step.location.editor.header=Informationen \u00fcber den Ort der Veranstaltung
+eventinfo_step.location.header.edit=Informationen \u00fcber den Ort der Veranstaltung {0} f\u00fcr Sprache {1} bearbeiten
+eventinfo_step.main_contributor.editor.header=Informationen \u00fcber den Veranstalter
+createform.initial_locale.label=Initial Locale
+createform.summary.label=Zusammenfassung
+createform.workflow.help=Der Arbeitsablauf, der f\u00fcr die neue Veranstaltung verwendet wird.
+basicproperties.eventdatetime.header=Beginn und Ende der Veranstaltung
+basicproperties.startdate=Beginn der Veranstaltung
+basicproperties.enddate=Ende der Veranstaltung
+createform.startdate.help=Datum und Uhrzeit des Beginns der Veranstaltung.
+createform.startdate.label=Beginn der Veranstaltung
+createstep.startdate.error.missing=Der Beginn der Veranstaltugn wurde nicht angegeben.
+basicproperties.startdate.edit=Beginn der Veranstaltung bearbeiten
+basicproperties.enddate.edit=Ende der Veranstaltung bearbeiten
+basicproperties.eventdatetime.edit=Bearbeiten
+createstep.startdate.error.malformed=Der Zeitpunkt f\u00fcr den Beginn der Veranstaltung ist keine valide Datums-/Zeitangabe.
+basicproperties.header=Basiseigenschaften der Veranstaltung {0} bearbeiten
+basicproperties.name.header=Name
+basicproperties.name.edit=Name bearbeiten
+basicproperties.description.header=Beschreibung
+basicproperties.name.edit.close=Abbrechen
+basicproperties.name.edit.title=Name der Veranstaltung bearbeiten
+basicproperties.name.help=Der Name der Veranstaltung. Darf nur die Buchstaben a bis z, A bis Z, Ziffern, den Bindestrich ("-") und den Unterstrich ("_") enthalten.
+basicproperties.name.label=Name
+basicproperties.name.edit.submit=Name der Veranstaltung aktualisieren
+basicproperties.title.add=Sprache hinzuf\u00fcgen
+basicproperties.title.add.cancel=Abbrechen
+basicproperties.title.add.locale.help=Die Sprache, die hinzugef\u00fcgt wird.
+basicproperties.title.add.locale.label=Sprache
+basicproperties.title.add.submit=Sprache hinzuf\u00fcgen
+basicproperties.title.add.header=Titel f\u00fcr Sprache hinzuf\u00fcgen
+basicproperties.title.add.value.help=Der lokalisierte Titel der Veranstaltung.
+basicproperties.title.add.value.label=Titel
+basicproperties.title.edit=Bearbeiten
+basicproperties.title.edit.cancel=Abbrechen
+basicproperties.title.edit.submit=Speichern
+basicproperties.title.edit.header=Titel bearbeiten
+basicproperties.title.edit.value.help=Der lokalisierte Titel der Veranstaltung.
+basicproperties.title.edit.value.label=Titel
+basicproperties.title.remove=Entfernen
+basicproperties.title.remove.cancel=Abbrechen
+basicproperties.title.remove.submit=Entfernen
+basicproperties.title.remove.text=Sind Sie sicher, dass den lokalisierten Titel f\u00fcr diese Sprache entfernen wollen?
+basicproperties.title.remove.header=Lokalisierten Titel entfernen
+basicproperties.title.header=Titel
+basicproperties.description.add=Lokalisierte Beschreibung hinzuf\u00fcgen
+basicproperties.description.add.cancel=Abbrechen
+basicproperties.description.add.locale.help=Die Sprache der lokalisierten Beschreibung.
+basicproperties.description.add.locale.label=Sprache
+basicproperties.description.add.submit=Lokalisierte Beschreibung hinzuf\u00fcgen
+basicproperties.description.add.header=Lokalisierte Beschreibung hinzuf\u00fcgen
+basicproperties.description.add.value.help=Die lokalisierte Beschreibung.
+basicproperties.description.add.value.label=Beschreibung
+basicproperties.description.edit=Bearbeiten
+basicproperties.description.edit.cancel=Abbrechen
+basicproperties.description.edit.submit=Speichern
+basicproperties.description.edit.header=Lokalisierte Beschreibung bearbeiten
+basicproperties.description.edit.value.help=Die lokalisierte Beschreibung.
+basicproperties.description.edit.value.label=Beschreibung
+basicproperties.description.remove=Entfernen
+basicproperties.description.remove.cancel=Abbrechen
+basicproperties.description.remove.submit=Lokalisierte Beschreibung entfernen
+basicproperties.description.remove.text=Sind Sie sicher, dass Sie die lokalisierte Beschreibung f\u00fcr diese Sprache entfernen wollen?
+basicproperties.description.remove.header=Lokalisierte Beschreibung entfernen
+basicproperties.startdate.none=Es wurde keine Begin angegeben.
+basicproperties.enddate.none=Es wurde keine Ende der Veranstaltung angegeben.
+basicproperties.eventdatetime.edit.dialog.title=Beginn und Ende der Veranstaltung bearbeiten
+basicproperties.eventdatetime.edit.dialog.close=Abbrechen
+basicproperties.eventdatetime.edit.dialog.startdate.help=Beginn und Ende der Veranstaltung (Datum und Uhrzeit)
+basicproperties.eventdatetime.edit.dialog.startdate.label=Beginn
+basicproperties.eventdatetime.edit.dialog.enddate.help=Ende der Veranstaltung (Datum und Uhrzeit)
+basicproperties.eventdatetime.edit.dialog.enddate.label=Ende
+basicproperties.eventdatetime.edit.dialog.submit=Speichern
+text.editor.add.locale.help=Die Sprache, die hinzugef\u00fcgt werden soll.
diff --git a/ccm-cms/src/main/typescript/content-sections/event-info-step-eventdate.ts b/ccm-cms/src/main/typescript/content-sections/event-info-step-eventdate.ts
new file mode 100644
index 000000000..58ed01e52
--- /dev/null
+++ b/ccm-cms/src/main/typescript/content-sections/event-info-step-eventdate.ts
@@ -0,0 +1,52 @@
+import { CmsEditorBuilder, CmsEditor } from "./cms-editor";
+
+document.addEventListener("DOMContentLoaded", (event) => {
+ const editorElem = document.querySelector("#cms-event-eventdate-editor");
+
+ if (editorElem) {
+ const saveUrl = editorElem.getAttribute("data-save-url");
+ const variantUrl = editorElem.getAttribute("data-variant-url");
+
+ if (!saveUrl) {
+ console.error("saveUrl is null");
+ return;
+ }
+
+ if (!variantUrl) {
+ console.error("variantUrl is null");
+ return;
+ }
+
+ const builder = new CmsEditorBuilder(
+ editorElem as HTMLElement,
+ saveUrl,
+ variantUrl
+ );
+
+ builder
+ .buildEditor()
+ .then((editor) => {
+ const submitButton = document.querySelector(
+ ".cms-editor-save-button"
+ );
+
+ if (submitButton) {
+ submitButton.addEventListener("click", (event) => {
+ event.preventDefault();
+
+ console.log("HTML output of editor: ");
+ console.log(editor.getEditor().getHTML());
+ });
+ } else {
+ console.error("Save button not found.")
+ }
+ })
+ .catch((error) => {
+ console.error(error);
+ console.trace(error);
+ });
+ } else {
+ console.error("Editor element not found.")
+ }
+
+});
diff --git a/ccm-cms/src/main/typescript/content-sections/event-info-step-eventtype.ts b/ccm-cms/src/main/typescript/content-sections/event-info-step-eventtype.ts
new file mode 100644
index 000000000..260cc6392
--- /dev/null
+++ b/ccm-cms/src/main/typescript/content-sections/event-info-step-eventtype.ts
@@ -0,0 +1,52 @@
+import { CmsEditorBuilder, CmsEditor } from "./cms-editor";
+
+document.addEventListener("DOMContentLoaded", (event) => {
+ const editorElem = document.querySelector("#cms-event-eventtype-editor");
+
+ if (editorElem) {
+ const saveUrl = editorElem.getAttribute("data-save-url");
+ const variantUrl = editorElem.getAttribute("data-variant-url");
+
+ if (!saveUrl) {
+ console.error("saveUrl is null");
+ return;
+ }
+
+ if (!variantUrl) {
+ console.error("variantUrl is null");
+ return;
+ }
+
+ const builder = new CmsEditorBuilder(
+ editorElem as HTMLElement,
+ saveUrl,
+ variantUrl
+ );
+
+ builder
+ .buildEditor()
+ .then((editor) => {
+ const submitButton = document.querySelector(
+ ".cms-editor-save-button"
+ );
+
+ if (submitButton) {
+ submitButton.addEventListener("click", (event) => {
+ event.preventDefault();
+
+ console.log("HTML output of editor: ");
+ console.log(editor.getEditor().getHTML());
+ });
+ } else {
+ console.error("Save button not found.")
+ }
+ })
+ .catch((error) => {
+ console.error(error);
+ console.trace(error);
+ });
+ } else {
+ console.error("Editor element not found.")
+ }
+
+});
diff --git a/ccm-cms/src/main/typescript/content-sections/event-info-step-location.ts b/ccm-cms/src/main/typescript/content-sections/event-info-step-location.ts
new file mode 100644
index 000000000..a49887b35
--- /dev/null
+++ b/ccm-cms/src/main/typescript/content-sections/event-info-step-location.ts
@@ -0,0 +1,52 @@
+import { CmsEditorBuilder, CmsEditor } from "./cms-editor";
+
+document.addEventListener("DOMContentLoaded", (event) => {
+ const editorElem = document.querySelector("#cms-event-location-editor");
+
+ if (editorElem) {
+ const saveUrl = editorElem.getAttribute("data-save-url");
+ const variantUrl = editorElem.getAttribute("data-variant-url");
+
+ if (!saveUrl) {
+ console.error("saveUrl is null");
+ return;
+ }
+
+ if (!variantUrl) {
+ console.error("variantUrl is null");
+ return;
+ }
+
+ const builder = new CmsEditorBuilder(
+ editorElem as HTMLElement,
+ saveUrl,
+ variantUrl
+ );
+
+ builder
+ .buildEditor()
+ .then((editor) => {
+ const submitButton = document.querySelector(
+ ".cms-editor-save-button"
+ );
+
+ if (submitButton) {
+ submitButton.addEventListener("click", (event) => {
+ event.preventDefault();
+
+ console.log("HTML output of editor: ");
+ console.log(editor.getEditor().getHTML());
+ });
+ } else {
+ console.error("Save button not found.")
+ }
+ })
+ .catch((error) => {
+ console.error(error);
+ console.trace(error);
+ });
+ } else {
+ console.error("Editor element not found.")
+ }
+
+});
diff --git a/ccm-cms/src/main/typescript/content-sections/event-info-step-maincontributor.ts b/ccm-cms/src/main/typescript/content-sections/event-info-step-maincontributor.ts
new file mode 100644
index 000000000..3b6d6f270
--- /dev/null
+++ b/ccm-cms/src/main/typescript/content-sections/event-info-step-maincontributor.ts
@@ -0,0 +1,52 @@
+import { CmsEditorBuilder, CmsEditor } from "./cms-editor";
+
+document.addEventListener("DOMContentLoaded", (event) => {
+ const editorElem = document.querySelector("#cms-event-maincontributor-editor");
+
+ if (editorElem) {
+ const saveUrl = editorElem.getAttribute("data-save-url");
+ const variantUrl = editorElem.getAttribute("data-variant-url");
+
+ if (!saveUrl) {
+ console.error("saveUrl is null");
+ return;
+ }
+
+ if (!variantUrl) {
+ console.error("variantUrl is null");
+ return;
+ }
+
+ const builder = new CmsEditorBuilder(
+ editorElem as HTMLElement,
+ saveUrl,
+ variantUrl
+ );
+
+ builder
+ .buildEditor()
+ .then((editor) => {
+ const submitButton = document.querySelector(
+ ".cms-editor-save-button"
+ );
+
+ if (submitButton) {
+ submitButton.addEventListener("click", (event) => {
+ event.preventDefault();
+
+ console.log("HTML output of editor: ");
+ console.log(editor.getEditor().getHTML());
+ });
+ } else {
+ console.error("Save button not found.")
+ }
+ })
+ .catch((error) => {
+ console.error(error);
+ console.trace(error);
+ });
+ } else {
+ console.error("Editor element not found.")
+ }
+
+});
diff --git a/ccm-cms/webpack.config.js b/ccm-cms/webpack.config.js
index 6a45b689b..312b64450 100644
--- a/ccm-cms/webpack.config.js
+++ b/ccm-cms/webpack.config.js
@@ -7,6 +7,10 @@ module.exports = {
entry: {
"cms-admin": "./src/main/typescript/content-sections/cms-admin.ts",
"article-text-step": "./src/main/typescript/content-sections/article-text-step.ts",
+ "event-info-step-eventdate": "./src/main/typescript/content-sections/event-info-step-eventdate.ts",
+ "event-info-step-eventtype": "./src/main/typescript/content-sections/event-info-step-eventtype.ts",
+ "event-info-step-location": "./src/main/typescript/content-sections/event-info-step-location.ts",
+ "event-info-step-maincontributor": "./src/main/typescript/content-sections/event-info-step-maincontributor.ts",
"mpa-section-edit-text": "./src/main/typescript/content-sections/mpa-section-edit-text.ts"
},
output: {
diff --git a/ccm-core/src/main/resources/META-INF/resources/components/bootstrap/formGroupDateTime.xhtml b/ccm-core/src/main/resources/META-INF/resources/components/bootstrap/formGroupDateTime.xhtml
new file mode 100644
index 000000000..5e35f1c4e
--- /dev/null
+++ b/ccm-core/src/main/resources/META-INF/resources/components/bootstrap/formGroupDateTime.xhtml
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+