Hallo meine lieben Intrexx-Connoisseur:innen. Da ich hier ja nun schon eine Blogfunktion eingerichtet habe, dachte ich, dass ich sie ja auch nutzen mal könnte, um euch die etwas raffinierteren Dinge, die ich mit Intrexx von United Planet umsetze, vorzustellen. Zum Einen, weil es vielleicht anderen helfen könnte, die sich einem ähnlichen Problem gegenübergestellt sehen, zum Anderen natürlich auch, um zu zeigen, dass ich dieses Intrexx wirklich richtig, richtig gut kann (bucht mich).

Das Problem (manche nennen es Anforderung)

Natürlich ist der Standardkalender von Intrexx mit einem Kalenderplugin immer die erste Wahl, wenn es darum geht, Datensätze mit Datumsbezug darzustellen. Es ist schnell konfiguriert, relativ flexibel, dynamisch und in 95% der Fälle eigentlich genau das, was man braucht. Allerdings gibt es Momente, in denen es leider gar nicht so recht die Anforderungen erfüllt, die man selbst oder ein:e Kund:in hat. Hier war nämlich das Problem, dass es einen Datensatz gibt, in dem Monat und Jahr hinterlegt sind und dessen Kinddatensätze (1:n) die Datumswerte tragen.
Würde ich das nun mit dem Standardkalender darstellen wollen, hätte ich das Problem, dass der Kalender selbst immer den zuletzt angezeigten Monat darstellt.
Öffne ich als Datensatz 1 für den März 2021, sehe ich Termine für den März 2021.
Öffne ich anschließend Datensatz 2 für den April 2021, sehe ich Termine für den März 2021, weil das die letzte Anzeige des Kalenders war. So funktioniert der Intrexx-Kalender einfach und es gibt keine einfache Möglichkeit, den angezeigten Monat vorzugeben.
„Aber was ist mit der eigenen Kalender-Ansicht…“ höre ich schon aus den vorderen Reihen tönen. Ja, damit habe ich mich genau eine Stunde befasst und kam zu keinem Ergebnis. Manchmal ist selber neu machen einfach produktiver.
Außerdem sollte der Kalender auch eine eigene, vereinfachte Darstellung bekommen und da lag das Selbermachen einfach nochmal näher. Und nun zeige ich euch, wie das geht!

Die Lösung (mit Code!)

Im Grunde bauen wir eine einfache Monatsansicht nach. Wenn in der entsprechenden Datenbank-Tabelle ein Eintrag zu dem Tag gefunden wird, wird der Tag anders dargestellt (und verlinkt) und wir müssen darauf achten, dass die Kalenderansicht zwar mit dem Montag anfängt, aber ja leider nicht alle Monate mit dem Montag beginnen, weil wir den Positivisten-Kalender leider immer noch nicht etablieren konnten. Am Ende müssen wir auch noch mit „leeren Tagen“ auffüllen und der Rest ist eigentlich nur CSS. Anschließend soll alles irgendwie so aussehen:

Darstellung der umgesetzten Kalender-Funktion
Ungefähr so wurde es auch dem Kunden ausgeliefert. Für das Beispiel unwichtige Dinge habe ich aber aus dem Screenshot entfernt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Hallo! Mein Name ist Marco Friedersdorf und bin Freelancer im Bereich der Software-Entwicklung und IT-Beratung. Mit Artikeln wie diesem möchte ich einen kleinen Einblick in meine Arbeit geben und über die Dinge sprechen, die mich als Informatiker beschäftigen.
WEG MIT
§219a!
tripadvisor flickr americanexpress bandcamp basecamp behance bigcartel bitbucket blogger codepen compropago digg dribbble dropbox ello etsy eventbrite evernote facebook feedly github gitlab goodreads googleplus instagram kickstarter lastfm line linkedin mailchimp mastercard medium meetup messenger mixcloud paypal periscope pinterest quora reddit rss runkeeper shopify signal sinaweibo skype slack snapchat soundcloud sourceforge spotify stackoverflow stripe stumbleupon trello tumblr twitch twitter uber vimeo vine visa vsco wechat whatsapp wheniwork wordpress xero xing yelp youtube zerply zillow px aboutme airbnb amazon pencil envelope bubble magnifier cross menu arrow-up arrow-down arrow-left arrow-right envelope-o caret-down caret-up caret-left caret-right