var numYears = 6;

function selAll(selObj) {
   for (var i=0;i<selObj.length;i++) { 
      if (!selObj[i].checked) selObj[i].checked = true; 
   }
}

function parse(uri, xmldocument) {
   xmldocument.async = false;
   xmldocument.load(uri);

   if (xmldocument.parseError.errorCode != 0)
      alert(xmldocument.parseError.reason);

   return xmldocument;
} 

function simClick(arr,index) {
	arr[index].click();
}

function vTable() {

//table arranged by column
var Document = dsoByYear.documentElement;
var resultTable = "";
var i;var h; var k;
var j = Document.childNodes.length;
//var j = 30;
var inc = Math.ceil((j)/5);
resultTable += "<tr>";
var here = 0;
var x = -1;
for (i=0;i<6;i++) {
   resultTable += "<td valign=\"top\"><table>";
   for (h=i*inc;h<(i+1)*inc;h++) {
        x++
		if (h>=1 && h<=9) {
		    x--;
			continue;
		}
		
		if (Document.childNodes[h]) {
    	  resultTable += "<tr><td onClick=\"simClick(frm.SDistrict," + (x) + ")\" class=\"selector\"><input type=\"checkbox\" name=\"SDistrict\" value=\"" + h + "\"/>" +
											Document.childNodes[h].childNodes[1].text + "</td></tr>";
		}	else {
			resultTable +="<tr><td>&nbsp</td></tr>";
		}
   }
   resultTable += "</table></td>";
}

resultTable += "</tr>";
return resultTable;

}

function selByErg(selectObj) {
	var erg = selectObj[selectObj.selectedIndex].text;
	for (var i=0; i<frm.SDistrict.length; i++) {
		if (Document.childNodes[frm.SDistrict[i].value].childNodes[1].attributes.getNamedItem("ERG").text == erg) {
			frm.SDistrict[i].checked = true;
		}
	}
}

function stateERGtable() {
	var res = "<tr>";
	var j=0;

	for (var i=0;i<5;i++) {
		res += "<td onClick=\"simClick(frm.SState," + (j++) + ")\" class=\"selector\"><input type=\"checkbox\" name=\"SState\" value=\"" + i + "\"/>" +
						Document.childNodes[i].childNodes[1].text + "</td>";
	}
	res += "</tr><tr>";

	for (var i=5;i<10;i++) {
		res += "<td onClick=\"simClick(frm.SState," + (j++) + ")\" class=\"selector\"><input type=\"checkbox\" name=\"SState\" value=\"" + i + "\"/>" +
						Document.childNodes[i].childNodes[1].text + "</td>";
	}	
	res += "</tr>";
	return res;
}



function frmSubmit() {
	var i;var j;
	var ResultHTML = "";
	ResultHTML += "<html><head><title>CAPT Comparison Report for 2001-2006</title><script src=\"scripts/byYear2.js\"></script>";
	ResultHTML += "<link rel=\"stylesheet\" type=\"text/css\" href=\"styles/chart.css\"/></head>";
	ResultHTML += "<body><span class=\"chartTitle\">&nbsp;Connecticut Academic Performance Test, Second Generation</span><br>";
	ResultHTML += "<span class=\"chartTitle2\">&nbsp;Comparison of Student Achievement for 2001-2006, Grade 10</span><br><br><br>";
	ResultHTML += "<center><table class=\"mainTable\" width=\"97%\" cellspacing=\"0\"><tr><th rowspan=\"2\" valign=\"bottom\" width=\"18%\" class=\"districtHead\">District</th><th rowspan=\"2\" valign=\"bottom\" class=\"year\">Year</th><th class=\"top\" colspan=\"4\">Mathematics</th><th class=\"top\" colspan=\"4\">Science</th><th class=\"top\" colspan=\"4\">Reading Across<br>the Disciplines</th><th class=\"top\" colspan=\"4\">Writing Across<br>the Disciplines</th></tr>";
	ResultHTML += "<tr>";
	ResultHTML += "<td class=\"colHead\">N<br>Tested</td><td class=\"colHead\">Average<br>Scale<br> Score</td><td class=\"colHead\">%<br>Goal<br>Range</td><td class=\"colHead\">% At/Above<br>Proficient<br>Level</td>";
	ResultHTML += "<td class=\"colHead\">N<br>Tested</td><td class=\"colHead\">Average<br>Scale<br> Score</td><td class=\"colHead\">%<br>Goal<br>Range</td><td class=\"colHead\">% At/Above<br>Proficient<br>Level</td>";
	ResultHTML += "<td class=\"colHead\">N<br>Tested</td><td class=\"colHead\">Average<br>Scale<br> Score</td><td class=\"colHead\">%<br>Goal<br>Range</td><td class=\"colHead\">% At/Above<br>Proficient<br>Level</td>";
	ResultHTML += "<td class=\"colHead\">N<br>Tested</td><td class=\"colHead\">Average<br>Scale<br> Score</td><td class=\"colHead\">%<br>Goal<br>Range</td><td class=\"colHead\">% At/Above<br>Proficient<br>Level</td>";
	ResultHTML += "</tr>";
	
/*	for (i=0;i<frm.SState.length;i++) {
		if (frm.SState[i].checked) {
			ResultHTML += writeDist(Document.childNodes[frm.SState[i].value]);
		}
	}
	*/
	for (i=0;i<frm.SDistrict.length;i++) {
		if (frm.SDistrict[i].checked) {
			ResultHTML += writeDist(Document.childNodes[frm.SDistrict[i].value]);
		}
	}
	ResultHTML += "</table></center>";
	ResultHTML += "<span class=\"footnote\">&nbsp;&nbsp; N/A: Results not presented for groups fewer than 20 students.</footnote>";
	ResultHTML += "<center><br><a href=\"http://www.emetric.net/\" target=\"new\"><img border=\"0\" src=\"images/powered.gif\" alt=\"Powered by eMetric.\"></a></center>";
	ResultHTML += "</body></html>";


  	var resWin = open("about:blank","","width=730,height=530,top=100,left=100,scrollbars=yes,resizable=yes");
    resWin.document.write(ResultHTML);
    resWin.focus();
		resWin = null;

}

function writeDist(node) {
	//	alert("writing node " + node.childNodes[1].text);

		var res = "";
		
		//spacing between rows
		res += "<tr bgcolor=\"#eeeeee\"><td colspan=2 class=\"borderLeft\">&nbsp;</td>" +
					 "<td colspan=4 class=\"borderRight\">&nbsp;</td>" + 
					 "<td colspan=4 class=\"borderRight\">&nbsp;</td>" +
					 "<td colspan=4 class=\"borderRight\">&nbsp;</td>" +
					 "<td colspan=4 class=\"borderRight\">&nbsp;</td></tr>";
					 
		res += "<tr><td class=\"district\">" + node.childNodes[1].text + "</td>";
		
		var firstYear = node.childNodes[2].text;
		var firstYearIndex = firstYear % 2000;

		for (var i=0;i<numYears;i++) {
			//write the year that is (firstYear + i) for this data piece
			if (firstYearIndex + i <= numYears) {
				res += writeYear(firstYearIndex + i,i+1,node);
			} else {
				res += writeBlankYear(i+1);
			}

			//new row logic
			if (i==0) res += "</tr><tr><td class=\"viewChart\"><a href=\"javascript:viewChart('" + node.childNodes[1].attributes.getNamedItem("gifFile").text + "');\" onMouseOver=\"window.status='Click here to view the graph for this district.'\" onMouseOut=\"window.status=''\">View Graph</a></td>";
			else if (i<numYears-1) res += "</tr><tr><td class=\"district"+i+"\">&nbsp;</td>";
		}
		
/******************** OLD CODE **********************
		if (firstYear == "2001")	res += writeYear("1",1,node);
		else if (firstYear == "2002") res += writeYear("2",1,node);
		else if (firstYear == "2003") res += writeYear("3",1,node);
		else if (firstYear == "2004") res += writeYear("4",1,node);
		
		res += "</tr><tr><td class=\"viewChart\"><a href=\"javascript:viewChart('" + node.childNodes[1].attributes.getNamedItem("gifFile").text + "');\" onMouseOver=\"window.status='Click here to view the graph for this district.'\" onMouseOut=\"window.status=''\">View Graph</a></td>";
		
		if (firstYear == "2001") res += writeYear("2",2,node);
		else if (firstYear == "2002") res += writeYear("3",2,node);
		else if (firstYear == "2003") res += writeYear("3");
		else if (firstYear == "2004") res += writeBlankYear("3",2,node);
		
		res += "</tr>";
		res += "<tr><td class=\"district\">&nbsp;</td>";
		
		if (firstYear == "2001") res += writeYear("3",3,node);
		else res += writeBlankYear("3");
******************************************************/
		res += "</tr>";
		
		return res;
}

function writeYear(year,index,node) {
	var res = "<td class=\"year" + index + "\">200" + year+ "</td>";
	for (var j=0; j<16; j=j+4) {
			res += "<td class=\"dataRow" + ((index-1)%2+1) + "\" id=\"dataCell" + j + "\">" + node.childNodes[index*2+1].childNodes[j].text + "</td>";
			res += "<td class=\"dataRow" + ((index-1)%2+1) + "\" id=\"dataCell" + (j+1) + "\">" + node.childNodes[index*2+1].childNodes[j+1].text + "</td>";
			res += "<td class=\"dataRow" + ((index-1)%2+1) + "\" id=\"dataCell" + (j+2) + "\">" + node.childNodes[index*2+1].childNodes[j+2].text + "</td>";
			res += "<td class=\"dataRow" + ((index-1)%2+1) + "\" id=\"dataCell" + (j+3) + "\">" + node.childNodes[index*2+1].childNodes[j+3].text + "</td>";
	}
	return res;
}

function writeBlankYear(index) {
	var res = "<td class=\"year" + index + "\">&nbsp;</td>";
	for (var j=0; j<16; j=j+4) {
			res += "<td class=\"dataRow" + ((index-1)%2+1) + "\" id=\"dataCell" + j + "\">&nbsp;</td>";
			res += "<td class=\"dataRow" + ((index-1)%2+1) + "\" id=\"dataCell" + (j+1) + "\">&nbsp;</td>";
			res += "<td class=\"dataRow" + ((index-1)%2+1) + "\" id=\"dataCell" + (j+2) + "\">&nbsp;</td>";
			res += "<td class=\"dataRow" + ((index-1)%2+1) + "\" id=\"dataCell" + (j+3) + "\">&nbsp;</td>";
	}
	return res;
}