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-CalendarExt3

    Scheduled Pinned Locked Moved Utilities
    689 Posts 82 Posters 2.8m Views 86 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.
    • M Offline
      MMRIZE @fedale
      last edited by MMRIZE

      @fedale
      For CX2, I thought it was not pretty to have the week number column separately, and it is a bit of waste to occupy the expensive real estate of the MM screen, so in CX3, I put the week number into the cell as small as possible.
      img

      Conclusively, a separated week number column is not possible in CX3 atm, And I think it would be undesirable, so I’ll not consider it.

      1 Reply Last reply Reply Quote 0
      • F Offline
        fedale
        last edited by

        Ok thanks for the feedback.

        I have another question
        The new calendarExt3 and the i cant seem to get this transform fuction to work anymore. I had the transform in the config.js file and the custom.css with different words to get different color on each work, as we have family calendar.
        Tried to change it to cx3 without any luck. (/* */ is only to stop the code here.)

        Example
        /*
        transform: function(event) {
        if (event.title.search(“Jobb”) > -1) {
        event.icon = “ic:outline-work-outline”;
        event.className = “Jobb”;
        }

        */

        In the custom.css:
        /*
        }
        .CX3 .Jobb.fullday {
        background-color:rgba(0,128,128);
        color:#000;
        }
        .CX3 .Jobb {
        background-color:rgba(0,128,128);
        color:#000;
        }

        */

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

          @fedale
          ‘eventTransformer’

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

            Updated 1.2.5 (2022-11-04)

            • Added Display legend of the calendar (displayLegend: true and when you set the calendar name on the calendar module)
            • Fixed Some CSS fixture

            139bed23-4cf8-4438-ba05-4930b345e2cd-image.png

            L 1 Reply Last reply Reply Quote 0
            • L Offline
              Lilleberg @MMRIZE
              last edited by

              @MMRIZE I’m trying to update the module but it seems like the update doesn’t work. Maybe I’m doing it wrong? I have copied in the commands I’m using in the terminal. According to that it looks like the update is working fine. But when I start the MagicMirror there is still a notification at the top that the CalendarExt3 module is “2 commits behind the main grenen”.
              Also I can’t display the legend when I insert this under the config in the CalendarExt3 module.

              lilleberg@raspberrypi:~ $ cd ~/MagicMirror/modules/MMM-CalendarExt3
              lilleberg@raspberrypi:~/MagicMirror/modules/MMM-CalendarExt3 $ git pull
              Updating 04883bc..ecd6b7a
              error: Your local changes to the following files would be overwritten by merge:
              	MMM-CalendarExt3.css
              	MMM-CalendarExt3.js
              Please commit your changes or stash them before you merge.
              Aborting
              lilleberg@raspberrypi:~/MagicMirror/modules/MMM-CalendarExt3 $ npm install
              
              up to date, audited 1 package in 598ms
              
              found 0 vulnerabilities
              
              
              S 1 Reply Last reply Reply Quote 0
              • L Offline
                Lilleberg @MMRIZE
                last edited by

                @MMRIZE My language and locale are Norwegian. Using nb in the config file.

                1 Reply Last reply Reply Quote 0
                • L Offline
                  Lilleberg @MMRIZE
                  last edited by

                  @MMRIZE Thanks!

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

                    @Lilleberg said in MMM-CalendarExt3:

                    error: Your local changes to the following files would be overwritten by merge:
                    MMM-CalendarExt3.css
                    MMM-CalendarExt3.js

                    looks like u modified the module code, and updated cannot be applied til you fix that.

                    generally you never edit the source files of a module.all config goes in config.js and all css updates go is custom.css

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    1 Reply Last reply Reply Quote 0
                    • B Offline
                      bicolorbore586 @MMRIZE
                      last edited by

                      Is there an option to hide the week numbers? I’ve managed to remove the ‘cw’ using custom.css (albeit a bit untidy)

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

                        @bicolorbore586 no config option, just set cw to display:none in custom.css

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 2
                        • A Offline
                          almightyyoshi
                          last edited by

                          I finally found a touch module that I could easily use for the glance notification and have the payload step as 1. However, two things are happening:

                          1: on the first press it’s going back to June. Second press goes to April. Third press goes to August. Fourth press goes to December (which would be correct, however, due to the other jumps it could just be random)

                          2: no events are populating in the glance

                          Here’s what I have for the button:

                          {
                                module: "MMM-TouchButton",
                                position: "top_left",
                                config: {
                                    buttons: [
                                         {
                                          name: "Next",
                                          icon: "fa fa-calendar-days",
                                          notification: "CX3_GLANCE_CALENDAR",
                                          payload: {instanceID: [], step: [1]},
                                            },
                                          ]
                                        },
                                     },
                          
                          

                          And here’s my CX3 config:

                          {
                                      module: "MMM-CalendarExt3",
                                      position: "middle_center",
                                      config: {
                                              mode: "month",
                                              instanceID: "currentMonth",
                                              firstDayOfWeek: 0,
                                              useSymbol: true,
                                              glanceTime: 60000,
                                              calendarSet: [],
                                      }
                                  },
                          
                          

                          Any thoughts?

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

                            @almightyyoshi
                            Not real tested, but I think your config should be like this;

                            payload: {step: 1},
                            

                            And about no event populating, It would be related to your maximumEntries , maximumNumberOfDays and boradcastPastEvents options of default calendar module.

                            A 1 Reply Last reply Reply Quote 0
                            • A Offline
                              almightyyoshi @MMRIZE
                              last edited by

                              @MMRIZE
                              That did it. Thanks!

                              1 Reply Last reply Reply Quote 0
                              • C Offline
                                chadjohn2
                                last edited by

                                First off, I’m a complete and utter noob with coding. I’m capable enough to get MagicMirror installed and start adding in some of the 3rd party modules. I’m now trying to get into the space of modifying CSS and such for a little added customization.

                                I’m trying to something that I think should be simple but I cannot get it work for the life of me. I’ve searched the forum and this topic and found a couple pieces but I’m still struggling. Finally got frustrated enough to create an account and post.

                                I’m trying to change the color of events based on the title of an event coming from a google calendar. The events are coming in fine, just not changing color.

                                Based on what I have read, I need to use the eventTransformer function. I have put the following into the config.js file (including the full module for total information).

                                { 
                                module: "MMM-CalendarExt3",
                                position: "bottom_bar",
                                config: {
                                			mode: "week",
                                			weekIndex: "0",
                                			weeksInView: "2",
                                			firstDayOfWeek: "1",
                                			maxEventLines: "8",
                                			fontSize: "25px",
                                			eventHeight: "16px"
                                		},
                                eventTransformer: function(event) {
                                if (event.title.search('Daycare') > -1) {
                                event.className = 'Daycare'
                                				}
                                			}	
                                		}
                                

                                then in the custom.css file (Trying hot pink hex so it pops out):

                                .CX3 .Daycare {
                                background-color:#FF69B4;
                                color:#FF69B4;
                                }
                                

                                For all I know, that’s completely wrong so any help you can provide will be appreciated!

                                W M 2 Replies Last reply Reply Quote 0
                                • W Offline
                                  Wenike @chadjohn2
                                  last edited by

                                  @chadjohn2 Try removing the }, before your event transformer text (it closes that config section but you need the event transformer in that config section). Also, per the github, your code for the event transformer needs to be something like:

                                  eventTransformer: (ev) => {
                                    if (ev.title.search('Daycare') > -1) ev.color = '#FF69B4'
                                    return ev
                                  }
                                  
                                  S 1 Reply Last reply Reply Quote 0
                                  • S Offline
                                    sdetweil @Wenike
                                    last edited by sdetweil

                                    @Wenike your transformer is only doing style change,
                                    he wants to change the class , so his transformer is ok

                                    Sam

                                    How to add modules

                                    learning how to use browser developers window for css changes

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

                                      @chadjohn2
                                      There were several issues on your code.

                                      1. You didn’t return event object in your eventTransformer function.
                                        30718079-3e22-498f-88af-f332f084c764-image.png

                                      2. CSS(Cascading Style Sheets) has a Speciality to determine the priority of the definitions by calculation.
                                        Your .CX3 .Daycare is lower than default .CX3 .event.fullday or .CX3 .event.multiday. So in case of your event is fullday/multiday thing, your color definition would be ignored.
                                        .CX3 .event.Daycare or .CX3 .event.Daycare.fullday, .CX3 .event.Daycare.multiday would work.

                                      1 Reply Last reply Reply Quote 0
                                      • D Offline
                                        DDE12
                                        last edited by

                                        How do I reference the specific instances of CExt3? Like on different carousel pages, where I would have a month mode on one page and a week mode on another. I have this config:

                                        module: "calendar",
                                        	    position: "top_left",
                                                    broadcastPastEvents: true,
                                                    maximumNumberOfDays: 300,            
                                                    config: {
                                                        instanceId: "FamilyCal",
                                                        fade: false,
                                                        colored: true,
                                                        displaySymbol: false,
                                        	        calendars: [
                                                                {   
                                                                name: "Holidays",
                                        		        url: "webcal://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics",
                                                                color: "rgb(240,175,20)"
                                                                },
                                                                {   
                                                                name: "Dad",
                                                                url: "https://private.calendar.com",
                                                                color: "rgb(60,250,60)"
                                                                },
                                                                {   
                                                                name: "Mom",
                                                                url: "https://private.calendar.com",
                                                                color: "rgb(250,40,150)"
                                                                },
                                                                {  
                                                                name: "Child",
                                                                url: "https://private.calendar.com",
                                                                color: "rgb(180,40,250)"
                                                                }
                                        		]
                                        	}
                                        },
                                        {
                                                  module: "MMM-CalendarExt3",
                                                  position: "fullscreen_above",
                                                  title: "",
                                                  config: {
                                                        mode: "month",
                                                        instanceId: "FamilyMonth",
                                                        calendarSet: ['Holidays', 'Dad', 'Mom', 'Child'],
                                                        maxEventLines: 5,
                                                        firstDayOfWeek: 0,
                                                        minimalDaysOfNewYear: 1,
                                                        eventHeight: '18px',
                                                        useSymbol: false                
                                                    }
                                                },*/
                                                {
                                                    module: "MMM-CalendarExt3",
                                                    position: "fullscreen_above",
                                                    title: "",
                                                    config: {
                                                        mode: "week",
                                                        instanceId: "FamilyWeek",
                                                        weekIndex: -1,
                                                        weeksInView: 5,
                                                        calendarSet: ['Holidays', 'Dad', 'Mom', 'Child'],
                                                        maxEventLines: 5,
                                                        firstDayOfWeek: 0,
                                                        minimalDaysOfNewYear: 1,
                                                        eventHeight: '18px',
                                                        useSymbol: false                
                                                 }
                                         }
                                        
                                        S 1 Reply Last reply Reply Quote 0
                                        • S Offline
                                          sdetweil @DDE12
                                          last edited by sdetweil

                                          @DDE12 for each module you can ADD classes strings , by using the classes:“…”
                                          property after the
                                          module:“… name”

                                          then in pages you can use that name instead of the module name

                                          I prefer to configure pages differently

                                          in pages its

                                             modules: [
                                                  [  'page1'],
                                                  [  'page2' ]
                                              ]
                                          

                                          then for the modules u want on page1

                                          you add

                                            classes:'page1',
                                          

                                          and for modules on page2

                                             classes:'page2'
                                          

                                          you can do the same for fixed, etc

                                          Sam

                                          How to add modules

                                          learning how to use browser developers window for css changes

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

                                            @sdetweil
                                            Thank you for looking at this. Is this the proper implementation for your suggestion?

                                            modules:  [
                                               ['MonthPage'],
                                               ['WeeksPage']
                                               {
                                                      module: "MMM-CalendarExt3",
                                                      position: "fullscreen_above",
                                                      classes: 'MonthPage',
                                                            config: {
                                                                 mode: "month",
                                                                 instanceId: "FamilyMonth",
                                                                 calendarSet: ['Holidays', 'Dad', 'Mom', 'Child'],
                                                            }
                                                },
                                                {
                                                      module: "MMM-CalendarExt3",
                                                      position: "fullscreen_above",
                                                      classes: 'WeeksPage' 
                                                            config: {
                                                                 mode: "week",
                                                                 instanceId: "FamilyWeek",
                                                                calendarSet: ['Holidays', 'Dad', 'Mom', 'Child'],
                                                            }
                                                },
                                                {
                                                      module: "MMM-Carousel",
                                                              config: {
                                                                    mode: 'slides',
                                                                    slides: {
                                                                               "Slide 2": ['MonthPage'],
                                                                               "Slide 3": ['WeeksPage']
                                                                     }
                                                              }
                                                 },
                                            ]
                                            
                                            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
                                            • 23
                                            • 24
                                            • 25
                                            • 26
                                            • 27
                                            • 34
                                            • 35
                                            • 25 / 35
                                            • 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