Kalender (07.01.2016)

Meine Puppen wollten schon immer mal ein Kalender-Girl werden. Ich wollte ihnen rechtzeitig zum Neuen Jahr 2016 den Wunsch erfüllen.

Das hat nur knapp funktioniert. Ich hatte ein paar Stunden lang eine Version online gestellt, die mit modernen Browsern nicht ganz funktionierte. Die Ansicht auf dem Bildschirm blieb weiß. Die Druckausgabe mit der Vorschau hat aber funktioniert, und wenn die Surferin im Script-Fenster "onload()" eingetippt hätte, hätte sie auch im Browserfenster den Kalender gesehen. Aber wer denkt schon daran? In Eile passieren leider Fehler.

Warum wurden die Kalender erst zum 5. Januar fertig?

Es fing damit an, dass ich für meine Liebste nicht nur ein Kleid nähte, sondern auch einen Kalender baute. Den konnte ich doch mit Puppenbildern online stellen?

Ich musste die Kalenderdaten (Wochentage, Feiertage, ...) von der Bildauswahl trennen. Ich hatte eine Stilvorlage, die mit einer „handgemachten” Bildauswahl funktionierte. Dazu habe ich zusammen mit meiner Liebsten auch ein paar Bilder zusammengestellt.

Die Stilvorlage für meine Liebste ist zum Ausdrucken gedacht. In der Web-Ansicht muss die Surferin auch im Browser durch die „Monatsblätter” blättern können. Das war „eben schnell” gemacht.

Dumm nur, dass die in der Bildschirmansicht ausgeblendeten Monatsblätter auch in der Druckausgabe verschwinden. Das Skript zur Steuerung der Bildschirmansicht muss die Pfoten von der Druckansicht lassen. Ich hatte zuvor beim Skript noch nicht zwei verschiedene Ansichten (Bildschirm und Druck) im Kopf.

In der Startseite der Website sollen Verweise auf die verschiedenen Bildauswahlen erscheinen. Die Art, wie die kleinen „Lesetexte” eingebunden sind, erscheint mir zu kompliziert. Ich baue einen neuen Mechanismus. Später kann ich auch die Lesetexte auf die neue Art einbinden.

Für die dummen Suchmaschinen erscheinen die Kalender in der Sitemap.

Die zusammengestellten Kalender brauchen einen Titel, natürlich in verschiedenen Sprachen. Ich entscheide mich, zusammen mit der Bildauswahl den Titel in verschiedenen Sprachen zu speichern. Wie wähle ich die richtige Sprache? Gute Frage.

Die Stilvorlage soll auch mit automatisch ausgewählten Bildern einer Bildergeschichte funktionieren. Ich bastele also die Kalenderbildauswahl zu einer Bildergeschichte und verknüpfe sie mit der Kalender-Stilvorlage. Natürlich muss ich die anpassen. In der Desktop-Ansicht der Bildergeschichte füge ich einen Verweis auf den Kalender und ergänze die Hilfe.

Während die handausgewählten Kalenderbilder für ein bestimmtes Jahr vorgesehen sind, sollen die Kalenderansichten der Bildergeschichten immer das aktuelle Jahr zeigen. Die richtige Webserver-Konfiguration lenkt den „allgemeinen” Verweis auf das richtige Jahr um.

Bei meiner Liebsten in China gelten nicht dieselben Feiertage wie bei mir in Deutschland. Die Kalenderdaten sollen also von der angeforderten Sprache (mit Länderkennung) abhängen. Ich stricke Kalendergrunddaten für 2016 mit den Feiertagen in Deutschland und in China. Die Sprache der Kalendergrunddaten bestimmt auch die Sprache für den Kalendertitel.

Die Surfer aus Italien sehen jetzt die deutschen Kalendergrunddaten, weil Deutsch für den Server die bevorzugte Standard-Sprache ist. Ich habe keine Ahnung von den italienischen Feiertagen. Für die italienischen Freunde sollen eben keine Feiertage markiert sein. Wie bringe ich den Webserver dazu? Ich habe es gelernt.

Auf dem Küchenkalender zu Hause sehe ich auf jedem Kalenderblatt auch eine Übersicht des Vormonats und des Folgemonats sowie die Kalenderwochen. Das ist praktisch. Wie werden die Kalenderwochen richtig gezählt? Ihr glaubt nicht, wie dumm ich mich beim Programmieren anstellen kann!

Die Surferin soll nach ihrer Wahl auf jedem Blatt auch den Vormonat, den Folgemonat und die Kalenderwochen sehen. Ein Einstellungs-Fensterchen kommt zur Stilvorlage hinzu. Die im Fensterchen angezeigten Texte müssen in der richtigen Sprache erscheinen. Die Stilvorlage wird also mit einer Lokalisierungsdatei verknüpft. Ich entscheide mich, die zentrale Lokalisierungsdatei für die Vorlagen der Bildergeschichten für den Kalender zu erweitern. Da kann ich auch gleich die Monatsnamen in der richtigen Sprache anzeigen. In den Kalenderdaten müssen die richtigen Platzhalter stehen. Die Lokalisierungsdatei bestimmt auch die Sprache der Titel, wenn die Kalendergrunddaten sich nicht festlegen.

Die Hilfe zu der Kalenderansicht übersetze ich in die Sprachen, die ich unterstützen will. Ups, die Übersetzung mit Gugel (so ähnlich heißt die große Datenkrake) ins Chinesische funktioniert nicht? Ich bastle noch immer an der automatischen Übersetzung. Da komme ich vom Hölzchen aufs Stöckschen. Der Fehler ist schnell korrigiert.

Ich teste: Browser auf Deutsch eingestellt, ich sehe im Kalender deutsche Texte, die deutschen Feiertagen und die Hilfe auf Deutsch; Browser auf Chinesisch eingestellt, ich sehe im Kalender chinesische Texte, die chinesischen Feiertage und die Hilfe auf Chinesisch; Browser auf Japanisch eingestellt, ich sehe die japanischen Monatsnamen, keine Feiertage und die Hilfe auf Japanisch; Browser auf Arabisch eingestellt, ich sehe die deutschen Monatsnamen (bevorzugte Sprache), keine Feiertage und die Hilfe auf Deutsch.

Am Abend will ich die Kalender „online” stellen. Die Übersetzung der Index-Dateien zu den Kalendern funktioniert nicht?! Da steckt der Wurm drin! Zwei Tage später funktioniert auch die Übersetzung.

Aber heute abend sollen die Kalender ins Netz! Die Beschreibung des Kalender-„Klapperatismus” folgt später. Ich muss noch etwas arbeiten.

Und dann geht es weiter mit der automatischen Übersetzung. Viele kleine Dinge sind mal eben schnell gemacht. Aber ich merke immer wieder, dass gar nichts mal eben schnell geht. Und wenn etwas nicht funktioniert, sendet mir bitte eine Mail!

Rechtzeitig zum nächsten Jahr soll dann der Kalender zum Selbstbasteln fertig werden: Bilder auswählen, Feiertage markieren, Titel eingeben, fertig ist der Wunschkalender! Das ist mal eben schnell gemacht.