var firstTime = 0; // it is used just to trick flash method

try { 
  document.execCommand("BackgroundImageCache", false, true); 
} catch(err) {} 
//

// new functions for getting info from page
function getYear() {
	return document.getElementById("year").value;
}

function getRegionCode() {
	return document.getElementById("rc").value;
}

function getRegionG() {
	return document.getElementById("rg").value;
}



//

function gotoKommun(rc) {
	//alert("gotoKommun");
	
	var year = "2006";
	try {
		year = getYear();
	} catch(error) {
		
	}
	//alert("year=" + year);
	//alert("rc=" + rc + " year: " + year);
	
	document.location.href="kommun.do?rc=" + rc + "&y=" + year;
	
}

function gotoKommunRC() {
	//alert("gotoKommun");
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="kommun.do?rc=" + rc + "&y=" + year;
}

function gotoKommunOversikt(rc) {
	//alert("gotoKommun");
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="kommunover.do?rc=" + rc + "&y=" + year;
}

function gotoKommunOversiktRC() {
	//alert("gotoKommunOversiktRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="kommunover.do?rc=" + rc + "&y=" + year;
}

function gotoKommunFaktorRC() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="kommunfaktor.do?rc=" + rc + "&y=" + year;
}

function gotoKommunFaktorRCselFactor(factor) {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="kommunfaktor.do?rc=" + rc + "&y=" + year + "&fi=" + factor;
}

function gotoFaktaStatisticRC() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="faktastatistik.do?rc=" + rc + "&y=" + year;
}

function gotoFaktaEnkatsvarRC() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="faktaenkatsvar.do?rc=" + rc + "&y=" + year;
}

function gotoJamforSamtligaRC() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="jamforsamtliga.do?rc=" + rc + "&y=" + year;
}


function gotoJamforbaraRC() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	var rg = getRegionG();
	document.location.href="jamforbara.do?rc=" + rc + "&y=" + year + "&rg=" + rg;
}

function gotoFaktorerInomRC() {
	//alert("gotoFaktorerInomRC()");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	var rg = getRegionG();
	document.location.href="faktorerinom.do?rc=" + rc + "&y=" + year + "&rg=" + rg;
}

function gotoEnkatsvarInomRC() {
	//alert("gotoFaktorerInomRC()");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	var rg = getRegionG();
	document.location.href="enkatsvarinom.do?rc=" + rc + "&y=" + year + "&rg=" + rg;
}

function gotoFvsqInomRC() {
	//alert("gotoFaktorerInomRC()");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	var rg = getRegionG();
	document.location.href="fvsqinom.do?rc=" + rc + "&y=" + year + "&rg=" + rg;
}

function gotoJamforlanetRC() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="jamforlanet.do?rc=" + rc + "&y=" + year;
}

function gotoFaktaEnkatsvarRC() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="faktaenkatsvar.do?rc=" + rc + "&y=" + year + "&pol=1";
}

function gotoFaktaEnkatsvarPolitikerRC() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	document.location.href="faktaenkatsvar.do?rc=" + rc + "&y=" + year + "&pol=2";
}

function submitMe() {
	
	var rc = getRegionCode();
	var year = getYear();
	//document.getElementById("rc").value=rc;
	document.fac.rc.value=rc;
	document.fac.y.value=year;
	//document.fac.sortId.value="0";
	
	document.fac.submit();
}



function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}


function getSelectedFactorType(fid) {
	var res = null;
	try {
		res = document.getElementById("factor-type-for-" + fid).innerHTML;
	} catch(err) {
	}
	return res;
}



function showGraphonRight() {
	//alert("showGraphonRight");
	//if (document.getElementById("right").style.visibility == "hidden") {
		document.getElementById("right").style.visibility = "visible";
	//}
	//alert("end showGraphonRight");
}

function hideGraphonRight() {
	//if (document.getElementById("right").style.visibility == "visible") {
		document.getElementById("right").style.visibility = "hidden";
	//}
}




function getStartYear() {
	var oYearFrom = document.getElementById("yearFrom");
	var yearFrom = oYearFrom.options[oYearFrom.selectedIndex].text;
	//alert(yearFrom);
	
	return yearFrom;
}

function getEndYear() {
	var oYearTo = document.getElementById("yearTo");
	var yearTo = oYearTo.options[oYearTo.selectedIndex].text;
	//alert("yearTo=" + yearTo);
	
	return yearTo;
}

