[FINAL] [3.3] CF Change Post time

In diesem Forum können Extension-Autoren ihre Extensions vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Benutzeravatar
chris1278
Mitglied
Beiträge: 3841
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

[FINAL] [3.3] CF Change Post time

Beitrag von chris1278 »

Name der Erweiterung: CF Change Posttime

Autor: Chris1278

Version der Erweiterung: 2.0.1

Kompatibel für folgende PHPBB-Version:
  • phpBB 3.3.0 -> <4.0@dev
Weitere Bedingungen:
  • php 7.0 -> 8.3@dev
Information:

CF Change Post Time ist eine Weiterentwicklung von Change Post Time (ext 3.1; 3.2) und basiert auf Change Post Time (MOD).

P.S.:Des Weiteren habe ich die Extension so eingerichtet, dass man das Datum bis zum aktuellen Datum ändern kann. Versucht man dann ein Datum einzugeben, welches in der Zukunft liegt, wird ein Hinweis angezeigt und im besten Fall die Aktion abgebrochen. Der Grund ist, dass bei der Eingabe eines Datums/Uhrzeit, welches in der Zukunft liegt, der Beitrag immer als ungelesen markiert wird, auch wenn man diesen Beitrag gelesen bzw. als gelesen markiert hat. Dies bleibt so lange so, bis das zukünftige Datum tatsächlich erreicht ist. Das Problem bestand aber auch bei der Extension, von der ich es adaptiert habe.

Da der Autor der Erweiterung diese nicht mehr pflegt, habe ich sie als Fork erstellt, um die Funktion nutzbar zu halten.

Download der Erweiterung:

Die Erweiterung kann in der phpbb.com Erweiterung Datenbank als Validierte Version hier heruntergeladen werden!

Beschreibung der Erweiterung:
Diese Erweiterung basiert auf Change Post Time von javiexin.

Ich habe den Code ein wenig angepasst und ihn mit phpbb 3.3.0 und höher kompatibel gemacht.

Die Funktion ist wie folgt:
  • Fügt einem Moderator die Möglichkeit hinzu, das Veröffentlichungsdatum und die Veröffentlichungszeit eines einzelnen Beitrags zu ändern.
  • Die Konfiguration erfolgt über die MCP-Seite zur Beitragsmoderation, wo ein neuer Block das Einstellen des neuen Datums und der neuen Uhrzeit ermöglicht, wann der Beitrag erstellt wurde.
  • Berücksichtigt die Änderung, um Thema und Forum entsprechend zu aktualisieren.
  • Berechtigungsbasiert, verwendet eine neue Moderator Berechtigung (sowohl global als auch Forum), „Kann Datum/Uhrzeit des Beitrags ändern“, die die Konfiguration von „Kann Poster ändern“ in dem Forum kopiert, in dem sie installiert ist.
Zuletzt geändert von chris1278 am 20.11.2024 18:27, insgesamt 1-mal geändert.
Joe Kolade
Mitglied
Beiträge: 217
Registriert: 27.02.2023 19:59

Re: [FINAL] [3.3] CF Change Post time

Beitrag von Joe Kolade »

Hallo Chris,

und vielen Dank, dass Du Dich dieser Erweiterung angenommen hast!

Unter https://www.phpbb.com/customise/db/exte ... post_time/ wird darauf hingewiesen, dass die Erweiterung ab Version 3.3.11 kompatibel ist. Funktioniert sie auch noch unter 3.3.10? Oder gibt es hier bekannte Änderungen, die Probleme bringen könnten?

