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.

    One-line switch to enable / disable modules

    Scheduled Pinned Locked Moved Feature Requests
    14 Posts 7 Posters 9.0k Views 6 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.
    • rudibaraniR Offline
      rudibarani Project Sponsor @Anhalter42
      last edited by

      @Anhalter42 That’s what I was looking for! Thanks a lot :)

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

        disabled: “true”, it doesnt work

        strawberry 3.141S 1 Reply Last reply Reply Quote 0
        • strawberry 3.141S Offline
          strawberry 3.141 Project Sponsor Module Developer @Sebi76
          last edited by

          @sebi76 booleans do not have quotes. Try without

          Please create a github issue if you need help, so I can keep track

          J 1 Reply Last reply Reply Quote 1
          • michael5rM Offline
            michael5r Module Developer
            last edited by

            I’ve done this in my config.js file:

            const DISABLED = {};
            
            if (RPI_DEV) { // I'm setting this value automatically based on the system
                DISABLED.weather = false;
                DISABLED.clock = false;
                DISABLED.calendar = false;
                DISABLED.tools = false;
                DISABLED.hue = true;
                DISABLED.newsfeed = true;
                DISABLED.nest_cameras = true;
                DISABLED.nest_status = true;
                DISABLED.telegram = true;
                DISABLED.hotword = true;
            } else {
                DISABLED.weather = false;
                DISABLED.clock = false;
                DISABLED.calendar = false;
                DISABLED.tools = false;
                DISABLED.hue = false;
                DISABLED.newsfeed = false;
                DISABLED.nest_cameras = false;
                DISABLED.nest_status = false;
                DISABLED.telegram = false;
                DISABLED.hotword = false;
            }
            

            And then for each module you can do something like this:

            {
                module: 'clock',
                position: 'top_left',
                config: {
                    displaySeconds: false,
                    displayType: 'digital',
                    dateFormat: 'dddd, MMM D, YYYY'
                },
                disabled: DISABLED.clock
            },
            
            1 Reply Last reply Reply Quote 2
            • S Offline
              Sebi76
              last edited by

              @michael5r said in One-line switch to enable / disable modules:

              I’ve done this in my config.js file:

              Where do you placesd this in you config. Like this?

              
              	modules: [
              			
              const DISABLED = {};
                 
                  DISABLED.clock = false;
              
              }
                
              		{
              			module: "alert",
              			classes:  'default everyone',
              			},
              		{
              			module: "updatenotification",
              			position: "top_bar",
              			classes:  'default everyone', 
              			},
              		{
              			module: "clock",
              			position: "top_left",
              			classes:  'default everyone',
              			disabled: DISABLED.clock			
              		},
              		
              	    ]
              
              };
              
              michael5rM 1 Reply Last reply Reply Quote 0
              • michael5rM Offline
                michael5r Module Developer @Sebi76
                last edited by

                @sebi76 No, it needs to be before that.

                Place it at the top of the file, before this line:

                var config = {
                
                1 Reply Last reply Reply Quote 1
                • S Offline
                  Sebi76
                  last edited by

                  It’s works not :grimacing_face:

                  /* Magic Mirror Config Sample
                   *
                   * By Michael Teeuw http://michaelteeuw.nl
                   * MIT Licensed.
                   *
                   * For more information how you can configurate this file
                   * See https://github.com/MichMich/MagicMirror#configuration
                   *
                   */
                  
                  const DISABLED = {};
                     
                      DISABLED.clock = false;
                  
                  },
                  
                  
                  var config = {
                  	address: "0.0.0.0", // Address to listen on, can be:
                  	                      // - "localhost", "127.0.0.1", "::1" to listen on loopback interface
                  	                      // - another specific IPv4/6 to listen on a specific interface
                  	                      // - "", "0.0.0.0", "::" to listen on any interface
                  	                      // Default, when address config is left out, is "localhost"
                  	port: 8080,
                  	ipWhitelist: [], // Set [] to allow all IP addresses
                  	                                                       // or add a specific IPv4 of 192.168.1.5 :
                  	                                                       // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.1.5"],
                  	                                                       // or IPv4 range of 192.168.3.0 --> 192.168.3.15 use CIDR format :
                  	                                                       // ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:192.168.3.0/28"],
                  
                  	language: "de",
                  	timeFormat: 24,
                  	units: "metric",
                  
                  
                  
                  	modules: [
                  			
                    
                  		{
                  			module: "alert",
                  			classes:  'default everyone',
                  			},
                  		{
                  			module: "updatenotification",
                  			position: "top_bar",
                  			classes:  'default everyone', 
                  			},
                  		{
                  			module: "clock",
                  			position: "top_left",
                  			classes:  'default everyone',
                  			//disabled: DISABLED.clock			
                  		},
                  		
                  	    ]
                  
                  };
                  
                  /*************** DO NOT EDIT THE LINE BELOW ***************/
                  if (typeof module !== "undefined") {module.exports = config;}
                  
                  
                  michael5rM 1 Reply Last reply Reply Quote 0
                  • michael5rM Offline
                    michael5r Module Developer @Sebi76
                    last edited by michael5r

                    @sebi76 Your syntax is wrong - you have this:

                    const DISABLED = {};
                       
                        DISABLED.clock = false;
                    
                    },
                    

                    It should just be this:

                    const DISABLED = {};
                    DISABLED.clock = false;
                    

                    It’s that last }, that’s breaking your code.

                    1 Reply Last reply Reply Quote 1
                    • S Offline
                      Sebi76
                      last edited by Sebi76

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0
                      • ? Offline
                        A Former User
                        last edited by A Former User

                        @rudibarani @michael5r

                        Here is my version. No need to list all modules.

                        const pre_disabled = {
                          "UNLISTED": true, // default value for unlisted other modules.
                          "alert":false,
                          "clock": false,
                          "MMM-Remote-Control":false,
                         }
                        
                        var DISABLED = new Proxy(pre_disabled, {
                          get (receiver, name) {
                            return name in receiver ? receiver[name] : receiver["UNLISTED"]
                          }
                        })
                        
                        michael5rM 1 Reply Last reply Reply Quote 1
                        • michael5rM Offline
                          michael5r Module Developer @Guest
                          last edited by

                          @sean said in One-line switch to enable / disable modules:

                          @rudibarani @michael5r

                          Here is my version. No need to list all modules.

                          const pre_disabled = {
                            "UNLISTED": true, // default value for unlisted other modules.
                            "alert":false,
                            "clock": false,
                            "MMM-Remote-Control":false,
                           }
                          
                          var DISABLED = new Proxy(pre_disabled, {
                            get (receiver, name) {
                              return name in receiver ? receiver[name] : receiver["UNLISTED"]
                            }
                          })
                          

                          Lovely :thumbs_up_light_skin_tone:

                          1 Reply Last reply Reply Quote 0
                          • J Offline
                            jg3 @strawberry 3.141
                            last edited by

                            This post is deleted!
                            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 / 1
                            • 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