function getXScale() {
	//alert("getXScale");
	
	var xscale = null;
	var xs = null;
	try {
		var xx = document.getElementsByName("xScale");
		//alert(xx.length);
		if (xx.length > 1) {
			for (i=0; i< xx.length; i++) {
				xs = xx[i];
				if (xscale === null) {
					xscale = xs.options[xs.selectedIndex].value;
				} else {
					xscale = xscale + "," + xs.options[xs.selectedIndex].value;
				}
			}
		} else {
			xs = document.getElementById("xScale");
			xscale = xs.options[xs.selectedIndex].value;
		}
	} catch(e) {
	}
	if (xscale === null) {xscale = "1";}
	
	//alert("xscale:" + xscale);
	return xscale;
}

function getYScale() {
	//alert("getYScale");
	
		var yscale = null;
		try {
			var ys = document.getElementById("yScale");
			yscale = ys.options[ys.selectedIndex].value;
		} catch(e) {
		}
		
	//alert("yscale=" + yscale);
	return yscale;
}



function getRegions() {
	var regions  = getRegionCode();
	
	// 4 regions
	if (document.getElementById("kommun1") !== null) {
		regions = null;
		var s1 = document.getElementById("kommun1");
		regions = addToRegions(regions, s1.options[s1.selectedIndex].value);
		s1 = document.getElementById("kommun2");
		regions = addToRegions(regions, s1.options[s1.selectedIndex].value);
		s1 = document.getElementById("kommun3");
		regions = addToRegions(regions, s1.options[s1.selectedIndex].value);
		s1 = document.getElementById("kommun4");
		regions = addToRegions(regions, s1.options[s1.selectedIndex].value);
		//
		//alert("test");
		checkKommuns();
	}
	return regions;
}

function checkKommuns() {
	//alert("checkKommuns!");
	for (i = 1; i < 5; i++) {
		var kommun = document.getElementById("kommun" + i);
		var val = kommun.options[kommun.selectedIndex].value;
		//alert("kommun" + i + ": " + val);
		if (val === null || val === "" || val === "None" || val === "Välj") {
			//alert("call");
			changeKommuns(i, findNextKommunWithValue(i));
		}
	}
}

function getKommunValue(i) {
	var kommun = document.getElementById("kommun" + i);
	return kommun.options[kommun.selectedIndex].value;
}

function findNextKommunWithValue(m) {
	var v = null;
	for (i = m; i < 5; i++) {
		var kommun = document.getElementById("kommun" + i);
		var val = kommun.options[kommun.selectedIndex].value;
		if ((val !== null && val !== "" && val !== "None" && val !== "Välj") && v === null) {
			v = i;
		}
	}
	//alert("find: " + v);
	return v;
}

function changeKommuns(i, x) {
	//alert("changeKommuns " + i + " and " + x);
	if (i !== null && x !== null) {
		var kommunI = document.getElementById("kommun" + i);
		var valI = kommunI.selectedIndex;
		var kommunX = document.getElementById("kommun" + x);
		var valX = kommunX.selectedIndex;
		kommunI.options[valX].selected = "true";
		kommunX.options[valI].selected = "true";
		//kommunI.selectedIndex = ;
		//kommunX.selectedIndex = valI;
	}
}

function addToRegions(regions, reg) {
	//alert("regions=" + regions);
	if (reg === null || reg === "" || reg === "None" || reg === "Välj") {return regions;}
	if (regions === null) {
		regions = reg;
	} else {
		regions = regions + "," + reg;
	}
	//alert("regions=" + regions);
	return regions;
}





function getSelectedQuestionId() {
	var q = getSelectedFactorId();
	
	if (q.indexOf("q") > -1) {
		q = q.substring(1, q.length);
	}
	//alert("q=" + q);
	
	return q;
}

function getSelectedFactorId() {
	var sel = null;
	var prefix = "";
	
	var fakts = document.getElementsByName("faktors");
	//alert(fakts);
	//alert(fakts.length);
	if (fakts.length === 0) {
		fakts = document.getElementsByName("fi");
	}
	
	if (fakts.length === 0) {
		prefix = "q";
		fakts = document.getElementsByName("questions");
	}
	
	for (i = 0; (i < fakts.length && sel === null); i++) {
		if (fakts[i].checked) {
			//alert("id=" + fakts[i].id + "    sel=" + fakts[i].checked + "   onclick=" + fakts[i].onclick);
			sel = fakts[i].id;
		}
	}
	
	if (sel === null) {return null;}
	return prefix + sel;
}

function getSelectedFactorName(fid) {
	//alert(fid);
	var res = null;
	try {
		res = document.getElementById("labelfor-fk-" + fid).innerHTML;
	} catch(err) {
	}
	return res;
}

/*
function showFactorInfo2() {
	alert("showFactorInfo2 needs to be done");
}
*/

function showFactorInfo(second) {
	//alert("showFactorInfo");
	//alert("second=" + second);
	//find selected factor
	var factorId = getSelectedFactorId();
	
	if (factorId === null) {
		//alert("NULL!");
		var inom;
		if (document.getElementById("qdrop2")) {
			inom = document.getElementById("qdrop").firstChild;//document.getElementById("allinomfactors");
			//alert(inom.options[inom.selectedIndex].text);
			factorId = "q" + inom.options[inom.selectedIndex].value;
		} else {
			inom = document.getElementById("allinomfactors");
			//alert(inom.options[inom.selectedIndex].text);
			factorId = inom.options[inom.selectedIndex].value;
		}
		
		if (second) {
			
			var inom2;
			if (document.getElementById("qdrop2")) {
				inom2 = document.getElementById("qdrop2").firstChild;//document.getElementById("allinomfactors");
				//alert(inom2.options[inom2.selectedIndex].text);
				factorId = "q" + inom2.options[inom2.selectedIndex].value;
			} else {
				inom2 = document.getElementById("qdrop").firstChild;//document.getElementById("allinomfactors");
				//alert(inom2.options[inom2.selectedIndex].text);
				factorId = "q" + inom2.options[inom2.selectedIndex].value;
			}
		}
	} else {
	
		if (second) {
			//alert("nina");
			var s = document.getElementById("allinomfactors");
			factorId = s.options[s.selectedIndex].value;
		}
	}
	//alert("fid=" + factorId);
	if (factorId.indexOf("q") < 0) {
		if (factorId.indexOf("fi") > -1) {
			factorId = factorId.substring(2,factorId.length);
			//alert("fid=" + factorId);
		}
		
		//back up current html in div showHideRight
		if (document.getElementById("showHideRight").style.visibility == "hidden") {
			if (document.getElementById("hiddenDiv")) {document.getElementById("hiddenDiv").value = "specialRight";}
			hideSpecialRight();
		} else {
			if (document.getElementById("hiddenDiv")) { document.getElementById("hiddenDiv").value = "showHideRight";}
			hideShowRight();
		}
		
		//hideCont();
		//display results in showHideRight div
		if (document.getElementById("tableRank"))document.getElementById("tableRank").style.visibility = "hidden";
		if (document.getElementById("tableRank")) document.getElementById("tableRank").style.display = "none";
		showInfoContainerRight();
		 
		//get by ajax factor info
		var y = new Ajax.Updater('infoContainerRight', 'factorinfo.do', {
			method: 'get',
		  	parameters: {fid: factorId},
		  	onSuccess: function(transport){
				//alert("Success! \n\nsasa");
			},
			onComplete: function(){
	    		//alert('a request completed');
	  		},
			onFailure: function(){ alert('Something went wrong...'); }
		});
	} else {
		//alert("part for questions!");
		//get selected quesion id
		var qid;
		if (factorId.indexOf("qi") > -1) {
			qid = factorId.substring(2,factorId.length);
		} else {
			qid = factorId.substring(1,factorId.length);
		}
		//alert("qid=" + qid);
		
		//show data on div hide graph
		if (document.getElementById("showHideRight").style.visibility == "hidden") {
			if (document.getElementById("hiddenDiv")) {document.getElementById("hiddenDiv").value = "specialRight";}
			hideSpecialRight();
		} else {
			if (document.getElementById("hiddenDiv")) { document.getElementById("hiddenDiv").value = "showHideRight";}
			hideShowRight();
		}
		
		if (document.getElementById("tableRank")) document.getElementById("tableRank").style.visibility = "hidden";
		if (document.getElementById("tableRank")) document.getElementById("tableRank").style.display = "none";
		showInfoContainerRight();
		
		//get data with ajax for display
		var yq = new Ajax.Updater('infoContainerRight', 'questioninfo.do', {
			method: 'get',
		  	parameters: {questionId: qid},
		  	onSuccess: function(transport){
				//alert("Success! \n\nsasa");
			},
			onComplete: function(){
	    		//alert('a request completed');
	    		if (second) {
	    			if (inom2 !== null) {
	    				document.getElementById("qname").innerHTML = inom2.options[inom2.selectedIndex].text;
	    			} else {
	    				document.getElementById("qname").innerHTML = inom.options[inom.selectedIndex].text;
	    			}
	    		} else {
	    			document.getElementById("qname").innerHTML = document.getElementById("selfak").innerHTML;//getFactorName();
	    		}
	  		},
			onFailure: function(){ alert('Something went wrong...'); }
		});
		
	}
}

function closeFactorInfo() {
	//alert("closeFactorInfo");
	hideInfoContainerRight();
	document.getElementById("infoContainerRight").innerHTML = "Loading data from server!";
	//showHideRight();
	//showCont();
	if (document.getElementById("hiddenDiv") && document.getElementById("hiddenDiv").value) {
		//document.getElementById(document.getElementById("hiddenDiv").value).style.visibility = "visible";
		if (document.getElementById("hiddenDiv").value == "showHideRight") {
			//showHideRight();
			showHideRightAndUpdate();
		} else {
			showSpecialRight();
		}
	} else {
		//showHideRight();
		showHideRightAndUpdate();
	}
}

function showHideRight() {
	if (document.getElementById("showHideRight").style.display == "none") { document.getElementById("showHideRight").style.display = "inline"; }
	document.getElementById("showHideRight").style.visibility = "visible";
	if (document.getElementById("inxsh") && document.getElementById("inxsh").style.visibility == "hidden") 

{document.getElementById("inxsh").style.visibility = "visible";}
	if (document.getElementById("underGraph") && document.getElementById("underGraph").style.visibility == "hidden") 

{document.getElementById("underGraph").style.visibility = "visible";}
}

function showHideRightAndUpdate() {
	showHideRight();
}

function hideShowRight() {
	document.getElementById("showHideRight").style.visibility = "hidden";
	if (document.getElementById("inxsh") && document.getElementById("inxsh").style.visibility == "visible") 

{document.getElementById("inxsh").style.visibility = "hidden";}
	if (document.getElementById("underGraph") && document.getElementById("underGraph").style.visibility == "visible") 

{document.getElementById("underGraph").style.visibility = "hidden";}
	document.getElementById("showHideRight").style.display = "none";
}

//infoContainerRight
function showInfoContainerRight() {
	document.getElementById("infoContainerRight").style.visibility = "visible";
	document.getElementById("infoContainerRight").style.display = "block";
}

function hideInfoContainerRight() {
	document.getElementById("infoContainerRight").style.visibility = "hidden";
	document.getElementById("infoContainerRight").style.display = "none";
}

/*
//cont
function showCont() {
	//alert("showCont");
	if (document.getElementById("cont")) {
		document.getElementById("cont").style.visibility = "visible";
		//document.getElementById("cont").style.display = "inline";
	}
}

function hideCont() {
	alert("showCont");
	if (document.getElementById("cont")) {
		document.getElementById("cont").style.visibility = "hidden";
		//document.getElementById("cont").style.display = "none";
	}
}
*/

//specialRight
function showSpecialRight() {
	if (document.getElementById("specialRight")) {
		document.getElementById("specialRight").style.visibility = "visible";
		document.getElementById("specialRight").style.display = "inline";
	}
}

function hideSpecialRight() {
	if (document.getElementById("specialRight")) {
		//document.getElementById("specialRight").innerHTML = "Loading data from server!";
		document.getElementById("specialRight").style.visibility = "hidden";
		document.getElementById("specialRight").style.display = "none";
	}
}

function updateFactorTable(fid) {
	//alert("updateFactorTable");
	//get data with ajax
	//back up current html in div showHideRight
	hideShowRight();
	//display results in showHideRight div
	showSpecialRight();
	//diplay them insted graph
	
	var rc = getRegionCode();
	var d = new Date();
	var endyear = d.getFullYear();
	var startyear = endyear - 8;
	
	var y = new Ajax.Updater('specialRight', 'specialfactors.do', {
			method: 'get',
		  	parameters: {fi: fid, rs: rc, sy: startyear, ey:endyear},
		  	onSuccess: function(transport){
				//alert("Success! \n\nsasa");
			},
			onComplete: function(){
	    		//alert('a request completed');
	  		},
			onFailure: function(){ alert('Something went wrong...'); }
		});
	//show data
	
	//alert("end updateFactorTable");
	//hide graph
}

function showInfoContainerTop() {
	//alert("showInfoContainerTop");//infoContainerTop
	document.getElementById("infoContainerTop").style.visibility = "visible"; 
	document.getElementById("infoContainerTop").style.display = "inline";
	document.getElementById("showHideTop").style.visibility = "hidden";
}

function closeInfoContainerTop() {
	//alert("closeInfoContainerTop");//infoContainerTop
	document.getElementById("infoContainerTop").style.visibility = "hidden"; 
	document.getElementById("infoContainerTop").style.display = "none";
	document.getElementById("showHideTop").style.visibility = "visible";
}

function loadCompareFaktors() {
	
	if (document.getElementById("qdrop")) {
	
		var s = document.getElementById("allinomfactors");
		faktorId = s.options[s.selectedIndex].value;
		faktorType = s.options[s.selectedIndex].id;
		document.getElementById("selfak").innerHTML = s.options[s.selectedIndex].text;
		
		//load xscale options
		document.getElementById("inxsh").innerHTML = "Loading data from server!";
		if (document.getElementById("inxsh").style.visibility == "hidden") {
			document.getElementById("inxsh").style.visibility = "visible";
		}
		var yscale = null;
		var a = new Ajax.Updater('inxsh', 'xscaleheadline2.do', {
			method: 'get',
			parameters: {fi: faktorId},
			onFailure: function(){ alert('Something went wrong...'); },
			onSuccess: function(transport){
			  
			},
			onComplete: function(){
	    
	    		if (faktorType == '2') {
	    		var b = new Ajax.Updater('inxsh', 'yscaleheadline.do', {
					  		method: 'get',
					  		parameters: {fi: faktorId, rc: getRegionCode(), sy:1984, ey:2007},
					  		insertion: Insertion.Bottom,
					  		onFailure: function(){ alert('Something went wrong...'); },
					  		onSuccess: function(transport){
						  
						    		},
					  		onComplete: function(){ 
					  		//alert("faktorType 2");
	    					 var ys = document.getElementById("yScale");							
  	                         yscale = ys.options[ys.selectedIndex].value;
  	                        // alert ("yscale: " + yscale);
  	                         document.getElementById("underGraph").innerHTML = "Loading data from server!";
				            if (document.getElementById("underGraph").style.visibility == "hidden") {
					              document.getElementById("underGraph").style.visibility = "visible";
				             }   
				            var xs = document.getElementById("xScale");
				            var xscale = xs.options[xs.selectedIndex].value;
				            var y = new Ajax.Updater('underGraph', 'yearxs.do', {
									method: 'get',
									parameters: {fi: faktorId, rc: getRegionCode(), xs: xscale, ys: yscale},
									onSuccess: function(transport){
									//alert("Success! \n\nsasa");
									},
									onComplete: function(){
					    				
			    					try {
										updateGraphForFactorVsQuestions();
									} catch(err) {
									alert(err.name);
									
										}
									},
									onFailure: function(){ alert('Something went wrong...'); }
							}); 
  	                         
               			 }
  	             });
            } 
  	          else {
  
  				document.getElementById("underGraph").innerHTML = "Loading data from server!";
				if (document.getElementById("underGraph").style.visibility == "hidden") {
					document.getElementById("underGraph").style.visibility = "visible";
				}
				var xs = document.getElementById("xScale");
				var xscale = xs.options[xs.selectedIndex].value;
				var y = new Ajax.Updater('underGraph', 'yearxs.do', {
					method: 'get',
					parameters: {fi: faktorId, rc: getRegionCode(), xs: xscale, ys: yscale},
					onSuccess: function(transport){
						//alert("Success! \n\nsasa");
					},
					onComplete: function(){
					   
			    		try {
							//alert("update");
							//updateGraphForTwoQuestions();
							updateGraphForFactorVsQuestions();
						} catch(err) {
							alert(err.name);
							//loadQuestions2();
						}
					},
					onFailure: function(){ alert('Something went wrong...'); }
				}); 
			 }	 			
	    	},
	    	onFailure: function(){ alert('Something went wrong...'); }
		});		
	} else {
		hideGraphonRight();
		document.getElementById("right").style.visibility = "hidden";
		//document.getElementById("right").style.display = "none";
		hideShowRight();
		
		document.getElementById("left").innerHTML = "Lodaing data from server!";
		
		var s = document.getElementById("allinomfactors");
		var factorId = s.options[s.selectedIndex].value;
		//alert("factorId: " + factorId);
		
		document.getElementById("selfak2").innerHTML = s.options[s.selectedIndex].text;
		
		var y = new Ajax.Updater('left', 'jamforcomparefactors.do', {
			method: 'get',
		  	parameters: {fi: factorId},
		  	onSuccess: function(transport){
				//alert("Success! \n\nsasa");
			},
			onComplete: function(){
		   		//alert('a request completed');
			},
			onFailure: function(){ alert('Something went wrong...'); }
		});
		
		//load xscale for selected faktor
		document.getElementById("inxsh2").innerHTML = "Loading data from server!";
		var a = new Ajax.Updater('inxsh2', 'xscaleheadline2.do', {
			method: 'get',
			parameters: {fi: factorId},
			onFailure: function(){ alert('Something went wrong...'); },
			onSuccess: function(transport){
				//alert("Success! \n\nsasa" + transport.responseText);
			},
			onComplete: function(){	
				//alert('a request completed');
			}
		});
			  		
	}	  		
	//if same faktor that was sel is siplayed refresh graph other wise hide graph
}

function loadQuestions() {
	//alert("loadQuestions");
	var p = document.getElementById("buspol");
	var polbus = p.options[p.selectedIndex].value;
	
	var y = new Ajax.Updater('qdrop', 'jamforallinomquestions.do', {
		method: 'get',
	  	parameters: {pol: polbus},
	  	onSuccess: function(transport){
		
		},
		
		onComplete: function(){
			
			var inom = document.getElementById("qdrop").firstChild;//document.getElementById("allinomfactors");
			document.getElementById("selfak").innerHTML = inom.options[inom.selectedIndex].text;
			
			try {
				updateGraphForTwoQuestions();
			} catch(err) {
				//alert(err.name);
				loadQuestions2();
			}
		},
		onFailure: function(){ alert('Something went wrong...'); }
	});
}

function loadQuestionsFvQ() {
	//alert("loadQuestions");
	var p = document.getElementById("buspol");
	var polbus = p.options[p.selectedIndex].value;
	
	var y = new Ajax.Updater('qdrop', 'jamforallinomquestions.do', {
		method: 'get',
	  	parameters: {pol: polbus},
	  	onSuccess: function(transport){
			//alert("Success! \n\nsasa");
		},
		onComplete: function(){
			//alert('onComplete');
			var inom = document.getElementById("qdrop").firstChild;//document.getElementById("allinomfactors");
			//alert(inom.options[inom.selectedIndex].value);
			//alert(inom.options[inom.selectedIndex].text);
			document.getElementById("selfak2").innerHTML = inom.options[inom.selectedIndex].text;
			var inom1 = document.getElementById("allinomfactors");
			//document.getElementById("selfak").innerHTML = inom1.options[inom1.selectedIndex].text;
			var faktorId = inom1.options[inom1.selectedIndex].value;
			
			//load xscale options
			document.getElementById("inxsh").innerHTML = "Loading data from server!";
			if (document.getElementById("inxsh").style.visibility == "hidden") {
				document.getElementById("inxsh").style.visibility = "visible";
			}
			var a = new Ajax.Updater('inxsh', 'xscaleheadline2.do', {
		  		method: 'get',
		  		parameters: {fi: faktorId},
		  		onFailure: function(){ alert('Something went wrong...'); },
		  		onSuccess: function(transport){
			    	//alert("Success! \n\nsasa" + transport.responseText);
			    },
		  		onComplete: function(){
	    			//alert('a request completed');
	    			//load new years XScealHeading with ajax
					document.getElementById("underGraph").innerHTML = "Loading data from server!";
					if (document.getElementById("underGraph").style.visibility == "hidden") {
						document.getElementById("underGraph").style.visibility = "visible";
					}
					var xs = document.getElementById("xScale");
					var xscale = xs.options[xs.selectedIndex].value;
					var y = new Ajax.Updater('underGraph', 'yearxs.do', {
						method: 'get',
						parameters: {fi: faktorId, rc: getRegionCode(), xs: xscale, ys:getYScale()},
						onSuccess: function(transport){
							//alert("Success! \n\nsasa");
						},
						onComplete: function(){
				    		//alert('a request completed');
				    		if (document.getElementById("allinomfactors")) {
				    			//alert("test");
				    			document.getElementById("laddaexcel").style.display = "none";
				    		}
				    		
				    		try {
								//alert("update");
								//updateGraphForTwoQuestions();
								updateGraphForFactorVsQuestions();
							} catch(err) {
								//alert("TEST" + err.name);
								//loadQuestions2();
								setTimeout("updateGraphForFactorVsQuestions()", 2000);
							}
				  		},
						onFailure: function(){ alert('Something went wrong...'); }
					});
					//
	    			
	    			
	    		},
	    		onFailure: function(){ alert('Something went wrong...'); }
			});
	    			
			//
			
			
		},
		onFailure: function(){ alert('Something went wrong...'); }
	});
}

function loadQuestions2() {
	//alert("loadQuestions2");
	var p = document.getElementById("buspol2");
	var polbus = p.options[p.selectedIndex].value;
	
	var y = new Ajax.Updater('qdrop2', 'jamforallinomquestions.do', {
		method: 'get',
	  	parameters: {pol: polbus},
	  	onSuccess: function(transport){
			//alert("Success! \n\nsasa");
		},
		onComplete: function(){
		
	   		//alert('a request completed');
	   		var inom = document.getElementById("qdrop2").firstChild;//document.getElementById("allinomfactors");
			//alert(inom.options[inom.selectedIndex].value);
			//alert(inom.options[inom.selectedIndex].text);
			document.getElementById("selfak2").innerHTML = inom.options[inom.selectedIndex].text;
			
			updateGraphForTwoQuestions();
		},
		onFailure: function(){ alert('Something went wrong...'); }
	});
}

function loadCompareQuestions() {
	//alert("loadCompareQuestions");
}

function specialEncode(str) {
	if (str.indexOf("%") > -1) {
		//str = str.replace("%", "qcc;");//encodeURI("%"));
		//replace(/&/g,"*am*");
		str = str.replace(/%/g, "qcc;");
		//str = str.replace("%", encodeURI("%"));
	}
	if (str.indexOf("&") > -1) {
		//str = str.replace("&", encodeURI("&"));
	}
	return str;
}





function downloadExcelFactors() {
	var fid = getSelectedFactorId();
	var r = getRegions();
	var sy = getStartYear();
	var ey = getEndYear();
	var xs = getXScale();
	var ys = getYScale();
	//alert("fid=" + fid);
	var url = "excelfaktors.do?fid=" + fid + "&r=" + r + "&sy=" + sy + "&ey=" + ey + "&xs=" + xs;
	if (ys !== null) {
		url = url + "&ys=" + ys;
	}
	document.location.href = url;
}

function getSurveyTypeId() {
	var bp = "1";
	if (document.getElementById("pol") && document.getElementById("pol").value != null && document.getElementById("pol").value != "") {
		bp = document.getElementById("pol").value;
	}
	//alert("bp=" + bp);
	return bp;
}

function downloadExcelAnswers() {
	var qid = getSelectedQuestionId();
	var r = getRegions();
	var stid = getSurveyTypeId();
	//alert("fid=" + fid);
	
	//excelanswers.do?surveyTypeID=1&questionID=1&regions=0643,1443,0182
	var url = "excelanswers.do?surveyTypeID=" + stid + "&regions=" + r + "&questionID=" + qid;
	
	document.location.href = url;
}




 

function loadXScale() {
	        //alert("loadXScale");
	        
 	        var f = document.getElementById("factorID");
 	        var factorId = f.options[f.selectedIndex].value;
 	        //alert("factorId=" + factorId);
 	        
 	        var a = new Ajax.Updater('inxsh', 'xscaleheadline2.do', {
 	                method: 'get',
 	                parameters: {fi: factorId},
 	                onFailure: function(){ alert('Something went wrong...'); },
 	                onSuccess: function(transport){
 	                        //alert("Success! \n\nsasa" + transport.responseText);
	                },
 	                onComplete: function(){}
 	        });
 	}







function checkXScale() {
		
		var x = document.getElementById("xScale");
		var xs;

		if( typeof x == "select"){
			xs = x.options[xs.selectedIndex].value;
		}
		else {
			xs = x.value;
		}
	
	document.getElementById("xscale").value = xs;
	document.excform.xscale.value = xs;	
	return true;
}

function checkAnswer() {
	var x = document.getElementById("questions");
	var xs = x.options[x.selectedIndex].value;
	document.getElementById("questionID").value= xs;
}

function loadAvailableYearsForQuestions() {
	//alert("Available Years For Questions");
	document.getElementById("ajaxLoader").style.display="none";
	
	var btn = document.getElementById("ladaner");
	btn.disabled = true;
	
    
	var p = document.getElementById("buspol");
	var polbus = p.options[p.selectedIndex].value;
	
	if (polbus != "0") {
		//alert("yes polbus is diferent then 0, polbus = "+polbus);
		document.getElementById("ladaner").disabled = true;
		
	} else {
		//alert("this is it!!!, polbus = "+polbus);
		document.getElementById("yearsHeader").style.visibility="hidden";
		document.getElementById("yearsHeader").style.display="none";
		document.getElementById("years").style.visibility="hidden";
		document.getElementById("years").style.display="none";
		document.getElementById("ladaner").style.visibility="hidden";
		document.getElementById("ladaner").style.display="none";
		document.getElementById("ladaner").disabled = true;
		document.getElementById("ajaxLoader").style.display="none";
		return;
	}

	var q = document.getElementById("qdrop").firstChild;
	var questionId = q.options[q.selectedIndex].value;
	
	var a = new Ajax.Updater('years', 'yearsforquestions.do', {
		method: 'get',
		parameters: {qi: questionId, pol: polbus},
		
		onFailure: function(){ alert('Something went wrong...'); },
		
		onLoading: function(){
			//alert('Loading...');
			document.getElementById("ajaxLoader").style.display="inline";
		},
		
		onSuccess: function(transport){ document.getElementById("ajaxLoader").style.display="none"; },
		
		onComplete: function(){
			//alert('onComplete');
			document.getElementById("ajaxLoader").style.display="none";
        	document.getElementById("yearsHeader").style.visibility="visible";
			document.getElementById("yearsHeader").style.display="inline";
			document.getElementById("years").style.visibility="visible";
			document.getElementById("years").style.display="inline";
			document.getElementById("ladaner").style.visibility="visible";
			document.getElementById("ladaner").style.display="inline";
			document.getElementById("ladanerInfo").style.display = "inline";
			document.getElementById("ladanerInfo").style.visibility = "visible";
	    	document.getElementById("ladaner").disabled = false;
		}
	});
	
}



function loadQuestionsForExcelAnswers() {
	//alert("loadQuestions");
	document.getElementById("ajaxLoader").style.display="none";
	
	var p = document.getElementById("buspol");
	var polbus = p.options[p.selectedIndex].value;
	//alert("polbus"+polbus);
	
	
	//if (polbus === "0") { return; }
	
	if(polbus != "0"){
		//alert("yes polbus is diferent then 0");
		
		document.getElementById("ladaner").disabled=true;		
	} else {
		document.getElementById("ladaner").disabled=true;
		document.getElementById("ladaner").style.display = "none";
		document.getElementById("ladaner").style.visibility = "hidden";
		document.getElementById("ladanerInfo").style.display = "none";
		document.getElementById("ladanerInfo").style.visibility = "hidden";		
		document.getElementById("showHideInquiryDependent").style.display = "none";
		document.getElementById("showHideInquiryDependent").style.visibility = "hidden";
		document.getElementById("ajaxLoader").style.display="none";
		return;
	}
	
	
	var y = new Ajax.Updater('qdrop', 'questionforexcel.do', {
		method: 'get',
	  	parameters: {pol: polbus},
	  	
	  	onLoading: function(){
			document.getElementById("ajaxLoader").style.display="inline";
		},
	  	onSuccess: function(transport){
			//alert("Success! \n\n NIVO");
			document.getElementById("ajaxLoader").style.display="none";
			document.getElementById("showHideInquiryDependent").style.display = "inline";
			document.getElementById("showHideInquiryDependent").style.visibility = "visible";
		},
		
		onComplete: function(){
			//alert("Complete! \n\n NIVO");
			document.getElementById("ajaxLoader").style.display="none";
			document.getElementById("qdrop").style.visibility="visible";
	     	document.getElementById("qdrop").style.display="inline";
	     	document.getElementById("ajaxLoader").style.display="none";	
	     	document.getElementById("ladaner").disabled=true;
		},
		onFailure: function(){ alert('Something went wrong...'); }
	});
}



	   
		
function loadCompareFaktorsForStatistik2() {
 	//document.getElementById("right").style.visibility = "hidden";
	//hideGraphonRight();
	//hideShowRight();
	//document.getElementById("left").innerHTML = "Lodaing data from server!"; 
		
		
		var s = document.getElementById("allinomfactors2");
		var factorId = s.options[s.selectedIndex].value;
		var factorType = s.options[s.selectedIndex].id;
		document.getElementById("selfak2").innerHTML = s.options[s.selectedIndex].text;
		
		//alert("factorId: " + factorId);
			var yscale = null;
			var y = new Ajax.Updater('inxsh2', 'xscaleheadline2.do', {
			method: 'get',
		  	parameters: {fi: factorId},
		  	onSuccess: function(transport){},
			onComplete: function(){
			
			  if (factorType == '2') {
			  
				  var b = new Ajax.Updater('inxsh2', 'yscaleheadline.do', {
				     method: 'get',
						  		parameters: {fi: factorId, rc: getRegionCode(), sy:1984, ey:2007},
						  		insertion: Insertion.Bottom,
						  		onFailure: function(){ alert('Something went wrong...'); },
						  		onSuccess: function(transport){}
				  });
			 }
			
									    				
				   try {
				    	updateYearsForGraph(factorId, "GetDataSeriesForRegions");
				   } catch(err) {
				    	setTimeout("updateYearsForGraph(" + factorId + ", " + "'GetDataSeriesForRegions'" + ")", 2000);
				     }
			
			},
			onFailure: function(){ alert('Something went wrong...'); }
		});
		

}







function gotoJamforbaraRCNew() {
	//alert("gotoKommunFaktorRC");
	
	var rc = getRegionCode();
	//alert("rc=" + rc);
	var year = getYear();
	//alert("year=" + year);
	var rg = getRegionG();
	document.location.href="comparable.do?rc=" + rc + "&y=" + year + "&rg=" + rg;
}

function gotoCompareMunicipalities() {
	var rc = getRegionCode();
	var year = getYear();
	var rg = getRegionG();
	document.location.href="compareMunicipalities.do?rc=" + rc + "&y=" + year + "&rg=" + rg;
}

function gotoCompareFactorsQuestions() {
	var rc = getRegionCode();
	var year = getYear();
	var rg = getRegionG();
	document.location.href="compareFactorsQuestions.do?rc=" + rc + "&y=" + year + "&rg=" + rg;
}

