// JavaScript Document

var tmp = navigator.appName == 'Microsoft Internet Explorer' && navigator.userAgent.indexOf('Opera') < 1 ? 1 : 0;
if(tmp) var isIE = document.namespaces && !window.opera ? true : false;

var laddad = false;



function initDefault()
{
	setVtCells();
	laddad = true;
	
}

function setVtCells()
{
	if (!isIE)
	{
		var width ;

		for (var i = 0; i < 9; i++)
		{
			var vtCell = document.getElementById("vtCell" + i);
			if (!vtCell) return;
			vtCell.style.borderWidth = "0px";
			if (i == 0) vtCell.style.borderTopWidth = "3px"; 
			vtCell.style.borderRightWidth = "3px"; 
			width = parseInt(vtCell.style.width);
//			vtCell.style.width = (width + 10) + "px";
			vtCell.style.width = "";
		}
	}
}



function resizeMain(workTable)
{

	if (parent.document.getElementById("workMainFrame"))
	{
		if (parent.document.getElementById("workMainFrame").height != workTable.style.pixelHeight + borderHeight)
		{
			parent.document.getElementById("workMainFrame").height = workTable.style.pixelHeight + borderHeight;
			setBottomMenuBottomPx();
		}
		if (parent.document.getElementById("workMainFrame").width != workTable.style.pixelWidth + borderWidth)
		{
			parent.document.getElementById("workMainFrame").width = workTable.style.pixelWidth + borderWidth;
		}
//		alert("resizeMain");
	}
}

function mess(txt)
{
	if (document.getElementById("mess"))
	{
		document.getElementById("mess").innerHTML = txt;
	}
}

function fixAllPng()
{
	for (var i=0; i < document.images.length; i++)
	{
		var img = document.images[i];
		var imgName = img.src.toUpperCase();
		if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
		{
			fixPNG(img);
		}
	}
}


function fixPNG(myImage, typ) 
{
	if (typeof(myImage) == "string") myImage = document.getElementById(myImage);
	var sizeMethod = (typ) ? typ : 'scale';
//	alert (typ);
//	alert(sizeMethod);
	var arVersion = navigator.appVersion.split("MSIE");
	var version = parseFloat(arVersion[1]);
	
    if ((version >= 5.5) && (version < 7) && (bFilter)) 
    {
       var imgID = (myImage.id) ? "id='" + myImage.id + "' " : "";
	   var imgClass = (myImage.className) ? "class='" + myImage.className + "' " : "";
	   var imgTitle = (myImage.title) ? "title='" + myImage.title  + "' " : "title='" + myImage.alt + "' ";
	   var imgStyle = "display:inline-block;" + myImage.style.cssText;
	   var strNewHTML = "<span " + imgID + imgClass + imgTitle
                  + " style=\"" + "width:" + myImage.width 
                  + "px; height:" + myImage.height 
                  + "px;" + imgStyle + ";"
                  + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
//                  + "(src=\'" + myImage.src + "\', sizingMethod='" + sizeMethod + "');\"></div>";
                  + "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>";
	   myImage.outerHTML = strNewHTML;
    }
	b_pngFix = true;
}

function pdFixPNG(myImage) 
{
	var arVersion = navigator.appVersion.split("MSIE");
	var version = parseFloat(arVersion[1]);
	
    if ((version >= 5.5) && (version < 7) && (bFilter)) 
    {
		myImage.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader";
    }
}

function offsetTopTotal(obj)
{
	var topPos = obj.offsetTop;

	while (obj.offsetParent)
	{
		obj = obj.offsetParent;

		topPos += obj.offsetTop;
	}
	return topPos;
}

function offsetLeftTotal(obj)
{
	var leftPos = obj.offsetLeft;

	while (obj.offsetParent)
	{
		obj = obj.offsetParent;

		leftPos += obj.offsetLeft;
	}
	return leftPos;
}


function showMsgBox(triggObj,msgObj,dX,dY,iframeObj,ifrSrc)
{

	var obj = triggObj;

	var topPos = offsetTopTotal(obj);
	var leftPos = offsetLeftTotal(obj);


	topPos += dY;
	leftPos += dX;

//	msgObj.style.posTop = topPos;
//	msgObj.style.posLeft = leftPos;

	msgObj.style.top = topPos + "px";
	msgObj.style.left = leftPos + "px";

	msgObj.style.visibility='visible';

	document.getElementById(iframeObj).src = ifrSrc;


}

function unShowMsgBox(obj)
{
	if (document.getElementById(obj))
	{
		document.getElementById(obj).style.visibility='hidden';
	}
	else
	{
		parent.document.getElementById(obj).style.visibility='hidden';
	}
}

