﻿function showSaveform()
{
	var sft = document.getElementById('saveRouteT');
	if (sft.style.display=='block')
	{
		sft.style.display = 'none';
	}
	else
	{
		sft.style.display = 'block';
	}
}

function saveRoute(f) {
	var fN = escape(f.fN.value);
	var fX = escape(f.fX.value);
	var fY = escape(f.fY.value);
	var tN = escape(f.tN.value);
	var tX = escape(f.tX.value);
	var tY = escape(f.tY.value);
	
	var m = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(m)) { m=''; }
	var e = 0;

	if (m.length<5) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }

	if (e==0) {
		makeRequest("action.asp?action=saveRoute&strEmail="+m+"&fN="+fN+"&fX="+fX+"&fY="+fY+"&tN="+tN+"&tX="+tX+"&tY="+tY,document.getElementById('returnedStatus'));
	}
}

function postTipsComment(f) {
	/*var i = escape(f.id.value);
	var c = escape(f.kommentar.value);
	var n = escape(f.name.value);
	var email = escape(f.e_adress.value);
	var e = 0;

	if (i.length<1) { e+=1; }
	if (c.length<5) { e+=1; document.getElementById("cError").style.display='inline'; } else { document.getElementById("cError").style.display='none'; }
	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (!validateEmail(email)) { e+=1; document.getElementById("xError").style.display='inline'; } else { document.getElementById("xError").style.display='none'; }

	if (e==0) {
		makeRequest("action.asp?action=postTipsComment&intID="+i+"&strComment="+c+"&strName="+n,document.getElementById('returnedStatus'));
	}*/
	
	var i = escape(f.id.value);
	var t = replaceSwedChars(f.topic.value);
	var n = replaceSwedChars(f.name.value);
	var m = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(m)) { m=''; }
	var p = escape(f.phone.value);
	var f = replaceSwedChars(f.fritext.value);
	var e = 0;

	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (m.length<5) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }
	if (f.length<1) { e+=1; document.getElementById("fError").style.display='inline'; } else { document.getElementById("fError").style.display='none'; }

	if (e==0) {
		document.getElementById("name").value = "";
		document.getElementById("email").value = "";
		document.getElementById("phone").value = "";
		document.getElementById("fritext").value = "";
		
		document.getElementById("content-narrow").innerHTML = "<h2>Tack,</h2><p>för att du tog dig tid att bidra till vårt arbete med att utveckla kollektivtrafiken i Mälardalen. Det finns inget viktigare för oss än våra kunder, så dina synpunkter betyder mycket för oss.</p><p>Med vänlig hälsning<br>Trafik i Mälardalen</p>";
		
		makeRequest("action.asp?action=postTipsComment&intID="+i+"&strTopic="+t+"&strName="+n+"&strEmail="+m+"&strPhone="+p+"&strText="+f,document.getElementById('returnedStatus'));
	}
}

function postNewsComment(f) {
	/*var i = escape(f.id.value);
	var c = escape(f.kommentar.value);
	var n = escape(f.name.value);
	var email = escape(f.e_adress.value);
	var e = 0;

	if (i.length<1) { e+=1; }
	if (c.length<5) { e+=1; document.getElementById("cError").style.display='inline'; } else { document.getElementById("cError").style.display='none'; }
	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (!validateEmail(email)) { e+=1; document.getElementById("xError").style.display='inline'; } else { document.getElementById("xError").style.display='none'; }

	if (e==0) {
		makeRequest("action.asp?action=postNewsComment&intID="+i+"&strComment="+c+"&strName="+n,document.getElementById('returnedStatus'));
	}*/
	
	var i = escape(f.id.value);
	var t = replaceSwedChars(f.topic.value);
	var n = replaceSwedChars(f.name.value);
	var m = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(m)) { m=''; }
	var p = escape(f.phone.value);
	var f = replaceSwedChars(f.fritext.value);
	var e = 0;

	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (m.length<5) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }
	if (f.length<1) { e+=1; document.getElementById("fError").style.display='inline'; } else { document.getElementById("fError").style.display='none'; }

	if (e==0) {
		document.getElementById("name").value = "";
		document.getElementById("email").value = "";
		document.getElementById("phone").value = "";
		document.getElementById("fritext").value = "";
		
		document.getElementById("content-narrow").innerHTML = "<h2>Tack,</h2><p>för att du tog dig tid att bidra till vårt arbete med att utveckla kollektivtrafiken i Mälardalen. Det finns inget viktigare för oss än våra kunder, så dina synpunkter betyder mycket för oss.</p><p>Med vänlig hälsning<br>Trafik i Mälardalen</p>";
		
		makeRequest("action.asp?action=postNewsComment&intID="+i+"&strTopic="+t+"&strName="+n+"&strEmail="+m+"&strPhone="+p+"&strText="+f,document.getElementById('returnedStatus'));
	}
}

