PHP Classes

File: src/resources/assets/js/material-dashboard.js

Recommend this page to a friend!
  Classes of Roman Kozin   Laravel Material Dashboard Pro   src/resources/assets/js/material-dashboard.js   Download  
File: src/resources/assets/js/material-dashboard.js
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: Laravel Material Dashboard Pro
Integrate the Material Dashboard Pro in Laravel
Author: By
Last change:
Date: 3 days ago
Size: 12,381 bytes
 

Contents

Class file image Download
/*! ========================================================= * Material Dashboard PRO - v2.2.2 ========================================================= * Product Page: https://www.creative-tim.com/product/material-dashboard-pro * Copyright 2020 Creative Tim (http://www.creative-tim.com) * Designed by www.invisionapp.com Coded by www.creative-tim.com ========================================================= * The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. */ var isWindows = navigator.platform.indexOf('Win') > -1 ? true : false; if (isWindows) { // if we are on windows OS we activate the perfectScrollbar function if ($(".main-panel").length != 0) { var mainpanel = document.querySelector('.main-panel'); var ps = new PerfectScrollbar(mainpanel); } if ($(".sidebar").length != 0) { var sidebar = document.querySelector('.sidebar'); var ps1 = new PerfectScrollbar(sidebar); } if ($(".sidebar-wrapper").length != 0) { var sidebarwrapper = document.querySelector('.sidebar-wrapper'); var ps2 = new PerfectScrollbar(sidebarwrapper); } if ($(".dropdown-menu").length != 0) { var dropdownmenu = document.querySelector('.dropdown-menu'); var ps3 = new PerfectScrollbar(dropdownmenu); } if ($(".page-header").length != 0) { var pageheader = document.querySelector('.page-header'); var ps4 = new PerfectScrollbar(pageheader); } $('html').addClass('perfect-scrollbar-on'); } else { $('html').addClass('perfect-scrollbar-off'); } var breakCards = true; var searchVisible = 0; var transparent = true; var transparentDemo = true; var fixedTop = false; var mobile_menu_visible = 0, mobile_menu_initialized = false, toggle_initialized = false, bootstrap_nav_initialized = false; var seq = 0, delays = 80, durations = 500; var seq2 = 0, delays2 = 80, durations2 = 500; $(document).ready(function () { $sidebar = $('.sidebar'); window_width = $(window).width(); $('body').bootstrapMaterialDesign({ autofill: false }); md.initSidebarsCheck(); window_width = $(window).width(); // check if there is an image set for the sidebar's background md.checkSidebarImage(); md.initMinimizeSidebar(); // Multilevel Dropdown menu $('.dropdown-menu a.dropdown-toggle').on('click', function (e) { var $el = $(this); var $parent = $(this).offsetParent(".dropdown-menu"); if (!$(this).next().hasClass('show')) { $(this).parents('.dropdown-menu').first().find('.show').removeClass("show"); } var $subMenu = $(this).next(".dropdown-menu"); $subMenu.toggleClass('show'); $(this).closest("a").toggleClass('open'); $(this).parents('a.dropdown-item.dropdown.show').on('hidden.bs.dropdown', function (e) { $('.dropdown-menu .show').removeClass("show"); }); if (!$parent.parent().hasClass('navbar-nav')) { $el.next().css({ "top": $el[0].offsetTop, "left": $parent.outerWidth() - 4 }); } return false; }); // hide the siblings opened collapse var $collapse = $('.collapse'); $collapse.on('show.bs.collapse', function () { $(this).parent().siblings().children('.collapse').each(function () { $(this).collapse('hide'); }); }); // Activate bootstrap-select if ($(".selectpicker").length != 0) { $(".selectpicker").selectpicker(); } // Activate the tooltips $('[rel="tooltip"]').tooltip(); // Activate Popovers $('[data-toggle="popover"]').popover(); //Activate tags // we style the badges with our colors var tagClass = $('.tagsinput').data('color'); if ($(".tagsinput").length != 0) { $('.tagsinput').tagsinput(); } $('.bootstrap-tagsinput').addClass('' + tagClass + '-badge'); // Activate bootstrap-select $(".select").dropdown({ "dropdownClass": "dropdown-menu", "optionClass": "" }); $('.form-control').on("focus", function () { $(this).parent('.input-group').addClass("input-group-focus"); }).on("blur", function () { $(this).parent(".input-group").removeClass("input-group-focus"); }); if (breakCards == true) { // We break the cards headers if there is too much stress on them :-) $('[data-header-animation="true"]').each(function () { var $fix_button = $(this) var $card = $(this).parent('.card'); $card.find('.fix-broken-card').click(function () { console.log(this); var $header = $(this).parent().parent().siblings('.card-header, .card-header-image'); $header.removeClass('hinge').addClass('fadeInDown'); $card.attr('data-count', 0); setTimeout(function () { $header.removeClass('fadeInDown animate'); }, 480); }); $card.mouseenter(function () { var $this = $(this); hover_count = parseInt($this.attr('data-count'), 10) + 1 || 0; $this.attr("data-count", hover_count); if (hover_count >= 20) { $(this).children('.card-header, .card-header-image').addClass('hinge animated'); } }); }); } // remove class has-error for checkbox validation $('input[type="checkbox"][required="true"], input[type="radio"][required="true"]').on('click', function () { if ($(this).hasClass('error')) { $(this).closest('div').removeClass('has-error'); } }); }); $(document).on('click', '.navbar-toggler', function () { $toggle = $(this); if (mobile_menu_visible == 1) { $('html').removeClass('nav-open'); $('.close-layer').remove(); setTimeout(function () { $toggle.removeClass('toggled'); }, 400); mobile_menu_visible = 0; } else { setTimeout(function () { $toggle.addClass('toggled'); }, 430); var $layer = $('<div class="close-layer"></div>'); if ($('body').find('.main-panel').length != 0) { $layer.appendTo(".main-panel"); } else if (($('body').hasClass('off-canvas-sidebar'))) { $layer.appendTo(".wrapper-full-page"); } setTimeout(function () { $layer.addClass('visible'); }, 100); $layer.click(function () { $('html').removeClass('nav-open'); mobile_menu_visible = 0; $layer.removeClass('visible'); setTimeout(function () { $layer.remove(); $toggle.removeClass('toggled'); }, 400); }); $('html').addClass('nav-open'); mobile_menu_visible = 1; } }); // activate collapse right menu when the windows is resized $(window).resize(function () { md.initSidebarsCheck(); // reset the seq for charts drawing animations seq = seq2 = 0; }); md = { misc: { navbar_menu_visible: 0, active_collapse: true, disabled_collapse_init: 0, }, checkSidebarImage: function () { $sidebar = $('.sidebar'); image_src = $sidebar.data('image'); if (image_src !== undefined) { $('.sidebar-background').css("background-image", "url(" + image_src + ")"); } }, showNotification: function (from, align) { type = ['', 'info', 'danger', 'success', 'warning', 'rose', 'primary']; color = Math.floor((Math.random() * 6) + 1); $.notify({ icon: "add_alert", message: "Welcome to <b>Material Dashboard Pro</b> - a beautiful admin panel for every web developer." }, { type: type[color], timer: 3000, placement: { from: from, align: align } }); }, initSidebarsCheck: function () { if ($(window).width() <= 991) { if ($sidebar.length !== 0) { md.initRightMenu(); } } }, checkFullPageBackgroundImage: function () { $page = $('.full-page'); image_src = $page.data('image'); if (image_src !== undefined) { image_container = '<div class="full-page-background" style="background-image: url(' + image_src + ') "/>' $page.append(image_container); } }, initMinimizeSidebar: function () { $('#minimizeSidebar').click(function () { var $btn = $(this); if (md.misc.sidebar_mini_active == true) { $('body').removeClass('sidebar-mini'); md.misc.sidebar_mini_active = false; } else { $('body').addClass('sidebar-mini'); md.misc.sidebar_mini_active = true; } // we simulate the window Resize so the charts will get updated in realtime. var simulateWindowResize = setInterval(function () { window.dispatchEvent(new Event('resize')); }, 180); // we stop the simulation of Window Resize after the animations are completed setTimeout(function () { clearInterval(simulateWindowResize); }, 1000); }); }, checkScrollForTransparentNavbar: debounce(function () { if ($(document).scrollTop() > 260) { if (transparent) { transparent = false; $('.navbar-color-on-scroll').removeClass('navbar-transparent'); } } else { if (!transparent) { transparent = true; $('.navbar-color-on-scroll').addClass('navbar-transparent'); } } }, 17), initRightMenu: debounce(function () { $sidebar_wrapper = $('.sidebar-wrapper'); if (!mobile_menu_initialized) { $navbar = $('nav').find('.navbar-collapse').children('.navbar-nav'); mobile_menu_content = ''; nav_content = $navbar.html(); nav_content = '<ul class="nav navbar-nav nav-mobile-menu">' + nav_content + '</ul>'; let navbar_form = $('nav').find('.navbar-form'); if (navbar_form.get(0) !== "undefined") { navbar_form = $('nav').find('.navbar-form').get(0).outerHTML; } $sidebar_nav = $sidebar_wrapper.find(' > .nav'); // insert the navbar form before the sidebar list $nav_content = $(nav_content); $navbar_form = $(navbar_form); $nav_content.insertBefore($sidebar_nav); $navbar_form.insertBefore($nav_content); $(".sidebar-wrapper .dropdown .dropdown-menu > li > a").click(function (event) { event.stopPropagation(); }); // simulate resize so all the charts/maps will be redrawn window.dispatchEvent(new Event('resize')); mobile_menu_initialized = true; } else { if ($(window).width() > 991) { // reset all the additions that we made for the sidebar wrapper only if the screen is bigger than 991px $sidebar_wrapper.find('.navbar-form').remove(); $sidebar_wrapper.find('.nav-mobile-menu').remove(); mobile_menu_initialized = false; } } }, 200), }; // Returns a function, that, as long as it continues to be invoked, will not // be triggered. The function will be called after it stops being called for // N milliseconds. If `immediate` is passed, trigger the function on the // leading edge, instead of the trailing. function debounce(func, wait, immediate) { var timeout; return function () { var context = this, args = arguments; clearTimeout(timeout); timeout = setTimeout(function () { timeout = null; if (!immediate) func.apply(context, args); }, wait); if (immediate && !timeout) func.apply(context, args); }; }