/**
Demo script to handle the theme demo
**/
var Demo = function() {
// Handle Theme Settings
var handleTheme = function() {
var panel = $('.theme-panel');
if ($('body').hasClass('page-boxed') === false) {
$('.layout-option', panel).val("fluid");
}
$('.sidebar-option', panel).val("default");
$('.page-header-option', panel).val("fixed");
$('.page-footer-option', panel).val("default");
if ($('.sidebar-pos-option').attr("disabled") === false) {
$('.sidebar-pos-option', panel).val(Metronic.isRTL() ? 'right' : 'left');
}
//handle theme layout
var resetLayout = function() {
$("body").
removeClass("page-boxed").
removeClass("page-footer-fixed").
removeClass("page-sidebar-fixed").
removeClass("page-header-fixed").
removeClass("page-sidebar-reversed");
$('.page-header > .page-header-inner').removeClass("container");
if ($('.page-container').parent(".container").size() === 1) {
$('.page-container').insertAfter('body > .clearfix');
}
if ($('.page-footer > .container').size() === 1) {
$('.page-footer').html($('.page-footer > .container').html());
} else if ($('.page-footer').parent(".container").size() === 1) {
$('.page-footer').insertAfter('.page-container');
$('.scroll-to-top').insertAfter('.page-footer');
}
$('body > .container').remove();
};
var lastSelectedLayout = '';
var setLayout = function() {
var layoutOption = $('.layout-option', panel).val();
var sidebarOption = $('.sidebar-option', panel).val();
var headerOption = $('.page-header-option', panel).val();
var footerOption = $('.page-footer-option', panel).val();
var sidebarPosOption = $('.sidebar-pos-option', panel).val();
var sidebarStyleOption = $('.sidebar-style-option', panel).val();
var sidebarMenuOption = $('.sidebar-menu-option', panel).val();
if (sidebarOption == "fixed" && headerOption == "default") {
alert('Default Header with Fixed Sidebar option is not supported. Proceed with Fixed Header with Fixed Sidebar.');
$('.page-header-option', panel).val("fixed");
$('.sidebar-option', panel).val("fixed");
sidebarOption = 'fixed';
headerOption = 'fixed';
}
resetLayout(); // reset layout to default state
if (layoutOption === "boxed") {
$("body").addClass("page-boxed");
// set header
$('.page-header > .page-header-inner').addClass("container");
var cont = $('body > .clearfix').after('
');
// set content
$('.page-container').appendTo('body > .container');
// set footer
if (footerOption === 'fixed') {
$('.page-footer').html('' + $('.page-footer').html() + '
');
} else {
$('.page-footer').appendTo('body > .container');
}
}
if (lastSelectedLayout != layoutOption) {
//layout changed, run responsive handler:
Metronic.runResizeHandlers();
}
lastSelectedLayout = layoutOption;
//header
if (headerOption === 'fixed') {
$("body").addClass("page-header-fixed");
$(".page-header").removeClass("navbar-static-top").addClass("navbar-fixed-top");
} else {
$("body").removeClass("page-header-fixed");
$(".page-header").removeClass("navbar-fixed-top").addClass("navbar-static-top");
}
//sidebar
if ($('body').hasClass('page-full-width') === false) {
if (sidebarOption === 'fixed') {
$("body").addClass("page-sidebar-fixed");
$("page-sidebar-menu").addClass("page-sidebar-menu-fixed");
$("page-sidebar-menu").removeClass("page-sidebar-menu-default");
Layout.initFixedSidebarHoverEffect();
} else {
$("body").removeClass("page-sidebar-fixed");
$("page-sidebar-menu").addClass("page-sidebar-menu-default");
$("page-sidebar-menu").removeClass("page-sidebar-menu-fixed");
$('.page-sidebar-menu').unbind('mouseenter').unbind('mouseleave');
}
}
//footer
if (footerOption === 'fixed') {
$("body").addClass("page-footer-fixed");
} else {
$("body").removeClass("page-footer-fixed");
}
//sidebar style
if (sidebarStyleOption === 'light') {
$(".page-sidebar-menu").addClass("page-sidebar-menu-light");
} else {
$(".page-sidebar-menu").removeClass("page-sidebar-menu-light");
}
//sidebar menu
if (sidebarMenuOption === 'hover') {
if (sidebarOption == 'fixed') {
$('.sidebar-menu-option', panel).val("accordion");
alert("Hover Sidebar Menu is not compatible with Fixed Sidebar Mode. Select Default Sidebar Mode Instead.");
} else {
$(".page-sidebar-menu").addClass("page-sidebar-menu-hover-submenu");
}
} else {
$(".page-sidebar-menu").removeClass("page-sidebar-menu-hover-submenu");
}
//sidebar position
if (Metronic.isRTL()) {
if (sidebarPosOption === 'left') {
$("body").addClass("page-sidebar-reversed");
$('#frontend-link').tooltip('destroy').tooltip({
placement: 'right'
});
} else {
$("body").removeClass("page-sidebar-reversed");
$('#frontend-link').tooltip('destroy').tooltip({
placement: 'left'
});
}
} else {
if (sidebarPosOption === 'right') {
$("body").addClass("page-sidebar-reversed");
$('#frontend-link').tooltip('destroy').tooltip({
placement: 'left'
});
} else {
$("body").removeClass("page-sidebar-reversed");
$('#frontend-link').tooltip('destroy').tooltip({
placement: 'right'
});
}
}
Layout.fixContentHeight(); // fix content height
Layout.initFixedSidebar(); // reinitialize fixed sidebar
};
// handle theme colors
var setColor = function(color) {
var color_ = (Metronic.isRTL() ? color + '-rtl' : color);
$('#style_color').attr("href", Layout.getLayoutCssPath() + 'themes/' + color_ + ".css");
if (color == 'light2') {
$('.page-logo img').attr('src', Layout.getLayoutImgPath() + 'logo-invert.png');
} else {
$('.page-logo img').attr('src', Layout.getLayoutImgPath() + 'logo.png');
}
};
$('.toggler', panel).click(function() {
$('.toggler').hide();
$('.toggler-close').show();
$('.theme-panel > .theme-options').show();
});
$('.toggler-close', panel).click(function() {
$('.toggler').show();
$('.toggler-close').hide();
$('.theme-panel > .theme-options').hide();
});
$('.theme-colors > ul > li', panel).click(function() {
var color = $(this).attr("data-style");
setColor(color);
$('ul > li', panel).removeClass("current");
$(this).addClass("current");
});
// set default theme options:
if ($("body").hasClass("page-boxed")) {
$('.layout-option', panel).val("boxed");
}
if ($("body").hasClass("page-sidebar-fixed")) {
$('.sidebar-option', panel).val("fixed");
}
if ($("body").hasClass("page-header-fixed")) {
$('.page-header-option', panel).val("fixed");
}
if ($("body").hasClass("page-footer-fixed")) {
$('.page-footer-option', panel).val("fixed");
}
if ($("body").hasClass("page-sidebar-reversed")) {
$('.sidebar-pos-option', panel).val("right");
}
if ($(".page-sidebar-menu").hasClass("page-sidebar-menu-light")) {
$('.sidebar-style-option', panel).val("light");
}
if ($(".page-sidebar-menu").hasClass("page-sidebar-menu-hover-submenu")) {
$('.sidebar-menu-option', panel).val("hover");
}
var sidebarOption = $('.sidebar-option', panel).val();
var headerOption = $('.page-header-option', panel).val();
var footerOption = $('.page-footer-option', panel).val();
var sidebarPosOption = $('.sidebar-pos-option', panel).val();
var sidebarStyleOption = $('.sidebar-style-option', panel).val();
var sidebarMenuOption = $('.sidebar-menu-option', panel).val();
$('.layout-option, .page-header-option, .sidebar-option, .page-footer-option, .sidebar-pos-option, .sidebar-style-option, .sidebar-menu-option', panel).change(setLayout);
};
//* END:CORE HANDLERS *//
return {
//main function to initiate the theme
init: function() {
handleTheme(); // handles style customer tool
}
};
}();