Zum Inhalt springen

Ewiger Kalender


gajUli

Empfohlene Beiträge

Hi zusammen,

habe mal versucht, einen ewigen Kalender in Ganzjahresansicht mit allen Feiertagen zu programmieren (JavaScript). Das Problem bei solchen Projekten ist ja immer, sie auf moeglichst vielen Browsern zum Laufen zu bekommen, zumal viele Unterschiede in den Interpretern gar nicht dokumentiert sind.

Also wer Lust hat, bitte mit moeglichst vielen Browsern testen und Bugs hier posten.

Link ist: http://devnull.owl.de/~caesar/kalender.html

Vielen Dank

Link zu diesem Kommentar
Auf anderen Seiten teilen

Salve Imperator,

die Idee ist gut, aber ich hab da noch eine Frage:

So 25 Mai 103 kommt wenn man als Jahr 2003 auswählt, im

Jahr 2023 kommt 123.

Hat Dein Programm noch etwas Schwierigkeiten mit dem Jahrtausendwechsel oder bildet sich das mein Browser nur ein?

Version:

Mozilla 1.3

[Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030312]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Doham

>Salve Imperator,

Ave Zenturio Dohamus, ;-)

>So 25 Mai 103 kommt wenn man als Jahr 2003 auswählt, im

Jahr 2023 kommt 123.

>Hat Dein Programm noch etwas Schwierigkeiten mit dem Jahrtausendwechsel oder bildet sich das mein Browser nur ein?

Danke, das hilft mir weiter. Intern werden die Jahreszahlen meist ab 1900 gezaehlt. Mein Browser z. B. (IE5.2 MacOS 9.2.1) liefert aber trotzdem die richtige Jahreszahl, wenn man man die Methode getYear() aufruft. Anscheinend ist das nicht ueberall so...

Ich hab das jetzt mal so gefixt, dass der Wert direkt aus der eingelesenen Variablen geholt wird. Waer nett, wenn Du mal schauen koenntest, ob es nun besser ist.

>[Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3) Gecko/20030312]

Aha, *grummel*. Also ich muss schon sagen, die JavaScript-Datumsobjekte auf Linux-Browsern sind wirklich die Pest. Ich hatte erhebliche Probleme mit der Stringausgabe von Kalendertagen. Mal heisst es "MMM TT HH:MM:SS GMT+1 YYYY", mal ist der Tag einstellig bei Werten unter 10, mal fehlt der Sekundenblock, mal heisst es UTC statt GMT, mal ist die Zeitzone noch in runde Klammern verpackt usw. Zum verrueckt werden. Eben war ich es dann leid, immer wieder neue regulaere Ausdruecke zu erfinden und habe eine eigene Trimfunktion geschrieben. Ist sowieso besser, weil deutsch und kuerzer. ;-)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo gajUli,

wenn ich mir deinen Kalender unter Win XP, Opera 7.03 angucke, bekomme ich als Kalenderwochen "KW99139" beim 3 Jan 2005... Wird das nicht wieder auf "0" gesetzt am Ende eines Jahres?

Hoffe das hilft dir deinen Kalender zu "perfektionieren" :-)

Gruß Jule

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von jule_e

wenn ich mir deinen Kalender unter Win XP, Opera 7.03 angucke, bekomme ich als Kalenderwochen "KW99139" beim 3 Jan 2005... Wird das nicht wieder auf "0" gesetzt am Ende eines Jahres?

Au weia, ist das verrueckt...

Und eine Woche spaeter KW99140?

Kann sein, dass Opera eine ziemlich miese JavaScript-Maschine hat. Ein Netzbekannter mailte mir eben, dass das Script auf Opera unter Linux haengenbleibt. Bei anderen Browsern tritt das jedenfalls nicht auf. Wenn es dabei bleibt, kommt ein Hinweis rein, dass sich die Seite nicht fuer Opera eignet.

Die Kalenderwoche wird uebrigens nicht fortlaufend berechnet, sondern entsprechend der gueltigen ISO-Norm fuer jedes Jahr individuell bestimmt. Die Regel besagt, dass die Woche, in die der 4. Jan faellt, die erste KW ist. Ist davor noch ein Wochenwechsel, kann es passieren, dass diese Tage noch zur 52. oder 53. KW des Vorjahres gerechnet werden. Ebenso koennen die letzten Tage eines Jahres zur 1. KW des Folgejahres gehoeren!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von gajUli

Au weia, ist das verrueckt...

Und eine Woche spaeter KW99140?