function postContactRequest(f) {
	var n = replaceSwedChars(f.name.value);
	var m = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(m)) { m=''; }
	var p = escape(f.phone.value);
	var f = replaceSwedChars(f.fritext.value);
	var e = 0;

	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (m.length<5) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }
	if (f.length<1) { e+=1; document.getElementById("fError").style.display='inline'; } else { document.getElementById("fError").style.display='none'; }

	if (e==0) {
		document.getElementById("content-narrow").innerHTML = "<p>Ett mail med din fråga har skickats till TiM. Vårt mål är att besvara alla frågor inom en vecka. Tack för att du hjälper oss att bli bättre!</p><p>Med vänlig hälsning<br>Trafik i Mälardalen</p>";
		makeRequest("action.asp?action=postContactRequest&strName="+n+"&strEmail="+m+"&strPhone="+p+"&strText="+f,document.getElementById('returnedStatus'));
	}
}

function postOpinionRequest(f) {
	var t = replaceSwedChars(f.topic.value);
	var n = replaceSwedChars(f.name.value);
	var m = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(m)) { m=''; }
	var p = escape(f.phone.value);
	var f = replaceSwedChars(f.fritext.value);
	var e = 0;

	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (m.length<5) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }
	if (f.length<1) { e+=1; document.getElementById("fError").style.display='inline'; } else { document.getElementById("fError").style.display='none'; }

	if (e==0) {
		makeRequest("action.asp?action=postOpinionRequest&strTopic="+t+"&strName="+n+"&strEmail="+m+"&strPhone="+p+"&strText="+f,document.getElementById('returnedStatus'));
	}
}

function postNomination(f) {
	var m = escape(f.nominee.value);
	var n = escape(f.workon.value);
	var o = escape(f.nominator.value);
	var p = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(p)) { p=''; }

	var e = 0;

	if (m.length<1) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }
	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (o.length<1) { e+=1; document.getElementById("oError").style.display='inline'; } else { document.getElementById("oError").style.display='none'; }
	if (p.length<5) { e+=1; document.getElementById("pError").style.display='inline'; } else { document.getElementById("pError").style.display='none'; }

	if (e==0) {
		document.getElementById("content-narrow").innerHTML = "<h2>Tack,</h2><p>för att du genom din nominering bidragit till att uppmärksamma personer och organisationer som utvecklar Stockholm-Mälarregionen!</p><p>Med vänlig hälsning<br>Trafik i Mälardalen</p>";
		makeRequest("action.asp?action=postNomination&nominee="+m+"&workon="+n+"&nominator="+o+"&email="+p, document.getElementById('returnedStatus'));
	}
}

function postContactCompetitionRequest(f) {
	var nr = escape(f.nr.value)
	var id = escape(f.gameid.value)
	var n = escape(f.name.value);
	var m = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(m)) { m=''; }
	var p = escape(f.phone.value);
	var a = escape(f.address.value);
	var f = escape(f.fritext.value);
	var e = 0;

	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (m.length<5) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }
	if (f.length<1) { e+=1; document.getElementById("fError").style.display='inline'; } else { document.getElementById("fError").style.display='none'; }

	if (e==0) {
		divid = "returnedStatus" + id;
		document.getElementById("content-narrow").innerHTML = "<p>Ett mail med ditt tävlingssvar har skickats till TiM.</p><p>Tack för din medverkan!</p>";
		makeRequest("action.asp?action=postContactCompetitionRequest&gameid="+id+"&strName="+n+"&strEmail="+m+"&strPhone="+p+"&strAddress="+a+"&strText="+f,document.getElementById(divid), nr);
	}
}

