var chartUrl = "/img/?data=";

var excelLink = "";
var xmlLink = "";
var excelYearLink = "";


// Order: startDay, startMonth, startYear, endDay, endMonth, endYear, startWeek
var dateArray = [ 0, 0, 0, 0, 0, 0, 0 ];
var res = false;

function loadExcel()
{
	document.location = excelLink;
}

function loadExcelYear()
{
	changeExcelYearLink();
	document.location = excelYearLink;
}

function loadXml()
{
	document.location = xmlLink;
}

// This array needs to be formatted on each refreshImage
function formatDateArray() 
{
	dateArray = [ 0, 0, 0, 0, 0, 0, 0 ];
}

function changeExportLinks()
{
	changeExcelLink();
	changeXmlLink();
}

// Reconstruct the excel link
function changeExcelLink(name)
{
	var ts = document.forms['graphForm']['ts'].value;	
	var link =
		"?fragment=taulukko" 		   + 
		"&startday=" 	+ dateArray[0] +
		"&startmonth=" 	+ dateArray[1] +
		"&year=" 		+ dateArray[2] +
		"&endday=" 		+ dateArray[3] + 
		"&endmonth=" 	+ dateArray[4] +
		"&endyear=" 	+ dateArray[5] +
		"&week=" 		+ dateArray[6] +
		"&ts="			+ ts 		   +
		"&excel=";
	//document.getElementById('excel_export').href = link;
	excelLink = link;
}

// Reconstruct the excel link
function changeExcelYearLink()
{
	var ts = document.forms['graphForm']['ts'].value;
	var year = document.forms['graphForm']['excelYear'].value;
	var link =
		"?fragment=taulukko"   + 
		"&startday=0" +
		"&startmonth=0" +
		"&year=" 		+ year +
		"&endday=0" +
		"&endmonth=0" +
		"&endyear=0" +
		"&week=0" +
		"&ts="			+ ts   +
		"&excel=";
	//document.getElementById('excel_export').href = link;
	excelYearLink = link;
}

// Reconstruct the xml link
function changeXmlLink(name)
{
	var ts = document.forms['graphForm']['ts'].value;	
	var link =
		"?startday=" 	+ dateArray[0] +
		"&startmonth=" 	+ dateArray[1] +
		"&startyear=" 	+ dateArray[2] +
		"&endday=" 		+ dateArray[3] + 
		"&endmonth=" 	+ dateArray[4] +
		"&endyear=" 	+ dateArray[5] +
		"&startweek=" 	+ dateArray[6] +
		"&ts="			+ ts 		   +
		"&xml=";
	//document.getElementById('xml_export').href = link;
	xmlLink = link;
}

// Image auto refresh
function AutoRefreshImg ( name, rate )
{
  this.img = document.images[name];
  if (this.img)
  {
    this.img.srcOrig = this.img.src; 
    document.rfs[document.rfs.length] = this;
    this.interval = setInterval("document.rfs["+(document.rfs.length-1)+"].refresh()", rate*1000);
  }
} 

// xyz
AutoRefreshImg.prototype.refresh = function ()
{
  var now = new Date ();
  this.img.src = this.img.srcOrig;
}

// xyz
AutoRefreshImg.prototype.destroy = function ()
{
  clearInterval(this.interval); 
}

// Sets the default values for the graph on each page load
function setGraphDefaultSelections()
{
	var url = window.location.href;
	if (url.indexOf("?view=table")==-1)
	{
		document.forms['graphForm']['view'].value = 1;
		document.forms['graphForm']['nakyma'][0].checked = true;

		refreshImage();
	}
}

function setGraphDefaultSelectionsNew(ts)
{
	var url = window.location.href;
	if (url.indexOf("?view=table")==-1)
	{
		document.forms['graphForm']['ts'].value = ts;
		document.forms['graphForm']['view'].value = 1;
		document.forms['graphForm']['nakyma'][0].checked = true;

		refreshImage();
	}
}

