var isMac = (navigator.appVersion.indexOf("Mac")!=-1) ? true : false;
var W3C = document.getElementById? true : false;
var NN4 = document.layers? true : false;
var IE4 = document.all? true : false;
var MOZ5 = ((navigator.userAgent.toLowerCase().indexOf("mozilla")==0) && (navigator.userAgent.toLowerCase().charAt(8) >= 5) && (navigator.userAgent.toLowerCase().indexOf("compatible")<0));
var OP = navigator.userAgent.toLowerCase().indexOf("opera")>=0;
var left;
var top;
var X;
var Y;


function openPopup(oUrl,oHeight,oWidth,useScroll)
{
	window.open(oUrl,"","height="+ oHeight +",width="+ oWidth +",location=0,scrollbars="+ useScroll +",menubar=0,status=0,toolbar=0")
}

function WinOpen(theUrl, theParameters)
{
	msg=open(theUrl,"DisplayWindow", theParameters);
	msg.document.close();
}

function isThisIE5OrLater()
{
	if ((navigator.appVersion.indexOf("MSIE 5")>0 || navigator.appVersion.indexOf("MSIE 6")>0) && navigator.appVersion.indexOf("Mac")<0)
		return true;
}

function moveLay(lay,pTop,pLeft)
{
	if (W3C)
	{
		if (navigator.userAgent.toLowerCase().indexOf('opera')>-1)
		{
			document.getElementById(lay).style.top = pTop;
			document.getElementById(lay).style.left = pLeft;

		}
		else
		{
			document.getElementById(lay).style.top = pTop + "px";
			document.getElementById(lay).style.left = pLeft + "px";
		}
	}
	else if (IE4)
	{
		document.all[lay].style.pixelTop = pTop;
		document.all[lay].style.pixelLeft = pLeft;
	}
	else if(NN4)
	{
		document.layers[lay].top = pTop;
		document.layers[lay].left = pLeft;
	}
}

function visLay(lay,vis) 
{
	if (W3C) 
	{
		document.getElementById(lay).style.visibility = vis;
	}
	else if (IE4)
	{
		document.all[lay].style.visibility = vis;
	}
	else if(NN4)
	{
		document.layers[lay].visibility = vis;
	}
}

function getMousePos(e)
{

	if (MOZ5 || NN4)
	{
		X = e.pageX;
		Y = e.pageY;
	}
	else if (IE4 || OP)
	{
		X = document.body.scrollLeft + event.clientX;
		Y = document.body.scrollTop + event.clientY;
	}
}

function validateMail(){
	//alert("running");
	var mode = parseInt(document.asp.mode.value);
	var alertStr = "Fält markerade med * är obligatoriska.\nDu har inte fyllt i:";
	var allReqMet = true;
	// Gemensamma för alla prenumerationssidor
	var fname = document.asp.fName.value;
	var lname = document.asp.lName.value;
	var street = document.asp.street.value;
	var streetnumber = document.asp.streetnumber.value;
	var postalcode = document.asp.postalcode.value;
	var city = document.asp.city.value;
	
	if(fname.length == 0){
		alertStr += "\nFörnamn";
		var allReqMet = false;
	}
	if(lname.length == 0){
		alertStr += "\nEfternamn";
		var allReqMet = false;
	}
	if(street.length == 0){
		alertStr += "\nGatunamn";
		var allReqMet = false;
	}
	if(streetnumber.length == 0){
		alertStr += "\nGatunummer";
		var allReqMet = false;
	}
	if(postalcode.length == 0){
		alertStr += "\nPostnummer";
		var allReqMet = false;
	}
	if(city.length == 0){
		alertStr += "\nOrt";
		var allReqMet = false;
	}
	
	
	switch(mode){
		case 0:
			if(!document.asp.startnow.checked){
				if(document.asp.startdate.value.length == 0){
					alertStr += "\nStartdatum måste vara ifyllt om du inte valt att \"omgående\"";
					var allReqMet = false;
				}
			}
			break;
		case 1:
			if(document.asp.nopaperdate.value.length == 0){
				alertStr += "\nDatum då tidningen uteblev";
				var allReqMet = false;
			}
			break;
		case 2:
			if(document.asp.newadrstart.value.length == 0){
				alertStr += "\nStartdatum för adressändringen";
				var allReqMet = false;
			}
			
			if(document.asp.prensort.value == "true" && document.asp.newadrstop.value.length == 0){
				alertStr += "\nSlutdatum för adressändringen";
				var allReqMet = false;			
			}
			break;
		case 3:
			if(document.asp.street_2.value.length == 0){
				alertStr += "\nNytt gatunamn";
				var allReqMet = false;
			}
			if(document.asp.streetnumber_2.value.length == 0){
				alertStr += "\nNytt gatunummer";
				var allReqMet = false;
			}
			if(document.asp.postalcode_2.value.length == 0){
				alertStr += "\nNytt postnummer";
				var allReqMet = false;
			}
			if(document.asp.city_2.value.length == 0){
				alertStr += "\nNy postort";
				var allReqMet = false;
			}
			if(document.asp.newadrstart.value.length == 0){
				alertStr += "\nStartdatum för adressändringen";
				var allReqMet = false;
			}
			if(document.asp.prensort[0].checked == true && document.asp.newadrstop.value.length == 0){
				alert(document.asp.newadrstop.value.length);
				alertStr += "\nSlutdatum för adressändringen";
				var allReqMet = false;			
			}
			
			break;
	}
	
	if(!allReqMet){
		alert(alertStr);
	}		
	
	return allReqMet;
}

