Ankündigung

Einklappen
Keine Ankündigung bisher.

Smartvisu Kalender - Zeitversatz + Anzeigefrage

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Smartvisu Kalender - Zeitversatz + Anzeigefrage

    Hallo zusammen,

    mir sind 2 Dinge gerade aufgefallen:

    1. bei einem Termin mit Uhrzeit gibt es bei mir einen Zeitversatz von einer Stunde, bei gmail steht er für 15 Uhr drin und angezeigt wird er für 16 Uhr, Uhrzeit und Datum im Clock widget werden richtig angezeigt

    2. bei einem Termin, der heute stattfindet, sollte idealerweise als Datumsangabe "heute" stehen und bei Terminen für morgen entsprechend "morgen", das liest sich schöner und ist z.B. so bei meinem MagicMirror realisiert Wo kann ich dass ggf. selbst anpassen? Muss ja nur ein datediff gemacht werden und dann das Datum mit "heute" oder "morgen" ersetzt werden

    VG
    F.

    #2
    Teil 2 hab ich in der calender.js angepasst:

    Code:
        //get current date 17032019 Fistandantilus
                var Datum = new Date();
                var Tag = Datum.getDate();
                var Monat = Datum.getMonth() + 1;
                var Jahr = Datum.getFullYear();
                if (Tag < 10){
                    Tag = "0" + Tag;
                }
                if (Monat < 10){
                    Monat = "0" + Monat;
                }
                var heute = Tag + "." + Monat +"." + Jahr;
        //end current date
    
    
    ...
    
    
                    // build period string to display
                    var period;
                    // Start and end on same day: show day only once
                    if(entry.end.transUnit('date') == entry.start.transUnit('date'))
                        //check if same day and then dont display day but "today" 17032019 Fistandantilus
                        if(entry.start.transUnit('date') == heute)
                            period = 'heute' + ' ' + entry.start.transUnit('time') + ' - ' + entry.end.transUnit('time');
                        else
                            period = entry.start.transUnit('date') + ' ' + entry.start.transUnit('time') + ' - ' + entry.end.transUnit('time');
                        //end check
                    // Full day entrys: don't show time
                    else if (entry.start.getHours()+entry.start.getMinutes()+entry.start.getSeconds() == 0
                        && entry.end.getHours()+entry.end.getMinutes()+entry.end.getSeconds() == 0) {
                        entry.end.setDate(entry.end.getDate()-1); // subtract one day from end
                        if(entry.end.transUnit('date') == entry.start.transUnit('date')) // One day only: Show just start date
                            //check if same day and then dont display day but "today" 17032019 Fistandantilus
                            if(entry.start.transUnit('date') == heute)
                                period = 'heute';
                            else
                                period = entry.start.transUnit('date');
                            //end check
                        else // Multiple days: Show start and end date
                            //check if same day and then dont display day but "today" 17032019 Fistandantilus
                            if(entry.start.transUnit('date') == heute)
                                period = 'heute' + ' - ' + entry.end.transUnit('date');
                            else
                                period = entry.start.transUnit('date') + ' - ' + entry.end.transUnit('date');
                            //end check
                    }
                    else
                        if(entry.start.transUnit('date') == heute)
                            period = 'heute' + ' ' + entry.start.transUnit('time') + ' - ' + entry.end.transUnit('date') + ' ' + entry.end.transUnit('time');
                        else
                            period = entry.start.transUnit('date') + ' ' + entry.start.transUnit('time') + ' - ' + entry.end.transUnit('date') + ' ' + entry.end.transUnit('time');
                        //end check
    Schön isses nicht, weil die Prüfung mehrfach passiert, aber es läuft erstmal...
    Bei Gelegenheit bau ich das mal um und mach noch die Prüfung auf morgen

    Kommentar


      #3
      Punkt 1 kommt mir bekannt vor. Stimmen die Zeitzonen im Kalender, dem Server und dem Client?
      Welchen Treiber nutzt du, ICS, Google API oder GoogleV3?

      Ein Pull Request zu 2 würde mich freuen. Allerdings müsste der Text noch aus der lang/*.ini kommen.

      Kommentar


        #4
        Als Treiber verwende ich den ICS. Zeitzone Client (Mac) ist Deutschland, Smartvisu läuft bei mir in einem Docker Container auf einem Synology. Dort hab ich jetzt mal nachgeschaut, ist tatsächlich auf UTC. Leider bekomme ich das aber dort nicht geändert. Theoretisch müsste das aber egal sein, wenn der Client die Zeitzone vorgibt bzw. es ggf. in Smartvisu vorgegeben werden würde oder?

        Zu Punkt zwei geb ich Dir Bescheid, ich werd mich da mal ransetzen.

        Kommentar


          #5
          Ein Ort für die Zeitzone habe ich noch übersehen: Was ist in der smartVISU Konfiguration angegeben?
          Da Abruf und Aufbereitung auf dem Webserver in PHP laufen, kann die Zeitzone dort durchaus relevant sein. Allerdings wird sie durch die erwähnte Konfiguration übersteuert.

          Kommentar


            #6
            In Smartvisu ist Berlin angegeben, Zeitquelle Client.

            Kommentar

            Lädt...
            X