Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Sommerzeit oder Winterzeit herausfinden

 
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> OS X-Snippets
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Wolle-77
•--->
•--->


Anmeldedatum: 25.02.2003
Beiträge: 447
Wohnort: Geldern

BeitragVerfasst am: 01.11.2017 - 22:50    Titel: Sommerzeit oder Winterzeit herausfinden Antworten mit Zitat

Hallo zusammen,

für ein zeitzonenrelevantes Projekt habe ich heute einen kleinen Handler erstellt, welcher mir zurückgibt, ob wir uns in der (europäischen) Sommer- oder Winterzeit befinden. Der Handler gibt true für Sommer- und false für Winterzeit zurück. Darauf resultierend kann dann mit GMT+02:00 z.B. für JavaScript im Browser die Zeitzone eingestellt werden.

Code:
on sommerzeit(zeit) # Die mitteleuropäische Sommerzeit beginnt jeweils am letzten Sonntag im März um 2:00 Uhr MEZ, indem die Stundenzählung um eine Stunde von 2:00 Uhr auf 3:00 Uhr vorgestellt wird. Sie endet jeweils am letzten Sonntag im Oktober um 3:00 Uhr MESZ, indem die Stundenzählung um eine Stunde von 3:00 Uhr auf 2:00 Uhr zurückgestellt wird. 1.11.2017, 13.33 by Martin Wolter
   set my text item delimiters to ""
   set jahr to year of zeit
   set sz to date (("31.3." & jahr & " 02:00:00") as string)
   repeat until weekday of sz is Sunday
      set sz to sz - 86400
   end repeat
   set wz to date (("31.10." & jahr & " 03:00:00") as string)
   repeat until weekday of wz is Sunday
      set wz to wz - 86400
   end repeat
   if zeit is greater than sz and zeit is less than wz then
      return true
   else
      return false
   end if
end sommerzeit

my sommerzeit(date "Sonntag, 25. März 2018 um 01:00:00")

_________________
Martin Wolter
--
Apple rocks the planet!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Wolle-77
•--->
•--->


Anmeldedatum: 25.02.2003
Beiträge: 447
Wohnort: Geldern

BeitragVerfasst am: 02.11.2017 - 16:06    Titel: Antworten mit Zitat

Hier noch die Version für Puristen, evtl. auch leicht performanter ;-)

Code:
on sommerzeit(zeit) # Die mitteleuropäische Sommerzeit beginnt jeweils am letzten Sonntag im März um 2:00 Uhr MEZ, indem die Stundenzählung um eine Stunde von 2:00 Uhr auf 3:00 Uhr vorgestellt wird. Sie endet jeweils am letzten Sonntag im Oktober um 3:00 Uhr MESZ, indem die Stundenzählung um eine Stunde von 3:00 Uhr auf 2:00 Uhr zurückgestellt wird. 1.11.2017, 13.33 by Martin Wolter
   set {my text item delimiters, jahr} to {"", year of zeit}
   set {sz, wz} to {date (("31.3." & jahr & " 02:00:00") as string), date (("31.10." & jahr & " 03:00:00") as string)}
   set {sz, wz} to {sz - ((((weekday of sz) as integer) - 1) * 86400), wz - ((((weekday of wz) as integer) - 1) * 86400)}
   if zeit is greater than sz and zeit is less than wz then return true
   return false
end sommerzeit

my sommerzeit(date "Sonntag, 25. März 2018 00:00:00")

_________________
Martin Wolter
--
Apple rocks the planet!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> OS X-Snippets Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter