/**** Window Load Functions ****/
window.onload = function()
{
	ob_win_eff = new WindowEffects();
	ob_bro_det = new BrowserDetails();
	
	if(window.image_rollovers != undefined)
	{
		ob_win_eff.InitRollovers();
	}
	
	if(window.page_form_flag != undefined)
	{
		ob_for_eff = new FormEffects();
	}
	
	if(window.required_fields_flag != undefined)
	{
		ob_for_eff.InitRequiredFields();
		ob_for_eff.InitFormSubmit();
	}
}


/**** Visitor Browser ****/
BrowserDetails = function()
{
	this.match_opera = "Opera";
	this.is_opera = false;
	
	this.match_firefox = "Firefox";
	this.is_firefox = false;
	
	this.match_msie = "MSIE";
	this.is_msie = false;
	
	this.match_safari = "Safari";
	this.is_safari = false;
	
	if(navigator.userAgent.search(this.match_opera) != -1)
	{
		this.is_opera = true;
	}
	else if(navigator.userAgent.search(this.match_firefox) != -1)
	{
		this.is_firefox = true;
	}
	else if(navigator.userAgent.search(this.match_msie) != -1)
	{
		this.is_msie = true;
	}
	else if(navigator.userAgent.search(this.match_safari) != -1)
	{
		this.is_safari = true;
	}
	
	return this;
}


function show_boxes() {
	document.getElementById("more").style.display = 'none';
	document.getElementById("hidden_rows").style.display = 'block';
} // end function


function selectbox_value(id) {
	var el = document.getElementById(id);
	
	if (!el) { alert('element "' + id + '" does not exist'); return; }
	
	if (!el[el.selectedIndex]) {
		return false;
	}
	return el[el.selectedIndex].value;
} // end function


