You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
338 lines
10 KiB
JavaScript
338 lines
10 KiB
JavaScript
/*Sets Themed Colors Based on Themes*/
|
|
|
|
var themeprimary = getThemeColorFromCss('themeprimary');
|
|
var themesecondary = getThemeColorFromCss('themesecondary');
|
|
var themethirdcolor = getThemeColorFromCss('themethirdcolor');
|
|
var themefourthcolor = getThemeColorFromCss('themefourthcolor');
|
|
var themefifthcolor = getThemeColorFromCss('themefifthcolor');
|
|
|
|
//Gets Theme Colors From Selected Skin To Use For Drawing Charts
|
|
function getThemeColorFromCss(style) {
|
|
var $span = $("<span></span>").hide().appendTo("body");
|
|
$span.addClass(style);
|
|
var color = $span.css("color");
|
|
$span.remove();
|
|
return color;
|
|
}
|
|
|
|
|
|
/*Loading*/
|
|
$(window)
|
|
.load(function () {
|
|
setTimeout(function () {
|
|
$('.loading-container')
|
|
.addClass('loading-inactive');
|
|
}, 1000);
|
|
});
|
|
|
|
|
|
/*Account Area --> Setting Button*/
|
|
$('#btn-setting')
|
|
.on('click', function (e) {
|
|
$('.navbar-account')
|
|
.toggleClass('setting-open');
|
|
});
|
|
|
|
/*Toggle FullScreen*/
|
|
$('#fullscreen-toggler')
|
|
.on('click', function (e) {
|
|
var element = document.documentElement;
|
|
if (!$('body')
|
|
.hasClass("full-screen")) {
|
|
|
|
$('body')
|
|
.addClass("full-screen");
|
|
$('#fullscreen-toggler')
|
|
.addClass("active");
|
|
if (element.requestFullscreen) {
|
|
element.requestFullscreen();
|
|
} else if (element.mozRequestFullScreen) {
|
|
element.mozRequestFullScreen();
|
|
} else if (element.webkitRequestFullscreen) {
|
|
element.webkitRequestFullscreen();
|
|
} else if (element.msRequestFullscreen) {
|
|
element.msRequestFullscreen();
|
|
}
|
|
|
|
} else {
|
|
|
|
$('body')
|
|
.removeClass("full-screen");
|
|
$('#fullscreen-toggler')
|
|
.removeClass("active");
|
|
|
|
if (document.exitFullscreen) {
|
|
document.exitFullscreen();
|
|
} else if (document.mozCancelFullScreen) {
|
|
document.mozCancelFullScreen();
|
|
} else if (document.webkitExitFullscreen) {
|
|
document.webkitExitFullscreen();
|
|
}
|
|
|
|
}
|
|
});
|
|
|
|
/*Handles Popovers*/
|
|
var popovers = $('[data-toggle=popover]');
|
|
$.each(popovers, function () {
|
|
$(this)
|
|
.popover({
|
|
html: true,
|
|
template: '<div class="popover ' + $(this)
|
|
.data("class") +
|
|
'"><div class="arrow"></div><h3 class="popover-title ' +
|
|
$(this)
|
|
.data("titleclass") + '">Popover right</h3><div class="popover-content"></div></div>'
|
|
});
|
|
});
|
|
|
|
var hoverpopovers = $('[data-toggle=popover-hover]');
|
|
$.each(hoverpopovers, function () {
|
|
$(this)
|
|
.popover({
|
|
html: true,
|
|
template: '<div class="popover ' + $(this)
|
|
.data("class") +
|
|
'"><div class="arrow"></div><h3 class="popover-title ' +
|
|
$(this)
|
|
.data("titleclass") + '">Popover right</h3><div class="popover-content"></div></div>',
|
|
trigger: "hover"
|
|
});
|
|
});
|
|
|
|
|
|
/*Handles ToolTips*/
|
|
$("[data-toggle=tooltip]")
|
|
.tooltip({
|
|
html: true
|
|
});
|
|
|
|
InitiateSideMenu();
|
|
InitiateWidgets();
|
|
|
|
function InitiateSideMenu() {
|
|
|
|
//Sidebar Toggler
|
|
$(".sidebar-toggler").on('click', function () {
|
|
$("#sidebar").toggleClass("hide");
|
|
$(".sidebar-toggler").toggleClass("active");
|
|
return false;
|
|
});
|
|
//End Sidebar Toggler
|
|
|
|
//Sidebar Collapse
|
|
var b = $("#sidebar").hasClass("menu-compact");
|
|
$("#sidebar-collapse").on('click', function () {
|
|
if (!$('#sidebar').is(':visible'))
|
|
$("#sidebar").toggleClass("hide");
|
|
$("#sidebar").toggleClass("menu-compact");
|
|
$(".sidebar-collapse").toggleClass("active");
|
|
b = $("#sidebar").hasClass("menu-compact");
|
|
|
|
if ($(".sidebar-menu").closest("div").hasClass("slimScrollDiv")) {
|
|
$(".sidebar-menu").slimScroll({ destroy: true });
|
|
$(".sidebar-menu").attr('style', '');
|
|
}
|
|
if (b) {
|
|
$(".open > .submenu")
|
|
.removeClass("open");
|
|
} else {
|
|
if ($('.page-sidebar').hasClass('sidebar-fixed')) {
|
|
var position = (readCookie("rtl-support") || location.pathname == "/index-rtl-fa.html" || location.pathname == "/index-rtl-ar.html") ? 'right' : 'left';
|
|
$('.sidebar-menu').slimscroll({
|
|
height: 'auto',
|
|
position: position,
|
|
size: '3px',
|
|
color: themeprimary
|
|
});
|
|
}
|
|
}
|
|
//Slim Scroll Handle
|
|
|
|
|
|
|
|
});
|
|
//End Sidebar Collapse
|
|
|
|
|
|
//Sidebar Menu Handle
|
|
$(".sidebar-menu").on('click', function (e) {
|
|
var menuLink = $(e.target).closest("a");
|
|
if (!menuLink || menuLink.length == 0)
|
|
return;
|
|
if (!menuLink.hasClass("menu-dropdown")) {
|
|
if (b && menuLink.get(0).parentNode.parentNode == this) {
|
|
var menuText = menuLink.find(".menu-text").get(0);
|
|
if (e.target != menuText && !$.contains(menuText, e.target)) {
|
|
return false;
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
var submenu = menuLink.next().get(0);
|
|
if (!$(submenu).is(":visible")) {
|
|
var c = $(submenu.parentNode).closest("ul");
|
|
if (b && c.hasClass("sidebar-menu"))
|
|
return;
|
|
c.find("> .open > .submenu")
|
|
.each(function () {
|
|
if (this != submenu && !$(this.parentNode).hasClass("active"))
|
|
$(this).slideUp(200).parent().removeClass("open");
|
|
});
|
|
}
|
|
if (b && $(submenu.parentNode.parentNode).hasClass("sidebar-menu"))
|
|
return false;
|
|
$(submenu).slideToggle(200).parent().toggleClass("open");
|
|
return false;
|
|
});
|
|
//End Sidebar Menu Handle
|
|
}
|
|
|
|
function InitiateWidgets() {
|
|
$('.widget-buttons *[data-toggle="maximize"]').on("click", function (event) {
|
|
event.preventDefault();
|
|
var widget = $(this).parents(".widget").eq(0);
|
|
var button = $(this).find("i").eq(0);
|
|
var compress = "fa-compress";
|
|
var expand = "fa-expand";
|
|
if (widget.hasClass("maximized")) {
|
|
if (button) {
|
|
button.addClass(expand).removeClass(compress);
|
|
}
|
|
widget.removeClass("maximized");
|
|
widget.find(".widget-body").css("height", "auto");
|
|
} else {
|
|
if (button) {
|
|
button.addClass(compress).removeClass(expand);
|
|
}
|
|
widget.addClass("maximized");
|
|
maximize(widget);
|
|
}
|
|
});
|
|
|
|
$('.widget-buttons *[data-toggle="collapse"]').on("click", function (event) {
|
|
event.preventDefault();
|
|
var widget = $(this).parents(".widget").eq(0);
|
|
var body = widget.find(".widget-body");
|
|
var button = $(this).find("i");
|
|
var down = "fa-plus";
|
|
var up = "fa-minus";
|
|
var slidedowninterval = 300;
|
|
var slideupinterval = 200;
|
|
if (widget.hasClass("collapsed")) {
|
|
if (button) {
|
|
button.addClass(up).removeClass(down);
|
|
}
|
|
widget.removeClass("collapsed");
|
|
body.slideUp(0, function () {
|
|
body.slideDown(slidedowninterval);
|
|
});
|
|
} else {
|
|
if (button) {
|
|
button.addClass(down)
|
|
.removeClass(up);
|
|
}
|
|
body.slideUp(slideupinterval, function () {
|
|
widget.addClass("collapsed");
|
|
});
|
|
}
|
|
});
|
|
|
|
$('.widget-buttons *[data-toggle="dispose"]').on("click", function (event) {
|
|
event.preventDefault();
|
|
var toolbarLink = $(this);
|
|
var widget = toolbarLink.parents(".widget").eq(0);
|
|
var disposeinterval = 300;
|
|
widget.hide(disposeinterval, function () {
|
|
widget.remove();
|
|
});
|
|
});
|
|
}
|
|
|
|
// Fullscreen Widget
|
|
function maximize(widgetbox) {
|
|
if (widgetbox) {
|
|
var windowHeight = $(window).height();
|
|
var headerHeight = widgetbox.find(".widget-header").height();
|
|
widgetbox.find(".widget-body").height(windowHeight - headerHeight);
|
|
}
|
|
}
|
|
|
|
/* Scroll To */
|
|
function scrollTo(el, offeset) {
|
|
var pos = (el && el.size() > 0) ? el.offset().top : 0;
|
|
jQuery('html,body').animate({ scrollTop: pos + (offeset ? offeset : 0) }, 'slow');
|
|
}
|
|
|
|
/*Show Notification*/
|
|
function Notify(message, position, timeout, theme, icon, closable) {
|
|
toastr.options.positionClass = 'toast-' + position;
|
|
toastr.options.extendedTimeOut = 0; //1000;
|
|
toastr.options.timeOut = timeout;
|
|
toastr.options.closeButton = closable;
|
|
toastr.options.iconClass = icon + ' toast-' + theme;
|
|
toastr['custom'](message);
|
|
}
|
|
|
|
|
|
|
|
//Switch Classes Function
|
|
function switchClasses(firstClass, secondClass) {
|
|
|
|
var firstclasses = document.getElementsByClassName(firstClass);
|
|
|
|
for (i = firstclasses.length - 1; i >= 0; i--) {
|
|
if (!hasClass(firstclasses[i], 'dropdown-menu')) {
|
|
addClass(firstclasses[i], firstClass + '-temp');
|
|
removeClass(firstclasses[i], firstClass);
|
|
}
|
|
}
|
|
|
|
var secondclasses = document.getElementsByClassName(secondClass);
|
|
|
|
for (i = secondclasses.length - 1; i >= 0; i--) {
|
|
if (!hasClass(secondclasses[i], 'dropdown-menu')) {
|
|
addClass(secondclasses[i], firstClass);
|
|
removeClass(secondclasses[i], secondClass);
|
|
}
|
|
}
|
|
|
|
tempClasses = document.getElementsByClassName(firstClass + '-temp');
|
|
|
|
for (i = tempClasses.length - 1; i >= 0; i--) {
|
|
if (!hasClass(tempClasses[i], 'dropdown-menu')) {
|
|
addClass(tempClasses[i], secondClass);
|
|
removeClass(tempClasses[i], firstClass + '-temp');
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
//Add Classes Function
|
|
function addClass(elem, cls) {
|
|
var oldCls = elem.className;
|
|
if (oldCls) {
|
|
oldCls += " ";
|
|
}
|
|
elem.className = oldCls + cls;
|
|
}
|
|
|
|
//Remove Classes Function
|
|
function removeClass(elem, cls) {
|
|
var str = " " + elem.className + " ";
|
|
elem.className = str.replace(" " + cls, "").replace(/^\s+/g, "").replace(/\s+$/g, "");
|
|
}
|
|
|
|
//Has Classes Function
|
|
function hasClass(elem, cls) {
|
|
var str = " " + elem.className + " ";
|
|
var testCls = " " + cls + " ";
|
|
return (str.indexOf(testCls) != -1);
|
|
}
|
|
|
|
function warning(info, url){
|
|
if(window.confirm(info)){
|
|
window.location.href = url;
|
|
}
|
|
}
|