function generateCode(button) {
	var notes = getFirst();
	var keys2 = getSecond();
	if (keys2 != "")
		notes += "," + keys2;
	var keys3 = getThird();
	if (keys3 != "")
		notes += "," + keys3;
	var keys4 = getFourth();
	if (keys4 != "")
		notes += "," + keys4;
	
	var color = document.forms.chord_generator.rgb.value;
	color = color.substring(1,7);
	var size = get_radio_value();

	if (button == 1) {
		new_window = window.open("", "test", "location=0,status=0,scrollbars=0,width=800,height=500");
		new_window.document.write("<b>Copy and paste this code:</b><br /><textarea cols='80' rows='6'><img src='http://www.hearandplaymusic.com/dynamic_image/pianokeys.php?notes=" + notes + "&color=" + color + "&size=" + size + "' border=0 /><br /><a href=\"http://www.hearandplay.com/main\">Powered by hearandplay.com</a></textarea>");
		new_window.document.write("<br /><br /><b>Generated Image:</b><br /><img src='http://www.hearandplaymusic.com/dynamic_image/pianokeys.php?notes=" + notes + "&color=" + color + "&size=" + size + "' border=0 /><br /><a href=\"http://www.hearandplay.com/main\">Powered by hearandplay.com</a>");
	} else if (button == 2) {
		document.getElementById("code").innerHTML = "<b>Copy and paste this code:</b><br /><textarea cols='34' rows='6'><img src='http://www.hearandplaymusic.com/dynamic_image/pianokeys.php?notes=" + notes + "&color=" + color + "&size=" + size + "' border=0 /><br /><a href=\"http://www.hearandplay.com/main\">Powered by hearandplay.com</a></textarea>";
	}
}

function get_radio_value()
{
	for (var i=0; i < document.forms[0].size.length; i++)
	   {
	   if (document.forms[0].size[i].checked)
	      {
	      	var rad_val = document.forms[0].size[i].value;
	      }
	   }
	
	return rad_val;
}

function update() {
	var color = document.forms.chord_generator.rgb.value;
	color = color.substring(1,7);
	var notes = getFirst();
	var keys2 = getSecond();
	if (keys2 != "")
		notes += "," + keys2;
	var keys3 = getThird();
	if (keys3 != "")
		notes += "," + keys3;
	var keys4 = getFourth();
	if (keys4 != "")
		notes += "," + keys4;
	document.getElementById("preview").innerHTML = "<img src='http://www.hearandplaymusic.com/dynamic_image/pianokeys.php?notes="+notes+"&color="+color+"&size=1' frameborder=0 width=300 />";
	generateCode(2);
}

function addKeys() {
	if (document.getElementById("second_octave").innerHTML == "") {
		document.getElementById("lblSecond").innerHTML = "&nbsp;";
		document.getElementById("second_octave").innerHTML = generateSelect('second');
	} else if (document.getElementById("third_octave").innerHTML == "") {
		document.getElementById("lblThird").innerHTML = "&nbsp;";
		document.getElementById("third_octave").innerHTML = generateSelect('third');
	}else if (document.getElementById("fourth_octave").innerHTML == "") {
		document.getElementById("lblFourth").innerHTML = "&nbsp;";
		document.getElementById("fourth_octave").innerHTML = generateSelect('fourth');
	}
}

function getFirst() {
	var retKeys = "";
	for (i=0;i<5;i++){
		var a = "first" + i;
		if (null != document.getElementById(a)) {
			var k = document.getElementById(a).value;
			if (k != ""){
				if (retKeys != ""){
					retKeys += ",";
				}
				k = k.replace("#","s");
				retKeys += k;
			}
		}
	}
	return retKeys;	
}

function getSecond() {
	var retKeys = "";
	for (i=0;i<5;i++){
		var a = "second" + i;
		if (null != document.getElementById(a)) {
			var k = document.getElementById(a).value;
			if (k != ""){
				if (retKeys != ""){
					retKeys += ",";
				}
				k = k.replace("#","s");
				retKeys += k;
			}
		}
	}
	return retKeys;	
}

function getThird() {
	var retKeys = "";
	for (i=0;i<5;i++){
		var a = "third" + i;
		if (null != document.getElementById(a)) {
			var k = document.getElementById(a).value;
			if (k != ""){
				if (retKeys != ""){
					retKeys += ",";
				}
				k = k.replace("#","s");
				retKeys += k;
			}
		}
	}
	return retKeys;	
}

function getFourth() {
	var retKeys = "";
	for (i=0;i<5;i++){
		var a = "fourth" + i;
		if (null != document.getElementById(a)) {
			var k = document.getElementById(a).value;
			if (k != ""){
				if (retKeys != ""){
					retKeys += ",";
				}
				k = k.replace("#","s");
				retKeys += k;
			}
		}
	}
	return retKeys;	
}

function generateSelect(octave) {
	var ret = "";
	for (i=0;i<5;i++) {
		ret += "<select id='"+octave+i+"' onchange='update()'>\n";
			var keys = getKeys();
			ret += "<option>" + "" + "</option>\n";
			for(j=0;j<21;j++){
				ret += "<option>" + keys[j] + "</option>\n";
			}
		ret += "</select>\n";
	}
	ret += "<br />";
	return ret;
}

function getKeys() {
	var keys = new Array("Cb", "C", "C#", "Db", "D", "D#", "Eb", "E", "E#", "Fb", "F", "F#", "Gb", "G", "G#", "Ab", "A", "A#", "Bb", "B", "B#");
	return keys;
}