function performers() {
	//var group_type = selectbox_value("group_type");
	var number_of_performers;
	var table_data = [];

	if (document.getElementById('group_type_ensemble').checked == true) {
		// ensemble
		
		document.getElementById("number_of_performers").disabled = false;
		document.getElementById("instruments_solo").style.display = 'none';
		document.getElementById("instruments_duet").style.display = 'none';
		document.getElementById("instruments_ensemble").style.display = 'block';
		document.getElementById("contest_level_fieldset").style.display = 'none';
		//document.getElementById("contest_level").disabled = true;
		//number_of_performers = Number(document.getElementById("number_of_performers").value);

	} else if (document.getElementById('group_type_duet').checked == true) {
		// duet

		document.getElementById("number_of_performers").disabled = true;
		document.getElementById("instruments_solo").style.display = 'none';
		document.getElementById("instruments_duet").style.display = 'block';
		document.getElementById("instruments_ensemble").style.display = 'none';
		document.getElementById("contest_level_fieldset").style.display = 'none';
		//document.getElementById("contest_level").disabled = true;
		//number_of_performers = 2;

	} else {
		// solo (default)

		document.getElementById("number_of_performers").disabled = true;
		document.getElementById("instruments_solo").style.display = 'block';
		document.getElementById("instruments_duet").style.display = 'none';
		document.getElementById("instruments_ensemble").style.display = 'none';
		document.getElementById("contest_level_fieldset").style.display = 'block';
		//document.getElementById("contest_level").disabled = false;
		//number_of_performers = 1;

	} // end if
	
	/*
	
	// get existing data from table
	var i=0;
	while (document.getElementById("student_first_name_" + i)) {
		table_data.push([document.getElementById("student_first_name_" + i).value, document.getElementById("student_last_name_" + i).value, selectbox_value("age_" + i), selectbox_value("years_experience_" + i)]);
		i++;
	}
	document.getElementById("output").innerHTML = var_dump(table_data);

	// write new table
	var table_html = '<table width="375" border="0" cellspacing="1" cellpadding="1">';
	table_html += 		'<tr>';
	table_html += 		'<td width="24%">First Name</td>';
	table_html += 		'<td width="23%">Last Name</td>';
	table_html += 		'<td width="20%" align="center">Age</td>';
	table_html += 		'<td width="33%" align="center">Years of Experience</td>';
	table_html += 		'</tr>';

	for (i=0;i<number_of_performers;i++) {
		row_data = (table_data[i] ? table_data[i] : ['','','','']);
		table_html += 	'<tr>';
		table_html += 	'<td valign="top" width="24%"><input name="student_first_name[' + i + ']" type="text" class="input_text_small" id="student_first_name_' + i + '" size="9" value="' + row_data[0] + '"></td>';

		table_html += 	'<td valign="top" width="23%"><input name="student_last_name[' + i + ']" type="text" class="input_text_small" id="student_last_name_' + i + '" size="9" value="' + row_data[1] + '"></td>';

		table_html += 	'<td width="20%" align="center"><select name="age[' + i + ']" class="input_select" id="age_' + i + '">';
		table_html += 	'<option value=""></option>';
		table_html += 	'<option value="4"' + (row_data[2] == '4' ? 'selected="selected"' : '') + '>4</option>';
		table_html += 	'<option value="5"' + (row_data[2] == '5' ? 'selected="selected"' : '') + '>5</option>';
		table_html += 	'<option value="6"' + (row_data[2] == '6' ? 'selected="selected"' : '') + '>6</option>';
		table_html += 	'<option value="7"' + (row_data[2] == '7' ? 'selected="selected"' : '') + '>7</option>';
		table_html += 	'<option value="8"' + (row_data[2] == '8' ? 'selected="selected"' : '') + '>8</option>';
		table_html += 	'<option value="9"' + (row_data[2] == '9' ? 'selected="selected"' : '') + '>9</option>';
		table_html += 	'<option value="10"' + (row_data[2] == '10' ? 'selected="selected"' : '') + '>10</option>';
		table_html += 	'<option value="11"' + (row_data[2] == '11' ? 'selected="selected"' : '') + '>11</option>';
		table_html += 	'<option value="12"' + (row_data[2] == '12' ? 'selected="selected"' : '') + '>12</option>';
		table_html += 	'<option value="13"' + (row_data[2] == '13' ? 'selected="selected"' : '') + '>13</option>';
		table_html += 	'<option value="14"' + (row_data[2] == '14' ? 'selected="selected"' : '') + '>14</option>';
		table_html += 	'<option value="15"' + (row_data[2] == '15' ? 'selected="selected"' : '') + '>15</option>';
		table_html += 	'<option value="16"' + (row_data[2] == '16' ? 'selected="selected"' : '') + '>16</option>';
		table_html += 	'<option value="17"' + (row_data[2] == '17' ? 'selected="selected"' : '') + '>17</option>';
		table_html += 	'<option value="18+"' + (row_data[2] == '18+' ? 'selected="selected"' : '') + '>18+</option>';
		table_html += 	'</select>';
		table_html += 	'</td>';

		table_html += 	'<td width="20%" align="center"><select name="years_experience[' + i + ']" class="input_select" id="years_experience_' + i + '">';
		table_html += 	'<option value=""></option>';
		table_html += 	'<option value="-1"' + (row_data[3] == '-1' ? 'selected="selected"' : '') + '>Less than 1</option>';
		table_html += 	'<option value="1"' + (row_data[3] == '1' ? 'selected="selected"' : '') + '>1</option>';
		table_html += 	'<option value="2"' + (row_data[3] == '2' ? 'selected="selected"' : '') + '>2</option>';
		table_html += 	'<option value="3"' + (row_data[3] == '3' ? 'selected="selected"' : '') + '>3</option>';
		table_html += 	'<option value="4"' + (row_data[3] == '4' ? 'selected="selected"' : '') + '>4</option>';
		table_html += 	'<option value="5"' + (row_data[3] == '5' ? 'selected="selected"' : '') + '>5</option>';
		table_html += 	'<option value="6"' + (row_data[3] == '6' ? 'selected="selected"' : '') + '>6</option>';
		table_html += 	'<option value="7"' + (row_data[3] == '7' ? 'selected="selected"' : '') + '>7</option>';
		table_html += 	'<option value="8"' + (row_data[3] == '8' ? 'selected="selected"' : '') + '>8</option>';
		table_html += 	'<option value="9"' + (row_data[3] == '9' ? 'selected="selected"' : '') + '>9</option>';
		table_html += 	'<option value="10"' + (row_data[3] == '10' ? 'selected="selected"' : '') + '>10</option>';
		table_html += 	'<option value="11"' + (row_data[3] == '11' ? 'selected="selected"' : '') + '>11</option>';
		table_html += 	'<option value="12"' + (row_data[3] == '12' ? 'selected="selected"' : '') + '>12 or more</option>';
		table_html += 	'</select>';
		table_html += 	'</td>';

		table_html += 	'</tr>';
	}
	table_html += 		'</table>';
	
	document.getElementById("performers_list").innerHTML = table_html;

	calculate_fees();
	
	*/
	
} // end function

function calculate_fees() {
	var fee = 20;
	/*
	var group_type = selectbox_value("group_type");
	switch (group_type) {
		case 'Solo':
			fee = 20;
			break;
		case 'Duet':
			fee = 40;
			break;
		default:
			fee = selectbox_value("number_of_performers") * 10;
			break;
	}
	*/
	document.getElementById("fee").innerHTML = '$' + fee + '.00';
} // end function

function do_payment_form() {
	var custom_field = document.getElementById("custom");
	var item_name_field = document.getElementById("item_name");
	var form1 = document.getElementById("form1");
	//alert('do_payment_form()');
	if (custom_field.value.length > 0) {
		item_name_field.value += " for Order # " + custom_field.value;
		//alert('do_payment_form 2');
	}
	return true;
}


function var_dump(obj, parent) {
   // Go through all the properties of the passed-in object
   var msg;
   for (var i in obj) {
      // if a parent (2nd parameter) was passed in, then use that to
      // build the message. Message includes i (the object's property name)
      // then the object's property value on a new line
      if (parent) {
	    msg = parent + "." + i + " = " + obj[i] + "<br>";
	  } else {
	    msg = i + " = " + obj[i] + "<br>";
	  }

      // If this property (i) is an object, then recursively process the object
      if (typeof obj[i] == "object") {
         if (i == 'style') {
		 //if (obj[i] instanceof CSSStyleDeclaration) {
		   if (parent) { dumpProps(obj[i], parent + "." + i); } else { dumpProps(obj[i], i); }
		 } // end if
      }
   }
	 
	 return msg;
} // end function

