﻿/// <reference path="/Resources/Js/jquery-1.3.2-vsdoc2.js"
/// <reference path="/Resources/Js/jquery-1.3.2.js"

var iframeEmptySrc = "/resources/iFrameEmpty.htm";
var g_MenuIFrame;

function setIFrame() {

	var ie = document.all ? true : false;
	var innerDiv = document.getElementById("mainMenu");

	if (ie && innerDiv != null)
	{
	    
		var iFrameId = "iFrameShim";
		var existingIFrame = document.getElementById(iFrameId);
		var iFrame = existingIFrame ? existingIFrame : document.createElement("IFRAME");
		iFrame.setAttribute("id", iFrameId);
		iFrame.setAttribute("src", "javascript:false;" );
		iFrame.setAttribute("frameborder", "0");

		//Match IFrame position with mainMenu div
		iFrame.style.position = "absolute";
		iFrame.style.left = innerDiv.offsetLeft;
		iFrame.style.top = innerDiv.offsetTop;
		iFrame.style.display = "block";
		iFrame.style.width = innerDiv.offsetWidth + "px";
		iFrame.style.height = innerDiv.offsetHeight + "px";
		iFrame.style.filter = "alpha(opacity=0)";
		
		// add the iframe object to the DOM:
		if (!existingIFrame) innerDiv.parentNode.appendChild(iFrame);

		// Increase default zIndex of div by 1, so that DIV appears before IFrame
		innerDiv.style.zIndex = innerDiv.style.zIndex + 1;
	
		// Store iFrame in global variable, so it can get removed when menu is hidden 
		g_MenuIFrame = iFrame;
	}
}

function hideIFrame()
{
    if (document.all)
	{
		// hide the iframe:
		if (g_MenuIFrame) g_MenuIFrame.style.display = "none";
	}

}

function showMainMenu(e) 
{
    
    var divContent = document.getElementById('content');
    if(divContent != null) {
        divContent.className = 'content menuSmall';
    }
    
    var divBreadcrumb = document.getElementById('breadCrumb');
    if(divBreadcrumb != null) {
        divBreadcrumb.className = 'notVisible';
    }

    var divMainMenu = document.getElementById('mainMenu');
    if(divMainMenu != null) {
        divMainMenu.className = '';
    }
    
    setIFrame();

}

function hideWithTimeout(x, y)
{
	if(!isOutOfMenu) return;

    var mouseX = x;
    var mouseY = y;

	var mainMenuEls = $("#menu > div");
	
	var maxWidth = 0;
	
	for(i = 0; i < mainMenuEls.length - 1; i++)
	{
		maxWidth += mainMenuEls[i].offsetWidth;
	}
	
	var menu = $("#menu");
	var menuLine = $("#menuLine");
	
	if(!menuLine[0]) return; // if home master - return
	
	var offsetTop = menu[0].offsetTop;	
	var paddingBottom = (menu[0].currentStyle.paddingBottom).replace(/px/i, "") - 0 + offsetTop;
	var maxHeight = menu[0].offsetHeight + menuLine[0].offsetHeight + offsetTop;
	var pageWidth = document.body.clientWidth;
	var leftPadding = ((pageWidth - maxWidth) / 2) + 5;
	
    if(mouseY > maxHeight || mouseY < paddingBottom || mouseX > maxWidth || mouseX < leftPadding) // 255 48 1112 150
    {
        var divContent = document.getElementById('content');
        if(divContent != null) {
            divContent.className = 'content';
        }
        
        var divBreadcrumb = document.getElementById('breadCrumb');
        if(divBreadcrumb != null) {
            divBreadcrumb.className = '';
        }

        var divMainMenu = document.getElementById('mainMenu');
        if(divMainMenu != null) {
            divMainMenu.className = 'notVisible';
        }
        
        hideIFrame();
    }
}

function hideMainMenu(e) 
{
    var mouseX = window.event.clientX;
    var mouseY = window.event.clientY;
	
	isOutOfMenu = true;
	
	setTimeout(function(){hideWithTimeout(mouseX, mouseY)}, 1000);
}

function mainMenuItemSelected(e) {
	
	isOut = false;
	
    var ev = e || window.event;  
	
    var theSrc = ev.srcElement ? ev.srcElement : ev.target;
	
    if (ev.stopPropagation) {
        ev.stopPropagation(); }
    else {       
        ev.cancelBubble = true;  
		} 

	setTimeout(function(){prepareToSelect(theSrc)}, 400);
	
}

function prepareToSelect(theSrc)
{
	if(isOut) return;
	
    var selectedItem;
    try {selectedItem = $("ul#firstLevel > li.select");}
    catch(err) {}
    if(selectedItem != null) {
        selectedItem.removeClass("select");
    }
    
    if(theSrc != null) {
        theSrc.parentNode.className = "select";
    }
    
    var allSecondLevelDivs = $("div.innerDiv");
    if(allSecondLevelDivs != null) {
        allSecondLevelDivs.css({'display' : 'none'});
    }

    var selectedElem = document.getElementById("menudiv" + theSrc.parentNode.id);
    if(selectedElem != null) {
        selectedElem.style.display = "";
    }
	isOut = false;
}

function pausecomp(millis) 
{
    var date = new Date();
    var curDate = null;

    do { curDate = new Date(); } 
    while(curDate-date < millis);
} 

function onOpenRBClick() {
    var lbVacatures = document.getElementById(lbVacaturesID);
    var rfvVacatures = document.getElementById(rfvVacaturesID);
    
    if(lbVacatures != null)
    {
        rfvVacatures.enabled = false;
        lbVacatures.disabled = true;  
    }
}

function onPositionRBClick() {
    var lbVacatures = document.getElementById(lbVacaturesID);
    var rfvVacatures = document.getElementById(rfvVacaturesID);
    
    if(lbVacatures != null)
    {
    
        rfvVacatures.enabled = true;
        lbVacatures.disabled = false; 
    }
}

function suspendIEError()
{
	return false;
}

var isOut = false;
var isOutOfMenu = true;

$(document).ready(function(){
	$("#firstLevel > li > a").mouseout(function(){
		isOut = true;
	});
	$("#mainMenu").mouseover(function(){
		isOutOfMenu = false;
	});
//	$("#content").mouseover(function(){
//		hideMainMenu(event);
//	});
//	$("div.header").mouseover(function(){
//		hideMainMenu(event);
//	});
//	$("div.footer").mouseover(function(){
//		hideMainMenu(event);
//	});
});