/*! ========================================================= * Argon Dashboard - v1.2.0 ========================================================= * Product Page: https://www.creative-tim.com/product/argon-dashboard * Copyright 2020 Creative Tim (https://www.creative-tim.com) * Licensed under MIT (https://github.com/creativetimofficial/argon-dashboard/blob/master/LICENSE.md) * 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. */ // // Layout // 'use strict'; var Layout = (function() { function pinSidenav() { $('.sidenav-toggler').addClass('active'); $('.sidenav-toggler').data('action', 'sidenav-unpin'); $('body').removeClass('g-sidenav-hidden').addClass('g-sidenav-show g-sidenav-pinned'); $('body').append('
'); // Store the sidenav state in a cookie session Cookies.set('sidenav-state', 'pinned'); } function unpinSidenav() { $('.sidenav-toggler').removeClass('active'); $('.sidenav-toggler').data('action', 'sidenav-pin'); $('body').removeClass('g-sidenav-pinned').addClass('g-sidenav-hidden'); $('body').find('.backdrop').remove(); // Store the sidenav state in a cookie session Cookies.set('sidenav-state', 'unpinned'); } // Set sidenav state from cookie var $sidenavState = Cookies.get('sidenav-state') ? Cookies.get('sidenav-state') : 'pinned'; if($(window).width() > 1200) { if($sidenavState == 'pinned') { pinSidenav() } if(Cookies.get('sidenav-state') == 'unpinned') { unpinSidenav() } $(window).resize(function() { if( $('body').hasClass('g-sidenav-show') && !$('body').hasClass('g-sidenav-pinned')) { $('body').removeClass('g-sidenav-show').addClass('g-sidenav-hidden'); } }) } if($(window).width() < 1200){ $('body').removeClass('g-sidenav-hide').addClass('g-sidenav-hidden'); $('body').removeClass('g-sidenav-show'); $(window).resize(function() { if( $('body').hasClass('g-sidenav-show') && !$('body').hasClass('g-sidenav-pinned')) { $('body').removeClass('g-sidenav-show').addClass('g-sidenav-hidden'); } }) } $("body").on("click", "[data-action]", function(e) { e.preventDefault(); var $this = $(this); var action = $this.data('action'); var target = $this.data('target'); // Manage actions switch (action) { case 'sidenav-pin': pinSidenav(); break; case 'sidenav-unpin': unpinSidenav(); break; case 'search-show': target = $this.data('target'); $('body').removeClass('g-navbar-search-show').addClass('g-navbar-search-showing'); setTimeout(function() { $('body').removeClass('g-navbar-search-showing').addClass('g-navbar-search-show'); }, 150); setTimeout(function() { $('body').addClass('g-navbar-search-shown'); }, 300) break; case 'search-close': target = $this.data('target'); $('body').removeClass('g-navbar-search-shown'); setTimeout(function() { $('body').removeClass('g-navbar-search-show').addClass('g-navbar-search-hiding'); }, 150); setTimeout(function() { $('body').removeClass('g-navbar-search-hiding').addClass('g-navbar-search-hidden'); }, 300); setTimeout(function() { $('body').removeClass('g-navbar-search-hidden'); }, 500); break; } }) // Add sidenav modifier classes on mouse events $('.sidenav').on('mouseenter', function() { if(! $('body').hasClass('g-sidenav-pinned')) { $('body').removeClass('g-sidenav-hide').removeClass('g-sidenav-hidden').addClass('g-sidenav-show'); } }) $('.sidenav').on('mouseleave', function() { if(! $('body').hasClass('g-sidenav-pinned')) { $('body').removeClass('g-sidenav-show').addClass('g-sidenav-hide'); setTimeout(function() { $('body').removeClass('g-sidenav-hide').addClass('g-sidenav-hidden'); }, 300); } }) // Make the body full screen size if it has not enough content inside $(window).on('load resize', function() { if($('body').height() < 800) { $('body').css('min-height', '100vh'); $('#footer-main').addClass('footer-auto-bottom') } }) })(); // // Charts // 'use strict'; var Charts = (function() { // Variable var $toggle = $('[data-toggle="chart"]'); var mode = 'light';//(themeMode) ? themeMode : 'light'; var fonts = { base: 'Open Sans' } // Colors var colors = { gray: { 100: '#f6f9fc', 200: '#e9ecef', 300: '#dee2e6', 400: '#ced4da', 500: '#adb5bd', 600: '#8898aa', 700: '#525f7f', 800: '#32325d', 900: '#212529' }, theme: { 'default': '#172b4d', 'primary': '#5e72e4', 'secondary': '#f4f5f7', 'info': '#11cdef', 'success': '#2dce89', 'danger': '#f5365c', 'warning': '#fb6340' }, black: '#12263F', white: '#FFFFFF', transparent: 'transparent', }; // Methods // Chart.js global options function chartOptions() { // Options var options = { defaults: { global: { responsive: true, maintainAspectRatio: false, defaultColor: (mode == 'dark') ? colors.gray[700] : colors.gray[600], defaultFontColor: (mode == 'dark') ? colors.gray[700] : colors.gray[600], defaultFontFamily: fonts.base, defaultFontSize: 13, layout: { padding: 0 }, legend: { display: false, position: 'bottom', labels: { usePointStyle: true, padding: 16 } }, elements: { point: { radius: 0, backgroundColor: colors.theme['primary'] }, line: { tension: .4, borderWidth: 4, borderColor: colors.theme['primary'], backgroundColor: colors.transparent, borderCapStyle: 'rounded' }, rectangle: { backgroundColor: colors.theme['warning'] }, arc: { backgroundColor: colors.theme['primary'], borderColor: (mode == 'dark') ? colors.gray[800] : colors.white, borderWidth: 4 } }, tooltips: { enabled: true, mode: 'index', intersect: false, } }, doughnut: { cutoutPercentage: 83, legendCallback: function(chart) { var data = chart.data; var content = ''; data.labels.forEach(function(label, index) { var bgColor = data.datasets[0].backgroundColor[index]; content += ''; content += ''; content += label; content += ''; }); return content; } } } } // yAxes Chart.scaleService.updateScaleDefaults('linear', { gridLines: { borderDash: [2], borderDashOffset: [2], color: (mode == 'dark') ? colors.gray[900] : colors.gray[300], drawBorder: false, drawTicks: false, drawOnChartArea: true, zeroLineWidth: 0, zeroLineColor: 'rgba(0,0,0,0)', zeroLineBorderDash: [2], zeroLineBorderDashOffset: [2] }, ticks: { beginAtZero: true, padding: 10, callback: function(value) { if (!(value % 10)) { return value } } } }); // xAxes Chart.scaleService.updateScaleDefaults('category', { gridLines: { drawBorder: false, drawOnChartArea: false, drawTicks: false }, ticks: { padding: 20 }, maxBarThickness: 10 }); return options; } // Parse global options function parseOptions(parent, options) { for (var item in options) { if (typeof options[item] !== 'object') { parent[item] = options[item]; } else { parseOptions(parent[item], options[item]); } } } // Push options function pushOptions(parent, options) { for (var item in options) { if (Array.isArray(options[item])) { options[item].forEach(function(data) { parent[item].push(data); }); } else { pushOptions(parent[item], options[item]); } } } // Pop options function popOptions(parent, options) { for (var item in options) { if (Array.isArray(options[item])) { options[item].forEach(function(data) { parent[item].pop(); }); } else { popOptions(parent[item], options[item]); } } } // Toggle options function toggleOptions(elem) { var options = elem.data('add'); var $target = $(elem.data('target')); var $chart = $target.data('chart'); if (elem.is(':checked')) { // Add options pushOptions($chart, options); // Update chart $chart.update(); } else { // Remove options popOptions($chart, options); // Update chart $chart.update(); } } // Update options function updateOptions(elem) { var options = elem.data('update'); var $target = $(elem.data('target')); var $chart = $target.data('chart'); // Parse options parseOptions($chart, options); // Toggle ticks toggleTicks(elem, $chart); // Update chart $chart.update(); } // Toggle ticks function toggleTicks(elem, $chart) { if (elem.data('prefix') !== undefined || elem.data('prefix') !== undefined) { var prefix = elem.data('prefix') ? elem.data('prefix') : ''; var suffix = elem.data('suffix') ? elem.data('suffix') : ''; // Update ticks $chart.options.scales.yAxes[0].ticks.callback = function(value) { if (!(value % 10)) { return prefix + value + suffix; } } // Update tooltips $chart.options.tooltips.callbacks.label = function(item, data) { var label = data.datasets[item.datasetIndex].label || ''; var yLabel = item.yLabel; var content = ''; if (data.datasets.length > 1) { content += '' + label + ''; } content += '' + prefix + yLabel + suffix + ''; return content; } } } // Events // Parse global options if (window.Chart) { parseOptions(Chart, chartOptions()); } // Toggle options $toggle.on({ 'change': function() { var $this = $(this); if ($this.is('[data-add]')) { toggleOptions($this); } }, 'click': function() { var $this = $(this); if ($this.is('[data-update]')) { updateOptions($this); } } }); // Return return { colors: colors, fonts: fonts, mode: mode }; })(); // // Icon code copy/paste // 'use strict'; var CopyIcon = (function() { // Variables var $element = '.btn-icon-clipboard', $btn = $($element); // Methods function init($this) { $this.tooltip().on('mouseleave', function() { // Explicitly hide tooltip, since after clicking it remains // focused (as it's a button), so tooltip would otherwise // remain visible until focus is moved away $this.tooltip('hide'); }); var clipboard = new ClipboardJS($element); clipboard.on('success', function(e) { $(e.trigger) .attr('title', 'Copied!') .tooltip('_fixTitle') .tooltip('show') .attr('title', 'Copy to clipboard') .tooltip('_fixTitle') e.clearSelection() }); } // Events if ($btn.length) { init($btn); } })(); // // Navbar // 'use strict'; var Navbar = (function() { // Variables var $nav = $('.navbar-nav, .navbar-nav .nav'); var $collapse = $('.navbar .collapse'); var $dropdown = $('.navbar .dropdown'); // Methods function accordion($this) { $this.closest($nav).find($collapse).not($this).collapse('hide'); } function closeDropdown($this) { var $dropdownMenu = $this.find('.dropdown-menu'); $dropdownMenu.addClass('close'); setTimeout(function() { $dropdownMenu.removeClass('close'); }, 200); } // Events $collapse.on({ 'show.bs.collapse': function() { accordion($(this)); } }) $dropdown.on({ 'hide.bs.dropdown': function() { closeDropdown($(this)); } }) })(); // // Navbar collapse // var NavbarCollapse = (function() { // Variables var $nav = $('.navbar-nav'), $collapse = $('.navbar .navbar-custom-collapse'); // Methods function hideNavbarCollapse($this) { $this.addClass('collapsing-out'); } function hiddenNavbarCollapse($this) { $this.removeClass('collapsing-out'); } // Events if ($collapse.length) { $collapse.on({ 'hide.bs.collapse': function() { hideNavbarCollapse($collapse); } }) $collapse.on({ 'hidden.bs.collapse': function() { hiddenNavbarCollapse($collapse); } }) } var navbar_menu_visible = 0; $( ".sidenav-toggler" ).click(function() { if(navbar_menu_visible == 1){ $('body').removeClass('nav-open'); navbar_menu_visible = 0; $('.bodyClick').remove(); } else { var div = ''; $(div).appendTo('body').click(function() { $('body').removeClass('nav-open'); navbar_menu_visible = 0; $('.bodyClick').remove(); }); $('body').addClass('nav-open'); navbar_menu_visible = 1; } }); })(); // // Popover // 'use strict'; var Popover = (function() { // Variables var $popover = $('[data-toggle="popover"]'), $popoverClass = ''; // Methods function init($this) { if ($this.data('color')) { $popoverClass = 'popover-' + $this.data('color'); } var options = { trigger: 'focus', template: '