/**
 * Diverse javascriptfunksjoner, spesiellt laget for siten
 * I tillegg bør filen functions-standard.js inkluderes, den inneholder endel standardfunksjoner
 *
 * @author Anders S. Oefsdahl <anders at apt no>
 * @version 1.0.0
 */

/**
 * Variabel
 * @var	type
 */
 
var arrOpenSubMenus	= new Array();
var timeObject;

var nu			= navigator.userAgent;
var np			= navigator.platform;

var isMac		= (np.indexOf("Mac") != -1) ? true : false;
var isIE		= (nu.indexOf("MSIE") != -1) ? true : false;
var isPCIE5		= ((nu.indexOf("MSIE 5.") != -1) && (np.indexOf("Win32") != -1))? true : false;
var isOpera		= (nu.indexOf("Opera") != -1) ? true : false;
var isNS		= (nu.indexOf("Netscape") != -1) ? true : false;
var isSafari	= (nu.indexOf("Safari") != -1) ? true : false;
var isPC		= (np.indexOf("Win32") != -1)? true : false;

var appendX			= -3;
var appendY			= 19;
var appendXSub		= 106;
var appendYSub		= -2;

if(isIE){
	appendYSub		= -2;
}

if(isOpera || isNS){
	appendX	= -1;
	appendY	= 19;
}

if(isPCIE5){
	appendX	= -1;
	appendY	= 25;
}

if(isMac && isIE){
	appendX	= -1;
	appendY	= 16;
}
if(isMac && isSafari){
	appendX		= -1;
	appendY		= 19;
	appendXSub	= 0;
	appendYSub	= 0;
}

function hideSubMenu(){
	clearTimeout(timeObject);
	timeObject = setTimeout("drawSubmenu('')",200);
}

function showSubMenu(strID){
	clearTimeout(timeObject);
	drawSubmenu(strID);
}


function drawSubmenu(strID){
	if(strID != ''){
	
	    
		    arrTmp = strID.split(',');
		
		for(var i=0;i<arrOpenSubMenus.length;i++){
			if(arrOpenSubMenus[i]){
				if(!inArray(arrOpenSubMenus[i],arrTmp)){
					var objSubMenu = document.getElementById('submenu'+arrOpenSubMenus[i]);	
					if(objSubMenu!=null){				
					objSubMenu.style.visibility = 'hidden';
					}
				}
			}
		}
		arrOpenSubMenus = new Array();
		for(var i=0;i<arrTmp.length;i++){
			if(arrTmp[i] != ''){
				arrOpenSubMenus[arrOpenSubMenus.length] = arrTmp[i];
				var objSubMenu = document.getElementById('submenu'+arrTmp[i]);
				if(objSubMenu!=null)				
				{
				    objSubMenu.style.visibility = 'visible';
				    }
			}
		}
	}else{
		for(var i=0;i<arrOpenSubMenus.length;i++){
			var objSubMenu = document.getElementById('submenu'+arrOpenSubMenus[i]);
			if(objSubMenu!=null)
			{
			objSubMenu.style.visibility = 'hidden';
			}
		}
		arrOpenSubMenus = new Array();
	}
}

function inArray(needle,haystack){
	bool = false;
	var i=0;
	while(!bool && i<haystack.length){
		if(haystack[i] == needle){
			bool = true;
		}
		i++;
	}
	return bool;
}

function setBgPosition(objElement,intID){
	var intX = getXpos(objElement)+appendX;
	var intY = getYpos(objElement)+appendY;
	var objSubMenu = document.getElementById('submenu'+intID);
	if(objSubMenu!=null)
	{
	objSubMenu.style.top = intY+'px';
	objSubMenu.style.left = intX+'px';
	}
}

function setBgPositionSubMenu(objElement,intParentID,intID){
	var objParentNode = document.getElementById('submenu'+intParentID);
	var objSubMenu = document.getElementById('submenu'+intID);
	//alert(objSubMenu);
	var intParentWidth = getXpos(objElement);//objParentNode.style.width;
	//var intX = getXpos(objElement)+parseInt(intParentWidth)+appendXSub;
	var intY = getYpos(objElement)-2;//+appendYSub;
	var intX = parseInt(intParentWidth)+appendXSub;
	//var intY = appendYSub;
	if(objSubMenu!=null)
	{
	objSubMenu.style.top = intY+'px';
	objSubMenu.style.left = intX+'px';
	}//objSubMenu.style.top = '100px';
	//objSubMenu.style.left = '100px';
}

function getYpos(obj){return(obj.offsetTop + ((obj.offsetParent) ? 0 : getYpos(obj.offsetParent)));}
function getXpos(obj){return(obj.offsetLeft + ((obj.offsetParent) ? 0 : getXpos(obj.offsetParent)));}

function qualitydoc_login(objForm,intLanguage){
	strMissingUsername = (intLanguage == 1)?'Please state username!':'Du måste uppge användarnamn!';
	strMissingPassword = (intLanguage == 1)?'Please state password!':'Du måste uppge lösenord!';
	if(objForm.elements['username'].value.length < 1){
		alert(strMissingUsername);
		objForm.elements['username'].focus();
	}else if(objForm.elements['password'].value.length < 1){
		alert(strMissingPassword);
		objForm.elements['password'].focus();
	}else{
		objForm.submit();
	}
}

function qualitydoc_cancel(objForm,intLanguage){
	objForm.elements['username'].value = '';
	objForm.elements['password'].value = '';
}

function loggin(objForm,intLanguage){
	strMissingUsername = (intLanguage == 1)?'Please state username!':'Du måste uppge användarnamn!';
	strMissingPassword = (intLanguage == 1)?'Please state password!':'Du måste uppge lösenord!';
	if(objForm.elements['username'].value.length < 1){
		alert(strMissingUsername);
		objForm.elements['username'].focus();
	}else if(objForm.elements['password'].value.length < 1){
		alert(strMissingPassword);
		objForm.elements['password'].focus();
	}else{
		objForm.submit();
	}
}

function id(theid){
    return document.getElementById(theid);
}
        //return document.getElementById(theid);
    //}
    
function insertMenu(nId, nTitle, nUrl) {
    var str="<div class='submenu'><a href='" + nUrl + '\' class=\'mainmenuitem\'> ' +nTitle +'</a></div>';        

    id(nId).innerHTML+=str;
}