Sida 1 av 2

Postat: 2004-04-07 00:08
av Frederik
Joakim skrev:Går inte inställningarna på forumet in och ändrar en användares profil också ? Tänker på nu när man ändrat till sommartid...
Hur ändrar man till sommartid, har letat men ej funnit :?:

Postat: 2004-04-07 00:40
av Kail
Ändra tidszonen till GMT + 2. Sommartid borde f ö avskaffas.

Postat: 2004-04-14 18:41
av Marcus
Några problem med detta dock...

1. Det räcker inte med att ändra i adminsidan, utan varje medlem måste ändra i sin egen profil.

2. Alla tider ändras, även de som är postade under vintertid får nu en förskjutning på 1 timme... kanske inte betyder så mycket för alla, men i vissa fall har det betydelse.

/marcus

Postat: 2004-04-14 20:37
av Bohemen
marcus skrev:Några problem med detta dock...

1. Det räcker inte med att ändra i adminsidan, utan varje medlem måste ändra i sin egen profil.

2. Alla tider ändras, även de som är postade under vintertid får nu en förskjutning på 1 timme... kanske inte betyder så mycket för alla, men i vissa fall har det betydelse.

/marcus
Man slipper det om man kör detta i phpmyadmin

Kod: Markera allt

UPDATE phpbb_users SET user_timezone="2"

Postat: 2004-04-14 22:16
av Marcus
Inte problem nummer 2... det beror på att alla tider, även de som postades när det var vinter tid lagras med GMT, och inte med GMT+1.

Jag tycker att:

1.
Vid postning ska tidsstämpeln sättas med hänsyn till forumets tidszone, inkl. 1 timme för sommartid (om det råder för tillfället).

2.
Vid visning ska tiden för användar visas enligt formeln:

Tidstämpel + (usertidzon - forumstidzon)

Ex.

Forumsserver står i GMT+1.
A bor i GMT+4.
B bor i GMT-5.

A postar ett meddelande, kl. 9:00 lokaltid, dvs. kl. 6.00 på servern. Det lagras som kl. 6.00

A läser sin postning, och får upp tiden som: 6:00 + (4h - 1h) = 9:00
B läser samma postning, och får upp tiden: 6:00 + (-5 - 1h) = 0:00

Postat: 2004-04-14 22:40
av Marcus
Bohemen skrev:Man slipper det om man kör detta i phpmyadmin

Kod: Markera allt

UPDATE phpbb_users SET user_timezone="2"
Ett fel till med detta! Vad händer om man har user_timezone="3" innan man kör det du säger??

Man kan däremot köra:

Kod: Markera allt

UPDATE phpbb_users SET user_timezone = user_timezone + 1
Undrar dock om man inte måste ha någon lite koll då, för säga att man har 12 inställt... 13 finns väl knappast...

Eller säg att någon redan gjort uppdateringen manuellt... då får de ytterligare en timme plus...

Nej... på det hela taget är det helt fel att gå inte och mass-ändra data i databasen här...

/marcus

Postat: 2004-04-15 18:28
av Bohemen
Bohemen skrev:
Man slipper det om man kör detta i phpmyadmin Kod:
UPDATE phpbb_users SET user_timezone="2"



Ett fel till med detta! Vad händer om man har user_timezone="3" innan man kör det du säger??
Alla får timezone +2 med detta

Postat: 2004-04-15 21:30
av Kail
Går ju att använda räkneoperatorer inom SQL med, men alla länder byter inte till sommartid samtidigt heller.

Postat: 2004-04-16 09:41
av Marcus
Bohemen skrev:
Bohemen skrev:
Man slipper det om man kör detta i phpmyadmin Kod:
UPDATE phpbb_users SET user_timezone="2"



Ett fel till med detta! Vad händer om man har user_timezone="3" innan man kör det du säger??
Alla får timezone +2 med detta
Frågan var retorisk, och som du kanske förstod på vad jag skrev efter det... så vet jag en lösning (i linje med vad Kail pratar om).

Men jag hittade själv en brist även i den lösning, och Kail påtalade en andra brist...

Det bästa vore alltså om forumet håller ordning på postningarna enligt egen lokal tid, och att användarnas inställningar avänds i kombination med dessa för att skapa användarlokala tidsvisningar.

/marcus

Postat: 2004-04-16 16:14
av Kail
Sedan finns det länder som ändrar tid med en halvtimme eller kvart. Så det handlar inte heller om hela timmar alltid.

Postat: 2004-04-16 16:47
av Marcus
Det kände jag inte till...

Att det däremot finns de som har +/-X.5 avvikelse mot GMT vet jag.

Inte en lätt nöt att knäcka...

Men vad tror man om min lösning? Kanske något för utvecklarna av 2.2 att tänka på.

/Marcus

Postat: 2004-04-16 17:25
av Kail
Tidsvisningar är lokala om du registrerat dig och angett tidszon. Att hålla reda på sommartid i alla delar av världen är nästintill en omöjlighet:

http://www.phpbb.com/kb/article.php?article_id=23

Postat: 2004-04-16 21:05
av Marcus
Jag tror att det är möjligt...

Om man lagrar varje postning med uppgift om när det är postat inkl. vilken tidzon och om sommar- eller vintertid rådde...

Sedan vid visning, så är det ju bara att addera/subtrahera skillnad mellan serverns lokaltid och användarens lokaltid...

Alla inställningar, utom just sommar/vintertid finns ju där...

Men jag får funderar på ett hack en annan gång... har för många bollar i luften som det är...

/marcus

Postat: 2004-04-16 21:18
av Kail
Det handlar om att hålla reda på var man tillämpar det och var man inte gör det. Det skiljer nämligen mellan olika länder oavsett tidszon.

Postat: 2004-04-20 23:43
av Marcus
Oops.... Pinsamt, men jag måste erkänna...

Jag har tänkt helt fel...

Man kan inte alls göra så, för det bor visst lite folk i samma tidzone som jag som inte har sommar tid just nu...

Och sedan går det lite fel vi just bytena... framför allt när man drar tillbaka klockan och får återuppleva samma tid en gång till...

Så strunta i mina knasiga teorier...

/marcus