+
+
+
+
+
diff --git a/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_29__newsdate_to_timestamp.sql b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_29__newsdate_to_timestamp.sql
new file mode 100644
index 000000000..e77cb3621
--- /dev/null
+++ b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_29__newsdate_to_timestamp.sql
@@ -0,0 +1 @@
+alter table ccm_cms.news alter COLUMN news_date type timestamp;
diff --git a/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_30__news_aud_date_to_timestamp.sql b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_30__news_aud_date_to_timestamp.sql
new file mode 100644
index 000000000..7a38dcfa1
--- /dev/null
+++ b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/h2/V7_0_0_30__news_aud_date_to_timestamp.sql
@@ -0,0 +1 @@
+alter table ccm_cms.news_aud alter COLUMN news_date type timestamp;
diff --git a/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_29__newsdate_to_timestamp.sql b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_29__newsdate_to_timestamp.sql
new file mode 100644
index 000000000..e77cb3621
--- /dev/null
+++ b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_29__newsdate_to_timestamp.sql
@@ -0,0 +1 @@
+alter table ccm_cms.news alter COLUMN news_date type timestamp;
diff --git a/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_30__news_aud_date_to_timestamp.sql b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_30__news_aud_date_to_timestamp.sql
new file mode 100644
index 000000000..7a38dcfa1
--- /dev/null
+++ b/ccm-cms/src/main/resources/db/migrations/org/librecms/ccm_cms/pgsql/V7_0_0_30__news_aud_date_to_timestamp.sql
@@ -0,0 +1 @@
+alter table ccm_cms.news_aud alter COLUMN news_date type timestamp;
diff --git a/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/NewsBundle.properties b/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/NewsBundle.properties
new file mode 100644
index 000000000..61a719403
--- /dev/null
+++ b/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/NewsBundle.properties
@@ -0,0 +1,109 @@
+
+createstep.description=Creates a new news item.
+createstep.name.error.missing=The name of the new news item is missing.
+createstep.name.error.invalid=The provided name is invalid.
+createstep.summary.error.missing=The summary of the new news item is missing.
+createstep.title.error.missing=No title was provided for the new news item.
+createstep.initial_locale.error.missing=No locale was selected.
+createstep.releasedate.error.missing=The release date is missing.
+createstep.releasedate.error.malformed=The release date is not a valid date/time.
+createstep.workflow.none_selected=No workflow was selected.
+createstep.workflow.error.not_available=The selected workflow is not available.
+authoringsteps.basicproperties.description=Edit the basic properties of a news item.
+authoringsteps.basicproprties.label=Basic properties
+news.edit.denied=Access denied
+authoringsteps.text.description=Edit the main text of a news.
+authoringsteps.text.label=Main text
+createform.title=Create a new news item
+createform.name.help=The name of the new item. May only contain letter (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 news item. All localizable values provided in this form are created for the selected locale.
+createform.initial_locale.label=Locale
+createform.title.help=The title of the news
+createform.title.label=Title
+createform.summary.help=A short summary of the news.
+createform.summary.label=Summary
+createform.workflow.help=The workflow to use for the news.
+createform.workflow.label=Workflow
+createform.releasedate.help=The release date of the news.
+createform.releasedate.label=Release date
+createform.cancel=Cancel
+createform.submit=Create news
+basicproperties.header=Edit basic properties of news {0}
+basicproeperties.name.header=Name
+basicproperties.name.edit=Edit name
+basicproperties.name.edit.title=Edit name
+basicproperties.name.edit.close=Cancel
+basicproperties.name.help=The name of the news item. May only contain letter (a to z and A to Z, numbers, the underscore ("_") and the dash ("-").
+basicproperties.name.label=Name
+basicproperties.name.edit.submit=Submit
+basicproperties.releasedate.header=Release Date
+basicproperties.releasedate.edit=Edit release date
+basicproperties.releasedate.edit.title=Edit release date
+basicproperties.releasedate.edit.close=Cancel
+basicproperties.releasedate.help=The release date of the news.
+basicproperties.releasedate.label=Release date
+basicproperties.releasedate.edit.submit=Submit
+basicproperties.title.add=Add localized title
+basicproperties.title.add.cancel=Cancel
+basicproperties.title.add.locale.help=The locale of the new localized title.
+basicproperties.title.add.locale.label=Title
+basicproperties.title.add.submit=Add title value
+basicproperties.title.add.header=Add localized title
+basicproperties.title.add.value.help=The new localized title.
+basicproperties.title.add.value.label=Localized title
+basicproperties.title.edit=Edit
+basicproperties.title.edit.cancel=Cancel
+basicproperties.title.edit.submit=Save
+basicproperties.title.edit.header=Edit localized title
+basicproperties.title.edit.value.help=The localized title.
+basicproperties.title.edit.value.label=Localized title
+basicproperties.title.remove=Remove
+basicproperties.title.remove.cancel=Cancel
+basicproperties.title.remove.submit=Remove localized title
+basicproperties.title.remove.text=Are your sure to remove the localized title for the following locale:
+basicproperties.title.remove.header=Remove localized title
+basicproperties.description.add=Add localized summary
+basicproperties.description.add.cancel=Cancel
+basicproperties.description.add.locale.help=The locale of the new localized summary.
+basicproperties.description.add.locale.label=Locale
+basicproperties.description.add.submit=Add localized summary
+basicproperties.description.add.header=Add localized summary
+basicproperties.description.add.value.help=The new localized summary.
+basicproperties.description.add.value.label=Localized summary
+basicproperties.description.edit=Edit
+basicproperties.description.edit.cancel=Cancel
+basicproperties.description.edit.submit=Save
+basicproperties.description.edit.header=Edit localized summary
+basicproperties.description.edit.value.help=The localized summary.
+basicproperties.description.edit.value.label=Localized summary
+basicproperties.description.remove=Remove
+basicproperties.description.remove.cancel=Cancel
+basicproperties.description.remove.submit=Remove localized summary
+basicproperties.description.remove.text=Are you sure to remove the localized summary for this following locale?
+basicproperties.description.remove.header=Remove localized summary
+textstep.header.languages=Text of the Article - Available languages
+textstep.languages.add_language.help=Select the language to add
+textstep.languages.add_language.label=Add language
+textstep.languages.add_language.submit=Add
+textstep.languages.view=View
+textstep.languages.edit=Edit
+textstep.languages.remove=Remove
+textstep.languages.remove.cancel=Cancel
+textstep.languages.remove.confirm=Remove locale
+textstep.languages.remove.title=Confirm removal of locale {0}
+textstep.languages.remove.message=Are you sure to remove the text for locale {0}?
+textstep.languages.th.language=Language
+textstep.languages.th.actions=Actions
+textstep.languages.none=No texts available
+textstep.header.edit=Edit text for locale {0}
+textstep.header.view=Text of Article {0} for locale {1}
+textstep.back=Back to available languages
+text.editor.add_variant=Add language
+text.editor.add.locale.help=The language of the new variant.
+text.editor.edit.value.help=The text of the article.
+text.editor.edit.value.label=Text
+textstep.header=Text of the News
+basicproperties.title.header=Title
+basicproperties.description.header=Summary
+text.editor.header=Main text
diff --git a/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/NewsBundle_de.properties b/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/NewsBundle_de.properties
new file mode 100644
index 000000000..fa784973c
--- /dev/null
+++ b/ccm-cms/src/main/resources/org/librecms/ui/contenttypes/NewsBundle_de.properties
@@ -0,0 +1,116 @@
+
+createstep.description=Erstelle eine Neuigkeit (News)
+createstep.name.error.missing=Der Name des neuen Items vom Type News wurde nicht angegeben.
+createstep.name.error.invalid=Der angegebene Name is nicht zul\u00e4ssig.
+createstep.summary.error.missing=Es wurde keine Zusammenfassung angegeben.
+createstep.title.error.missing=Es wurde keine Titel angegeben.
+createstep.initial_locale.error.missing=Es wurde keine Sprache ausgew\u00e4lt.
+createstep.releasedate.error.missing=Es wurde kein Erscheinungsdatum angegeben.
+createstep.releasedate.error.malformed=Das Erscheinungsdatum ist keine valide Datums-/Zeitangabe.
+createstep.workflow.none_selected=Es wurde keine Arbeitsablauf ausgew\u00e4hlt.
+createstep.workflow.error.not_available=Der ausgew\u00e4hlte Arbeitsablauf ist nicht verf\u00fcgbar.
+authoringsteps.basicproperties.description=Bearbeiten der Basiseigenschaften einer Neuigkeit (News).
+authoringsteps.basicproprties.label=Basiseigenschaften
+news.edit.denied=Zugriff verweigert
+authoringsteps.text.description=Haupttext einer News bearbeiten.
+authoringsteps.text.label=Haupttext
+createform.title=Neue Neuigkeit (News) anlegen
+createform.name.help=Der Name des neuen Dokumentes. Darf nur Buchstaben (a bis z und A bis Z), Ziffern, den Unterstrich ("_") und den Bindestrich ("-") enthalten.
+createform.name.label=Name
+createform.initial_locale.help=Die initale Sprache der neuen News. Alle lokaliserbaren Eigenschaften aus diesem Formualar werden f\u00fcr die ausgew\u00e4hlte Sprache angelegt.
+createform.initial_locale.label=Sprache
+createform.title.help=Der Titel der News
+createform.title.label=Titel
+createform.summary.help=Eine kurze Zusammenfassung der News.
+createform.summary.label=Zusammenfassung
+createform.workflow.help=Der Arbeitsablauf der f\u00fcr die News genutzt wird.
+createform.workflow.label=Arbeitsablauf
+createform.releasedate.help=Das Erscheinungsdatum der News.
+createform.releasedate.label=Erscheinungsdatum
+createform.cancel=Abbrechen
+createform.submit=News anlegen
+basicproperties.header=Basiseigenschaften der News {0} bearbeiten
+basicproeperties.name.header=Name
+basicproperties.name.edit=Name bearbeiten
+basicproperties.name.edit.title=Name bearbeiten
+basicproperties.name.edit.close=Abbrechen
+basicproperties.name.help=Der Name der News. Darf nur Buchstaben (a bis z und A bis Z), Ziffern, den Unterstrich ("_") und den Bindestrich ("-") enthalten.
+basicproperties.name.label=Name
+basicproperties.name.edit.submit=Speichern
+basicproperties.releasedate.header=Erscheinungsdatum
+basicproperties.releasedate.edit=Erscheinungsdatum bearbeiten
+basicproperties.releasedate.edit.title=Erscheinungsdatum bearbeiten
+basicproperties.releasedate.edit.close=Abbrechen
+basicproperties.releasedate.help=Das Erscheinungsdatum der News.
+basicproperties.releasedate.label=Erscheinungsdatum
+basicproperties.releasedate.edit.submit=Speichern
+basicproperties.title.add=Hinzuf\u00fcgen
+basicproperties.title.add.cancel=Abbrechen
+basicproperties.name.label=Name
+basicproperties.header=Basiseigenschaften des Artikels {0}
+basicproperties.name.edit.title=Name bearbeiten
+basicproperties.name.edit.close=Abbrechen
+basicproperties.name.edit.submit=Speichern
+basicproperties.title.add=Lokalisierten Titel hinzuf\u00fcgen
+basicproperties.title.add.cancel=Abbrechen
+basicproperties.title.add.locale.help=The locale of the new localized title.
+basicproperties.title.add.locale.label=Titel
+basicproperties.title.add.submit=Titel hinzuf\u00fcgen
+basicproperties.title.add.header=Lokalisierten Titel hinzuf\u00fcgen
+basicproperties.title.add.value.help=Der neue lokalisierte Titel.
+basicproperties.title.add.value.label=Lokalisierter Titel
+basicproperties.title.edit=Bearbeiten
+basicproperties.title.edit.cancel=Abbrechen
+basicproperties.title.edit.submit=Speichern
+basicproperties.title.edit.header=Lokalisierten Titel bearbeiten
+basicproperties.title.edit.value.help=Der lokalisierte Titel.
+basicproperties.title.edit.value.label=Lokalisierter Titel
+basicproperties.title.remove=Entfernen
+basicproperties.title.remove.cancel=Abbrechen
+basicproperties.title.remove.submit=Lokalisierten Titel entfernen
+basicproperties.title.remove.text=Sind Sie sicher, dass Sie den lokalisierten Titel f\u00fcr folgende Sprachen l\u00f6schen wollen?
+basicproperties.title.remove.header=Lokalisierten Titel entfernen
+basicproperties.description.add=Lokalisierte Zusammenfassung hinzuf\u00fcgen
+basicproperties.description.add.cancel=Abbrechen
+basicproperties.description.add.locale.help=Die Sprache der neuen lokalisierten Zusammenfassung.
+basicproperties.description.add.locale.label=Sprache
+basicproperties.description.add.submit=Lokaliserte Zusammenfassung hinzuf\u00fcgen
+basicproperties.description.add.header=Lokalisierte Zusammenfassung hinzuf\u00fcgen
+basicproperties.description.add.value.help=Die neue lokalisierte Beschreibung.
+basicproperties.description.add.value.label=Lokalisierte Zusammenfassung
+basicproperties.description.edit=Bearbeiten
+basicproperties.description.edit.cancel=Abbrechen
+basicproperties.description.edit.submit=Speichern
+basicproperties.description.edit.header=Lokalisierte Zusammenfassung bearbeiten
+basicproperties.description.edit.value.help=Die lokalisierte Zusammenfassung.
+basicproperties.description.edit.value.label=Lokalisierte Zusammenfassung
+basicproperties.description.remove=Entfernen
+basicproperties.description.remove.cancel=Abbrechen
+basicproperties.description.remove.submit=Lokalisierte Zusammenfassung entfernen
+basicproperties.description.remove.text=Sind Sie sicher, dass Sie die lokalisierte Zusammenfassung f\u00fcr die folgende Sprach entfernen wollen?
+basicproperties.description.remove.header=Lokalisierte Zusammenfassung entfernen
+textstep.header=Haupttext des News
+textstep.header.languages=Haupttext des Artikels - Sprachen
+textstep.languages.add_language.help=W\u00e4hlen Sie die hinzuzuf\u00fcgende Sprache
+textstep.languages.add_language.label=Sprache hinzuf\u00fcgen
+textstep.languages.add_language.submit=Hinzuf\u00fcgen
+textstep.languages.view=Ansehen
+textstep.languages.edit=Bearbeiten
+textstep.languages.remove=Entfernen
+textstep.languages.remove.cancel=Abbrechen
+textstep.languages.remove.confirm=Sprache entfernen
+textstep.languages.remove.message=Sind Sie sicher, dass Sie den Text f\u00fcr die Sprache {0} entfernen wollen?
+textstep.languages.remove.title=Entfernen der Sprache {0} best\u00e4tigen
+textstep.languages.th.language=Sprache
+textstep.languages.th.actions=Aktionen
+textstep.languages.none=Keine Texte vorhandenen
+textstep.header.edit=Text f\u00fcr Sprache {0} bearbeiten
+textstep.header.view=Text des Artikels {0} f\u00fcr Sprache {1}
+textstep.back=Zur\u00fcck zur Liste der verf\u00fcgbaren Sprachen
+text.editor.add_variant=Sprache hinzuf\u00fcgen
+text.editor.add.locale.help=Die Sprache der neuen Variante.
+text.editor.edit.value.help=Der Text des Artikels.
+text.editor.edit.value.label=Text
+basicproperties.title.header=Titel
+basicproperties.description.header=Zusammenfassung
+text.editor.header=Haupttext
diff --git a/ccm-cms/src/main/typescript/content-sections/news-text-step.ts b/ccm-cms/src/main/typescript/content-sections/news-text-step.ts
new file mode 100644
index 000000000..a6870f18b
--- /dev/null
+++ b/ccm-cms/src/main/typescript/content-sections/news-text-step.ts
@@ -0,0 +1,52 @@
+import { CmsEditorBuilder, CmsEditor } from "./cms-editor";
+
+document.addEventListener("DOMContentLoaded", (event) => {
+ const editorElem = document.querySelector("#cms-news-text-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 312b64450..6b2626055 100644
--- a/ccm-cms/webpack.config.js
+++ b/ccm-cms/webpack.config.js
@@ -11,7 +11,8 @@ module.exports = {
"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"
+ "mpa-section-edit-text": "./src/main/typescript/content-sections/mpa-section-edit-text.ts",
+ "news-text-step": "./src/main/typescript/content-sections/news-text-step.ts"
},
output: {
filename: "[name].js",