function postNewsletterRequest(f) {
	var n = escape(f.name.value);
	var m = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(m)) { m=''; }
	var e = 0;

	if (m.length<1) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }
	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }

	if (e==0) {
		document.getElementById("content-narrow").innerHTML = "<h2>Tack,</h2><p>vi har mottagit din anmälan till vårt nyhetsbrev.</p><p>Med vänlig hälsning<br>Trafik i Mälardalen</p>";
		makeRequest("action.asp?action=postNewsletterRequest&name="+n+"&mail="+m, document.getElementById('returnedStatus'));
	}
}

function postTipRequest(f) {
	
	var n = escape(f.name.value);
	var fn = escape(f.f_name.value);
	var fm = escape(f.f_email.value);

	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(fm)) { fm=''; }
	var e = 0;

	if (fm.length<1) { e+=1; document.getElementById("t_mError").style.display='inline'; } else { document.getElementById("t_mError").style.display='none'; }
	if (n.length<1) { e+=1; document.getElementById("t_nError").style.display='inline'; } else { document.getElementById("t_nError").style.display='none'; }
	if (fn.length<1) { e+=1; document.getElementById("t_fError").style.display='inline'; } else { document.getElementById("t_fError").style.display='none'; }

	if (e==0) {
		document.getElementById("content-narrow").innerHTML = "<h2>Tack,</h2><p>ditt tips har nu skickats till din vän.</p><p>Med vänlig hälsning<br>Trafik i Mälardalen</p>";
		makeRequest("action.asp?action=postTipRequest&name="+n+"&f_name="+fn+"&mail="+fm, document.getElementById('returnedStatus'));
	}
}

function makeRequest(url,target, nr) {
	var httpRequest;
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		httpRequest = new XMLHttpRequest();
		if (httpRequest.overrideMimeType) {
			httpRequest.overrideMimeType('text/xml');
		}
	}
	else if (window.ActiveXObject) { // IE
		try { httpRequest = new ActiveXObject("Msxml2.XMLHTTP"); }
		catch (e) {
			try { httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); }
			catch (e) {}
		}
	}

	if (!httpRequest) {
		alert('Giving up :( Cannot create an XMLHTTP instance');
		return false;
	}
	httpRequest.onreadystatechange = function() { alertContents(httpRequest,target, nr); };
	httpRequest.open('GET', url, true);
	httpRequest.send(null);
}

function resetForm(f) {
	var t;
	var n;
	var v;

	for (var x=0; x<f.length;x++ )
	{
		t = f[x].type;
		if (f[x].type=='textarea' || f[x].type=='text') { f[x].value = ''; }
//		alert('typ: '+ t +', namn: '+n+', värde: '+v);
	}
}

function alertContents(httpRequest,target, nr) {
	if (httpRequest.readyState == 4) {
		if (httpRequest.status == 200) {
			target.innerHTML = (httpRequest.responseText);
			/*resetForm(document.forms[nr]);
			document.getElementsByTagName('fieldset')[nr].style.display='none';*/
		} else {
			alert('There was a problem with the request.');
		}
	}
}

//Show Extended Info (Reseplaneraren)
function sei(id,t) {
	document.getElementById('saveRouteT').style.display = 'none';
	if (!t.isOpen) {
		t.isOpen = true;
		t.style.backgroundPosition = '0px -13px';
		document.getElementById('routeInfo'+id).className = 'extendedInfoVisible';
	} else {
		t.isOpen = false;
		t.style.backgroundPosition = '0px 0px';
		document.getElementById('routeInfo'+id).className = 'extendedInfoHidden';
	}
}

//Show Price Info (Reseplaneraren)
function spi(w,id,t) {
	document.getElementById('saveRouteT').style.display = 'none';
	if (!t.isOpen) {
		t.isOpen = true;
		t.style.backgroundPosition = '0px -13px';
		document.getElementById('routePriceInfo_'+w+id).className = 'extendedInfoVisible';
	} else {
		t.isOpen = false;
		t.style.backgroundPosition = '0px 0px';
		document.getElementById('routePriceInfo_'+w+id).className = 'extendedInfoHidden';
	}
}


var mapDefaultX = 1607190;
var mapDefaultY = 6581234;

function map(w,x,y,z) {
	var fc = (document.forms[0]['fromCoords'].value);
	var fs = (document.forms[0]['fromString'].value);
	var tc = (document.forms[0]['toCoords'].value);
	var ts = (document.forms[0]['toString'].value);

	if (w==null) {
		w = fc ? 'to' : 'from';
	} else {
		// Vi verkar veta vad w är, och då hittar vi dens värde.....
		if (document.forms[0][w+'Coords'].value!=''){
			var cArr = document.forms[0][w+'Coords'].value.split("|");
			var x = cArr[0];
			var y = cArr[1];
			var z = 0;
		}
	}
	window.open('map.asp?w='+w+'&x='+x+'&y='+y+'&z='+z,'Get'+w+'StringFromMap','width=550,height=560,status=no');
}
function setOption(s,t,v) {
	var newOption = document.createElement('option');
	
	newOption.text = t.replace(/aaa/,'å');
	newOption.value = v.replace(/aaa/,'å');
	s.options[0] = newOption;
	s.options.length = 1;
	s.options.selectedIndex = 0;
}


function timeCheck()
{
	var x = document.getElementById("time").value;
	var str = "";
	var d = new Date();
	
	for (i=0; i<x.length; i++)
	{
			if (!isNaN(x.charAt(i)))
			{
				str = str + x.charAt(i);
			}
	}
	if (str.length == 1)
	{
		document.getElementById("time").value = str + ":00";
		/*document.getElementById("time").style.borderTop = "1px solid #d4d4d4";
		document.getElementById("time").style.borderLeft = "1px solid #d4d4d4";
		document.getElementById("time").style.borderBottom = "1px solid white";
		document.getElementById("time").style.borderRight = "1px solid white";*/
	}
	else if (str.length == 2)
	{
		if (str.charAt(0) == 1 || str.charAt(0) == 0)
		{
			document.getElementById("time").value = str + ":00";
			/*document.getElementById("time").style.borderTop = "1px solid #d4d4d4";
			document.getElementById("time").style.borderLeft = "1px solid #d4d4d4";
			document.getElementById("time").style.borderBottom = "1px solid white";
			document.getElementById("time").style.borderRight = "1px solid white";*/
		}
		else if (str.charAt(0) == 2 && str.charAt(1) < 5)
		{
			document.getElementById("time").value = str + ":00";
			/*document.getElementById("time").style.borderTop = "1px solid #d4d4d4";
			document.getElementById("time").style.borderLeft = "1px solid #d4d4d4";
			document.getElementById("time").style.borderBottom = "1px solid white";
			document.getElementById("time").style.borderRight = "1px solid white";*/
		}
		else
		{
			if (d.getMinutes() < 10)
			{
				document.getElementById("time").value = d.getHours() + ":0" + d.getMinutes();
			}
			else
			{
				document.getElementById("time").value = d.getHours() + ":" + d.getMinutes();
			}
		}
	}
	else if (str.length == 3)
	{
		if (str.charAt(1) < 6 )
		{
			document.getElementById("time").value = str.charAt(0) + ":" + str.charAt(1) + str.charAt(2);
			/*document.getElementById("time").style.borderTop = "1px solid #d4d4d4";
			document.getElementById("time").style.borderLeft = "1px solid #d4d4d4";
			document.getElementById("time").style.borderBottom = "1px solid white";
			document.getElementById("time").style.borderRight = "1px solid white";*/
		}
		else
		{
			if (d.getMinutes() < 10)
			{
				document.getElementById("time").value = d.getHours() + ":0" + d.getMinutes();
			}
			else
			{
				document.getElementById("time").value = d.getHours() + ":" + d.getMinutes();
			}
		}
	}
	else if (str.length == 4)
	{
		if (str.charAt(0) == 1 && str.charAt(2) < 6 || str.charAt(0) == 0 && str.charAt(2) < 6)
		{
			document.getElementById("time").value = str.charAt(0) + str.charAt(1) + ":" + str.charAt(2) + str.charAt(3);
			/*document.getElementById("time").style.borderTop = "1px solid #d4d4d4";
			document.getElementById("time").style.borderLeft = "1px solid #d4d4d4";
			document.getElementById("time").style.borderBottom = "1px solid white";
			document.getElementById("time").style.borderRight = "1px solid white";*/
		}
		else if (str.charAt(0) == 2 && str.charAt(1) < 4 && str.charAt(2) < 6)
		{
			document.getElementById("time").value = str.charAt(0) + str.charAt(1) + ":" + str.charAt(2) + str.charAt(3);
			/*document.getElementById("time").style.borderTop = "1px solid #d4d4d4";
			document.getElementById("time").style.borderLeft = "1px solid #d4d4d4";
			document.getElementById("time").style.borderBottom = "1px solid white";
			document.getElementById("time").style.borderRight = "1px solid white";*/
		}
		else
		{
			if (d.getMinutes() < 10)
			{
				document.getElementById("time").value = d.getHours() + ":0" + d.getMinutes();
			}
			else
			{
				document.getElementById("time").value = d.getHours() + ":" + d.getMinutes();
			}
		}		
	}
	else
	{
		if (d.getMinutes() < 10)
		{
			document.getElementById("time").value = d.getHours() + ":0" + d.getMinutes();
		}
		else
		{
			document.getElementById("time").value = d.getHours() + ":" + d.getMinutes();
		}
		//document.getElementById("time").style.border = "thin solid red";
		//document.getElementById("timeError").style.display = "";
	}
}