// Refresh image after selection
function refreshImage() 
{
	loadingAnimation('ajax-loading',true);
	var drawfreq = 0;   
	var ecotransfer = 0;
	var phystransfer = 0;
	var ts = document.forms['graphForm']['ts'].value;
	var view = document.forms['graphForm']['view'].value;
	var language = document.forms['graphForm']['language'].value;
	formatDateArray();
	// Purkka-liima-ratkaisu, joka estää ei halutun cacheamisen
    var dt = new Date(); dt = dt.getTime();	
	
	// Valitun piirtotiheyden hakeminen
	for (i=0;i<document.forms['graphForm']['drawfreq'].length;i++) {
		if (document.forms['graphForm']['drawfreq'][i].checked) drawfreq = document.forms['graphForm']['drawfreq'][i].value;
	}
	
	switch(view)
	{
		case "1": // Week
	    	var time = document.forms['graphForm']['unit'].options[document.forms['graphForm']['unit'].selectedIndex].value;
	    	time = time.split("/");    	
			dateArray[6]=time[0]; // startWeek
			dateArray[2]=time[1]; // startYear
  		break;
  		
		case "2": // Month
	    	var time = document.forms['graphForm']['unit2'].options[document.forms['graphForm']['unit2'].selectedIndex].value;
	    	time = time.split("/")
	 		dateArray[1]=time[0]; // startMonth
			dateArray[2]=time[1]; // startYear
 		break;
 		
		case "3": // Free selection
			var time = document.getElementById('show_visibilityBegins').innerHTML;
			var time2 = document.getElementById('show_visibilityEnds').innerHTML;

			// Exit the script if the values are not set
			if (time=="" || time2=="")
			{
				var today = new Date();
				var date = today.getDate();
				var month = today.getMonth() + 1;
				var year = today.getFullYear();
				document.getElementById('show_visibilityBegins').innerHTML = date + "." + month + "." + year;
				document.getElementById('show_visibilityEnds').innerHTML = date + "." + month + "." + year;
				time = date + "." + month + "." + year;
				time2 = time;
			}
			time = time.split(".",3);
			time2 = time2.split(".",3);
			
			// year, month, day
			var dt1 = new Date(time[2],time[1],time[0]);
			var dt2 = new Date(time2[2],time2[1],time2[0]);
			
			if (dt1>dt2) 
			{
				alert(TIME_SELECT_ERROR_MSG);
				//alert("Valitsemasi aikaväli on väärä, koska loppupäivämäärä esiintyy ennen alkupäivämäärää!");
				loadingAnimation('ajax-loading',false);
				return;
			}
								
	    	dateArray[0]=time[0]; // startDay
	    	dateArray[1]=time[1]; // startMonth
	    	dateArray[2]=time[2]; // startYear
	    	dateArray[3]=time2[0]; // endDay
	    	dateArray[4]=time2[1]; // endMonth
	    	dateArray[5]=time2[2]; // endYear
	    	
			StatisticsDataServlet.getTimeIntervalInMilliseconds(dateArray, true, showWeek);
			StatisticsDataServlet.getTimeIntervalInMilliseconds(dateArray, false, showMonth);
 			break;
 		
		case "4": // Year
	    	var time = document.forms['graphForm']['unit3'].options[document.forms['graphForm']['unit3'].selectedIndex].value;
	    	time = time.split("/");
			dateArray[2]=time[1]; // startYear
 		break;
 		default:
 			var time = document.forms['graphForm']['unit'].options[document.forms['graphForm']['unit'].selectedIndex].value;
	    	time = time.split("/");    	
			dateArray[6]=time[0]; // startWeek
			dateArray[2]=time[1]; // startYear
		break;
		
	}
	
	if (document.forms['graphForm']['fyyssiirto'])
	{
		if (document.forms['graphForm']['fyyssiirto'].checked) phystransfer = 1;
		else phystransfer = 0;
	}
	if (document.forms['graphForm']['kasiirto'])
	{
		if (document.forms['graphForm']['kasiirto'].checked) ecotransfer = 1; 
		else ecotransfer = 0; 
	}
	// Luodaan osoite
	var statisticsData = 
		"view=" 		+ view +
		"&startday=" 	+ dateArray[0] +
		"&startmonth=" 	+ dateArray[1] +
		"&startyear=" 	+ dateArray[2] +
		"&endday=" 		+ dateArray[3] + 
		"&endmonth=" 	+ dateArray[4] +
		"&endyear=" 	+ dateArray[5] +
		"&startweek=" 	+ dateArray[6] +
		"&ecotransfer=" + ecotransfer +
		"&phystransfer=" + phystransfer +
		"&drawfreq=" 	+ drawfreq +
		"&language=" 	+ language +
		"&ts=" 			+ ts + 
		"&" 			+ dt; 
	
	// Päivitetään kuva
	document.images['kuvaaja'].src = chartUrl + urlEncode(dataUrl) + urlEncode(statisticsData);
	
	// Päivitetään lukuarvot
	if (document.forms['graphForm']['kasiirto'])
	{
		if (document.forms['graphForm']['kasiirto'].checked){
			getMinMaxAvgValues();
		}
		else
		{
			setElementInnerHTMLById("minimvalue",0);
			setElementInnerHTMLById("maximumvalue",0);
			setElementInnerHTMLById("averagevalue",0);
		}
	}
	if (document.forms['graphForm']['fyyssiirto'])
	{
		if (document.forms['graphForm']['fyyssiirto'].checked)
		{
			getPhyMinMaxAvgValues();
		}
		else
		{
			setElementInnerHTMLById("phyminvalue",0);
			setElementInnerHTMLById("phymaxvalue",0);
			setElementInnerHTMLById("phyavgvalue",0);
		}
	}
    // Start auto refesher
    if (document.kuvaajanPaivittaja)
    {
		document.kuvaajanPaivittaja.destroy(); 
		document.kuvaajanPaivittaja = null;
    } 
    document.kuvaajanPaivittaja = new AutoRefreshImg("kuvaaja", 60);
    
    changeExportLinks();
    
} 

