• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
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.

MM-Navbar - Navigation Bar for Touchscreens to hide/show modules

Scheduled Pinned Locked Moved System
47 Posts 11 Posters 38.6k Views 15 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.
  • C Offline
    chrisyy @in_a_days
    last edited by Jan 13, 2017, 8:53 AM

    @in_a_days the code for Show/hide alle of the modules is

    MM.getModules().exceptModule(this).exceptWithClass(‘clock’).enumerate(function(module){
    module.hide(1000, function(){
    });
    });

    but there is not a button implemented until now.

    1 Reply Last reply Reply Quote 1
    • T Offline
      tosti007 Module Developer
      last edited by Jan 13, 2017, 9:28 AM

      I gave your code a look an notived that you imported jquery. First of all, you could also direct to a external file, see module documentation, this way you only have to change that line when you want to update the jquery. However if you would replace the on with addEventListener then you wouldn’t have to import jquery at all. Your code wouldn’t have to change much at all since that method takes the same parameters.

      If there is anything don't hesitate to contact me!
      ProfileSwitcher, TouchNotifications

      1 Reply Last reply Reply Quote 0
      • S Offline
        shashank @in_a_days
        last edited by Jan 15, 2017, 2:56 PM

        @in_a_days hi, how can i change code to show more modules apart from clock, i need weather and calendar to show as default

        I 1 Reply Last reply Jan 15, 2017, 7:23 PM Reply Quote 0
        • I Offline
          in_a_days @shashank
          last edited by in_a_days Jan 15, 2017, 7:25 PM Jan 15, 2017, 7:23 PM

          @shashank

          So right now it hides all modules by default. If you want everything to show by default I think you just need to comment out a section from MM-navbar.js. These are lines 12 - 19 right now:

          notificationReceived: function(notification, payload, sender){
          	if (notification === 'DOM_OBJECTS_CREATED'){
          		MM.getModules().exceptModule(this).exceptWithClass('clock').enumerate(function(module){
          			module.hide(1000, function(){
          			});
          		});
          	}
          },
          

          Just open and close a comment around this section so it looks like this:

          /*notificationReceived: function(notification, payload, sender){
          	if (notification === 'DOM_OBJECTS_CREATED'){
          		MM.getModules().exceptModule(this).exceptWithClass('clock').enumerate(function(module){
          			module.hide(1000, function(){
          			});
          		});
          	}
          },*/
          

          And I think it should display all your normal modules on startup.

          What ship would bear me ever back across so wide a Sea?

          S 1 Reply Last reply Jan 16, 2017, 5:05 AM Reply Quote 0
          • A Offline
            AlessandroRa @chrisyy
            last edited by Jan 16, 2017, 1:19 AM

            @chrisyy thank you man, so let me get this straight: I find a button that I like on internet, I copy its code and I put it into the module?
            I’m sorry, but I’m kinda new to this :)

            T 1 Reply Last reply Jan 16, 2017, 1:41 AM Reply Quote 0
            • T Offline
              tosti007 Module Developer @AlessandroRa
              last edited by Jan 16, 2017, 1:41 AM

              @AlessandroRa No you will have to take a look at Font Awsome which is being used throughout the magic mirror. In the link you can find all the icons you can use. (someone correct me if i’m wrong)

              If there is anything don't hesitate to contact me!
              ProfileSwitcher, TouchNotifications

              1 Reply Last reply Reply Quote 0
              • S Offline
                shashank @in_a_days
                last edited by Jan 16, 2017, 5:05 AM

                @in_a_days Hi, My requirement is i need to show clock, weather and Calendar by default and all other modules should be hide.

                I 1 Reply Last reply Jan 16, 2017, 9:19 PM Reply Quote 0
                • T Offline
                  tosti007 Module Developer
                  last edited by Jan 16, 2017, 9:06 PM

                  @all, I made a module which is similair to this one. In mine you can set custom profiles and swap between them. Hope that this helps one of you guys :)

                  If there is anything don't hesitate to contact me!
                  ProfileSwitcher, TouchNotifications

                  1 Reply Last reply Reply Quote 0
                  • I Offline
                    in_a_days @shashank
                    last edited by Jan 16, 2017, 9:19 PM

                    @shashank

                    Okay I think I know what you’re looking for. I’m not 100% sure how to make the change, but someone else here may be able to help.

                    notificationReceived: function(notification, payload, sender){
                    	if (notification === 'DOM_OBJECTS_CREATED'){
                    		MM.getModules().exceptModule(this).exceptWithClass('clock').enumerate(function(module){
                    			module.hide(1000, function(){
                    			});
                    		});
                    	}
                    },
                    

                    Is there a simple way to include the ‘calendar’ and ‘weather’ modules in the exceptWithClass call? I don’t know how to include multiple Classes in this kind of context.

                    What ship would bear me ever back across so wide a Sea?

                    T 1 Reply Last reply Jan 16, 2017, 9:25 PM Reply Quote 0
                    • T Offline
                      tosti007 Module Developer @in_a_days
                      last edited by Jan 16, 2017, 9:25 PM

                      @in_a_days put the names you want in an array, like so:

                      var exceptClasses = ["clock", "weather", "calendar"]; //The list of modules you want to keep.
                      MM.getModules().exceptModule(this).exceptWithClass(exceptClasses).enumerate(
                          // Here the other code
                      );
                      

                      If there is anything don't hesitate to contact me!
                      ProfileSwitcher, TouchNotifications

                      S 1 Reply Last reply Jan 17, 2017, 5:44 AM Reply Quote 1
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 4 / 5
                      4 / 5
                      • First post
                        36/47
                        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