text: /*
  Template Name: Adminto - Responsive Bootstrap 4 Admin Dashboard
  Author: CoderThemes
  Website: https://coderthemes.com/
  Contact: support@coderthemes.com
  File: Main Js File
  */
  
  
  !function ($) {
      "use strict";
  
      var Components = function () { };
  
      //initializing tooltip
      Components.prototype.initTooltipPlugin = function () {
          $.fn.tooltip && $('[data-toggle="tooltip"]').tooltip()
      },
  
      //initializing popover
      Components.prototype.initPopoverPlugin = function () {
          $.fn.popover && $('[data-toggle="popover"]').popover()
      },
  
      //initializing Slimscroll
      Components.prototype.initSlimScrollPlugin = function () {
          //You can change the color of scroll bar here
          $.fn.slimScroll && $(".slimscroll").slimScroll({
              height: 'auto',
              position: 'right',
              size: "8px",
              touchScrollStep: 20,
              color: '#9ea5ab'
          });
      },
  
      //initializing form validation
      Components.prototype.initFormValidation = function () {
          $(".needs-validation").on('submit', function (event) {
              $(this).addClass('was-validated');
              if ($(this)[0].checkValidity() === false) {
                  event.preventDefault();
                  event.stopPropagation();
                  return false;
              }
              return true;
          });
      },
  
      //initializing custom modal
      Components.prototype.initCustomModalPlugin = function() {
          $('[data-plugin="custommodal"]').on('click', function(e) {
              e.preventDefault();
              var modal = new Custombox.modal({
                  content: {
                      target: $(this).attr("href"),
                      effect: $(this).attr("data-animation")
                  },
                  overlay: {
                      color: $(this).attr("data-overlayColor")
                  }
              });
              // Open
              modal.open();
          });
      },
  
      // Counterup
      Components.prototype.initCounterUp = function() {
          var delay = $(this).attr('data-delay')?$(this).attr('data-delay'):100; //default is 100
          var time = $(this).attr('data-time')?$(this).attr('data-time'):1200; //default is 1200
           $('[data-plugin="counterup"]').each(function(idx, obj) {
              $(this).counterUp({
                  delay: 100,
                  time: 1200
              });
           });
      },
  
      //peity charts
      Components.prototype.initPeityCharts = function() {
          $('[data-plugin="peity-pie"]').each(function(idx, obj) {
              var colors = $(this).attr('data-colors')?$(this).attr('data-colors').split(","):[];
              var width = $(this).attr('data-width')?$(this).attr('data-width'):20; //default is 20
              var height = $(this).attr('data-height')?$(this).attr('data-height'):20; //default is 20
              $(this).peity("pie", {
                  fill: colors,
                  width: width,
                  height: height
              });
          });
          //donut
           $('[data-plugin="peity-donut"]').each(function(idx, obj) {
              var colors = $(this).attr('data-colors')?$(this).attr('data-colors').split(","):[];
              var width = $(this).attr('data-width')?$(this).attr('data-width'):20; //default is 20
              var height = $(this).attr('data-height')?$(this).attr('data-height'):20; //default is 20
              $(this).peity("donut", {
                  fill: colors,
                  width: width,
                  height: height
              });
          });
  
          $('[data-plugin="peity-donut-alt"]').each(function(idx, obj) {
              $(this).peity("donut");
          });
  
          // line
          $('[data-plugin="peity-line"]').each(function(idx, obj) {
              $(this).peity("line", $(this).data());
          });
  
          // bar
          $('[data-plugin="peity-bar"]').each(function(idx, obj) {
              var colors = $(this).attr('data-colors')?$(this).attr('data-colors').split(","):[];
              var width = $(this).attr('data-width')?$(this).attr('data-width'):20; //default is 20
              var height = $(this).attr('data-height')?$(this).attr('data-height'):20; //default is 20
              $(this).peity("bar", {
                  fill: colors,
                  width: width,
                  height: height
              });
           });
      },
  
      Components.prototype.initKnob = function() {
          $('[data-plugin="knob"]').each(function(idx, obj) {
             $(this).knob();
          });
      },
  
      Components.prototype.initTippyTooltips = function () {
          if($('[data-plugin="tippy"]').length > 0)
          tippy('[data-plugin="tippy"]');
      },
  
      //initilizing
      Components.prototype.init = function () {
          var $this = this;
          this.initTooltipPlugin(),
          this.initPopoverPlugin(),
          this.initSlimScrollPlugin(),
          this.initFormValidation(),
          this.initCustomModalPlugin(),
          this.initCounterUp(),
          this.initPeityCharts(),
          this.initKnob();
          this.initTippyTooltips();
      },
  
      $.Components = new Components, $.Components.Constructor = Components
  
  }(window.jQuery),
  
  function($) {
      "use strict";
  
      /**
      Portlet Widget
      */
      var Portlet = function() {
          this.$body = $("body"),
          this.$portletIdentifier = ".card",
          this.$portletCloser = '.card a[data-toggle="remove"]',
          this.$portletRefresher = '.card a[data-toggle="reload"]'
      };
  
      //on init
      Portlet.prototype.init = function() {
          // Panel closest
          var $this = this;
          $(document).on("click",this.$portletCloser, function (ev) {
              ev.preventDefault();
              var $portlet = $(this).closest($this.$portletIdentifier);
                  var $portlet_parent = $portlet.parent();
              $portlet.remove();
              if ($portlet_parent.children().length == 0) {
                  $portlet_parent.remove();
              }
          });
  
          // Panel Reload
          $(document).on("click",this.$portletRefresher, function (ev) {
              ev.preventDefault();
              var $portlet = $(this).closest($this.$portletIdentifier);
              // This is just a simulation, nothing is going to be reloaded
              $portlet.append('<div class="card-disabled"><div class="card-portlets-loader"></div></div>');
              var $pd = $portlet.find('.card-disabled');
              setTimeout(function () {
                  $pd.fadeOut('fast', function () {
                      $pd.remove();
                  });
              }, 500 + 300 * (Math.random() * 5));
          });
      },
      //
      $.Portlet = new Portlet, $.Portlet.Constructor = Portlet
      
  }(window.jQuery),
  
  
  function ($) {
      "use strict";
  
      var RightSidebar = function () { 
          this.$bootstrapStylesheet = $('#bootstrap-stylesheet'),
          this.$appStylesheet = $('#app-stylesheet'),
          this.$originalBSStylesheet = $('#bootstrap-stylesheet').attr('href'),
          this.$originalAppStylesheet = $('#app-stylesheet').attr('href');
      };
  
      RightSidebar.prototype.init = function() {
          var self = this;
  
          $("#light-mode-switch").on('change', function() {
              if (this.checked) {
                  self.$bootstrapStylesheet.attr('href', self.$originalBSStylesheet);
                  self.$appStylesheet.attr('href', self.$originalAppStylesheet);
  
                  $("#dark-mode-switch").prop('checked', false);
                  $("#rtl-mode-switch").prop('checked', false);
                  $("#dark-rtl-mode-switch").prop('checked', false);
              }
          });
  
          $("#dark-mode-switch").on('change', function() {
              if (this.checked) {
                  self.$bootstrapStylesheet.attr('href', $(this).data('bsstyle'));
                  self.$appStylesheet.attr('href',  $(this).data('appstyle'));
  
                  $("#light-mode-switch").prop('checked', false);
                  $("#rtl-mode-switch").prop('checked', false);
                  $("#dark-rtl-mode-switch").prop('checked', false);
              }
          });
  
          $("#rtl-mode-switch").on('change', function() {
              if (this.checked) {
                  self.$bootstrapStylesheet.attr('href', self.$originalBSStylesheet);
                  self.$appStylesheet.attr('href',  $(this).data('appstyle'));
  
                  $("#light-mode-switch").prop('checked', false);
                  $("#dark-mode-switch").prop('checked', false);
                  $("#dark-rtl-mode-switch").prop('checked', false);
              }
          });
  
          $("#dark-rtl-mode-switch").on('change', function() {
              if (this.checked) {
                  self.$bootstrapStylesheet.attr('href', $(this).data('bsstyle'));
                  self.$appStylesheet.attr('href',  $(this).data('appstyle'));
  
                  $("#light-mode-switch").prop('checked', false);
                  $("#rtl-mode-switch").prop('checked', false);
                  $("#dark-mode-switch").prop('checked', false);
              }
          });
      },
  
      $.RightSidebar = new RightSidebar, $.RightSidebar.Constructor = RightSidebar
  
  }(window.jQuery),
  
  function ($) {
      'use strict';
  
      var App = function () {
          this.$body = $('body'),
          this.$window = $(window)
      };
  
      /**
      Resets the scroll
      */
      App.prototype._resetSidebarScroll = function () {
          // sidebar - scroll container
          $('.slimscroll-menu').slimscroll({
              height: 'auto',
              position: 'right',
              size: "8px",
              color: '#9ea5ab',
              wheelStep: 5,
              touchScrollStep: 20
          });
      },
  
      /** 
       * Initlizes the menu - top and sidebar
      */
      App.prototype.initMenu = function () {
          var $this = this;
  
          // Left menu collapse
          $('.button-menu-mobile').on('click', function (event) {
              event.preventDefault();
              $this.$body.toggleClass('sidebar-enable');
              if ($this.$window.width() >= 768) {
                  $this.$body.toggleClass('enlarged');
              } else {
                  $this.$body.removeClass('enlarged');
              }
  
              // sidebar - scroll container
              $this._resetSidebarScroll();
          });
  
          // sidebar - main menu
          $("#side-menu").metisMenu();
  
          // sidebar - scroll container
          $this._resetSidebarScroll();
  
          // right side-bar toggle
          $('.right-bar-toggle').on('click', function (e) {
              $('body').toggleClass('right-bar-enabled');
          });
  
          $(document).on('click', 'body', function (e) {
              if ($(e.target).closest('.right-bar-toggle, .right-bar').length > 0) {
                  return;
              }
  
              if ($(e.target).closest('.left-side-menu, .side-nav').length > 0 || $(e.target).hasClass('button-menu-mobile')
                  || $(e.target).closest('.button-menu-mobile').length > 0) {
                  return;
              }
  
              $('body').removeClass('right-bar-enabled');
              $('body').removeClass('sidebar-enable');
              return;
          });
  
          // activate the menu in left side bar based on url
          $("#side-menu a").each(function () {
              var pageUrl = window.location.href.split(/[?#]/)[0];
              if (this.href == pageUrl) {
                  $(this).addClass("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("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");
              }
          });
  
          $(".navigation-menu a").each(function () {
              var pageUrl = window.location.href.split(/[?#]/)[0];
              if (this.href == pageUrl) {  
                  $(this).addClass("active");
                  $(this).parent().addClass("active"); // add active to li of the current link
                  $(this).parent().parent().addClass("in");
                  $(this).parent().parent().prev().addClass("active"); // add active class to an anchor
                  $(this).parent().parent().parent().addClass("active");
                  $(this).parent().parent().parent().parent().addClass("in"); // add active to li of the current link
                  $(this).parent().parent().parent().parent().parent().addClass("active");
              }
          });
  
          // Topbar - main menu
          $('.navbar-toggle').on('click', function (event) {
              $(this).toggleClass('open');
              $('#navigation').slideToggle(400);
          });
  
          $('.navigation-menu>li').slice(-2).addClass('last-elements');
  
          $('.navigation-menu li.has-submenu a[href="#"]').on('click', function (e) {
              if ($(window).width() < 992) {
                  e.preventDefault();
                  $(this).parent('li').toggleClass('open').find('.submenu:first').toggleClass('open');
              }
          });
  
          // Preloader
          $(window).on('load', function () {
              $('#status').fadeOut();
              $('#preloader').delay(350).fadeOut('slow');
          });
      },
  
      /** 
       * Init the layout - with broad sidebar or compact side bar
      */
      App.prototype.initLayout = function () {
          // in case of small size, add class enlarge to have minimal menu
          if (this.$window.width() >= 768 && this.$window.width() <= 1028) {
              this.$body.addClass('enlarged');
          } else {
              if (this.$body.data('keep-enlarged') != true) {
                  this.$body.removeClass('enlarged');
              }
          }
      },
  
      //initilizing
      App.prototype.init = function () {
          var $this = this;
          this.initLayout();
          $.Portlet.init();
          this.initMenu();
          $.Components.init();
  
          // right sidebar
          $.RightSidebar.init();
  
          // on window resize, make menu flipped automatically
          $this.$window.on('resize', function (e) {
              e.preventDefault();
              $this.initLayout();
              $this._resetSidebarScroll();
          });
      },
  
      $.App = new App, $.App.Constructor = App
  
  
  }(window.jQuery),
  //initializing main application module
  function ($) {
      "use strict";
      $.App.init();
  }(window.jQuery);
  
  // Waves Effect
  Waves.init();