// Call back function shows or hides week selection
function showWeek(value)
{
	if (value)
	{
		document.getElementById('week').style.display = 'inline';
	}
	else
	{
		if (document.forms['graphForm']['drawfreq'][2].checked ||
			document.forms['graphForm']['drawfreq'][3].checked)
		{
			document.forms['graphForm']['drawfreq'][1].checked = true;
			refreshImage();
			document.getElementById('week').style.display = 'none';
		}
		document.getElementById('week').style.display = 'none';
	}
}

// get value from drawfreq
function getDrawfreq()
{
	return document.forms['graphForm']['drawfreq'].value;
}

// Call back function shows or hides month selection
function showMonth(value)
{
	if (value)
	{
		document.getElementById('month').style.display = 'inline';
	}
	else
	{
		if (document.forms['graphForm']['drawfreq'][3].checked)
		{
			document.forms['graphForm']['drawfreq'][2].checked = true;
			refreshImage();
			document.getElementById('month').style.display = 'none';
		}
		document.getElementById('month').style.display = 'none';
	}
}

// Refresh interval
function refreshInterval(start, end)
{
	view = document.forms['graphForm']['view'].value;
    var time = document.forms['graphForm']['unit'].options[document.forms['graphForm']['unit'].selectedIndex].value;
	time = time.split("/");
    unit = time[0];
    year = time[1];
}

