/* Template Name: Veltrix - Responsive Bootstrap 4 Admin Dashboard Author: Themesbrand Website: www.themesbrand.com File: Main js */ !function($) { "use strict"; var MainApp = function () { this.$body = $("body"), this.$wrapper = $("#wrapper"), this.$btnFullScreen = $("#btn-fullscreen"), this.$leftMenuButton = $('.button-menu-mobile'), this.$menuItem = $('.has_sub > a') }; MainApp.prototype.intSlimscrollmenu = function () { $('.slimscroll-menu').slimscroll({ height: 'auto', position: 'right', size: "5px", color: '#9ea5ab', wheelStep: 5, touchScrollStep: 50 }); }, MainApp.prototype.initSlimscroll = function () { $('.slimscroll').slimscroll({ height: 'auto', position: 'right', size: "5px", color: '#9ea5ab', touchScrollStep: 50 }); }, MainApp.prototype.initMetisMenu = function () { //metis menu $("#side-menu").metisMenu(); }, MainApp.prototype.initLeftMenuCollapse = function () { // Left menu collapse $('.button-menu-mobile').on('click', function (event) { event.preventDefault(); $("body").toggleClass("enlarged"); }); }, MainApp.prototype.initEnlarge = function () { if ($(window).width() < 1025) { $('body').addClass('enlarged'); } else { $('body').removeClass('enlarged'); } }, MainApp.prototype.initActiveMenu = function () { // === following js will activate the menu in left side bar based on url ==== $("#sidebar-menu a").each(function () { var pageUrl = window.location.href.split(/[?#]/)[0]; if (this.href == pageUrl) { $(this).addClass("mm-active"); $(this).parent().addClass("mm-active"); // add active to li of the current link $(this).parent().parent().addClass("mm-show"); $(this).parent().parent().prev().addClass("mm-active"); // add active class to an anchor $(this).parent().parent().parent().addClass("mm-active"); $(this).parent().parent().parent().parent().addClass("mm-show"); // add active to li of the current link $(this).parent().parent().parent().parent().parent().addClass("mm-active"); } }); }, MainApp.prototype.initComponents = function () { $('[data-toggle="tooltip"]').tooltip(); $('[data-toggle="popover"]').popover(); }, //full screen MainApp.prototype.initFullScreen = function () { var $this = this; $this.$btnFullScreen.on("click", function (e) { e.preventDefault(); if (!document.fullscreenElement && /* alternative standard method */ !document.mozFullScreenElement && !document.webkitFullscreenElement) { // current working methods if (document.documentElement.requestFullscreen) { document.documentElement.requestFullscreen(); } else if (document.documentElement.mozRequestFullScreen) { document.documentElement.mozRequestFullScreen(); } else if (document.documentElement.webkitRequestFullscreen) { document.documentElement.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT); } } else { if (document.cancelFullScreen) { document.cancelFullScreen(); } else if (document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if (document.webkitCancelFullScreen) { document.webkitCancelFullScreen(); } } }); }, MainApp.prototype.init = function () { this.intSlimscrollmenu(); this.initSlimscroll(); this.initMetisMenu(); this.initLeftMenuCollapse(); this.initEnlarge(); this.initActiveMenu(); this.initComponents(); this.initFullScreen(); Waves.init(); }, //init $.MainApp = new MainApp, $.MainApp.Constructor = MainApp }(window.jQuery), //initializing function ($) { "use strict"; $.MainApp.init(); }(window.jQuery);