function showMsg(triggObj,msgObj,dX,dY,txtStr)
{
//	alert(msgObj.id);

//	var obj = triggObj;
/*alert(dX + dY);
alert(txtStr);
*/
	var topPos = offsetTopTotal(triggObj);
	var leftPos = offsetLeftTotal(triggObj);

	topPos += dY;
	leftPos += dX;

	msgObj.style.pixelTop = topPos;
	msgObj.style.pixelLeft = leftPos;
	msgObj.style.visibility='visible';

	msgObj.innerHTML = txtStr;


}

function unShowMsg(obj)
{
	obj.style.visibility='hidden';
}


function check_phonenr(tele)
{
	var r,re
	re = /[\-\+\(\)\.\ ]/g;  // tar bort - + . ( ) mellanslag
	var r = tele.replace(re,"");
	r = Number(r);  // gör om det till ett tal
	return !isNaN(r);
}

function check_focus()
{
	if (setFocusTo)
	{
		document.getElementById(setFocusTo).select();
		document.getElementById(setFocusTo).focus();
	}
}
		
function checkMail(intxt)
{
//	var x = document.forms[0].email.value;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	return filter.test(intxt);
}


function validera(obj,typ,req)
{
	if (obj.value.length == 0)
	{
		if (req) document.getElementById('Img_' + obj.name).src = "pict/dot.gif";
		setFocusTo = null;
	}
	else 
	{
		var ok = true;
		if (typ.length > 0)
		{
			var uttxt = "";
			switch(typ)
			{
				case 'post':
					ok = checkMail(obj.value);
					if (!ok) uttxt = "Ej giltig e-post-adress!";
/*					var p;
					p=obj.value.indexOf('@')
					if ((p < 0) || (obj.value.substring(p).indexOf('.') < 0) ) // kolla så att . ligger efter @
					{
						ok = false;
						uttxt = "Ej giltig e-post-adress!";
					}  */
					break;
				case 'tele':
					if (!check_phonenr(obj.value))
					{
						ok = false;
						uttxt = "Ej giltigt telefonnummer!";
					}
					break;
			}
		}
		if (!ok)
		{
			if (req) document.getElementById('Img_' + obj.name).src = "pict/dot.gif";
			window.alert(uttxt);
			setFocusTo = obj.name;
		}
		else
		{
			if (req) document.getElementById('Img_' + obj.name).src = "pict/nothing.gif";
			setFocusTo = null;
		}
	}
}


function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.title; if ((val=val.value)!="") {
      if (test.indexOf('isPost')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' måste innehålla en E-post adress.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' måste innehålla ett nummer.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' måste innehålla ett nummer mellan '+min+' och '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' är obligatoriskt.\n'; }
  } if (errors) alert('Följande fel har inträffat:\n'+errors);
  return (errors == '');
//  document.MM_returnValue = (errors == '');
}




// ***********************************************************

function imgLevel0(notLevel)
{
	iImg = imgArr.length;
	if (notLevel != 0) imgArr[iImg++] = {"src":"pict/pages/lev0_0.jpg", "img": null, "startTid": null , "slutTid": null}; // indexStart
	if (notLevel != 1) imgArr[iImg++] = {"src":"pict/pages/lev1_0.jpg", "img": null, "startTid":  null, "slutTid": null}; // prodStart
	if (notLevel != 2) imgArr[iImg++] = {"src":"pict/pages/lev2_0.jpg", "img": null, "startTid":  null, "slutTid": null}; // refStart
	if (notLevel != 3) imgArr[iImg++] = {"src":"karta/kartaLevel0.jpg", "img": null, "startTid":  null, "slutTid": null}; // kontaktAdress
	iImgAntal = iImg;
	iImg = 0;
}





function preLImg()
{

	for (iImg = 0; iImg < iImgAntal; iImg++)
	{
		imgArr[iImg].img = new Image;
		imgArr[iImg].img.id = iImg + "Img";
//	imgArr[iImg].img.onload = imgLoaded;
//	imgArr[iImg].startTid = new Date();
		imgArr[iImg].img.src = imgArr[iImg].src;
	}
	
}

/*
function imgLoaded()
{
	imgArr[iImg].slutTid = new Date();
	iImg++;
	if (iImg < iImgAntal)
	{
		imgArr[iImg].img = new Image;
		imgArr[iImg].img.id = iImg + "Img";
		imgArr[iImg].img.onload = imgLoaded;
		imgArr[iImg].startTid = new Date();
		imgArr[iImg].img.src = imgArr[iImg].src;
	}
	else
	{
		checkLoadTime();
	}
}
*/
/*
function checkLoadTime()
{
//	var txt = "";
	var diffTime;
	var totTime = 0;
	var totSize = 0;
	var kB_sMax = 0;
	var kB_sImg;
	for (iImg = 0 ; iImg < iImgAntal ; iImg++)
	{	
		diffTime = (imgArr[iImg].slutTid - imgArr[iImg].startTid);
		kB_sImg = Math.round(parseInt(imgArr[iImg].img.fileSize)/diffTime);
		totTime += diffTime;
		totSize += parseInt(imgArr[iImg].img.fileSize);
		if (kB_sImg < 1000000) kB_sMax = Math.max(kB_sMax, kB_sImg);
//		txt += "\ni: " + iImg  + " ID: " + imgArr[iImg].img.id + " Path: " + imgArr[iImg].img.src + " mBit/s: " + mB_s;
	}
//	txt += "\n\nmaxmB_s: " + maxmB_s + " Snitt: " + ((totSize/totTime)/131);
	var kB_s = {"Max":kB_sMax, "Medel":Math.round(totSize/totTime)};
	setControl(kB_s);
}
*/


