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.

    MMM-CalendarExt3Agenda

    Scheduled Pinned Locked Moved Utilities
    224 Posts 30 Posters 361.2k Views 32 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.
    • BKeyportB Offline
      BKeyport Module Developer @BKeyport
      last edited by BKeyport

      Doing some clean up work and some things aren’t working.

      The module isn’t updating in my config.

      Here is the configs and details.

      		{
      			module: "MMM-CalendarExt3Agenda", // https://github.com/MMRIZE/MMM-CalendarExt3Agenda
      			position: "top_left",
      			config: {
      				instanceId: "1",
      				showMiniMonthCalendar: false,
      				firstDayOfWeek: 0,
      				startDayIndex: 0,
      				endDayIndex: 99,
      				minimalDaysOfNewYear: 1,
      				animationSpeed: 0,
      				useSymbol: false,
      				useWeather: false,
      				calendarSet: ["Main", "Utility"],
                                      eventTransformer: (ev) => {
      					if (ev.title.search("Bowling") > -1) {
      						ev.color = 'yellow';
      					}
      					return ev
      				},
      			},
      		},
      //top_center
      		{
      			module: "MMM-CalendarExt3Agenda", // https://github.com/MMRIZE/MMM-CalendarExt3Agenda
      			position: "top_center",
      			config: {
      				showMiniMonthCalendar: false,
      				instanceId: "2",
      				firstDayOfWeek: 0,
      				startDayIndex: 0,
      				endDayIndex: 99,
      				minimalDaysOfNewYear: 1,
      				animationSpeed: 0,
      				useSymbol: false,
      				useWeather: false,
      				calendarSet: ["Seahawks", "Sounders", "Bluejays", "Mariners", "Kraken", "Huskies", "XFL", "ARES", "Holdays"],
      				eventTransformer: (ev) => {
      					if (ev.title.search("⚾") > -1) {
      						ev.title = ev.title.replace("⚾","");
      					}
      					if (ev.title.search("🏈") > -1) {
      						ev.title = ev.title.replace("🏈 ","");
      					}
      					return ev
      				},
      			},
      		},
      		{
      			module: "MMM-CalendarExt3Agenda", // https://github.com/MMRIZE/MMM-CalendarExt3Agenda
      			position: "top_center",
      			config: {
      				instanceId: "3",
      				showMiniMonthCalendar: false,
      				firstDayOfWeek: 0,
      				startDayIndex: 0,
      				endDayIndex: 99,
      				minimalDaysOfNewYear: 1,
      				animationSpeed: 0,
      				useSymbol: false,
      				useWeather: false,
      				calendarSet: ["IRS"], 
      			},
      		},
      

      Here’s all the public calendars for testing. My “Main” calendar is a private google calendar.

      // First Calendar
      // Stand in public calendar to protect private data:
      					{ 
      						url: "https://calendar.google.com/calendar/ical/brendan.keyport%40gmail.com/public/basic.ics",
      						name: "Main",
      					},
      					{
      						url: "https://recollect.a.ssl.fastly.net/api/places/BC71002A-F27F-11E8-B5B7-6853A40EAB6C/services/579/events.en-US.ics?client_id=91264B66-7113-11ED-8C28-2101D6C077E5",
      						name: "Utility",
      					},
      // Second Calendar
      					{
      						url: "http://cal.events/VReW45.ics",
      						name: "Seahawks",
      						color: "#69BE28",
      					},
      					{
      						url: "https://calendar.google.com/calendar/ical/3vejg64nfe9hk5odcphufgis14%40group.calendar.google.com/private-ae3d986ef6488a425755baf7198a1c99/basic.ics",
      						name: "Sounders",
      						color: "#69BE28",
      					},
      					{
      						url: "https://calendar.google.com/calendar/ical/mp4efjqgjiq6hphri5ppkkm66k%40group.calendar.google.com/private-81bfdc024de66a7639ac010dfe56263a/basic.ics",
      						name: "Bluejays",
      						color: "#E8291C",
      					},
      					{
      						url: "https://calendar.google.com/calendar/ical/fgl0a1o8duc3quq3mpjlcopk50%40group.calendar.google.com/private-c55f9de420fe504de01c18f263d70fa7/basic.ics",
      						name: "Mariners",
      						color: "#69BE28",
      					},
      					{
      						url: "https://calendar.google.com/calendar/ical/a6fras24hof5ibrk9q1aeg0igg%40group.calendar.google.com/private-147cebc733aab31784e2ab7f18c13cbc/basic.ics",
      						name: "Kraken",
      						color: "#69BE28",
      					},
      					{
      						url: "https://gohuskies.com/calendar.ashx/calendar.ics?sport_id=3",
      						name: "Huskies",
      						color: "#69BE28",
      					},
      					{
      						url: "webcal://calendar.google.com/calendar/ical/d2dba52c05b47583471f0eccbdb79938b9b0d5ef7711298f4c3455fe64ae6ffa%40group.calendar.google.com/public/basic.ics",
      						name: "XFL",
      						color: "#e93b16",
      					},
      					{
      						url: "https://calendar.google.com/calendar/ical/en.usa%23holiday%40group.v.calendar.google.com/public/basic.ics",
      						name: "Holdays",
      					},
      					{
      						url: "https://calendar.google.com/calendar/ical/futpub9jb1fisumog0u68s9pdc%40group.calendar.google.com/public/basic.ics",
      						name: "ARES",
      						color: "#FF1493",
      					},
      					
      // Third Calendar
      					{
      						url: "https://calendar.google.com/calendar/ical/ufeoastn72l4rcaact44k3iff3pfcun5%40import.calendar.google.com/public/basic.ics",
      						name: "IRS",
      					},
      

      The "E" in "Javascript" stands for "Easy"

      M 1 Reply Last reply Reply Quote 0
      • M Offline
        MMRIZE @BKeyport
        last edited by

        @BKeyport
        6c183bb2-9786-49b3-94e2-d8d41be53a8b-image.png

        This is what I’ve got with your config.
        Is it different with what you want? Tell/Show me what you expected. (AS-IS and TO-BE)

        BKeyportB 1 Reply Last reply Reply Quote 0
        • BKeyportB Offline
          BKeyport Module Developer @MMRIZE
          last edited by BKeyport

          @MMRIZE It seems to be loading everything now, but it’s not refreshing with the calendar app. If I add an event, it misses it until it refreshes at the top of the hour. This includes events going “live” - (bold).

          The "E" in "Javascript" stands for "Easy"

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

            @BKeyport what is the calendar refresh rate set to ?

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            BKeyportB 1 Reply Last reply Reply Quote 0
            • BKeyportB Offline
              BKeyport Module Developer @sdetweil
              last edited by

              @sdetweil

              			module: "calendar", // Built in
              			position: "top_center",
              			config: {
              				animationSpeed: 0,
              				broadcastEvents: true,
              				broadcastPastEvents: true,
              				fetchInterval: 30000,
              				maximumEntries: 99,
              ... 
              

              The "E" in "Javascript" stands for "Easy"

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

                @BKeyport said in MMM-CalendarExt3Agenda:

                30000

                every 30 seconds?

                default is 300000 ms, 5 minutes

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                BKeyportB 1 Reply Last reply Reply Quote 0
                • BKeyportB Offline
                  BKeyport Module Developer @sdetweil
                  last edited by

                  @sdetweil did I miss a zero there. Damn. Worked fine until this release of MMM-CX3A, tho.

                  The "E" in "Javascript" stands for "Easy"

                  M 1 Reply Last reply Reply Quote 0
                  • M Offline
                    MMRIZE @BKeyport
                    last edited by

                    @BKeyport
                    I changed that logic also, because, with some certain circumstances, the disharmony of refresh schedules of each individual calendars and notifications might make too many refreshing/flickering. So I have to change the job.

                    BKeyportB 1 Reply Last reply Reply Quote 0
                    • BKeyportB Offline
                      BKeyport Module Developer @MMRIZE
                      last edited by

                      @MMRIZE I see. I need the calendar to update more frequently, which is why I have my animations off normally. More options set. it now works, like it used to.

                      Thanks!

                      The "E" in "Javascript" stands for "Easy"

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

                        How do I remove the “fade to black” at the bottom of the agenda?

                        M 1 Reply Last reply Reply Quote 0
                        • M Offline
                          MMRIZE @Studio472
                          last edited by

                          @Studio472
                          Append this to your custom.css

                          .CX3A .agenda::after {
                            display: none;
                          }
                          
                          BKeyportB 1 Reply Last reply Reply Quote 0
                          • BKeyportB Offline
                            BKeyport Module Developer @MMRIZE
                            last edited by

                            @MMRIZE Boy, we did things the hard way…

                            /* Fade adjustments */
                            .CX3A .agenda::after {
                            	position: absolute;
                            	bottom: 0;
                            	left: 0;
                            	height: 6%;
                            	width: 100%;
                            	content: '';
                            	background-image: unset;
                            } 
                            

                            The "E" in "Javascript" stands for "Easy"

                            1 Reply Last reply Reply Quote 1
                            • M Offline
                              MM19198
                              last edited by

                              I was able to get MMM-CalendarExt3 working, but I’m struggling with MMM-CalendarExt3Agenda. I cannot figure out what I’m doing wrong. None of the events appear in the MMM-CalendarExt3Agenda module but they do appear in the MMM-CalendarExt3 module. Any help is appreciated.

                              Google Calendar Config

                              {
                              	module: "MMM-GoogleCalendar",
                              	header: "Family Calendar",
                              	classes: "calendar-agenda",
                              	config: {
                              		calendars: [
                              			{
                              				symbol: "calendar-week",
                              				calendarID: "myemail@gmail.com",
                              				name: "mycalendar"
                              			},
                              		],
                              		broadcastEvents: true,
                              		broadcastPstEvents: true,
                              		maximumEntries: 100
                              	}
                              },
                              

                              MMM-CalendarExt3 Config

                              {
                              	module: "MMM-CalendarExt3",
                              	position: "top_center",
                              	title: "Family Calendar EXT3",
                              	config: {
                              		mode: "month",
                              		instanceID: "Ext-Calendar-Month",
                              		calendarSet: ['mycalendar'],
                              		weeksInView: 3,
                              		preProcessor: (e) => {
                              			if (e.start?.dateTime) {
                              				  e.startDate = new Date(e.start.dateTime).valueOf()
                              			} else if (e.start?.date) {
                              				  e.startDate = new Date('${e.start.date}T00:00:00').valueOf()
                              			}
                              
                              			if (e.end?.dateTime) {
                              				  e.endDate = new Date(e.end.dateTime).valueOf()
                              			} else if (e.end?.date) {
                              				  e.endDate = new Date('${e.end.date}T00:00:00').valueOf()
                              			}
                              
                              			e.title = e.summary
                              			e.fullDayEvent = (e.start?.date) ? true : false
                              			return e
                              		}
                              	}
                              },
                              

                              MMM-CalendarExt3Agenda Config

                              {
                              	module: "MMM-CalendarExt3Agenda",
                              	position: "top_left",
                              	title: "Something",
                              	config: {
                              		instanceId: "Ext3-Calendar-Agenda",
                              		calendarSet: ['mycalendar'],
                              		firstDayOfWeek: 1,
                              		startDayIndex: -1,
                              		endDayIndex: 10,
                              		showMiniMonthCalendar: false,
                              		preProcessor: (e) => {
                              			if (e.start?.dateTime) {
                              				  e.startDate = new Date(e.start.dateTime).valueOf()
                              			} else if (e.start?.date) {
                              				  e.startDate = new Date('${e.start.date}T00:00:00').valueOf()
                              			}
                              
                              			if (e.end?.dateTime) {
                              				  e.endDate = new Date(e.end.dateTime).valueOf()
                              			} else if (e.end?.date) {
                              				  e.endDate = new Date('${e.end.date}T00:00:00').valueOf()
                              			}
                              
                              			e.title = e.summary
                              			e.fullDayEvent = (e.start?.date) ? true : false
                              			return e
                              		}
                              	}
                              },
                              
                              M 1 Reply Last reply Reply Quote 0
                              • M Offline
                                MM19198 @MM19198
                                last edited by

                                I was able to get it working. For those that may need to resolve this in the future, the answer was at this link:

                                https://github.com/MMRIZE/MMM-CalendarExt3Agenda#update-to-120

                                When some submodule is not updated, try this.

                                cd ~/MagicMirror/modules/MMM-CalendarExt3Agenda
                                git submodule update --init --recursive
                                
                                1 Reply Last reply Reply Quote 0
                                • D Offline
                                  danidanial
                                  last edited by

                                  I was able to get it working. For those that may need to resolve this in the future, the answer was at this link: :backhand_index_pointing_right_light_skin_tone:

                                  https://github.com/MMRIZE/MMM-CalendarExt3Agenda#update-to-120

                                  When some submodule is not updated, try this.

                                  cd ~/MagicMirror/modules/MMM-CalendarExt3Agenda
                                  git submodule update --init --recursive

                                  1 Reply Last reply Reply Quote 0
                                  • M Offline
                                    MarNog @MMRIZE
                                    last edited by

                                    @MMRIZE Thanks for the module! I see your first screenshot and looks like you have multiple calendars using the original MMM-Calendar and MMM-CalendarExt3Agenda modules. What setting do you use to get it working like this? I setup mine, but I cant figure out what do do on the original MMM-Calendar module to display only one specific calendar and another calendar to be displayed using Ext3Agenda module. Also, what is the best way to get hyphens in the column to be between the times when using 2 digits for hours?

                                    Screenshot 2023-07-30 121447.jpg

                                    {
                                    	module: "calendar",
                                    	header: "Cabrillo's Dates and Deadlines",
                                    	position: "bottom_right", //When you want to hide default calendar module, just remove position of calendar module.
                                    	config: {
                                    		maxTitleLength: 50,
                                    		wrapEvents: true,
                                    		tableClass: "small",
                                    		maximumEntries: 13,
                                    		//sliceMultiDayEvents: true,
                                    		calendars: [
                                    			{
                                    			symbol: "calendar-check",
                                    			name: "Cabrillo_Dates_Deadlines", // <-- specify calendar name
                                    			url: "https://calendar.google.com/calendar/ical/c_5a2463022055508fcb5a604f131895484562edb98904940f4efb3fa1c1362e47%40group.calendar.google.com/public/basic.ics",
                                    			},
                                    			{
                                    			// HOW to REMOVE this one from the Calendar Module??
                                    			url: "https://calendar.google.com/calendar/ical/c_jvq8rotabh0rrru2qeo2oec9gc%40group.calendar.google.com/public/basic.ics",
                                    			name: "CTC_Schedule", // <-- specify calendar name
                                    			color: "skyblue", // <-- if you don't want to get color, just remove this line.
                                    			broadcastPastEvents: true, // <-- need to broadcast past events
                                    			maximalNumberOfDays: 30, // <-- how old events would be broadcasted
                                    			maximumEntries: 100, // <-- assign enough number to prevent truncating new events by old events.
                                    			symbol: 'calendar-check', // <-- when you want to display symbol. If you don't want, just set as `symbol:[],`
                                    			}
                                    		]
                                    	}
                                    },
                                    
                                    
                                    
                                    {
                                      module: "MMM-CalendarExt3Agenda",
                                      position: "top_left",
                                      title: "CTC TA Schedule",
                                      config: {
                                        instanceId: "CTCCalendar",
                                        firstDayOfWeek: 1,
                                        startDayIndex: 0,
                                        endDayIndex: 2,
                                        showMiniMonthCalendar: false,
                                        calendarSet: ['CTC_Schedule'],
                                        eventFilter: (ev) => {
                                                 if (ev.title.startsWith("OUT")) {
                                                 	return false
                                                 	}
                                    	     return true
                                    	},
                                      }
                                    },
                                    

                                    Thank you

                                    BKeyportB M 2 Replies Last reply Reply Quote 0
                                    • BKeyportB Offline
                                      BKeyport Module Developer @MarNog
                                      last edited by

                                      @MarNog Multiple instances of the calendar module. One with position in place for the ones you want to show with the default module, one without a position for the ones you want to display with CX3A.

                                      The "E" in "Javascript" stands for "Easy"

                                      M 1 Reply Last reply Reply Quote 0
                                      • M Offline
                                        MMRIZE @MarNog
                                        last edited by MMRIZE

                                        @MarNog
                                        Interesting. You might have added some custom CSS, so hard to guess what happened at the moment.
                                        I think the area for time displaying is not so wide enough. Give them more space.

                                        Currently, the hyphen and startTime/endTime condition is defined like this.

                                        /* MMM-CalendarExt3Agenda.css line 187 */
                                        .CX3A .event .time {
                                          font-size: 75%;
                                          vertical-align: text-bottom;
                                        }
                                        
                                        .CX3A .event .time.notInDay {
                                          display: none;
                                        }
                                        
                                        .CX3A .event .startTime::after {
                                          content: ' -';
                                        }
                                        
                                        .CX3A .event .startTime.notInDay + .endTime.inDay::before {
                                          content: '- ';
                                        }
                                        
                                        M 1 Reply Last reply Reply Quote 0
                                        • M Offline
                                          MarNog @BKeyport
                                          last edited by

                                          @BKeyport I added another instance of the Calendar module and it worked like charm. Thank you.

                                          1 Reply Last reply Reply Quote 0
                                          • M Offline
                                            MarNog @MMRIZE
                                            last edited by

                                            @MMRIZE I had used a custom.css from someone’s post and I modified the font size. After your suggestion I changed the width on the custom.css and the time is showing correctly now. Thank you

                                            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
                                            • 4
                                            • 5
                                            • 6
                                            • 7
                                            • 8
                                            • 11
                                            • 12
                                            • 6 / 12
                                            • 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