Deine Anpassung bezüglich einem in der Zukunft liegenden Datums kann ich aufgrund des bisherigen Fehlers verstehen. Aber lässt sich die Erweiterung nicht so "ausbauen", dass eben auch Datumsänderungen in die Zukunft hinein möglich sind? Ich denke da an die Erweiterung schedulePost von nekstati (siehe auch viewtopic.php?p=1426528#p1426528).
Eine Kombination wäre klasse und würde auch dem Namen der Erweiterung "Change Post time" gerecht(er) werden.

Für Tests und sonstige Unterstützung stehe ich gerne zur Verfügung.

Gruß Joe
Benutzeravatar
chris1278
Mitglied
Beiträge: 3841
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: [FINAL] [3.3] CF Change Post time

Beitrag von chris1278 »

Also ich denke, das sollte auch mit 3.3.10 funktionieren. Dazu einfach die ext.php löschen und aktivieren.
Deine Anpassung bezüglich eines in der Zukunft liegenden Datums kann ich aufgrund des bisherigen Fehlers verstehen. Aber lässt sich die Erweiterung nicht so ausbauen, dass eben auch Datumsänderungen in die Zukunft hinein möglich sind?
Das habe ich bewusst so gemacht, eben wegen des Problems, dass man den Beitrag immer als neu markiert bekommt, bis das angegebene Datum erreicht wird. Es wird auch in Zukunft keine Option geben, wie man dies umgehen kann. Das ist auch nicht der Sinn der Erweiterung.

Du darfst gerne diese Prüfung deaktivieren. Dazu musst du in der Listener.php nur das hier ändern:


finde dort diesen code teil:

Code: Alles auswählen

if ($year . '-' . $month . '-' . $day > date('Y-m-d'))
		{
			trigger_error('CF_ERROR_DATE');
		}
und ersetze mit:

Code: Alles auswählen

	/*
		if ($year . '-' . $month . '-' . $day > date('Y-m-d'))
		{
			trigger_error('CF_ERROR_DATE');
		}
		*/

Damit solltest du auch ein Datum/Zeit in Zukunft angeben können. Sei aber gewarnt das dann der Beitrag für jeden der das Forum öffnet immer als neu bzw. ungelesen markiert wird egal wie oft er diesen Beitrag öffnet oder die Option nutzt "forum als gelesen zu markieren".

Diese Änderung musst du dann auch nach jedem Update wiederholen.
Joe Kolade
Mitglied
Beiträge: 217
Registriert: 27.02.2023 19:59

Re: [FINAL] [3.3] CF Change Post time

Beitrag von Joe Kolade »

Die Erweiterung läuft auch unter 3.3.10!

Meine Frage zu der Datumsänderung mit einem in der Zukunft liegenden Datum hast zu falsch interpretiert.

Mir geht es darum, ein zukünftiges Datum (und Uhrzeit) einzutragen und der Beitrag auch dann erst veröffentlicht wird. Der Beitrag wird so nicht bis zum eigentlichen Veröffentlichungstermin als ungelesen markiert, sondern erst zu diesem Datum angezeigt.
Entsprechend auch mein Hinweis aus schedulePost.

Wäre halt pfiffig, beide "Funktionen" in einer Erweiterung zu haben.

Gruß Joe
Benutzeravatar
chris1278
Mitglied
Beiträge: 3841
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: [FINAL] [3.3] CF Change Post time

Beitrag von chris1278 »

Nein das wäre eine andere Funktionsweise die so nicht vorgesehen ist. Tut mir leid das ist mit dieser so nicht möglich.
Joe Kolade
Mitglied
Beiträge: 217
Registriert: 27.02.2023 19:59

Re: [FINAL] [3.3] CF Change Post time

Beitrag von Joe Kolade »

Kein Problem!
Benutzeravatar
Wolkenbruch
Mitglied
Beiträge: 546
Registriert: 04.11.2010 16:56
Kontaktdaten:

[FINAL] [3.3] CF Change Post time

Beitrag von Wolkenbruch »

Ich habe ein kleines Problem.

Das Forum läuft auf UTC +02:00, somit sind alle Beiträge unter dieser Uhrzeit gespeichert.
Ich selbst bin in einem anderen Land und habe eine andere Uhrzeit auf meinem Rechner. Genau gesagt 7 Stunden früher.

Lange Rede, kurzen Sinn.
Hier der erstellte Beitrag: [ externes Bild ]
Hier der fehlgeschlagene Versuch das Datum zu ändern: [ externes Bild ]

Gibt es eine Lösung?
Kolumbien Freunde treffen sich im » Kolumbienforum «
Benutzeravatar
chris1278
Mitglied
Beiträge: 3841
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: [FINAL] [3.3] CF Change Post time

Beitrag von chris1278 »

Verstehe ish das richtig das der Fehler auftritt wenn mdu die zeit nach hinten also früher versetzen möchtest?

Ich kann das nicht reproduzieren.

Probiere mal die Änderung der Listener.php aus die ich hier gepostet habe:

viewtopic.php?p=1427882#p1427882

Sollte das dann gehen hab ich vielleicht eine Möglichkeit das zu verbessern.

Im moment wird einfach mittels date geprüft ohne berücksichtigung der User zeitzone. Da kann man dann evtl. die Prüfung etwas optimieren.
Benutzeravatar
Wolkenbruch
Mitglied
Beiträge: 546
Registriert: 04.11.2010 16:56
Kontaktdaten:

Re: [FINAL] [3.3] CF Change Post time

Beitrag von Wolkenbruch »

Seit dem Posting waren 2 Stunden vergangen und ich wollte es nur um eine Stunde vorverlegen. Also von 00:45 auf 01:45.
Da die Erweiterung früher oder später weltweit genutzt wird, könnten auch andere das Problem haben.

Im Moment bin ich wieder auf die alte Erweiterung von @javiexin umgestiegen.

Gerne probiere ich die von Dir vorgeschlagene Änderung aus.

Vielen Dank für die rasche Antwort.
Kolumbien Freunde treffen sich im » Kolumbienforum «
Benutzeravatar
chris1278
Mitglied
Beiträge: 3841
Registriert: 12.11.2007 06:20
Wohnort: Euskirchen
Kontaktdaten:

Re: [FINAL] [3.3] CF Change Post time

Beitrag von chris1278 »

Also ich werde die nächste version etwas ändern.

Wenn es klappt wird es dann ein Admin Panel geben wo man ziwschen 4 optionen entscheiden kann (min. aber drei mus ich dan testen)

Option 1: Ist das so wie bisher das einfach das datum mittels date() funktion als grenze gesetzt wird. Was aber keinerlei zeitzonen berücksichtigt.
Option 2: Zeiteinstellung des Moderators werden berücksichtigt und diese legen die Grenze fest.
Option 3: Zeiteinstellung des Forums werden als mass genommen und legen die begrenzung fest
Option 4: Keine Begrenzung (wobei dies nicht empfohlen wird. würde aber das anliegen von Joe Kolade mit berücksichtigen. Wobei auch nur wenns auf com genehmigt wird)

Zeitzonen immer vorrausgesetzt ich kriege hin wie das umgesetzt wird.
Antworten

Zurück zu „Extensions in Entwicklung“