function validateContest(){
	alertStr = "Samtliga fält är obligatoriska!\nHittade följande fel i formuläret:"
	var allReqMet = true;
	
	var cardnumber = document.asp.cardnumber.value;
	var name = document.asp.name.value;
	var street = document.asp.street.value;
	var postalcode = document.asp.postalcode.value;
	var city = document.asp.city.value;
	var answer = document.asp.answer.value;
	
	if(cardnumber.length == 0 || isNaN(cardnumber)){
		alertStr += "\nFelaktigt/saknar kortnummer";
		allReqMet = false;
	}
	if(name.length == 0){
		alertStr += "\nSaknar namn";
		allReqMet = false;
	}
	if(street.length == 0){
		alertStr += "\nSaknar adress";
		allReqMet = false;
	}
	if(postalcode.length == 0){
		alertStr += "\nSaknar postnummer";
		allReqMet = false;
	}
	if(city.length == 0){
		alertStr += "\nSaknar stad";
		allReqMet = false;
	}
	if(answer.length == 0){
		alertStr += "\nSaknar svar";
		allReqMet = false;
	}
	
	if(!allReqMet){
		alert(alertStr);
	}
	return allReqMet;
}

function clearForm(){
	document.forms["asp"].reset();
}

function testHeights(){
/*
	if(W3C)chatLayerHeight = document.getElementById("chat_layer").offsetHeight;
	else if(NN4)chatLayerHeight = document.layers["chat_layer"].height;
	else if(IE4)chatLayerHeight = document.all["chat_layer"].clientHeight;
	else chatLayerHeight = "undef...";
	alert(chatLayerHeight);

	//iFrameObj = document.getElementById("dKont");
	//alert(iFrameObj.height);
*/
}


	/*
	---------------------------------------------------------------
	
	Funktioner för att komprimera tomma iframes (med annnser)
	Skapad av Erik T 2005-05-31
	
	---------------------------------------------------------------
	*/

	compressHeight = 20;

	function setHeight(theHeight)
	{
		if(theHeight<compressHeight)
			return 0;
		else
			return theHeight;
	}
	
	var lockCount = 0;
	var MRFHtml = "";
	function Lock(){
/*		//alert("..");
		lokusLocked = false;
		if(lockCount > 0){
			document.getElementById("MRF").innerHTML = "";
		}else if(lockCount == 0){
			MRFHtml = document.getElementById("MRF").innerHTML;
		}
		if(lockCount % 2 == 0){
			//document.getElementById("MRF").innerHTML = MRFHtml;
		}
		lockCount++;
*/
	}	
	

	function resizeIframes()
	{
		var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
		var FFextraHeight=getFFVersion>=0.1? 16 : 0 //Extra höjd till annonser i FireFox 1.0+
		var arrIframe = document.getElementsByTagName("iframe");
		var intIfrmHeight = 0;

		for (i=0; i<arrIframe.length;i++){
			objIframe = arrIframe[i]
			//alert('P::'+ objIframe.id +'::'+ objIframe.src +'::'+ objIframe.height +'/'+ setHeight(objIframe.Document.body.scrollHeight +'::'+ objIframe.src.indexOf("AS_Advert")));
			if (objIframe.src.indexOf("AS_Advert")>0){
				objIframe.style.display="block"
				if (objIframe.contentDocument && objIframe.contentDocument.body.offsetHeight) //ns6 syntax
				{
					//PN - variabel för att ej manipulera höjden i onödan
					intIfrmHeight = setHeight(objIframe.contentDocument.body.offsetHeight+FFextraHeight); 
					//Erik... objIframe.height = setHeight(objIframe.contentDocument.body.offsetHeight+FFextraHeight); 
				}
				else if (objIframe.Document && objIframe.Document.body.scrollHeight) //ie5+ syntax
				{
					//PN - variabel för att ej manipulera höjden i onödan
					intIfrmHeight = setHeight(objIframe.Document.body.scrollHeight);
					//Erik... objIframe.height = setHeight(objIframe.Document.body.scrollHeight);
				}
				if(intIfrmHeight == 0) {
					objIframe.height = 0;
				}
			
				//PN - kod för att klämma ihop Lokuslänkarna i toppen om annonsen finns, styrd av bredden
				if(objIframe.width == 970) {
					if(objIframe.height > 0) {
						objTopDiv = document.getElementById('topDiv');
						if(objTopDiv != null) {
							objTopDiv.innerHTML = '';
						}
					}
				}			
			}			
		}
	}
	
	if (window.addEventListener)
		window.addEventListener("load", resizeIframes, false)
	else if (window.attachEvent)
		window.attachEvent("onload", resizeIframes)
	else
		window.onload=resizeIframes





