var menuWidth = '300px';
var contentHeight;
function initLayout() {
$('#left-menu').css('width', menuWidth);
$('#right-menu').css('width', menuWidth);
if($('#left-menu').data('opened') === true) {
$('#content').css('left', menuWidth);
$('#left-menu').css('zIndex', '100');
$('#left-menu-toggle-button').addClass('fa-chevron-left');
$('#left-menu-toggle-button').removeClass('fa-chevron-right');
}
if($('#right-menu').data('opened') === true) {
$('#content').css('right', menuWidth);
$('#right-menu').css('zIndex', '100');
$('#right-menu-toggle-button').addClass('fa-chevron-right');
$('#right-menu-toggle-button').removeClass('fa-chevron-left');
}
resizeMenus();
setIcons();
updateContentTabNavigation();
}
$(window).on('resize', function(){
resizeMenus();
updateContentTabNavigation();
});
function setIcons() {
// Change SelectMenu Buttons
$('#left-tab-view .ui-selectonemenu-trigger .ui-icon').remove();
$('.basic-filter-menu .ui-selectonemenu-trigger').append('');
$('#left-tab-view .article-filter-menu .ui-selectonemenu-trigger').append('');
$('#header .ui-selectonemenu-trigger .ui-icon').remove();
$('#header .ui-selectonemenu-trigger').append('');
//Change Accordion Buttons
$('#left-tab-view .ui-accordion-header .ui-icon-triangle-1-s').removeClass("ui-icon ui-icon-triangle-1-s").addClass("fa");
$('#left-tab-view .ui-accordion-header .ui-icon-triangle-1-e').removeClass("ui-icon ui-icon-triangle-1-e").addClass("fa");
//Change TabView Buttons
$('#content-tab-view .ui-tabs-navscroller .ui-tabs-navscroller-btn .ui-icon-carat-1-w').removeClass("ui-icon ui-icon-carat-1-w").addClass("fa fa-caret-left fa-2x");
$('#content-tab-view .ui-tabs-navscroller .ui-tabs-navscroller-btn .ui-icon-carat-1-e').removeClass("ui-icon ui-icon-carat-1-e").addClass("fa fa-caret-right fa-2x");
$('').insertAfter(('#content-tab-view .ui-tabs-navscroller .ui-tabs-navscroller-btn-right'));
$('#content-tab-view .ui-tabs-nav .ui-icon.ui-icon-close').removeClass("ui-icon ui-icon-close").addClass("fa fa-close");
$('.article-filter-menu.ui-selectonemenu').on('click', function(){
var top = $(PrimeFaces.escapeClientId(this.id)).offset().top + 'px';
id = this.id + '_panel';
$(PrimeFaces.escapeClientId(id)).css('top', top);
$(PrimeFaces.escapeClientId(id)).css('left', menuWidth);
$(PrimeFaces.escapeClientId(id)).css( "z-index", "101" );
$(PrimeFaces.escapeClientId(id)).css("box-shadow", "4px 0px 4px -2px rgba(0, 0, 0, 0.2) inset;");
});
}
function toggleLeftMenu() {
if($('#left-menu').data('opened') != true){
rcToogleLeftMenu([{name: 'opened', value: true}]);
$('#left-menu').data('opened', true);
$('#content').animate({'left': menuWidth}, {
duration: 700,
step: function (now, fx) {
$('.canvas-container').width($('.canvas-container').width() + now);
},
complete: function() {
$('#left-menu-toggle-button').addClass('fa-chevron-left');
$('#left-menu-toggle-button').removeClass('fa-chevron-right');
$('#left-menu').css('zIndex', '100');
updateContentTabNavigation();
zoomActiveMountingRail();
}
});
} else {
rcToogleLeftMenu([{name: 'opened', value: false}]);
$('#left-menu').css('zIndex', '0');
$('#left-menu').data('opened', false);
$('#content').animate({'left': '3px'}, {
duration: 700,
step: function (now, fx) {
$('.canvas-container').width($('.canvas-container').width() + now);
},
complete: function() {
$('#left-menu-toggle-button').addClass('fa-chevron-right');
$('#left-menu-toggle-button').removeClass('fa-chevron-left');
updateContentTabNavigation();
zoomActiveMountingRail();
}
});
}
}
function toggleRightMenu() {
if($('#right-menu').data('opened') != true){
rcToogleRightMenu([{name: 'opened', value: true}]);
$('#right-menu').data('opened', true);
$('#content').animate({'right': menuWidth}, {
duration: 700,
step: function (now, fx) {
$('.canvas-container').width($('.canvas-container').width() + now);
},
complete: function () {
$('#right-menu-toggle-button').addClass('fa-chevron-right');
$('#right-menu-toggle-button').removeClass('fa-chevron-left');
$('#right-menu').css('zIndex', '100');
updateContentTabNavigation();
zoomActiveMountingRail();
}
});
} else {
rcToogleRightMenu([{name: 'opened', value: false}]);
$('#right-menu').css('zIndex', '0');
$('#right-menu').data('opened', false)
$('#content').animate({'right': '3px'}, {
duration: 700,
step: function (now, fx) {
$('.canvas-container').width($('.canvas-container').width() + now);
},
complete: function() {
$('#right-menu-toggle-button').addClass('fa-chevron-left');
$('#right-menu-toggle-button').removeClass('fa-chevron-right');
updateContentTabNavigation();
zoomActiveMountingRail();
}
});
}
}
function resizeMenus(){
var documentHeight = $(document).outerHeight();
var headerHeight = $('#header').outerHeight();
var mainMenuHeight = $('#main-menu').outerHeight();
var contentTabBarHeaderHeight = $('#content-tab-view .ui-tabs-nav').outerHeight();
var tabBarHeaderHeight = $('#left-menu .ui-tabs-nav').outerHeight();
var filterPanelGridHeight = $('#left-menu [aria-hidden=false] .filter-panel-grid').outerHeight();
var accordionHeaderHeight = 0
$('#left-menu [aria-hidden=false] .ui-accordion-header').each(function() {
accordionHeaderHeight += this.offsetHeight;
});
var accordionContentHeight = documentHeight - headerHeight - mainMenuHeight - tabBarHeaderHeight - filterPanelGridHeight - accordionHeaderHeight;
var menuHeight = documentHeight - headerHeight - mainMenuHeight;
contentHeight = documentHeight - headerHeight - mainMenuHeight - contentTabBarHeaderHeight;
$('#left-menu .ui-accordion-content').outerHeight(accordionContentHeight + "px");
$('#right-menu').outerHeight(menuHeight + "px");
$('#mounting-rail-settings-panel').outerHeight(contentHeight + "px");
$('#mounting-rail-settings-panel-scroll').outerHeight(contentHeight + "px");
$('.container-rail').outerHeight(contentHeight + "px");
$('.edit-function-positions-panel').outerHeight((accordionContentHeight - $('.edit-function-info-panel').outerHeight() - 5) + "px");
$('.ui-accordion-content').perfectScrollbar({suppressScrollX: true});
$('.edit-function-positions-panel').perfectScrollbar({suppressScrollX: true});
}
function updateContentTabNavigation(size) {
if (typeof size === 'undefined') {
//PF('mountingRailTabs').navscroller.innerWidth($('#content').innerWidth()-84);
} else {
//PF('mountingRailTabs').navscroller.innerWidth(PF('mountingRailTabs').navscroller.innerWidth() + size);
}
if (PF('mountingRailTabs').navscroller != null) {
PF('mountingRailTabs').initScrolling();
if (parseInt(PF('mountingRailTabs').navContainer.css('margin-left')) >= 0) {
PF('mountingRailTabs').disableScrollerButton(PF('mountingRailTabs').navcrollerLeft);
} else {
PF('mountingRailTabs').enableScrollerButton(PF('mountingRailTabs').navcrollerLeft);
}
var lastTabBoundry = PF('mountingRailTabs').lastTab.position().left + parseInt(PF('mountingRailTabs').lastTab.innerWidth());
if ((lastTabBoundry) < PF('mountingRailTabs').navscroller.innerWidth()) {
PF('mountingRailTabs').disableScrollerButton(PF('mountingRailTabs').navcrollerRight);
} else {
PF('mountingRailTabs').enableScrollerButton(PF('mountingRailTabs').navcrollerRight);
}
}
}