MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    Calendar event same start and enddate wrong (Google Calendar)

    Scheduled Pinned Locked Moved Unsolved Troubleshooting
    13 Posts 2 Posters 2.7k Views 2 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S Offline
      sdetweil @RobertM
      last edited by

      @RobertM download the ics file

      at the command prompt ctrl-alt-t

      curl -sL xxxx > somefile.ics
      xxxx is the url in the mm cal config

      find that entry in the ics file (it’s just text)

      and let me see

      BEGIN:VEVENT
      ....
      END:VEVENT
      

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      R 1 Reply Last reply Reply Quote 0
      • R Offline
        RobertM @sdetweil
        last edited by

        @sdetweil here is the requested section:

        BEGIN:VEVENT
        DTSTART:20221121T123000Z
        DTSTAMP:20221120T074630Z
        UID:4anfmr8fbcgce4qsi1675tpgcq@google.com
        CREATED:20221120T074454Z
        LAST-MODIFIED:20221120T074454Z
        LOCATION:
        SEQUENCE:0
        STATUS:CONFIRMED
        SUMMARY:XYZ-Robert (21.11.2022 13:30-13:30 MEZ)
        TRANSP:OPAQUE
        END:VEVENT
        
        S 1 Reply Last reply Reply Quote 0
        • S Offline
          sdetweil @RobertM
          last edited by sdetweil

          @RobertM it has no DTEND or DURATION … so the module sets End to match Start

          from the spec
          https://icalendar.org/iCalendar-RFC-5545/3-6-1-event-component.html

          For cases where a “VEVENT” calendar component specifies a “DTSTART” property with a DATE value type but no “DTEND” nor “DURATION” property, the event’s duration is taken to be one day.

          For cases where a “VEVENT” calendar component specifies a “DTSTART” property with a DATE-TIME value type but no “DTEND” property, the event ends on the same calendar date and time of day specified by the “DTSTART” property.

          this second is the case for the event you provided

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          R 1 Reply Last reply Reply Quote 0
          • R Offline
            RobertM @sdetweil
            last edited by

            @sdetweil Ok, that’s true for a single event.
            Bildschirmfoto 2022-11-20 um 14.38.21.png

            If I modify the event to a series event. Then the calendar module shows a wrong end date.
            Bildschirmfoto 2022-11-20 um 14.39.33.png

            In the ical file, the content is different.

            BEGIN:VEVENT
            DTSTART;TZID=Europe/Berlin:20221121T133000
            DTEND;TZID=Europe/Berlin:20221121T133000
            RRULE:FREQ=WEEKLY;BYDAY=MO
            DTSTAMP:20221120T133538Z
            UID:4anfmr8fbcgce4qsi1675tpgcq@google.com
            CREATED:20221120T074454Z
            DESCRIPTION:
            LAST-MODIFIED:20221120T133406Z
            LOCATION:
            SEQUENCE:1
            STATUS:CONFIRMED
            SUMMARY:XYZ-series
            TRANSP:OPAQUE
            END:VEVENT
            

            I indented the lines to read the values better

             DTSTART;TZID=Europe/Berlin:20221121T133000
               DTEND;TZID=Europe/Berlin:20221121T133000
            
            S 1 Reply Last reply Reply Quote 0
            • S Offline
              sdetweil @RobertM
              last edited by

              @RobertM great, thanks…

              so, I’ve found it, I don’t know why this is there or side effects…

              but

              edit the ~/MagicMirror/modules/default/calendar/calendarutils.js

              find line 430-ish ( i added debug so the numbers may be off

              						endDate = moment(parseInt(startDate.format("x")) + duration, "x");
              						if (startDate.format("x") === endDate.format("x")) {
              							endDate = endDate.endOf("day");
              						}
              

              add the // to the endDate = line, so it looks like this

              						endDate = moment(parseInt(startDate.format("x")) + duration, "x");
              						if (startDate.format("x") === endDate.format("x")) {
              							//endDate = endDate.endOf("day");
              						}
              

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              R 1 Reply Last reply Reply Quote 0
              • R Offline
                RobertM @sdetweil
                last edited by

                @sdetweil yes, thats works - after restarting node - many thanks!
                53fc0418-f977-49e2-9765-e8428500ebd2-image.png

                Would it also be possible to only show the start of such 0 minutes events?

                S 1 Reply Last reply Reply Quote 0
                • S Offline
                  sdetweil @RobertM
                  last edited by sdetweil

                  @RobertM i don’t think so… u asked to showEnd:true…

                  there is no conditional logic there

                  my settings and result

                  			config: {
                  				showEnd:true,
                  				timeFormat:"absolute",
                  				urgency:0,
                  				getRelative:0,
                  

                  Screenshot_2022-11-20_15-57-00.png

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  R 1 Reply Last reply Reply Quote 0
                  • R Offline
                    RobertM @sdetweil
                    last edited by

                    @sdetweil

                    u asked to showEnd:true…

                    Yes, that’s right. It looks better and is easier to capture for 0 minute events when there is no end time. For events with a time duration, I would have liked to have shown the end time.

                    See the following mockup above as it is now and below as I would like it to be.

                    96909192-c8ec-4199-9c47-0784fe04e32a-image.png

                    S 2 Replies Last reply Reply Quote 1
                    • S Offline
                      sdetweil @RobertM
                      last edited by

                      @RobertM I know, but showEnd says format the end time after a -.

                      always.

                      is doesn’t say only if the end is different

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      1 Reply Last reply Reply Quote 0
                      • S Offline
                        sdetweil @RobertM
                        last edited by

                        @RobertM very cool!!! you submitted a PR!!

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 1 / 2
                        • First post
                          Last post
                        Enjoying MagicMirror? Please consider a donation!
                        MagicMirror created by Michael Teeuw.
                        Forum managed by Sam, technical setup by Karsten.
                        This forum is using NodeBB as its core | Contributors
                        Contact | Privacy Policy