var maxLength = 500;
var alerted = false;

var marker = null;
var geocoder;
var alreadyMarked = false;
var wwwchecked = false;

var IE = document.all?true:false;
if (!IE) document.captureEvents(Event.MOUSEMOVE);

document.onmousemove = getMouseXY;

// Temporary variables to hold mouse x-y pos.s
var tempX = 0;
var tempY = 0;

// Main function to retrieve mouse x-y pos.s

function getMouseXY(e) {
  if (IE) { // grab the x-y pos.s if browser is IE
    tempX = event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
    tempY = event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
  } else {  // grab the x-y pos.s if browser is NS
    tempX = e.pageX;
    tempY = e.pageY;
  }  
  // catch possible negative values in NS4
  if (tempX < 0){tempX = 0;}
  if (tempY < 0){tempY = 0;}  

  return true;
}

function taLimit() {
	if (document.ettan.beskrivning.value.length==maxLength && !alerted) {
		alert('Du kan ej använda fler än 500 tecken!')
		alerted = true;
	}
	return true;
}

function taCount() {
	if (document.ettan.beskrivning.value.length>maxLength) document.ettan.beskrivning.value=document.ettan.beskrivning.value.substring(0,maxLength);
	document.getElementById('teckenKvar').innerHTML = maxLength - document.ettan.beskrivning.value.length
}

function kollaAutoAdressToMap()
{
	var f = document.ettan;
	if (alreadyMarked == false && f.adress.value.length > 0 && f.pnr.value.length == 5 && f.port.value.length > 0)
		addressToMap(false);
}

function storeLatLong(lat,lng)
{
	document.ettan.lat.value = lat;
	document.ettan.lng.value = lng;
}

function showInfoRuta(x)
{
	var d = document.getElementById("infoRuta");
	d.innerHTML = x;
	d.style.left=(tempX+16)+'px';
	d.style.top=(tempY-5)+'px';
	
	d.style.display="block";
}

function hideInfoRuta()
{
	document.getElementById("infoRuta").style.display="none";
}

function kollaWWWruta(x)
{
	if (!wwwchecked)
	{
		alert("För att kunna ange information i detta fält måste ni klicka i ''Profileringsrutan'' ovan. Mer information om detta finns i rutan till höger");
		document.ettan.foretagsnamn.focus();
		document.ettan.foretagsnamn.blur();
	}
}

function linkCheckCheck(x)
{
	if (x.value != 'Ja'){
		
		document.ettan.beskrivning.value='';
			
		
		document.ettan.beskrivning.style.backgroundColor = "#CCCCCC";
		
		setCookie("currentLogoFilnamn", "");
		document.getElementById("filrutan").style.display='none';
		document.getElementById("filrutanoff").style.display='block';
		
		document.ettan.beskrivning.tabIndex = 1002;
		
		taCount();
		
		alreadyMarked = false;
		wwwchecked = false;
	}
	else
	{
		document.ettan.beskrivning.style.backgroundColor = "#FFFFFF";
		
		setCookie("currentLogoFilnamn", "");
		document.getElementById("filrutanoff").style.display='none';
		document.getElementById("filrutan").style.display='block';
		
		document.ettan.beskrivning.tabIndex = 19;
		
		wwwchecked = true;
	}
}

function laddaUppLogo()
{
	setCookie("okAttLaddaUppLogo","1");
	window.open("/laddaUppLogo.asp", "Logotype", "resizable=yes,width=640,height=480,scrollbars=1");
}

function loadGMap()
{
	if (GBrowserIsCompatible())
	{
		map = new GMap2(document.getElementById("googlemap"));
		geocoder = new GClientGeocoder();
		
		GEvent.addListener(
							map, "click", function(overlay, point)
							{
								if (!alreadyMarked)
								{
									if (!overlay)
									{
										marker = new GMarker(point, {draggable: true,bouncy:false});
																									
										GEvent.addListener(
											marker, "dragend", function()
											{
												storeLatLong(marker.getPoint().lat(), marker.getPoint().lng());
											}
										);
				
										map.addOverlay(marker);
										alreadyMarked = true;
									}
								}
								else
								{
									marker.setPoint(point);
								}
								storeLatLong(point.lat(), point.lng());
							}
						);
					
					
		var startPunkt = new GLatLng(61.98026726504401, 15.4248046875);
		
		map.setCenter(startPunkt, 5);
		map.addControl(new GSmallMapControl());
	}
}

function addressToMap(showError)
{
	var f = document.ettan;
	
	if (f.pnr.value == "" && f.port.value == "") return;
	
	
	var address = f.adress.value + ', ' + f.pnr.value + ' ' + f.port.value + ', Sweden';
	
	geocoder.getLatLng(
		address,
		function(point)
		{
			if ((!point) && showError)
			{
				alert("Kunde inte hitta kartposition för angiven adress.\nVänligen kontrollera din adress, eller markera manuellt på kartan.");
				storeLatLong("0", "0");
			}
			else if(point)
			{
				storeLatLong(point.lat(), point.lng());
			
				map.setCenter(point, 13);
				
				if (alreadyMarked == false)
				{
					marker = new GMarker(point, {draggable: true,bouncy:false});
					GEvent.addListener(
						marker, "dragend", function()
						{
							storeLatLong(marker.getPoint().lat(), marker.getPoint().lng());
						}
					);
					map.addOverlay(marker);
					alreadyMarked = true;
				}
				else
				{
					marker.setPoint(point);	
				}
			}
		}
	);
}

function popVillkor()
{
	var w = 650//screen.availWidth||screen.width;
	var h = 500//screen.availHeight||screen.height;
	var popped = window.open ("/abonnemangsvillkor.htm", "villkor","location=0,status=0,scrollbars=1,width="+w+",height="+h);
}

function kollaForm(x)
{

	if (x.lan.selectedIndex==0)
	{
		
		alert("Du måste välja län.");
		return false;
	}

	if (!(x.godkantVillkor.checked))
	{
		alert("Du måste godkänna våra villkor.");
		return false;
	}


	if (x.foretagsnamn.value == "" || x.fabrikatutfor.value == "" || x.tel.value == "" || x.keywords.value == "" || x.adress.value == "" || x.pnr.value == "" || x.port.value == "")
	{
		alert("Du måste ange information i alla obligatoriska fält (markerade med fet stil).");
		return false;
	}
	if (parseFloat(x.lat.value) + parseFloat(x.lng.value) == 0)
	{
		if (confirm("En position på kartan för er huvudsakliga försäljningsplats är obligatorisk att markera. Om det inte går exakt, försök att markera närmaste stad eller kommun.\n\nVill du prova en automatisk markering?"))
		{
			addressToMap(true);
			return false;
		}
		return false;
	}
	
	return true;
}

function baraSiffror(e)
{
	var keynum;
	if(window.event) // IE
	{
		keynum = e.keyCode;
	}
	else if(e.which) // Netscape/Firefox/Opera
	{
		keynum = e.which;
	}
	if (keynum == 32) return false;
	
	return ((keynum >= 0 && keynum <= 57) || (keynum >= 96 && keynum <= 105));
}