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.

    2.32.0 Calendar module limitDays and excludedEvents stopped working

    Scheduled Pinned Locked Moved Solved Troubleshooting
    41 Posts 5 Posters 8.1k Views 5 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.
    • A Offline
      AndyHazz Project Sponsor @sdetweil
      last edited by

      @sdetweil ah - I did have ‘limitDays: 1’ previously but added the quotes to try and fix - I’ve removed them again but either way seems to make no difference.

      I’m not sure how to get the debug log out though, as I’m using a docker setup, not pm2, and can’t figure out how to stop the running instance first (so it looks like it fails to start fully) - here’s what I get:

      docker exec -it mm bash
      node@magicmirroros:/opt/magic_mirror$ npm start
      
      > magicmirror@2.32.0 start
      > node --run start:x11
      
      [2025-07-07 12:55:11.034] [LOG]   Starting MagicMirror: v2.32.0
      [2025-07-07 12:55:11.114] [LOG]   Loading config ...
      [2025-07-07 12:55:11.125] [LOG]   config template file not exists, no envsubst
      [2025-07-07 12:55:13.444] [INFO]  Checking config file /opt/magic_mirror/config/config.js ...
      [2025-07-07 12:55:13.892] [INFO]  Your configuration file doesn't contain syntax errors :)
      [2025-07-07 12:55:13.898] [INFO]  Checking modules structure configuration ...
      [2025-07-07 12:55:14.362] [INFO]  Your modules structure configuration doesn't contain errors :)
      [2025-07-07 12:55:14.890] [LOG]   Loading module helpers ...
      [2025-07-07 12:55:15.014] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:15.022] [LOG]   Module helper loaded: MMM-mmpm
      [2025-07-07 12:55:15.892] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:15.894] [LOG]   Module helper loaded: MMM-Remote-Control
      [2025-07-07 12:55:16.549] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:16.551] [LOG]   Module helper loaded: MMM-AuroraWatchUK
      [2025-07-07 12:55:18.106] [LOG]   MMM-Scrapey node helper is starting...
      [2025-07-07 12:55:18.108] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:18.109] [LOG]   Module helper loaded: MMM-Scrapey
      [2025-07-07 12:55:18.180] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:18.182] [LOG]   Module helper loaded: MMM-MoonPhase
      [2025-07-07 12:55:18.193] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:18.196] [LOG]   Module helper loaded: MMM-WatchDog
      [2025-07-07 12:55:18.201] [LOG]   No helper found for module: alert.
      [2025-07-07 12:55:18.395] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:18.396] [LOG]   Module helper loaded: MMM-ModuleScheduler
      [2025-07-07 12:55:18.402] [LOG]   No helper found for module: clock.
      [2025-07-07 12:55:19.042] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:19.043] [LOG]   Module helper loaded: calendar
      [2025-07-07 12:55:19.050] [LOG]   No helper found for module: weather.
      [2025-07-07 12:55:19.141] [LOG]   Initializing new module helper ...
      [2025-07-07 12:55:19.142] [LOG]   Module helper loaded: MMM-MyGarbage
      [2025-07-07 12:55:19.145] [LOG]   All module helpers loaded.
      [2025-07-07 12:55:19.177] [LOG]   Starting server on port 8080 ...
      [2025-07-07 12:55:19.185] [WARN]  You're using a full whitelist configuration to allow for all IPs
      [2025-07-07 12:55:19.278] [ERROR] Whoops! There was an uncaught exception...
      [2025-07-07 12:55:19.281] [ERROR] Error: listen EADDRINUSE: address already in use 0.0.0.0:8080
          at Server.setupListenHandle [as _listen2] (node:net:1940:16)
          at listenInCluster (node:net:1997:12)
          at node:net:2206:7
          at process.processTicksAndRejections (node:internal/process/task_queues:90:21) {
        code: 'EADDRINUSE',
        errno: -98,
        syscall: 'listen',
        address: '0.0.0.0',
        port: 8080
      }
      [2025-07-07 12:55:19.284] [ERROR] MagicMirror² will not quit, but it might be a good idea to check why this happened. Maybe no internet connection?
      [2025-07-07 12:55:19.286] [ERROR] If you think this really is an issue, please open an issue on GitHub: https://github.com/MagicMirrorOrg/MagicMirror/issues
      [2025-07-07 12:55:20.074] [INFO]  System information:
      ### SYSTEM:   manufacturer: ; model: Docker Container; virtual: false
      ### OS:       platform: linux; distro: Debian GNU/Linux; release: 12; arch: arm64; kernel: 6.6.74+rpt-rpi-v8
      ### VERSIONS: electron: undefined; used node: 22.17.0; installed node: 22.17.0; npm: 10.9.2; pm2:
      ### OTHER:    timeZone: Europe/London; ELECTRON_ENABLE_GPU: undefined
      
      S 1 Reply Last reply Reply Quote 0
      • S Offline
        sdetweil @AndyHazz
        last edited by sdetweil

        @AndyHazz yeh, another place where docker is unhelpful

        Maybe on the docker host

        docker compose down mm
        docker compose up mm > somefile.txt

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        A 1 Reply Last reply Reply Quote 0
        • A Offline
          AndyHazz Project Sponsor @sdetweil
          last edited by

          @sdetweil if I cd into /opt/mm/run I can get some output but still looks like it fails before giving anything useful:

          docker compose up > somefile.txt 
          [+] Running 5/5
           ✔ Container watchtower  Created0.0s
           ✔ Container xserver     Created0.0s
           ✔ Container init        Created0.0s
           ✔ Container mm          Created0.0s
           ✔ Container mmpm        Created0.0s
          xserver     |
          xserver     | X.Org X Server 1.21.1.14
          xserver     | X Protocol Version 11, Revision 0
          xserver     | Current Operating System: Linux ad48284f7eed 6.6.74+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.6.74-1+rpt1 (2025-01-27) aarch64
          xserver     | Kernel command line: coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_headphones=0 cgroup_disable=memory snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_hdmi=0  vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  console=ttyS0,115200 console=tty1 root=PARTUUID=de21c80a-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee80211_regdom=GB video=HDMI-A-1:1920x1080M@60,rotate=270
          xserver     |
          xserver     | Current version of pixman: 0.43.4
          xserver     |   Before reporting problems, check http://wiki.x.org
          xserver     |   to make sure that you have the latest version.
          xserver     | Markers: (--) probed, (**) from config file, (==) default setting,
          xserver     |   (++) from command line, (!!) notice, (II) informational,
          xserver     |   (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
          xserver     | (==) Log file: "/var/log/Xorg.0.log", Time: Mon Jul  7 13:42:05 2025
          xserver     | (==) Using system config directory "/usr/share/X11/xorg.conf.d"
          watchtower  | time="2025-07-07T13:42:06Z" level=info msg="Watchtower 1.7.1"
          watchtower  | time="2025-07-07T13:42:06Z" level=info msg="Using no notifications"
          watchtower  | time="2025-07-07T13:42:06Z" level=info msg="Checking all containers (except explicitly disabled with label)"
          watchtower  | time="2025-07-07T13:42:06Z" level=info msg="Scheduling first run: 2025-07-14 13:42:06 +0000 UTC"
          watchtower  | time="2025-07-07T13:42:06Z" level=info msg="Note that the first check will be performed in 167 hours, 59 minutes, 59 seconds"
          mm          | [2025-07-07 14:42:46.322] [WARN]  You're using a full whitelist configuration to allow for all IPs
          mm          | [2025-07-07 14:43:11.194] [ERROR] Mon Jul 07 2025 14:43:11 GMT+0100 (British Summer Time) - WatchDog: Heartbeat timeout. Frontend might have crashed. Exit now.
          mm          | [2025-07-07 14:43:37.677] [WARN]  You're using a full whitelist configuration to allow for all IPs
          mm          | [2025-07-07 14:43:48.386] [ERROR] Whoops! There was an uncaught exception...
          mm          | [2025-07-07 14:43:48.396] [ERROR] TypeError: Unexpected ? at 17, expected END: https://git.new/pathToRegexpError
          mm          |     at Iter.consume (/opt/magic_mirror/node_modules/path-to-regexp/dist/index.js:123:15)
          mm          |     at consume (/opt/magic_mirror/node_modules/path-to-regexp/dist/index.js:179:16)
          mm          |     at parse (/opt/magic_mirror/node_modules/path-to-regexp/dist/index.js:183:20)
          mm          |     at /opt/magic_mirror/node_modules/path-to-regexp/dist/index.js:294:74
          mm          |     at Array.map (<anonymous>)
          mm          |     at pathToRegexp (/opt/magic_mirror/node_modules/path-to-regexp/dist/index.js:294:25)
          mm          |     at Object.match (/opt/magic_mirror/node_modules/path-to-regexp/dist/index.js:264:30)
          mm          |     at matcher (/opt/magic_mirror/node_modules/router/lib/layer.js:86:23)
          mm          |     at Array.map (<anonymous>)
          mm          |     at new Layer (/opt/magic_mirror/node_modules/router/lib/layer.js:93:46)
          mm          |     at router.route (/opt/magic_mirror/node_modules/router/index.js:428:17)
          
          mm          |     at router.route (/opt/magic_mirror/node_modules/router/index.js:428:17)
          mm          |     at Class.createApiRoutes (/opt/magic_mirror/modules/MMM-Remote-Control/API/api.js:172:24)
          mm          |     at Class.onModulesLoaded (/opt/magic_mirror/modules/MMM-Remote-Control/node_helper.js:83:10)
          mm          |     at Class.loadModuleDefaultConfig (/opt/magic_mirror/modules/MMM-Remote-Control/node_helper.js:354:25)
          mm          |     at /opt/magic_mirror/modules/MMM-Remote-Control/node_helper.js:225:14
          mm          |     at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read/context:68:3)
          mm          | [2025-07-07 14:43:48.397] [ERROR] MagicMirror² will not quit, but it might be a good idea to check why this happened. Maybe no internet connection?
          mm          | [2025-07-07 14:43:48.398] [ERROR] If you think this really is an issue, please open an issue on GitHub: https://github.com/MagicMirrorOrg/MagicMirror/issues
          mm          | [2025-07-07 14:43:48.405] [ERROR] Mon Jul 07 2025 14:43:48 GMT+0100 (British Summer Time) - WatchDog: Heartbeat timeout. Frontend might have crashed. Exit now.
          

          … then it just gets stuck in a loop trying to restart

          mumblebajM KristjanESPERANTOK 2 Replies Last reply Reply Quote 0
          • mumblebajM Offline
            mumblebaj Module Developer @AndyHazz
            last edited by

            @AndyHazz You can do the following from the docker host, docker compose up -d this will launch you container. Then you can run the following command docker exec -it magicmirror bash replacing magicmirror with your container name. This essentially puts you into the MagicMirror directory. You can then acces the debug log from there.

            Check out my modules at: https://github.com/mumblebaj?tab=repositories
            Check my blog-post: https://mumblebaj.xyz/
            Check my MM Container: https://hub.docker.com/repository/docker/mumblebaj/magicmirror/general

            A 1 Reply Last reply Reply Quote 1
            • KristjanESPERANTOK Offline
              KristjanESPERANTO Module Developer @AndyHazz
              last edited by

              @AndyHazz said in 2.32.0 Calendar module limitDays and excludedEvents stopped working:
              Looks like an issue with MMM-Remote-Control.

              Which version are you using? Run grep '"version":' package.json in MMM-Remote-Control’s directory to find out.

              1 Reply Last reply Reply Quote 0
              • A Offline
                AndyHazz Project Sponsor @mumblebaj
                last edited by

                @mumblebaj for a bit more context I’m using MagicMirrorOS and it’s been great whilst it was working, but certainly seems to make dubugging harder so perhaps I’ll switch back to regular setup when I get a bit more time …

                To clarify, I’m only seeing errors when trying to work around lack of access to logs in docker - if I just let the system run normally I’m not getting any errors, just an unexpected change in calendar behaviour.

                docker compose up -d works if I enter /opt/mm/run directory first.
                Not sure I need that compose up command though as the container is running ok already. docker exec -it mm bash works to get into the container, but then I can’t find any debug logs …

                @KristjanESPERANTO I’m not sure but I think the errors referring to MMM-Remote-Control I posted were more to do with my failed attempts to get logs from the docker container, not the original issue of calendar display … but in case you’re onto something:

                > node@magicmirroros:/opt/magic_mirror/modules/MMM-Remote-Control$ grep '"version":' package.json
                  "version": "3.1.4",
                
                KristjanESPERANTOK 1 Reply Last reply Reply Quote 1
                • KristjanESPERANTOK Offline
                  KristjanESPERANTO Module Developer @AndyHazz
                  last edited by

                  @AndyHazz said in 2.32.0 Calendar module limitDays and excludedEvents stopped working:

                  but in case you’re onto something

                  Not sure, but you have a rather old version of MMM-Remote-Control which is only compatible to a limited extent with MM 2.32.0. If you update MMM-Remote-Control, the start of MM may not abort like above.

                  A 1 Reply Last reply Reply Quote 0
                  • A Offline
                    AndyHazz Project Sponsor @KristjanESPERANTO
                    last edited by

                    @KristjanESPERANTO I’ve been able to update MMM-Remote-Control to 3.2.0 and you were right that stops the errors I was getting in the logs when running docker compose up.

                    Still doesn’t look like there are any clues there for my calendar issues though …

                    docker compose up > somenewfile.txt                                                                                                                                                  ─╯
                    [+] Running 6/6
                     ✔ Network magicmirror_default  Created0.2s
                     ✔ Container xserver            Created0.8s
                     ✔ Container watchtower         Created0.7s
                     ✔ Container init               Created0.8s
                     ✔ Container mm                 Created0.2s
                     ✔ Container mmpm               Created0.2s
                    xserver     |
                    xserver     | X.Org X Server 1.21.1.14
                    xserver     | X Protocol Version 11, Revision 0
                    xserver     | Current Operating System: Linux 2133690aa282 6.12.34+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.34-1+rpt1~bookworm (2025-06-26) aarch64
                    xserver     | Kernel command line: coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_headphones=0 cgroup_disable=memory snd_bcm2835.enable_headphones=1 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_hdmi=0  vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  console=ttyS0,115200 console=tty1 root=PARTUUID=de21c80a-02 rootfstype=ext4 fsck.repair=yes rootwait cfg80211.ieee80211_regdom=GB video=HDMI-A-1:1920x1080M@60,rotate=270
                    xserver     |
                    xserver     | Current version of pixman: 0.43.4
                    xserver     |   Before reporting problems, check http://wiki.x.org
                    xserver     |   to make sure that you have the latest version.
                    xserver     | Markers: (--) probed, (**) from config file, (==) default setting,
                    xserver     |   (++) from command line, (!!) notice, (II) informational,
                    xserver     |   (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
                    xserver     | (==) Log file: "/var/log/Xorg.0.log", Time: Tue Jul  8 21:49:11 2025
                    xserver     | (==) Using system config directory "/usr/share/X11/xorg.conf.d"
                    watchtower  | time="2025-07-08T21:49:12Z" level=info msg="Watchtower 1.7.1"
                    watchtower  | time="2025-07-08T21:49:12Z" level=info msg="Using no notifications"
                    watchtower  | time="2025-07-08T21:49:12Z" level=info msg="Checking all containers (except explicitly disabled with label)"
                    watchtower  | time="2025-07-08T21:49:12Z" level=info msg="Scheduling first run: 2025-07-15 21:49:12 +0000 UTC"
                    watchtower  | time="2025-07-08T21:49:12Z" level=info msg="Note that the first check will be performed in 167 hours, 59 minutes, 59 seconds"
                    mm          | [2025-07-08 22:50:02.823] [WARN]  You're using a full whitelist configuration to allow for all IPs
                    mm          | [2025-07-08 22:50:26.661] [ERROR] table not found in HTML.
                    mm          | [2025-07-08 22:50:26.684] [ERROR] table not found in HTML.
                    mm          | [2025-07-08 22:50:26.765] [ERROR] Tue Jul 08 2025 22:50:26 GMT+0100 (British Summer Time) - WatchDog: Heartbeat timeout. Frontend might have crashed. Exit now.
                    mm          | [2025-07-08 22:50:26.873] [ERROR] table not found in HTML.
                    mm          | [2025-07-08 22:50:26.888] [ERROR] table not found in HTML.
                    mm          | npm notice
                    mm          | npm notice New major version of npm available! 10.9.2 -> 11.4.2
                    mm          | npm notice Changelog: https://github.com/npm/cli/releases/tag/v11.4.2
                    mm          | npm notice To update run: npm install -g npm@11.4.2
                    mm          | npm notice
                    mm          | [2025-07-08 22:50:56.210] [WARN]  You're using a full whitelist configuration to allow for all IPs
                    mm          | [2025-07-08 22:51:04.036] [ERROR] table not found in HTML.
                    mm          | [2025-07-08 22:51:04.866] [ERROR] Tue Jul 08 2025 22:51:04 GMT+0100 (British Summer Time) - WatchDog: Heartbeat timeout. Frontend might have crashed. Exit now.
                    mm          | [2025-07-08 22:51:24.381] [WARN]  You're using a full whitelist configuration to allow for all IPs
                    mm          | [2025-07-08 22:51:42.944] [ERROR] table not found in HTML.
                    mm          | [2025-07-08 22:51:42.966] [ERROR] table not found in HTML.
                    mm          | [2025-07-08 22:52:10.109] [ERROR] table not found in HTML.
                    mm          | [2025-07-08 22:52:11.413] [ERROR] table not found in HTML.
                    

                    I think the repeating ‘table not found in HTML’ error is just from my MMM-Scrapey module, as it’s looking for bus times and it’s late, the last bus has gone.

                    KristjanESPERANTOK 1 Reply Last reply Reply Quote 0
                    • KristjanESPERANTOK Offline
                      KristjanESPERANTO Module Developer @AndyHazz
                      last edited by

                      @AndyHazz Unfortunately, I don’t know if I can help any further here. The error message ([ERROR] table not found in HTML.) is indeed from MMM-Scrapey - I have created a pull request for the module to improve logging, at least in the future.

                      A 1 Reply Last reply Reply Quote 0
                      • A Offline
                        AndyHazz Project Sponsor @KristjanESPERANTO
                        last edited by

                        Thanks, I’ve merged that logging improvement to MMM-Scrapey.

                        I suppose my query is simply whether anybody else can see the same calendar functionality issues as me?

                        • limitDays has changed to limit the number of calendar items, not the number of days worth of calendar items
                        • excludedEvents appears to do nothing any more, events matching excluded words have started showing when prior to 2.32.0 they were hidden

                        If it’s only affecting me, I’ll probably try rebuilding my setup from scratch.

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

                          @AndyHazz what release were you on prior to the upgrade?

                          I don’t see any code change from 2.31
                          | correction, there is a test of date after change here.

                          Sam

                          How to add modules

                          learning how to use browser developers window for css changes

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

                            @AndyHazz can you show your calendar config, xxx out the URLs.

                            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 @sdetweil
                              last edited by

                              @AndyHazz I should note that this property is NOT a sequential limit of days from today

                              it is UNIQUE days INCLUDING today
                              limitDays:2
                              so if there no events til next Thursday, that is the 1st day
                              and no events til the following Tuesday, that is the second day

                              which is different than event tomorrow and saturday, but only show tomorrow… (2 consecutive days gets today and tomorrow), or two days from NOW gets today/thurs/friday, but still not saturday.

                              Sam

                              How to add modules

                              learning how to use browser developers window for css changes

                              A 1 Reply Last reply Reply Quote 0
                              • A Offline
                                AndyHazz Project Sponsor @sdetweil
                                last edited by AndyHazz

                                @sdetweil yeah that’s what I was using limitDays for and it was working great for my needs until now - I have my kids school lessons synced to a google calendar, and setting limitDays to 1 used to show the full set of lessons for the day. When they get home from school (all events from the current day are in the past), it automatically showed all of the lessons for the following day. Best thing I’ve ever used MM for! Even highlights PE lessons so they know when to bring kit :)

                                For me now, limitDays: 1 just shows the single next event even when there are 6 more events on that day (and if that event is ‘Tutor time’, it displays when it should be hidden).

                                I can’t say exactly what version I was on prior to the update but it should have been whatever the previous version was - since I set this up with watchtower in docker I’ve not had to do any manual upgrades.

                                Here’s my anonamised calendar config - I have 5 different calendar modules running if that’s likely to be a factor, but this is one that has the config issues:

                                    {
                                        module: 'calendar',
                                        header: 'School day',
                                        position: 'bottom_right',
                                        config: {
                                            coloredSymbol: true,
                                            coloredText: true,
                                            showLocation: true,
                                            displaySymbol: false,
                                            hideTime: true,
                                            tableClass: 'medium',
                                            flipDateHeaderTitle: true,
                                            fade: false,
                                            timeFormat: 'absolute',
                                            dateFormat: 'ddd',
                                            fullDayEventDateFormat: 'ddd',
                                            urgency: '0',
                                            sliceMultiDayEvents: true,
                                            nextDaysRelative: false,
                                            limitDays: 1,
                                            fetchInterval: '600000',
                                            displayRepeatingCountTitle: true,
                                            wrapEvents: false,
                                            //maxTitleLength: 30,
                                            customEvents: [{ keyword: 'Physical Education', symbol: 'volleyball', color: 'Gold' }],
                                            excludedEvents: [
                                                'Tutor time'
                                            ],
                                            calendars: [
                                                {
                                                    symbol: 'graduation-cap',
                                                    url: 'https://calendar.google.com/calendar/ical/REDACTED/basic.ics'
                                                }
                                            ]
                                        }
                                    },
                                
                                mumblebajM S 2 Replies Last reply Reply Quote 0
                                • mumblebajM Offline
                                  mumblebaj Module Developer @AndyHazz
                                  last edited by

                                  @AndyHazz Do you mind sharing your ICS, anonymized off course.

                                  Check out my modules at: https://github.com/mumblebaj?tab=repositories
                                  Check my blog-post: https://mumblebaj.xyz/
                                  Check my MM Container: https://hub.docker.com/repository/docker/mumblebaj/magicmirror/general

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

                                    @AndyHazz found it…

                                    comparing date AND TIME oops…

                                    edit modules/default/calendar/calendar.js
                                    approx line 708
                                    change the lines marked below with //

                                    		if (this.config.limitDays > 0) {
                                    			let newEvents = [];
                                    			let lastDate = today.clone().subtract(1, "days").startOf('day');  // add .startOf('day'), note dot
                                    			let days = 0;
                                    			for (const ev of events) {
                                    				let eventDate = this.timestampToMoment(ev.startDate).startOf('day'); // add .startOf('day'), note dot
                                    

                                    Sam

                                    How to add modules

                                    learning how to use browser developers window for css changes

                                    A 1 Reply Last reply Reply Quote 0
                                    • A Offline
                                      AndyHazz Project Sponsor @sdetweil
                                      last edited by

                                      @sdetweil nice! Yes that’s fixed the limitDays issue for me …

                                      Now, how about part 2 of my issue, the excludedEvents config? The first event showing for me is titled ‘Tutor time’ despite that string being excluded. I’ve tried other terms with/without spaces and nothing seems to work to exclude events any more?

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

                                        @AndyHazz working on it

                                        Sam

                                        How to add modules

                                        learning how to use browser developers window for css changes

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

                                          @AndyHazz ok, got it too… this one looks like a javascript difference in scopes…
                                          I added the Log.debug lines, they are not important
                                          modules/default/calendar/calendarfetcherutils.js , starting line 18 (4 changes total)
                                          see // change this line

                                          	shouldEventBeExcluded (config, title) {
                                          		let result = {  // change this line
                                          			excluded: false,
                                          			until: null
                                          		};
                                          		for (let f in config.excludedEvents) {
                                          			let filter = config.excludedEvents[f],  // this line uses the same variable name, filter,   now we have two,
                                          				testTitle = title.toLowerCase(),
                                          				until = null,
                                          				useRegex = false,
                                          				regexFlags = "g";
                                          
                                          			if (filter instanceof Object) {  
                                          				if (typeof filter.until !== "undefined") {
                                          					until = filter.until;
                                          				}
                                          
                                          				if (typeof filter.regex !== "undefined") {
                                          					useRegex = filter.regex;
                                          				}
                                          
                                          				// If additional advanced filtering is added in, this section
                                          				// must remain last as we overwrite the filter object with the
                                          				// filterBy string
                                          				if (filter.caseSensitive) {
                                          					filter = filter.filterBy;
                                          					testTitle = title;
                                          				} else if (useRegex) {
                                          					filter = filter.filterBy;
                                          					testTitle = title;
                                          					regexFlags += "i";
                                          				} else {
                                          					filter = filter.filterBy.toLowerCase();
                                          				}
                                          			} else {
                                          				filter = filter.toLowerCase();
                                          			}
                                          			Log.debug("should be excluded ", testTitle, filter, useRegex, regexFlags)
                                          			if (CalendarFetcherUtils.titleFilterApplies(testTitle, filter, useRegex, regexFlags)) {				
                                          				if (until) {
                                          					result.until = until;  // change this line
                                          				} else {
                                          					Log.debug("event should be excluded = true,", testTitle )
                                          					result.excluded = true;  // change this line
                                          				}
                                          				Log.debug("filter applies result =", result)
                                          				break;
                                          			}
                                          		}
                                          		Log.debug("filter applies returning =", result)
                                          		return result;  // change this line 
                                          	},
                                          

                                          Sam

                                          How to add modules

                                          learning how to use browser developers window for css changes

                                          A 1 Reply Last reply Reply Quote 0
                                          • A Offline
                                            AndyHazz Project Sponsor @sdetweil
                                            last edited by

                                            @sdetweil perhaps I’m missing something, but that’s not working for me - it’s made no difference, excluded events are still appearing … I’ve double checked and can’t spot anything amiss, I’ve made the 4 changes from ‘filter’ to ‘result’?

                                            S 1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 3
                                            • 1 / 3
                                            • 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