if (typeof jQuery === "undefined") { throw new Error("jQuery plugins need to be before this file"); } "use strict"; $.AdminSwift = {}; $.AdminSwift.options = { colors: { red: '#ec3b57', pink: '#E91E63', purple: '#ba3bd0', deepPurple: '#673AB7', indigo: '#3F51B5', blue: '#457fca', lightBlue: '#03A9F4', cyan: '#01b4ae', green: '#78b83e', lightGreen: '#8BC34A', yellow: '#ffe821', orange: '#FF9800', deepOrange: '#f83600', grey: '#9E9E9E', blueGrey: '#607D8B', black: '#000000', blush: '#F15F79', white: '#ffffff' }, leftSideBar: { scrollColor: 'rgba(0,0,0,0.5)', scrollWidth: '4px', scrollAlwaysVisible: false, scrollBorderRadius: '0', scrollRailBorderRadius: '0' }, dropdownMenu: { effectIn: 'fadeIn', effectOut: 'fadeOut' } } /* Left Sidebar - Function ================================================================================================= * You can manage the left sidebar menu options * */ $.AdminSwift.leftSideBar = { activate: function () { var _this = this; var $body = $('body'); var $overlay = $('.overlay'); //Close sidebar $(window).click(function (e) { var $target = $(e.target); if (e.target.nodeName.toLowerCase() === 'i') { $target = $(e.target).parent(); } if (!$target.hasClass('bars') && _this.isOpen() && $target.parents('#leftsidebar').length === 0) { if (!$target.hasClass('js-right-sidebar')) $overlay.fadeOut(); $body.removeClass('overlay-open'); } }); $.each($('.menu-toggle.toggled'), function (i, val) { $(val).next().slideToggle(0); }); //When page load $.each($('.menu .list li.active'), function (i, val) { var $activeAnchors = $(val).find('a:eq(0)'); $activeAnchors.addClass('toggled'); $activeAnchors.next().show(); }); //Collapse or Expand Menu $('.menu-toggle').on('click', function (e) { var $this = $(this); var $content = $this.next(); if ($($this.parents('ul')[0]).hasClass('list')) { var $not = $(e.target).hasClass('menu-toggle') ? e.target : $(e.target).parents('.menu-toggle'); $.each($('.menu-toggle.toggled').not($not).next(), function (i, val) { if ($(val).is(':visible')) { $(val).prev().toggleClass('toggled'); $(val).slideUp(); } }); } $this.toggleClass('toggled'); $content.slideToggle(320); }); //Set menu height _this.setMenuHeight(); _this.checkStatuForResize(true); $(window).resize(function () { _this.setMenuHeight(); _this.checkStatuForResize(false); }); //Set Waves Waves.attach('.menu .list a', ['waves-block']); Waves.init(); }, setMenuHeight: function () { if (typeof $.fn.slimScroll != 'undefined') { var configs = $.AdminSwift.options.leftSideBar; var height = ($(window).height() - ($('.legal').outerHeight() + $('.user-info').outerHeight() + $('.navbar').innerHeight())); var $el = $(''); $el.slimScroll({ destroy: true }).height("auto"); $el.parent().find('.slimScrollBar, .slimScrollRail').remove(); $el.slimscroll({ height: height + "px", color: configs.scrollColor, size: configs.scrollWidth, alwaysVisible: configs.scrollAlwaysVisible, borderRadius: configs.scrollBorderRadius, railBorderRadius: configs.scrollRailBorderRadius }); } }, checkStatuForResize: function (firstTime) { var $body = $('body'); var $openCloseBar = $('.navbar .navbar-header .bars'); var width = $body.width(); if (firstTime) { $body.find('.content, .sidebar').addClass('no-animate').delay(1000).queue(function () { $(this).removeClass('no-animate').dequeue(); }); } if (width < 1170) { $body.addClass('ls-closed'); $openCloseBar.fadeIn(); } else { $body.removeClass('ls-closed'); $openCloseBar.fadeOut(); } }, isOpen: function () { return $('body').hasClass('overlay-open'); } }; $('.sidebar .menu .list').slimscroll({ height:'calc(100vh - 184px)', color: 'rgba(0,0,0,0.2)', size: '4px', alwaysVisible: false, borderRadius: '0', railBorderRadius: '0' }); //========================================================================================================================== /* Right Sidebar - Function ================================================================================================ * You can manage the right sidebar menu options * */ $.AdminSwift.rightSideBar = { activate: function () { var _this = this; var $sidebar = $('#rightsidebar'); var $overlay = $('.overlay'); //Close sidebar $(window).click(function (e) { var $target = $(e.target); if (e.target.nodeName.toLowerCase() === 'i') { $target = $(e.target).parent(); } if (!$target.hasClass('js-right-sidebar') && _this.isOpen() && $target.parents('#rightsidebar').length === 0) { if (!$target.hasClass('bars')) $overlay.fadeOut(); $sidebar.removeClass('open'); } }); $('.js-right-sidebar').on('click', function () { $sidebar.toggleClass('open'); if (_this.isOpen()) { $overlay.fadeIn(); } else { $overlay.fadeOut(); } }); }, isOpen: function () { return $('.right-sidebar').hasClass('open'); } } //========================================================================================================================== /* Searchbar - Function ================================================================================================ * You can manage the search bar * */ var $searchBar = $('.search-bar'); $.AdminSwift.search = { activate: function () { var _this = this; //Search button click event $('.js-search').on('click', function () { _this.showSearchBar(); }); //Close search click event $searchBar.find('.close-search').on('click', function () { _this.hideSearchBar(); }); //ESC key on pressed $searchBar.find('input[type="text"]').on('keyup', function (e) { if (e.keyCode == 27) { _this.hideSearchBar(); } }); }, showSearchBar: function () { $searchBar.addClass('open'); $searchBar.find('input[type="text"]').focus(); }, hideSearchBar: function () { $searchBar.removeClass('open'); $searchBar.find('input[type="text"]').val(''); } } //========================================================================================================================== /* Navbar - Function ======================================================================================================= * You can manage the navbar * */ $.AdminSwift.navbar = { activate: function () { var $body = $('body'); var $overlay = $('.overlay'); //Open left sidebar panel $('.bars').on('click', function () { $body.toggleClass('overlay-open'); if ($body.hasClass('overlay-open')) { $overlay.fadeIn(); } else { $overlay.fadeOut(); } }); //Close collapse bar on click event $('.nav [data-close="true"]').on('click', function () { var isVisible = $('.navbar-toggle').is(':visible'); var $navbarCollapse = $('.navbar-collapse'); if (isVisible) { $navbarCollapse.slideUp(function () { $navbarCollapse.removeClass('in').removeAttr('style'); }); } }); } } //========================================================================================================================== /* Input - Function ======================================================================================================== * You can manage the inputs(also textareas) with name of class 'form-control' * */ $.AdminSwift.input = { activate: function () { //On focus event $('.form-control').focus(function () { $(this).parent().addClass('focused'); }); //On focusout event $('.form-control').focusout(function () { var $this = $(this); if ($this.parents('.form-group').hasClass('form-float')) { if ($this.val() == '') { $this.parents('.form-line').removeClass('focused'); } } else { $this.parents('.form-line').removeClass('focused'); } }); //On label click $('body').on('click', '.form-float .form-line .form-label', function () { $(this).parent().find('input').focus(); }); } } //========================================================================================================================== /* Form - Select - Function ================================================================================================ * You can manage the 'select' of form elements * */ $.AdminSwift.select = { activate: function () { if ($.fn.selectpicker) { $('select:not(.ms)').selectpicker(); } } } //========================================================================================================================== /* Browser - Function ====================================================================================================== * You can manage browser * */ var edge = 'Microsoft Edge'; var ie10 = 'Internet Explorer 10'; var ie11 = 'Internet Explorer 11'; var opera = 'Opera'; var firefox = 'Mozilla Firefox'; var chrome = 'Google Chrome'; var safari = 'Safari'; $.AdminSwift.browser = { activate: function () { var _this = this; var className = _this.getClassName(); if (className !== '') $('html').addClass(_this.getClassName()); }, getBrowser: function () { var userAgent = navigator.userAgent.toLowerCase(); if (/edge/i.test(userAgent)) { return edge; } else if (/rv:11/i.test(userAgent)) { return ie11; } else if (/msie 10/i.test(userAgent)) { return ie10; } else if (/opr/i.test(userAgent)) { return opera; } else if (/chrome/i.test(userAgent)) { return chrome; } else if (/firefox/i.test(userAgent)) { return firefox; } else if (!!navigator.userAgent.match(/Version\/[\d\.]+.*Safari/)) { return safari; } return undefined; }, getClassName: function () { var browser = this.getBrowser(); if (browser === edge) { return 'edge'; } else if (browser === ie11) { return 'ie11'; } else if (browser === ie10) { return 'ie10'; } else if (browser === opera) { return 'opera'; } else if (browser === chrome) { return 'chrome'; } else if (browser === firefox) { return 'firefox'; } else if (browser === safari) { return 'safari'; } else { return ''; } } } //========================================================================================================================== $(function () { $.AdminSwift.browser.activate(); $.AdminSwift.leftSideBar.activate(); $.AdminSwift.rightSideBar.activate(); $.AdminSwift.navbar.activate(); $.AdminSwift.input.activate(); $.AdminSwift.select.activate(); $.AdminSwift.search.activate(); setTimeout(function () { $('.page-loader-wrapper').fadeOut(); }, 50); }); //header navbar menu add remove class fro z index ================================================================================= $(window).scroll(function() { var scroll = $(window).scrollTop(); if (scroll >= 30) { $(".clearHeader").addClass("n-top"); } else { $(".clearHeader").removeClass("n-top"); } var scroll = $(window).scrollTop(); if (scroll >= 30) { $(".morphsearch").addClass("m-top"); } else { $(".morphsearch").removeClass("m-top"); } }); $(function () { skinChanger(); activateNotificationAndTasksScroll(); setSkinListHeightAndScroll(); setSettingListHeightAndScroll(); $(window).resize(function () { setSkinListHeightAndScroll(); setSettingListHeightAndScroll(); }); }); //Skin changer function skinChanger() { $('.right-sidebar .demo-choose-skin li').on('click', function () { var $body = $('body'); var $this = $(this); var existTheme = $('.right-sidebar .demo-choose-skin li.active').data('theme'); $('.right-sidebar .demo-choose-skin li').removeClass('active'); $body.removeClass('theme-' + existTheme); $this.addClass('active'); $body.addClass('theme-' + $this.data('theme')); }); } //Skin tab content set height and show scroll function setSkinListHeightAndScroll() { var height = $(window).height() - ($('.navbar').innerHeight() + $('.right-sidebar .nav-tabs').outerHeight()); var $el = $('.demo-choose-skin'); $el.slimScroll({ destroy: true }).height('auto'); $el.parent().find('.slimScrollBar, .slimScrollRail').remove(); $el.slimscroll({ height: height + 'px', color: 'rgba(0,0,0,0.5)', size: '4px', alwaysVisible: false, borderRadius: '0', railBorderRadius: '0' }); } //Setting tab content set height and show scroll function setSettingListHeightAndScroll() { var height = $(window).height() - ($('.navbar').innerHeight() + $('.right-sidebar .nav-tabs').outerHeight()); var $el = $('.right-sidebar .demo-settings'); $el.slimScroll({ destroy: true }).height('auto'); $el.parent().find('.slimScrollBar, .slimScrollRail').remove(); $el.slimscroll({ height: height + 'px', color: 'rgba(0,0,0,0.5)', size: '4px', alwaysVisible: false, borderRadius: '0', railBorderRadius: '0' }); } //Activate notification and task dropdown on top right menu function activateNotificationAndTasksScroll() { $('.navbar-right .dropdown-menu .body .menu').slimscroll({ height: '254px', color: 'rgba(0,0,0,0.5)', size: '4px', alwaysVisible: false, borderRadius: '0', railBorderRadius: '0' }); } //Google Analiytics ====================================================================================== addLoadEvent(loadTracking); var trackingId = 'UA-30038099-6'; function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function () { oldonload(); func(); } } } function loadTracking() { (function (i, s, o, g, r, a, m) { i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () { (i[r].q = i[r].q || []).push(arguments) }, i[r].l = 1 * new Date(); a = s.createElement(o), m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m) })(window, document, 'script', 'https://www.google-analytics.com/analytics.js', 'ga'); ga('create', trackingId, 'auto'); ga('send', 'pageview'); } //========================================================================================================