// Sets nordic, russian or estonian operations
function setTs(ts)
{
	document.forms['graphForm']['ts'].value = ts;
	setElementInnerHTMLById("minimvalue", 0);
	setElementInnerHTMLById("maximumvalue", 0);
	setElementInnerHTMLById("averagevalue", 0);
	setElementInnerHTMLById("phyminvalue", 0);
	setElementInnerHTMLById("phymaxvalue", 0);
	setElementInnerHTMLById("phyavgvalue", 0);
//	if (ts == "norja")
//	{
//		hideNorwayCommercialTransfer(true);
//	}
//	else
//	{
//		hideNorwayCommercialTransfer(false);
//	}
	loadWeekMonthAndYearOptions(ts);
	
    refreshImage();
    selectTab(ts);
}

// Loads and sets the week, month and year options for given ts
function loadWeekMonthAndYearOptions(ts)
{
	ajaxtools.getWeeksMonthsAndYears(ts, function (results) {
		loadWeekMonthAndYearOptionsCallBack(results);
		}
		);
}

function loadWeekMonthAndYearOptionsCallBack(results)
{
	var weekSelect = document.forms["graphForm"]["unit"];
	var monthSelect = document.forms["graphForm"]["unit2"];
	var yearSelect = document.forms["graphForm"]["unit3"];
	var weekSelected = weekSelect.selectedIndex;
	var selectedWeekValue = weekSelect[weekSelected].value; 
	var monthSelected = monthSelect.selectedIndex;
	var selectedMonthValue = monthSelect[monthSelected].value; 
	var yearSelected = yearSelect.selectedIndex;
	var selectedYearValue = yearSelect[yearSelected].value; 
	
	formatSelect("graphForm", "unit");
	formatSelect("graphForm", "unit2");
	formatSelect("graphForm", "unit3");
	var weekSelect = document.forms["graphForm"]["unit"];


	var weeks = results["weeks"];
	var months = results["months"];
	var years = results["years"];
	var currentWeek = results["currentWeek"];
	var currentMonth = results["currentMonth"];
	var thisWeekYear = results["thisWeekYear"];
	var currentYear = results["currentYear"];

	if (weeks)
	{
		var selectedWeekFound = false;
		for (n = 0; n < weeks.size(); n++)
		{
			var week = weeks[n][0];
			var year = weeks[n][1];
			var weekYear = week + "/" + year;
			if (!selectedWeekFound && (selectedWeekValue.toString() == weekYear))
			{
				weekSelect.options[weekSelect.length] = new Option(weeks[n][0] + "/" + weeks[n][1],weeks[n][0] + "/" + weeks[n][1], true);
				weekSelect.options[weekSelect.length - 1].selected = true;
				selectedWeekFound = true;
			}
			else if (!selectedWeekFound && week == currentWeek && year == thisWeekYear)
			{
				weekSelect.options[weekSelect.length] = new Option(weeks[n][0] + "/" + weeks[n][1],weeks[n][0] + "/" + weeks[n][1], true);
				weekSelect.options[weekSelect.length - 1].selected = true;
				selectedWeekFound = true;
			}
			else
			{
				weekSelect.options[weekSelect.length] = new Option(weeks[n][0] + "/" + weeks[n][1],weeks[n][0] + "/" + weeks[n][1], false);				
			}
		}
	}
	else
	{
		weekSelect.options[weekSelect.length] = new Option(currentWeek + "/" + thisWeekYear, currentWeek + "/" + thisWeekYear, true);
		weekSelect.options[weekSelect.length - 1].selected = true;
	}
	
	if (months)
	{
		var selectedMonthFound = false;
		for (n = 0; n < months.size(); n++)
		{
			var month = months[n][0];
			var year = months[n][1];
			var monthYear = month + "/" + year;
			if (!selectedMonthFound && (selectedMonthValue.toString() == monthYear))
			{
				monthSelect.options[monthSelect.length] = new Option(month + "/" + year, month + "/" + year, true);
				monthSelect.options[monthSelect.length - 1].selected = true;
				selectedMonthFound = true;
			}
			else if (!selectedMonthFound && month == currentMonth && year == thisWeekYear)
			{
				monthSelect.options[monthSelect.length] = new Option(month + "/" + year, month + "/" + year, true);
				monthSelect.options[monthSelect.length - 1].selected = true;
				selectedMonthFound = true;
			}
			else
			{
				monthSelect.options[monthSelect.length] = new Option(month + "/" + year, month + "/" + year, false);
			}
		}
	}
	else
	{
		monthSelect.options[monthSelect.length] = new Option(currentMonth + "/" + currentYear, currentMonth + "/" + currentYear, true);
		monthSelect.options[monthSelect.length - 1].selected = true;
	}
	
	if (years)
	{
		var selectedYearFound = false;
		for (n = 0; n < years.size(); n++)
		{
			var year = years[n];
			var monthYear = "1/" + year;
			if (!selectedYearFound && (selectedYearValue.toString() == monthYear))
			{
				yearSelect.options[yearSelect.length] = new Option(year, "1/" + year, true);
				selectedYearFound = true;
				yearSelect.options[yearSelect.length - 1].selected = true;
			}
			else if (!selectedYearFound && year == thisWeekYear)
			{
				yearSelect.options[yearSelect.length] = new Option(year, "1/" + year, true);
				yearSelect.options[yearSelect.length - 1].selected = true;
				selectedYearFound = true;
			}
			else
			{
				yearSelect.options[yearSelect.length] = new Option(year, "1/" + year, false);
			}
		}
	}
	else
	{
		yearSelect.options[yearSelect.length] = new Option(currentYear, currentMonth + "/" + currentYear, true);
		yearSelect.options[yearSelect.length - 1].selected = true;
	}
	
	if (!selectedWeekFound || !selectedMonthFound || !selectedYearFound)
	{
		refreshImage();
	}
}

