Danke!!
[MODDB] Automatische Sommerzeit
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Hallo zusammen, Hallo MartectX
die letzten Tage habe ich mir einige Gedanken über die DST-Geschichte gemacht und bin ehrlich gesagt mit der bisherigen und den obigen Patches nicht zufrieden. Es ist zwar alles irgendwie funktional, aber im Hinblick auf die verhältnismäßig hohe Zahl an Modifikationen (auch in Hinblick auf zukünftige phpBB-Updates und andere Mods) erscheint mir das alles sehr suboptimal.
Um das komplett zu vermeiden ist mein Ansatz folgender (basierend auf phpBB3.0.2 ohne obige DST-Modifikationen):
NEUE Datenbank-Felder:
users-table:
- "automatic_dst" (bool)
(für das UCP, um neben den manuellen DST-settingd ein Häckchen auf "Automatisch" setzen zu können, Wert 1 bei Ja)
config-table:
- "auto_dst_board"
(ACP wählbar für das board wie bei UCP)
- "auto_dst_current"
(für Abgleich von date('I')-Änderungen)
Script-Logik:
Bei jedem Aufruf von index.php überprüfung des DST-Status (entweder direkt im Code oder per Function-Aufruf):
Das ist alles (Core code, noch UCP_Settings mit date('I)-check nach Auswahl von Automatisch, und im grunde das gleiche im ACP_Board, zwei Templateänderungen, fertig)
Sorry, ich habe das noch nicht in realer Codeform zusammengepfriemelt, aber das sollte so verständlich sein. Der Vorteil: Minimaler Codeänderungen, keine Anpassungen anderer Mods, keine gravierenden Probleme bei phpbb-updates, auch auf internationalen boards flexibel einsetzbar. und zweimal im Jahr ne überschaubare user-DB-Query und config-sets zeitnah sobald ein Gast, Bot, oder User um 3:00+ Uhr das Board besucht.
Was haltet ihr davon?
Cheers,
kloppo / updown
die letzten Tage habe ich mir einige Gedanken über die DST-Geschichte gemacht und bin ehrlich gesagt mit der bisherigen und den obigen Patches nicht zufrieden. Es ist zwar alles irgendwie funktional, aber im Hinblick auf die verhältnismäßig hohe Zahl an Modifikationen (auch in Hinblick auf zukünftige phpBB-Updates und andere Mods) erscheint mir das alles sehr suboptimal.
Um das komplett zu vermeiden ist mein Ansatz folgender (basierend auf phpBB3.0.2 ohne obige DST-Modifikationen):
NEUE Datenbank-Felder:
users-table:
- "automatic_dst" (bool)
(für das UCP, um neben den manuellen DST-settingd ein Häckchen auf "Automatisch" setzen zu können, Wert 1 bei Ja)
config-table:
- "auto_dst_board"
(ACP wählbar für das board wie bei UCP)
- "auto_dst_current"
(für Abgleich von date('I')-Änderungen)
Script-Logik:
Bei jedem Aufruf von index.php überprüfung des DST-Status (entweder direkt im Code oder per Function-Aufruf):
Code: Alles auswählen
if ($config['auto_dst_current'] != date('I'))
{
SQL: update user.table set user_dst = date('I') where automatic_dst = 1;
if ($config['auto_dst_board'])
{
SQL: update config(board_dst) set date('I')
}
SQL: update config(auto_dst_current) set date('I')
}Sorry, ich habe das noch nicht in realer Codeform zusammengepfriemelt, aber das sollte so verständlich sein. Der Vorteil: Minimaler Codeänderungen, keine Anpassungen anderer Mods, keine gravierenden Probleme bei phpbb-updates, auch auf internationalen boards flexibel einsetzbar. und zweimal im Jahr ne überschaubare user-DB-Query und config-sets zeitnah sobald ein Gast, Bot, oder User um 3:00+ Uhr das Board besucht.
Was haltet ihr davon?
Cheers,
kloppo / updown
Klar kloppo, so geht's auch; am Besten machst Du die Abfrage in der Funktion page_header in functions.php. Alles was dann noch fehlt ist die Abstimmung jedes Datums auf die entsprechende DST-Zeit (in der sessions.php) - falls das von Dir gewollt ist.
Ich habe versucht, die Datenbankänderungen zu minimieren (leider musste ich eben nun doch die eine kleine Änderung durchführen
); das ist jedoch lediglich meine persönliche Priorität.
Ich habe versucht, die Datenbankänderungen zu minimieren (leider musste ich eben nun doch die eine kleine Änderung durchführen
Danke! Wozu ist die eigentlich genau gut, bzw. worin liegt der praktische Unterschied zur standard phpbb-Handhabung?MartectX hat geschrieben:Klar kloppo, so geht's auch; am Besten machst Du die Abfrage in der Funktion page_header in functions.php. Alles was dann noch fehlt ist die Abstimmung jedes Datums auf die entsprechende DST-Zeit (in der sessions.php) - falls das von Dir gewollt ist.
Die datumsbezogene Abstimmung? Hab' ich mir einfallen lassen, weil ich in der Hinsicht Perfektionist bin: Statt, wie phpBB3 es standardmäßig macht, auf alle Daten die Sommerzeit draufzurechnen (sofern sie aktiviert ist), prüfe ich für jedes Datum, ob es denn überhaupt in die Sommerzeit fällt. So kann es passieren, dass die angezeigte Zeit eines Folgebeitrags vor den vorgehenden Beitrag fällt (und zwar in der Stunde der Uhrrückstellung, wie wir es vor einer Woche erfuhren - dies entspricht somit auch der Realität).kloppo hat geschrieben:Danke! Wozu ist die eigentlich genau gut, bzw. worin liegt der praktische Unterschied zur standard phpbb-Handhabung?MartectX hat geschrieben:Klar kloppo, so geht's auch; am Besten machst Du die Abfrage in der Funktion page_header in functions.php. Alles was dann noch fehlt ist die Abstimmung jedes Datums auf die entsprechende DST-Zeit (in der sessions.php) - falls das von Dir gewollt ist.
Ich schreibe meine Mods in erster Linie für mich selbst; ich veröffentliche auch nicht jede Codeänderung, da einige Hacks zu klein sind oder "dreckig" programmiert und ich mich nicht mit Validierung dafür auseinandersetzen will. Deswegen habe ich auch überhaupt kein Problem, wenn Du eine eigene Auto-Sommerzeit-Modifikation erstellst! Lass' Dir nur einen anderen Namen einfallen, wenn's geht...kloppo hat geschrieben:Ah, Danke, jetzt kapier ich auch diesen Code-Teil - eigentlich eine kleine eigenständige Modifikation für sich
Test bei mir negativ!MartectX hat geschrieben: Morgen Vormittag, nach dem heutigen Mitternachts-Härtetest.
Da bin ich mal wieder und fast am verzweifeln!
Und zwar passt in meinem Testforum (Lokal) jetzt alles, dann hab ich alle relevanten Dateien in mein Liveforum kopiert.....SQL-Befehl ausgeführt......Cache geleert...... aber die Geburtstagsanzeige funktioniert nicht......1Std. verschoben. Der Rest ist alles da....und funktioniert....also der "Wer war da Mod"....die Anzeigen im UCP und ACP....
KlarMartectX hat geschrieben:Ich schreibe meine Mods in erster Linie für mich selbst; ich veröffentliche auch nicht jede Codeänderung, da einige Hacks zu klein sind oder "dreckig" programmiert und ich mich nicht mit Validierung dafür auseinandersetzen will. Deswegen habe ich auch überhaupt kein Problem, wenn Du eine eigene Auto-Sommerzeit-Modifikation erstellst! Lass' Dir nur einen anderen Namen einfallen, wenn's geht...
Die eigentliche Intention meines Beitrags ist es, auf die grundlegend-systematischen Probleme des bestehenden DST-Mods hinzuweisen, und als Anregung: eben anstatt die user-dst direkt zu erweitern und das Code-Handling dieser neuen Einstellungen ansschließed rundherum anzupassen, das bestehende Kern-System so zu belassen wie es ist und lediglich den bisher manuellen Änderungsprozess zu automatisieren - man erspart sich damit enorm viel Ärger und Aufwand, auch und vor allem in Verbindung mit zahlreichen anderen MODs und deren Updates!
Zuletzt geändert von kloppo am 30.10.2008 00:44, insgesamt 1-mal geändert.
- redbull254
- Ehemaliges Teammitglied
- Beiträge: 10379
- Registriert: 05.01.2006 13:01
- Kontaktdaten: