// JavaScript Document

/* GLOBALS */
var request = null;
var lang = null;
var listBox = null;
var tmpLstTxt = null;
var antBox = null;

// STANDARD FUNCTIONS
function tafMain(lang)
{
	var winUrl = 'tafpop.php?LNG=' + lang;
	var objMed = window.open(winUrl,'TAF','height=430,width=380,toolbar=no,status=no,titlebar=no,scrollbars=0');
	var x = (screen.width / 2) - 200;
	var y = (screen.height / 2) - 200;
	objMed.moveTo(x,y);
	objMed.focus();
}

function loadIframe(lng,aid)
{
	var theURL = "prodmainifrm.php?l=" + lng + "#" + aid;
	document.getElementById("prodmain").src = theURL; 
} 

function cngPic(num,stat)
{
	var picObj = document.getElementById("pic_" + num);
	
	if(stat > 0)
	{
		var trgObj = document.getElementById("trg_" + num);
		picObj.style.left = findPosX(trgObj) + "px";
		picObj.style.top = findPosY(trgObj) + "px";
		picObj.style.visibility = "visible";
	}
	else
	{
		picObj.style.visibility = "hidden";
	}
}

function lstCalc(PID,sek_pris,eur_pris)
{
	var sek_sum_id = "sek_" + PID;
	var eur_sum_id = "eur_" + PID;
	var qty_id = "sel_" + PID;
	var sek_old_sum = parseInt(document.getElementById(sek_sum_id).innerHTML);
	var eur_old_sum = parseInt(document.getElementById(eur_sum_id).innerHTML);
	var sek_old_tot = parseInt(document.getElementById("sek_Tot").innerHTML);
	var eur_old_tot = parseInt(document.getElementById("eur_Tot").innerHTML);
	var sek_new_sum = parseInt(sek_pris) * parseInt(document.getElementById(qty_id).value);
	var eur_new_sum = parseInt(eur_pris) * parseInt(document.getElementById(qty_id).value);
	
	if(parseInt(sek_new_sum) > parseInt(sek_old_sum))
	{
		var sek_diff = parseInt(sek_new_sum) - parseInt(sek_old_sum);
		var eur_diff = parseInt(eur_new_sum) - parseInt(eur_old_sum);
		var sek_new_tot = parseInt(sek_old_tot) + parseInt(sek_diff);
		var eur_new_tot = parseInt(eur_old_tot) + parseInt(eur_diff);
	}
	else
	{
		var sek_diff = parseInt(sek_old_sum) - parseInt(sek_new_sum);
		var eur_diff = parseInt(eur_old_sum) - parseInt(eur_new_sum);
		var sek_new_tot = parseInt(sek_old_tot) - parseInt(sek_diff);
		var eur_new_tot = parseInt(eur_old_tot) - parseInt(eur_diff);
	}
	
	document.getElementById(sek_sum_id).innerHTML = "";
	document.getElementById(eur_sum_id).innerHTML = "";
	document.getElementById("sek_Tot").innerHTML = "";
	document.getElementById("eur_Tot").innerHTML = "";
	document.getElementById(sek_sum_id).innerHTML = sek_new_sum;
	document.getElementById(eur_sum_id).innerHTML = eur_new_sum;
	document.getElementById("sek_Tot").innerHTML = sek_new_tot;
	document.getElementById("eur_Tot").innerHTML = eur_new_tot;
}

function gstLstSub()
{
	if(parseInt(document.getElementById("sek_Tot").innerHTML) == 0)
  	{
     	alert("Du har inte valt någon produkt!\nYou have not chosen any product!");
	 	return false;
  	}
	else
	{
		return true;
	}
}

function chkAuthSub()
{
	if(document.authFrm.fname.value.length < 2)
	{
		document.getElementById("fname").className = "regerr";
		alert("Förnamn är obligatoriskt!\nFirst name is mandatory!");
		return false;
	}
	else if(document.authFrm.lname.value.length < 2)
	{
		document.getElementById("lname").className = "regerr";
		alert("Efternamn är obligatoriskt!\nLast name is mandatory!");
		return false;
	}
	else if(document.authFrm.adress.value.length < 2)
	{
		document.getElementById("adress").className = "regerr";
		alert("Adress är obligatoriskt!\nAddress is mandatory!");
		return false;
	}
	else if(document.authFrm.zip.value.length < 2)
	{
		document.getElementById("zip").className = "regerr";
		alert("Postnummer är obligatoriskt!\nZip code is mandatory!");
		return false;
	}
	else if(document.authFrm.city.value.length < 2)
	{
		document.getElementById("city").className = "regerr";
		alert("Stad är obligatoriskt!\nCity is mandatory!");
		return false;
	} 
	else if(document.authFrm.email.value.length < 6)
	{
		document.getElementById("email").className = "regerr";
		alert("Epost är obligatoriskt!\nEmail is mandatory!");
		return false;
	}    
	else if(document.authFrm.tel.value.length < 6)
	{
		document.getElementById("tel").className = "regerr";
		alert("Telefon är obligatoriskt!\nPhone is mandatory!");
		return false;
	}
	//else if(document.authFrm.terms.checked == false)
	//{
	//	alert("Du måste godkänna medlemsvillkoren.");
	//	return false;
	//}
	else
		return true;
}

function chkSearch()
{
	if(document.getElementById("q").value.length < 1)
		return false;
	else
		return true;
}

function showTermsPop()
{
	var tBox = document.getElementById("termBox");
	var trg = document.getElementById("termTrg");
	var showX = findPosX(trg) - 400;
	var showY = findPosY(trg) - 300;
	tBox.style.left = showX + "px";
	tBox.style.top = showY + "px";
	tBox.style.visibility = "visible";
}

function hideTermsPop()
{
	document.getElementById("termBox").style.visibility = "hidden";
}

function findPosX(obj)
{
	var curleft = 0;
	if(obj.offsetParent)
	{
    	while(1) 
        {
        	curleft += obj.offsetLeft;
          	if(!obj.offsetParent)
            	break;
          	obj = obj.offsetParent;
        }
	}
    else if(obj.x)
	{
    	curleft += obj.x;
	}
    return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
    if(obj.offsetParent)
	{
    	while(1)
        {
        	curtop += obj.offsetTop;
          	if(!obj.offsetParent)
            	break;
          	obj = obj.offsetParent;
        }
	}
    else if(obj.y)
	{
    	curtop += obj.y;
	}
    return curtop;
}

// AJAX TAF FUNCTIONS
function loadTAF(lng,hst,pid)
{
	var tBox = document.getElementById("tafBox");
	var txt = "";
	if(lng == "en")
		txt += "Your friends email:<br />";
	else
		txt += "Din väns epost:<br />";
	txt += '<input type="text" id="fMail" class="searchbox" maxlength="100" /><br />';
	if(lng == "en")
		txt += "Your email:<br />";
	else
		txt += "Din epost:<br />";
	txt += '<input type="text" id="eMail" class="searchbox" maxlength="100" />';
	if(lng == "en")
		txt += '<div style="padding-left:95px"><a href="JavaScript:void(0)" onclick="sendTAF(\'' + lng + '\',\'' + hst + '\',' + pid + ')" class="textlinks"><b>[Send]</b></a></div>';
	else
		txt += '<div style="padding-left:95px"><a href="JavaScript:void(0)" onclick="sendTAF(\'' + lng + '\',\'' + hst + '\',' + pid + ')" class="textlinks"><b>[Skicka]</b></a></div>';
	tBox.innerHTML = "";
	tBox.innerHTML = txt;
}

function sendTAF(lng,hst,pid)
{
	var tBox = document.getElementById("tafBox");
	var vMail = document.getElementById("fMail").value;
	var eMail = document.getElementById("eMail").value;
	if(vMail.length > 0 && eMail.length > 0)
	{
		var addUrl = "http://" + hst + "/tafmail.php?l=" + lng + "&pid=" + pid + "&frmail=" + eMail + "&tomail=" + vMail;
		httpRequest("GET",addUrl,true,reciveTAF);
	}
	document.getElementById("fMail").value = "";
	document.getElementById("eMail").value = "";
	tBox.innerHTML = "";
	if(lng == "en")
		tBox.innerHTML = "Thank you!";
	else
		tBox.innerHTML = "Tack!";
}

function reciveTAF()
{
	if(request.readyState == 4)
	{
		if(request.status == 200)
		{
			var tmp = request.responseText;
		}
	}
}

// AJAX LIST FUNCTIONS
function sendList(LGE,LID,PID,HST)
{
	lang = LGE;
	var lstBid = "box_" + PID;
	var lstSid = "sel_" + PID;
	var lstAnt = "ant_" + PID;
	var nyAnt = document.getElementById(lstSid).value;
	antBox = document.getElementById(lstAnt);
	listBox = document.getElementById(lstBid);
	tmpLstTxt = listBox.innerHTML;
	listBox.innerHTML = "";
	listBox.innerHTML = '<img src="brollop_pics/laddar.gif" border="0">';
	var addUrl = "http://" + HST + "/listedit.php?lid=" + LID + "&pid=" + PID + "&nyq=" + nyAnt;
	httpRequest("GET",addUrl,true,lstRecive);
}

function lstRecive()
{
	if(request.readyState == 4)
	{
		if(request.status == 200)
		{
			antBox.innerHTML = "";
			antBox.innerHTML = request.responseText;
			listBox.innerHTML = "";
			if(lang == "en")
				listBox.innerHTML = "Done!";
			else
				listBox.innerHTML = "Klart!";
			window.setTimeout('lstBoxReturn()',1500);
		}
	}
}

function lstBoxReturn()
{
	listBox.innerHTML = "";
	listBox.innerHTML = tmpLstTxt;
}


// AJAX PRODUCT FUNCTIONS
function purSend(LGE,LID,PID,CID,BID,HST)
{
	lang = LGE;
	var qvant = document.getElementById("selQty").value;
	var PURbox = document.getElementById("purBox");
	PURbox.innerHTML = "";
	PURbox.innerHTML = '<div style="padding-left: 24px"><img src="brollop_pics/laddar.gif" border="0"></div>';
	var addUrl = "http://" + HST + "/prodadd.php?lid=" + LID + "&pid=" + PID + "&cid=" + CID + "&bid=" + BID + "&qty=" + qvant;
	httpRequest("GET",addUrl,true,purRecive);
}

function purRecive()
{
	if(request.readyState == 4)
	{
		if(request.status == 200)
		{
			var PURbox = document.getElementById("purBox");
			PURbox.innerHTML = "";
			if(lang == "en")
				PURbox.innerHTML = "The product was added to your list!";
			else
				PURbox.innerHTML = "Produkten är lagd till er lista!";
		}
	}
}


// AJAX MAIN FUNCTIONS
function httpRequest(reqType,url,asynch,respHandle)
{
	if(window.XMLHttpRequest)
	{
		request = new XMLHttpRequest();
	}
	else if(window.ActiveXObject)
	{
		request = new ActiveXObject("Msxml2.XMLHTTP");
		if(!request)
		{
			request = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	if(request)
	{
		if(reqType.toLowerCase() != "post")
		{
			initReq(reqType,url,asynch,respHandle);
		}
		else
		{
			var args = arguments[4];
			if(args != null && args.length > 0)
			{
				initReq(reqType,url,asynch,respHandle,args);
			}
		}
	}
	else
	{
		alert("Din webläsare kan inte hantera denna applikation!\nYour browser can't handle this application!");
	}
}

function initReq(reqType,url,bool,respHandle)
{
	try
	{
		request.onreadystatechange = respHandle;
		request.open(reqType,url,bool);
		if(reqType.toLowerCase() == "post")
		{
			request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
			request.send(arguments[4]);
		}
		else
		{
			request.send(null);
		}
	}
	catch(errv)
	{
		alert("Servern upptagen, försök igen!\nServer busy, try again!\nError: " + errv.message);
	}
}