function formatSelect(formname,elementname)
{
	var select = document.forms[formname][elementname];
	select.length = 0;
}

// Change the tabs color
function selectTab(ts)
{
	//var parent = selected.parentNode.parentNode;
	var parent = null
	parent = document.getElementById("rk_tabs");
	if (parent != null)
	{
	for ( var index in parent.childNodes )
	{
		var child = parent.childNodes[index];
		child.className = ''; 
	}
	
	var selectedTab = document.getElementById('tab_' + ts);
	selectedTab.className = 'active';
	}
}

// Sets view week, month, year or time interval
function setView(v)
{
	document.forms['graphForm']['view'].value = v;
	//document.forms['graphForm']['fyyssiirto'].checked = false;
	setElementInnerHTMLById("minimvalue",0);
	setElementInnerHTMLById("maximumvalue",0);
	setElementInnerHTMLById("averagevalue",0);
	setElementInnerHTMLById("phyminvalue",0);
	setElementInnerHTMLById("phymaxvalue",0);
	setElementInnerHTMLById("phyavgvalue",0);
	hideSelects(v);
    refreshImage();
}

// Sets language
function setLanguage(v)
{
	document.forms['graphForm']['language'].value = v;
}

// --
function setElementInnerHTMLById(id,value)
{
	if (document.getElementById(id))
		document.getElementById(id).innerHTML = value;
}

// Gets economical electricity transfer min, max and average values
function getMinMaxAvgValues()
{
	var view = document.forms['graphForm']['view'].value;
	var timeSeries = document.forms['graphForm']['ts'].value;

	if (document.forms['graphForm']['kasiirto'].checked)
	{
		// Do not try to call ajax functions before the script has finished loading...
		if (this.DWREngine != undefined)
		{
			StatisticsDataServlet.setMinMaxAvgValues(view, timeSeries, dateArray, mmavalues);
		}
		else
		{
			setTimeout("refreshImage()",4000);
		}
	}
	else
	{
		setElementInnerHTMLById("minimvalue",0);
		setElementInnerHTMLById("maximumvalue",0);
		setElementInnerHTMLById("averagevalue",0);
	}
}

// Callback handler, sets min, max and average values
function mmavalues(Var)
{
	// Otetaan ylimääräiset desimaalit pois
	Var["minimvalue"] = Var["minimvalue"].substr(0,Var["minimvalue"].indexOf(".")+3);
	Var["maximumvalue"] = Var["maximumvalue"].substr(0,Var["maximumvalue"].indexOf(".")+3);
	Var["averagevalue"] = Var["averagevalue"].substr(0,Var["averagevalue"].indexOf(".")+3);

	// minimum and maximum value must be setted max to min and min to max
	// since the values are inverted.
	// minus removes the extra decimals
	setElementInnerHTMLById("maximumvalue",-Var["minimvalue"]);
	setElementInnerHTMLById("minimvalue",-Var["maximumvalue"]);
	setElementInnerHTMLById("averagevalue",-Var["averagevalue"]);
}

// gets physical min, max and average values from servlet
function getPhyMinMaxAvgValues()
{
	// Hakee fyysisen siirron min, max ja keskiarvot Servletiltä
	// Ei valmis metodi
	var view = document.forms['graphForm']['view'].value;
	var timeSeries = document.forms['graphForm']['ts'].value;
     
	if (document.forms['graphForm']['fyyssiirto'].checked)
	{	
		if (this.DWREngine != undefined)
		{
			StatisticsDataServlet.setPhyMinMaxAvgValues(view, timeSeries, dateArray, phymmavalues);
		}
		else
		{
			setTimeout("refreshImage()",4000);
		}
	}
	else
	{
		setElementInnerHTMLById("phyminvalue",0);
		setElementInnerHTMLById("phymaxvalue",0);
		setElementInnerHTMLById("phyavgvalue",0);
	}
}

// Call back function sets min, max and average values
function phymmavalues(Var)
{
	// minuses are to remove extra decimals (converts strings to numbers)
 	Var["phyminvalue"] = -Var["phyminvalue"].substr(0,Var["phyminvalue"].indexOf(".")+3);
 	Var["phymaxvalue"] = -Var["phymaxvalue"].substr(0,Var["phymaxvalue"].indexOf(".")+3);
 	Var["phyavgvalue"] = -Var["phyavgvalue"].substr(0,Var["phyavgvalue"].indexOf(".")+3);
	setElementInnerHTMLById("phyminvalue", -Var["phyminvalue"]);
	setElementInnerHTMLById("phymaxvalue", -Var["phymaxvalue"]);
	setElementInnerHTMLById("phyavgvalue", -Var["phyavgvalue"]);
}

function hideNorwayCommercialTransfer(hide)
{
	if (hide==true)
	{
		document.getElementById('ajanjaksoTr1').style.display = 'none';
		document.getElementById('ajanjaksoTr2').style.display = 'none';
		document.getElementById('ajanjaksoTr3').style.display = 'none';
		document.getElementById('ajanjaksoTr4').style.display = 'none';
		document.getElementById('norwayExplanation').style.display = 'none';
		document.forms['graphForm']['kasiirto'].checked = false;
		document.forms['graphForm']['kasiirto'].disabled = true;
		document.getElementById('kaup_siirto').style.display = 'none';
		document.forms['graphForm']['fyyssiirto'].style.display = 'none';
		
	}
	else
	{
		document.getElementById('ajanjaksoTr1').style.display = '';
		document.getElementById('ajanjaksoTr2').style.display = '';
		document.getElementById('ajanjaksoTr3').style.display = '';
		document.getElementById('ajanjaksoTr4').style.display = '';
		document.getElementById('norwayExplanation').style.display = 'none';
		document.forms['graphForm']['kasiirto'].checked = true;
		document.forms['graphForm']['kasiirto'].disabled = false;
		document.getElementById('kaup_siirto').style.display = '';
		document.forms['graphForm']['fyyssiirto'].style.display = '';
	}
}

