Ändern Sie die Farbe vergangener Ereignisse in Vollkalender

Ich versuche umzusetzendiese Lösung vergangene Ereignisse in Fullcalendar "grau" zu machen, aber ich habe kein Glück. Ich bin allerdings nicht so gut mit Javascript vertraut, daher gehe ich davon aus, dass ich einige blöde Fehler mache.

Ich habe den vorgeschlagenen Code in fullcalendar.js innerhalb des Aufrufs für daySegHTML (segs) in Zeile 4587 eingefügt.

Ich habe die ersten beiden Zeilen am Ende der anfänglichen var-Liste der Funktion hinzugefügt (Warum nicht, dachte ich mir) - also ungefähr so:

...
var leftCol;
var rightCol;
var left;
var right;
var skinCss;

var hoy = new Date;// get today's date
hoy = parseInt((hoy.getTime()) / 1000); //get today date in unix

var html = '';
...

Dann habe ich gleich unten die anderen beiden Zeilen innerhalb der Schleife hinzugefügt:

for (i=0; i<segCnt; i++) {
    seg = segs[i];
    event = seg.event;
    classes = ['fc-event', 'fc-event-skin', 'fc-event-hori'];
    if (isEventDraggable(event)) {
        classes.push('fc-event-draggable');
    }

    unixevent = parseInt((event.end.getTime()) / 1000); //event date in Unix
    if (unixevent < hoy) {classes.push('fc-past');} //add class if event is old

    if (rtl) {
        if (seg.isStart) {
            classes.push('fc-corner-right');
        }
...

Das Ausführen dieses Codes führt zu einem gerenderten Kalender ohne angezeigte Ereignisse und einer Fehlermeldung: Uncaught TypeError: Die Methode 'getTime' von null kann nicht aufgerufen werden

Die "Null", auf die Bezug genommen wird, ist anscheinend event.end.getTime (). Aber ich bin nicht sicher, ob ich verstehe, was genau schief läuft oder wie Dinge ausgeführt werden. Wie geschrieben, scheint es zu funktionieren. An dieser Stelle im Code enthält event.end, soweit ich das beurteilen kann, einen gültigen IETF-Timecode, aber aus irgendeinem Grund ist er "nicht da", wenn ich versuche, ihn über getTime () auszuführen.

Dies ist für mich keine geschäftskritische Änderung, wäre aber trotzdem nett - und ich würde gerne verstehen, was los ist und was ich auch falsch mache! Jede Hilfe sehr geschätzt!

Antworten auf die Frage(7)

Ihre Antwort auf die Frage