function validateEmail(email)
{
	var patt = /(\w[-._\w]*\w@\w[-._\w]*\w\.\w{2,3})/;
	if (patt.test(email))
	{
		return true;
	}
	else
	{
		return false;	
	}
}

function step1() {
	xpos = screen.width/2-350;
	url = "steps.asp?image=tim_screenshots_sokresa.jpg";
	thewindow = window.open (url,"thewindow","location=0,status=0,scrollbars=0,width=640,height=480");
  	thewindow.moveTo(xpos,100);
}

function step2() {
	xpos = screen.width/2-350;
	url = "steps.asp?image=tim_screenshots_gortillminresa.jpg";
	thewindow = window.open (url,"thewindow","location=0,status=0,scrollbars=0,width=640,height=480");
  	thewindow.moveTo(xpos,100);
}

function step3() {
	xpos = screen.width/2-350;
	url = "steps.asp?image=tim_screenshots_flerpriser.jpg";
	thewindow = window.open (url,"thewindow","location=0,status=0,scrollbars=0,width=640,height=480");
  	thewindow.moveTo(xpos,100);
}

function changeNews() {
	var value = document.getElementById("newsdate").value;
	if (value != "") {
		var values = value.split("¤");
		document.newsForm.action = "news.asp?month="+values[0]+"&year="+values[1];
	} else {
		document.newsForm.action = "news.asp";
	}
	document.newsForm.submit();	
}

function postFAQ(f) {
	var n = replaceSwedChars(f.name.value);
	var m = escape(f.email.value);
	var regx  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!regx.test(m)) { m=''; }
	var f = replaceSwedChars(f.fritext.value);
	var e = 0;

	if (n.length<1) { e+=1; document.getElementById("nError").style.display='inline'; } else { document.getElementById("nError").style.display='none'; }
	if (m.length<5) { e+=1; document.getElementById("mError").style.display='inline'; } else { document.getElementById("mError").style.display='none'; }
	if (f.length<1) { e+=1; document.getElementById("fError").style.display='inline'; } else { document.getElementById("fError").style.display='none'; }

	if (e==0) {
		/*f.name.value = "";
		f.fritext.value = "";*/
		makeRequest("action.asp?action=postFAQ&strName="+n+"&strEmail="+m+"&strText="+f,document.getElementById('returnedStatus'));
	}
}


function changeFilteredNews() {
	var value = document.getElementById("newsdate").value;
	if (value != "") {
		var values = value.split("¤");
		document.newsForm.action = "info.asp?month="+values[0]+"&year="+values[1];
	} else {
		document.newsForm.action = "info.asp";
	}
	document.newsForm.submit();	
}

function replaceSwedChars(strString) {
	strString = strString.replace('Å', 'xxxAringxxx');
	strString = strString.replace('å', 'xxxaringxxx');
	strString = strString.replace('Ä', 'xxxAumlxxx');
	strString = strString.replace('ä', 'xxxaumlxxx');
	strString = strString.replace('Ö', 'xxxOumlxxx');
	strString = strString.replace('ö', 'xxxoumlxxx');
	
	return strString;
}
 





 