// Toimii, mutta voisi ehkä siirtää toiseen tiedostoon.
function hideSelects(v) 
{
	var ts = document.forms['graphForm']['ts'].value;
//	if (ts == "norja") 
//		hideNorwayCommercialTransfer(true);
//	else 
//		hideNorwayCommercialTransfer(false);
	if (v==0) // Default-asetukset
	{
		document.getElementById('weekSelect').style.display = 'block';
		document.getElementById('monthSelect').style.display = 'none';
		document.getElementById('yearSelect').style.display = 'none';
		document.getElementById('csa').style.display = 'none';
		document.getElementById('csl').style.display = 'none';
		document.getElementById('refreshbutton').style.display = 'none';
		document.getElementById('hour').style.display = 'inline';
		document.getElementById('day').style.display = 'inline';
		document.getElementById('week').style.display = 'none';
		document.getElementById('month').style.display = 'none';
		document.forms['graphForm']['drawfreq'][0].checked = true;
		if (document.getElementById('xml_export'))
			document.getElementById('xml_export').style.display = 'inline';
	}

	if (v==1) // Viikko
	{
		document.getElementById('weekSelect').style.display = 'block';
		document.getElementById('monthSelect').style.display = 'none';
		document.getElementById('yearSelect').style.display = 'none';
		document.getElementById('csa').style.display = 'none';
		document.getElementById('csl').style.display = 'none';	
		document.getElementById('refreshbutton').style.display = 'none';
		document.getElementById('hour').style.display = 'inline';
		document.getElementById('day').style.display = 'inline';
		document.getElementById('week').style.display = 'none';
		document.getElementById('month').style.display = 'none';
		document.forms['graphForm']['drawfreq'][0].checked = true;
		document.getElementById('xml_export').style.display = 'inline';
	}
	
	if (v==2) // Kuukausi
	{
		document.getElementById('weekSelect').style.display = 'none';
		document.getElementById('monthSelect').style.display = 'block';
		document.getElementById('yearSelect').style.display = 'none';
		document.getElementById('csa').style.display = 'none';
		document.getElementById('csl').style.display = 'none';
		document.getElementById('refreshbutton').style.display = 'none';
		document.getElementById('hour').style.display = 'inline';
		document.getElementById('day').style.display = 'inline';
		document.getElementById('week').style.display = 'inline';
		document.getElementById('month').style.display = 'none';
		document.forms['graphForm']['drawfreq'][0].checked = true;
		if (document.getElementById('xml_export'))
			document.getElementById('xml_export').style.display = 'inline';
	}
	
	if (v==4) // Vuosi
	{
		document.getElementById('weekSelect').style.display = 'none';
		document.getElementById('monthSelect').style.display = 'none';
		document.getElementById('yearSelect').style.display = 'block';
		document.getElementById('csa').style.display = 'none';		
		document.getElementById('csl').style.display = 'none';
		document.getElementById('refreshbutton').style.display = 'none';
		document.getElementById('hour').style.display = 'inline';
		document.getElementById('day').style.display = 'inline';
		document.getElementById('week').style.display = 'inline';
		document.getElementById('month').style.display = 'inline';
		document.forms['graphForm']['drawfreq'][1].checked = true;
		if (document.getElementById('xml_export'))
			document.getElementById('xml_export').style.display = 'none';
	}

	if (v==3) // Vapaavalintainen ajanjakso
	{
		document.getElementById('weekSelect').style.display = 'none';
		document.getElementById('monthSelect').style.display = 'none';
		document.getElementById('yearSelect').style.display = 'none';
		document.getElementById('csa').style.display = 'block';
		document.getElementById('csl').style.display = 'block';
		document.getElementById('refreshbutton').style.display = 'block';
		document.getElementById('hour').style.display = 'inline';
		document.getElementById('day').style.display = 'inline';
		document.getElementById('week').style.display = 'inline';
		document.getElementById('month').style.display = 'inline';
		document.forms['graphForm']['drawfreq'][0].checked = true;
		if (document.getElementById('xml_export'))
			document.getElementById('xml_export').style.display = 'none';
	}
}