content_date - CMS_DATE - neues Format
content_date - CMS_DATE - neues Format
Guten Morgen,
ich versuche gerade zum ersten Mal, das Modul content_date zu verwenden und hätte gern noch eine andere Formatierung oder gar zwei, z.B.
TT.MM. oder nur TT.
Wenn ich das Modul im Editor bediene, kann ich ja unter diversen Formaten wählen. Dort hätte ich halt gern noch ein, zwei weitere Einträge.
Kann ich da etwas daran drehen, ohne den Core verändern zu müssen?
Wie würde es gehen?
Vielen Dank schon mal!
Stephan
ich versuche gerade zum ersten Mal, das Modul content_date zu verwenden und hätte gern noch eine andere Formatierung oder gar zwei, z.B.
TT.MM. oder nur TT.
Wenn ich das Modul im Editor bediene, kann ich ja unter diversen Formaten wählen. Dort hätte ich halt gern noch ein, zwei weitere Einträge.
Kann ich da etwas daran drehen, ohne den Core verändern zu müssen?
Wie würde es gehen?
Vielen Dank schon mal!
Stephan
Re: content_date - CMS_DATE - neues Format
Da musst du schon an den Core, oder du erstellst eine eigene Klasse als Abkömmling von cContentTypeAbstact.
Hier für einen Laien der einfachere Weg:
Verändere contenido/classes/content_types/class.content.type.date.php indem du nach Zeile 80 dein gewünschtes Format eingibt.
Auszug ab Zeile 80:
Hier für einen Laien der einfachere Weg:
Verändere contenido/classes/content_types/class.content.type.date.php indem du nach Zeile 80 dein gewünschtes Format eingibt.
Auszug ab Zeile 80:
Code: Alles auswählen
$this->_dateFormatsPhp = array(
conHtmlentities('{"dateFormat":"","timeFormat":""}') => '',
conHtmlentities('{"dateFormat":"d.m.Y","timeFormat":""}') => $this->_formatDate('d.m.Y'),
conHtmlentities('{"dateFormat":"D, d.m.Y","timeFormat":""}') => $this->_formatDate('D, d.m.Y'),
conHtmlentities('{"dateFormat":"d. F Y","timeFormat":""}') => $this->_formatDate('d. F Y'),
conHtmlentities('{"dateFormat":"Y-m-d","timeFormat":""}') => $this->_formatDate('Y-m-d'),
conHtmlentities('{"dateFormat":"d/F/Y","timeFormat":""}') => $this->_formatDate('d/F/Y'),
conHtmlentities('{"dateFormat":"d/m/y","timeFormat":""}') => $this->_formatDate('d/m/y'),
conHtmlentities('{"dateFormat":"F y","timeFormat":""}') => $this->_formatDate('F y'),
conHtmlentities('{"dateFormat":"F-y","timeFormat":""}') => $this->_formatDate('F-y'),
conHtmlentities('{"dateFormat":"d.m.Y","timeFormat":"H:i"}') => $this->_formatDate('d.m.Y H:i'),
conHtmlentities('{"dateFormat":"m.d.Y","timeFormat":"H:i:s"}') => $this->_formatDate('m.d.Y H:i:s'),
conHtmlentities('{"dateFormat":"","timeFormat":"H:i"}') => $this->_formatDate('H:i'),
conHtmlentities('{"dateFormat":"","timeFormat":"H:i:s"}') => $this->_formatDate('H:i:s'),
conHtmlentities('{"dateFormat":"","timeFormat":"h:i A"}') => $this->_formatDate('h:i A'),
conHtmlentities('{"dateFormat":"","timeFormat":"h:i:s A"}') => $this->_formatDate('h:i:s A')
);
Could I help you... you can help me... buy me a coffee ☕. (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )
xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung
Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung
Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
Re: content_date - CMS_DATE - neues Format
Vielen Dank für die prompte und kompetente Antwort!
Ob ich dafür an den Core gehe, muss ich noch mal genauer überdenken.
Viele Grüße,
Stephan
Ob ich dafür an den Core gehe, muss ich noch mal genauer überdenken.
Viele Grüße,
Stephan
-
- Beiträge: 4260
- Registriert: Do 30. Jun 2005, 22:56
- Wohnort: Eltmann, Unterfranken, Bayern
- Kontaktdaten:
Re: content_date - CMS_DATE - neues Format
Servus,
Die Liste kann per EffectiveSettings in Form eines Arrays im JSON-Format erweitert werden (siehe contenido/classes/content_types/class.content.type.date.php ab Zeile 98).
Leider konnte ich weder in der Klasse selbst noch auf dem docs-Portal eine Doku finden, wie dieser Eintrag genau aussehen soll/müsste. Er wird aber zumindest unter https://docs.contenido.org/display/CONDEVE/Settings aufgeführt (einfach mal nach cms_date suchen).
Selbst habe ich es zwar noch nicht getestet, aber ich denke, sofern ich den Code richtig lese, der Eintrag ist analog zu den bereits vorhandenen Einträgen zu machen, wobei der Settings-Name wohl frei wählbar ist.
Gruß aus Franken
Nein! Muss er nicht!rethus hat geschrieben:Da musst du schon an den Core, oder du erstellst eine eigene Klasse als Abkömmling von cContentTypeAbstact.
Die Liste kann per EffectiveSettings in Form eines Arrays im JSON-Format erweitert werden (siehe contenido/classes/content_types/class.content.type.date.php ab Zeile 98).
Code: Alles auswählen
// add formats from client settings
$additionalFormats = getEffectiveSettingsByType('cms_date');
foreach ($additionalFormats as $format) {
$formatArray = json_decode($format, true);
// ignore invalid formats
if (empty($formatArray) || count($formatArray) != 2 || !array_key_exists('dateFormat', $formatArray) || !array_key_exists('timeFormat', $formatArray)) {
cWarning('An invalid date-time-format has been entered in the client settings.');
continue;
}
$key = conHtmlSpecialChars($format);
$value = implode(' ', $formatArray);
$this->_dateFormatsPhp[$key] = $this->_formatDate($value);
}
Selbst habe ich es zwar noch nicht getestet, aber ich denke, sofern ich den Code richtig lese, der Eintrag ist analog zu den bereits vorhandenen Einträgen zu machen, wobei der Settings-Name wohl frei wählbar ist.
Code: Alles auswählen
{"dateFormat":"d.m.Y","timeFormat":"H:i"}
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
Re: content_date - CMS_DATE - neues Format
Immer gut wenn jemand in der Freizeit Quellcode ließt
Daumen hoch für deinen Beitrag Oldperl.
Hab mal ein wenig rumgetestet, da man ja auch dazulernen möchte.
Legt man in den Mandanten-Variablen folgendes an:
wird dies der CMS-Date-Liste hinzugefügt.
Der Wert in den Mandanten-Variablen ist also ein json codierter array.
Allerdings habe ich auch gleich einen Bug entdeckt. Geht man, nach dem abspeichern wieder auf die Variable, um den Wert z.B. zu verändern, steht in dem Textfeld nur noch eine Klammer "{".
Im Sourcecode sieht die das Textfeld dann so aus:
Und noch ein Bug(?), man kann nur ein Datumsformat übergeben. Gibt man komma-separierte json-Arrays an, wird ein Fehler ausgeworfen,
gibt man mehrere Array-Werte an:
wird nur die jeweils letzte Formatierung erzeugt. Demnach ist der Kommentar im Sourcecode irreführend, das hier mehrere Formate übernommen werden könnten.
Daumen hoch für deinen Beitrag Oldperl.
Hab mal ein wenig rumgetestet, da man ja auch dazulernen möchte.
Legt man in den Mandanten-Variablen folgendes an:
Code: Alles auswählen
cms_date | dateFormat | {"dateFormat":"d.m.Y","timeFormat":"H:i"}
Der Wert in den Mandanten-Variablen ist also ein json codierter array.
Allerdings habe ich auch gleich einen Bug entdeckt. Geht man, nach dem abspeichern wieder auf die Variable, um den Wert z.B. zu verändern, steht in dem Textfeld nur noch eine Klammer "{".
Im Sourcecode sieht die das Textfeld dann so aus:
Code: Alles auswählen
<input id="m14" name="csvalue" value="{" dateformat":"yyyy","timeformat":"h:i"}"="" size="30" type="text">
gibt man mehrere Array-Werte an:
Code: Alles auswählen
{"dateFormat":"YYYY","timeFormat":"H:i","dateFormat":"dd","timeFormat":"H:i:s"}
Could I help you... you can help me... buy me a coffee ☕. (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )
xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung
Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung
Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
-
- Beiträge: 4260
- Registriert: Do 30. Jun 2005, 22:56
- Wohnort: Eltmann, Unterfranken, Bayern
- Kontaktdaten:
Re: content_date - CMS_DATE - neues Format
rethus hat geschrieben:Immer gut wenn jemand in der Freizeit Quellcode ließt
- liest und nicht ließt! Man kann' s aber auch lassen...
- Wer hat was von Freizeit gesagt? Hat man die eigentlich?
Und wieder NEIN!rethus hat geschrieben:Und noch ein Bug(?), man kann nur ein Datumsformat übergeben. Gibt man komma-separierte json-Arrays an, wird ein Fehler ausgeworfen,
gibt man mehrere Array-Werte an:wird nur die jeweils letzte Formatierung erzeugt. Demnach ist der Kommentar im Sourcecode irreführend, das hier mehrere Formate übernommen werden könnten.Code: Alles auswählen
{"dateFormat":"YYYY","timeFormat":"H:i","dateFormat":"dd","timeFormat":"H:i:s"}
Steht soviel ich mich jetzt gerade erinnere auch so nicht im Code. Dort steht nämlich
Code: Alles auswählen
$additionalFormats = getEffectiveSettingsByType('cms_date');
in ein Array eingelesen. Man muss also nur anstelle von 'dateFormat' nur immer wieder einen anderen Namen eingeben (Beispiel: DateFormat-EN und DateFormat-DE). Dann werden die entsprechenden Einträge am Ende des Auswahlfeldes hinzugefügt.rethus hat geschrieben:Code: Alles auswählen
cms_date | dateFormat | {"dateFormat":"d.m.Y","timeFormat":"H:i"}
Gruß aus Franken
Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
Re: content_date - CMS_DATE - neues Format
Hui, so kennen wir dich ja gar nicht, hier direkt rumzubrüllen? Harter Tag?Oldperl hat geschrieben: Und wieder NEIN!
Bei mir steht in Zeile 98 dieser Kommentar:
// add formats from client settings
Could I help you... you can help me... buy me a coffee ☕. (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )
xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung
Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung
Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
-
- Beiträge: 4260
- Registriert: Do 30. Jun 2005, 22:56
- Wohnort: Eltmann, Unterfranken, Bayern
- Kontaktdaten:
Re: content_date - CMS_DATE - neues Format
Man beachte den Plural...rethus hat geschrieben:Bei mir steht in Zeile 98 dieser Kommentar:// add formats from client settings
Und wo steht da bitte das er die Angabe nur in einer einzelnen Einstellung erwartet?
Gruß aus Franken
Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
-
- Beiträge: 967
- Registriert: Do 15. Apr 2004, 17:12
- Wohnort: Eschborn-Niederhöchstadt
- Kontaktdaten:
Re: content_date - CMS_DATE - neues Format
Guten Morgen die Herren,
vielen Dank erneut für Eure Vorarbeit. In der Tat ist es richtig: Über den Typ "cms_date" können beliebig viele (System-/Mandanten-)Variablen gesetzt und so die CMS_DATE-Formate erweitert werden. Ich nehme ein Beispiel mal in der Dokumentation unter "Settings" auf, damit jemand Drittes nicht wieder von Neuem suchen muss. Ferner kann ich bestätigen, dass die geschweiften Klammern beim Bearbeiten geschluckt werden. Ich nehme das als Ticket auf. Ggf. löse ich das auch direkt heute (sonst nächste Woche), da das für mich ein durchaus ärgerlicher Fehler ist.
vielen Dank erneut für Eure Vorarbeit. In der Tat ist es richtig: Über den Typ "cms_date" können beliebig viele (System-/Mandanten-)Variablen gesetzt und so die CMS_DATE-Formate erweitert werden. Ich nehme ein Beispiel mal in der Dokumentation unter "Settings" auf, damit jemand Drittes nicht wieder von Neuem suchen muss. Ferner kann ich bestätigen, dass die geschweiften Klammern beim Bearbeiten geschluckt werden. Ich nehme das als Ticket auf. Ggf. löse ich das auch direkt heute (sonst nächste Woche), da das für mich ein durchaus ärgerlicher Fehler ist.
Frederic Schneider
Entwickler bei der four for business AG
Entwickler bei der four for business AG
-
- Beiträge: 4260
- Registriert: Do 30. Jun 2005, 22:56
- Wohnort: Eltmann, Unterfranken, Bayern
- Kontaktdaten:
Re: content_date - CMS_DATE - neues Format
Guten Morgen Frederic
Immer gerne!
Gruß aus Franken
Ortwin
Immer gerne!
Gruß aus Franken
Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
-
- Beiträge: 967
- Registriert: Do 15. Apr 2004, 17:12
- Wohnort: Eschborn-Niederhöchstadt
- Kontaktdaten:
Re: content_date - CMS_DATE - neues Format
Anbei die korrigierte Datei include.clientsettings.php (Ordner contenido/includes) aus der Entwicklerversion CONTENIDO 4.9.9. Wie immer der Hinweis, dass der Einsatz deshalb ohne Gewähr ist.
- Dateianhänge
-
- include.clientsettings.zip
- Entwicklerversion CONTENIDO 4.9.9
- (2.22 KiB) 122-mal heruntergeladen
Frederic Schneider
Entwickler bei der four for business AG
Entwickler bei der four for business AG