FarisaRahmaSari_E31222327/public/assets/js/app.js

133 lines
4.3 KiB
JavaScript

/*
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);