function deConv(t1, t2x)
{
	var t2 = unescape(t2x);
	var t3 = "";

	for(var i=0; i < t1.length; i++)
	{
		t3+=String.fromCharCode(t1.charCodeAt(i)^t2.charCodeAt(i));
	}

	return t3;
}


function setBottomMenuBottomPx()
{
	var doc = (document.getElementById("floatArea"))? document : parent.document;
	var oTop = parseInt(offsetTopTotal(doc.getElementById("floatArea")));
	var height = parseInt(document.getElementById("workTable").style.height);
//	var height = parseInt(doc.getElementById("workTable").height);
//	var height = parseInt(doc.getElementById("workMainFrame").height);
//	var aHeight = parseInt(screen.availHeight);
//	var browMenuHeight = 240;
	
/*	var bottom = aHeight - oTop - height - browMenuHeight;
	if (bottom > 10)
	{
		doc.getElementById("bottomMenu").style.pixelBottom = bottom;
	}
	else
	{ */
		var top = oTop + height + 30;
		doc.getElementById("bottomMenu").style.top = top + "px";
//		doc.getElementById("bottomMenu").style.pixelTop = top;
//	}
}

/*
function setControl(kBs)
{
	uValue.aWidth.value = screen.availWidth;
	uValue.aHeight.value = screen.availHeight;
	uValue.navName.value = navigator.appName;
	uValue.navVers.value = navigator.appVersion;
	uValue.navCpu.value = navigator.cpuClass;
	uValue.navPlatform.value = navigator.platform;
	uValue.userAgent.value = navigator.userAgent;

	uValue.kBsMax.value = kBs.Max;
	uValue.kBsMedel.value = kBs.Medel;
	uValue.uFilter.value = (bFilter) ? "true" : "false";
	uValue.uStyleFilter.value = (document.getElementById("firstTime").style.filter) ? "true" : "false";

	uValue.submit();
}
*/

function setMlevel()
{
//	document.getElementById("m" + level).className = "in " + level;
}

function swapClass(obj, klass)
{
//	alert("hej");
	if (obj.id != "m" + level)
	{
		obj.className = klass;
/*		obj.style.borderWidth = "2px"; */
	}
}

function swapClass0px(obj, klass)
{
	if (obj.id != "m" + level)
	{
		obj.className = klass;
		obj.style.borderWidth = "0px";
	}
}

function reConvToSendString(txt)
{
	if (!txt) return "";
	var i = 0;
	var sTxt = new Array();
//	sTxt[i++] = {"s":"\n", "r":"<br/>"};
//	sTxt[i++] = {"s":"\r\n", "r":"<br/>"};
	sTxt[i++] = {"s":"<br/>", "r":"\r\n"};

	for (i = 0; i < sTxt.length; i++)
	{
		while (txt.search(sTxt[i].s) > -1)
		{
			txt = txt.replace(sTxt[i].s,sTxt[i].r);
		}
	}

	return txt;
}

function convToSendString(txt)
{
	if (!txt) return "";
	var i = 0;
	var sTxt = new Array();
//	sTxt[i++] = {"s":"\n", "r":"<br/>"};
	sTxt[i++] = {"s":"\r\n", "r":"<br/>"};
	sTxt[i++] = {"s":"\n", "r":"<br/>"};

	for (i = 0; i < sTxt.length; i++)
	{
		while (txt.search(sTxt[i].s) > -1)
		{
			txt = txt.replace(sTxt[i].s,sTxt[i].r);
		}
	}

	return txt;
}



String.prototype.trim = function()
{
    // Use a regular expression to replace leading and trailing 
    // spaces with the empty string
    return this.replace(/(^\s*)|(\s*$)/g, "");
};

String.prototype.splitText = function(char, bNotTrim)
{
	if (!char) char = ",";
	var textArr = this.split(char);
	
	if (!bNotTrim)
	{
		for (var i = 0; i < textArr.length; i++)
		{
			textArr[i] = textArr[i].trim();
		}
	}

	return textArr;
};

String.prototype.findWord = function(txt, char, bCaseMatch)
{
	var thisArr = this.splitText(char);

	for (var i = 0; i < thisArr.length; i++)
	{
		if (bCaseMatch)
		{
			if (thisArr[i] == txt) return true;
		}
		else
		{
			if (thisArr[i].toLowerCase() == txt.toLowerCase()) return true;
		}
	}
	
	return false;


};