Jep, zählt schön hoch (auch 99139 in der ersten Jan Woche, 99140 in der 2. Woche, usw). Bei mir mit Mozilla 1.2.1 unter Redhat 9. Mit IE6 und Win XP Prof. wird es richtig angezeigt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Wolle

Jep, zählt schön hoch (auch 99139 in der ersten Jan Woche, 99140 in der 2. Woche, usw). Bei mir mit Mozilla 1.2.1 unter Redhat 9. Mit IE6 und Win XP Prof. wird es richtig angezeigt.

Danke, sollte jetzt gefixt sein. Ein paar Rechnungen zeigten, dass sich Opera wahrscheinlich eine 105 statt 2005 reingezogen hat.

Kannst Du nochmal mit Opera pruefen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Wolle

>*schnell mal Opera installier*

Oh ****, hatte ueberlesen, dass Du gar nicht mit Opera getestet hattest. :confused:

>Ja, pass jetzt unter Mozilla und dem neusten Opera (7.11), beides unter Redhat 9 :)

Fein. Heissen Dank und sorry fuer die Umstaende.

Zum Schlafengehen noch die Meldung des Tages: Auf Mac-Browsern funktioniert es die ganze Zeit schon. :D

Link zu diesem Kommentar
Auf anderen Seiten teilen

Klar. Das Ding zeigt jedes Jahr so an, als ob es die Feiertage nach heutigem Stand gegeben haette bzw. geben wird. Beispielsweise gab es auch 1750 auch noch keine Arbeiterbewegung und damit keinen Tag der Arbeit. ;-)

Genauso Muttertag. Vielleicht sollte ich vor 1950 einfach alle nicht-kirchlichen Feiertage ausknippsen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von gajUli

Vielleicht sollte ich vor 1950 einfach alle nicht-kirchlichen Feiertage ausknippsen.

ohne wirklich was von java oder dem aufbau deines programms zu wissen:

das müsste doch eigentlich mit ner einfachen if anweisung für den jeweiligen feiertag (nicht-christlich) bewerkstelligt werden können:

if (jahr > 1990)

{anweisungen für tag der deutschen einheit}

else ()

{nüschts}

wenn dus anders gestrickt hast: dies wurde nie geschrieben...:D:D:D:D:D:D

war auch nur ein gedanke, da du schon weist, seit wann die feiertage gefeiert werden, bzw auftraten...

greetz

König Hüsi

Link zu diesem Kommentar
Auf anderen Seiten teilen

>wenn dus anders gestrickt hast: dies wurde nie geschrieben...:D:D:D:D:D:D

Ja, ist in der Tat etwas anders gestrickt, sozusagen mit einer Art Doppeltabellentechnik. Was solls, vielleicht muss ich halt eine dritte Tabelle mitschleppen, die das Beginndatum der Gueltigkeit indiziert. ****, wieso hab ich dazu jetzt keine Lust? :D

>war auch nur ein gedanke, da du schon weist, seit wann die feiertage gefeiert werden, bzw auftraten...

Leider nicht so ganz. Was ist beispielsweise mit dem Muttertag? Meines Wissens wurde der aus Amerika uebernommen irgendwann im 20. Jahrhundert. Nur wann? Genauso Valentinstag. Den gibt es praktisch auch erst, seit die Blumenhaendler ihn aus Marketinggruenden pushen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ave, Caesar,

nach ausgiebigen Testläufen kann ich hier zur vollständigkeit mal meine Ergebniss hinzufügen:

Opera 7.10 WinXP und WinNT4: läuft, allerdings ist die darstellung nicht so schön wie beim IE

IE 5&6 WinXP/WinNT4: läuft, allerdings mit der Einschränkung, dass ich bei IE5.5 und WinNT 4 die Seite erst wieder aktualisieren muss, um das Kalenderfenster mit nem neuen Jahr befüllt zu bekommen (wenn ich z.B. 2 Jahre direkt hintereinander anzeigen lassen will). Also das gleiche was ich vorher schonmal hatte; du erinnerst dich?

SPQR

gurkenpapst

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von gurkenpapst

>Ave, Caesar,

Ave Pontifex! :D

>Opera 7.10 WinXP und WinNT4: läuft, allerdings ist die darstellung nicht so schön wie beim IE

Von dem Problem berichtete schon bimei. Ich hab den Verdacht, dass Opera einen Proportionalfont nimmt. In dem Font-Tag hatte ich "Monaco, Courier, Courier New" angegeben. Monaco kennt es wahrscheinlich nicht und nimmt dann den Standardfont.

>IE 5&6 WinXP/WinNT4: läuft, allerdings mit der Einschränkung, dass ich bei IE5.5 und WinNT 4 die Seite erst wieder aktualisieren muss, um das Kalenderfenster mit nem neuen Jahr befüllt zu bekommen (wenn ich z.B. 2 Jahre direkt hintereinander anzeigen lassen will). Also das gleiche was ich vorher schonmal hatte; du erinnerst dich?

Yepp, erinnere mich. Ich weiss allerdings nicht, was man da machen kann; hab auch keinen Zugriff auf irgendeine NT4-Maschine. Ausserdem, wieso soll man Betriebssysteme supporten, die vom Hersteller nicht mehr supportet werden? :D

Aber danke fuer den ausfuehrlichen Test!

>SPQR

Hihi, senatus pupulesque romanus, nicht? :-))

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von gajUli

>SPQR

Hihi, senatus pupulesque romanus, nicht? :-))

populusque

genug kluggeschissen...

zum Thema:

Hatte ja gestern (oder vorgestern?) das Problem mit WinXP, das hast du ja allerdings behoben. Und NT4 benutzt sowieso keine sau mehr, der IE 5.5 ist auch nicht zu empfehlen...

Ehre und Stärke

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Jaraz

>Soweit ich weiss, geht der Gauss Algorithmus bis zum Jahre 8202 genau.

Der Gauss-Algorithmus immer. ;-)

Die Osterformel soll nach dem hier: http://www.serve.com/jb/ostern.htm sogar bis

8702 gelten. Also ich weiss jetzt ehrlich gesagt auch nicht, wie weit das mit dem Datumsobjekt von JavaScript geht. Aber danke fuer den interessanten Hinweis, ich werde mir das nochmal genauer angucken...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hab eben eine ueberarbeitete Version hochgeladen.

- Fuer weltliche Feiertage gibt es jetzt ein Einfuehrungsjahr. Vorher werden sie nicht mehr gelistet.

- Zeitraum von 1583 bis 9999 eingestellt (Jaraz, die obere Grenze gibt es evt. in der allgemeinen Form gar nicht, nur bei speziellen Varianten)

- Text ueberarbeitet und Credits eingebaut

Waer nicht schlecht, wenn ihr noch ein bisschen durch die Jahrhunderte testen koenntet.

Was ich noch brauche, sind die Jahre der Einfuehrung von Valentinstag, 1. Mai, Muttertag, Sommer- und Winterzeit. Wenn dazu jemand Quellen hat, nur zu.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von gajUli

Was ich noch brauche, sind die Jahre der Einfuehrung von Valentinstag, 1. Mai, Muttertag, Sommer- und Winterzeit. Wenn dazu jemand Quellen hat, nur zu.

*urghs* Dass ausgerechnet ich das schreiben muss...

Muttertag, in Deutschland seit 1933 Quelle Geschichte des Muttertags

Valentinstag, angeblich in Deutschland seit Ende des zweiten Weltkriegs, Quellen:

Geschichte des Valentin's Tag oder auch Geschichte Valentins (muss man sich nicht unbedingt antun, ist beides viel Schmalz. ;)

Für sonstige Feiertage ist auch dies eine Quelle: Feiertage

Maifeiertag: aus politischer Sicht ansonsten der vorherige Link, wo auch der traditionelle Maifeiertag (Maibaum aufstellen usw.) beschrieben ist.

Einführung der Sommerzeit in Deutschland: 1980, davor in den Jahren 1916-1918 und 1942-1949, Quelle: http://www.wispor.de/wpx-kal.htm

Angenehmes Lesen, oh grosser Caesar *mich in den Ftaup werf*, ich teste derweil weiter. :D;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von gajUli

>Opera 7.10 WinXP und WinNT4: läuft, allerdings ist die darstellung nicht so schön wie beim IE

Von dem Problem berichtete schon bimei. Ich hab den Verdacht, dass Opera einen Proportionalfont nimmt. In dem Font-Tag hatte ich "Monaco, Courier, Courier New" angegeben. Monaco kennt es wahrscheinlich nicht und nimmt dann den Standardfont.

Lösung ist unter Einstellungen ---> Schriften und Farbe ---> Normal ---> Button "Auswählen", Schriftart auf Courier einstellen,

und unter Seitenlayout "eigener Stil", Haken bei "Stil der Seite" entfernen, weil dann nicht nach Monaco gesucht wird.

Dann klappt das perfekt mit dem Aussehen. :-)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Pönk

Hi,

dein Skript "vergisst" den Heiligabend, wenn dieser mit dem 4. Advent auf einen Tag fällt ( z.B.: 2226)

Ei, das ist ein interessanter Hinweis, danke. Da werde ich wohl ein "break" aus der Suchschleife entfernen muessen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...