// conf_registration.js
function roundcurrency(number)
{
  if (number == 0)
  { return '0.00' ;}
  else 
  {
    var dol=number*100;
    dol=Math.round(dol);
    var dolstring=""+dol;
    var len=dolstring.length;
    var endFig = dolstring.substring(0,len-2)+"."+dolstring.substring(len-2,len);
    return endFig;
  }
} 

function checkRegForm( formObj )
{
	// format: obj_name | obj_description | obj_type
	// obj_type = ( INPUT, SELECT, RADIO )
	var fields_to_check = new Array( 'title | Title | SELECT', 'firstname | First Name | INPUT', 'surname | Surname | INPUT', 'address | Address | INPUT', 'town | Town/City | INPUT', 'state | State | INPUT', 'postcode | Postcode | INPUT', 'country | Country | SELECT', 'workphone | Work Phone | INPUT', 'email1 | E-mail | INPUT', 'email2 | E-mail Confirmation | INPUT', 'date | Arrival Date | INPUT', 'Travel_Plans | Travel Plans | TEXTAREA'    );
	var warning_msg = "";
	for ( i=0; i < fields_to_check.length; i++ )
	{
		var field_var = fields_to_check[i].split( " | " );
		if ( field_var[2].indexOf("INPUT") == 0 )
		{
			if ( eval( 'formObj.' +field_var[0]+ '.value.length' ) == 0 )
			{ warning_msg += "\n - " + field_var[1]; }
		}
        else if ( field_var[2].indexOf("TEXTAREA") == 0 )
		{
			if ( eval( 'formObj.' +field_var[0]+ '.value.length' ) == 0 )
			{ warning_msg += "\n - " + field_var[1]; }
		}
		else if ( field_var[2].indexOf("SELECT") == 0 )
		{
			if ( eval( 'formObj.' +field_var[0]+ '.selectedIndex' ) == 0 )
			{ warning_msg += "\n - " + field_var[1]; }
		}
		else if ( field_var[2].indexOf("RADIO") == 0 )
		{
			var checked_counter = 0;
			for ( r=0; r < eval( 'formObj.' +field_var[0]+ '.length' ); r++ )
			{
				if ( eval( 'formObj.' +field_val[r]+ '.checked' ) == true )
				{ checked_counter++; }
			}
			if ( checked_counter > 0 )
			{ warning_msg += "\n - " + field_var[1]; }
		}
	}
	if ( formObj.date.value.indexOf("dd mm yyyy") >= 0 )
	{
		warning_msg += "\n - Arrival Date";
	}
	if ( warning_msg.length > 1 )
	{
		alert( "You have not completed the following required fields:\n" +warning_msg+ "\n\nPlease make sure that all the required fields have\nbeen correctly filled before proceeding to the next\npage, thank you." );
		return false;
	}
	// everything looks okay, disable submit button to stop repeat submitters:
	formObj.Submit.disabled = true;
} // end function

function calcRegFee()
{
	// get membertype
	
	var member_type = document.regForm.membertype.value;
	// get registerfor
	var register_for = document.regForm.registerfor.selectedIndex;
	if ( register_for == 0 )
	{
		// Full Conference
		if ( member_type == "Non-TASA Member - Waged")
		{
			document.regForm.registerforcost.value = '705.00'; // Non-TASA Member - Waged ***
		}
		else if ( member_type == "Non-TASA Member - Unwaged / Student")
		{
			document.regForm.registerforcost.value = '475.00'; // Non-TASA Member - Unwaged / Student ***
		}
		else if ( member_type == "TASA Member - Waged" || member_type == "New TASA Member - Waged" || member_type == "ASA, BSA, SAANZ, SAI Reciprocal Member")
		{
			document.regForm.registerforcost.value = '580.00'; // TASA Member - Waged ***
		}
		else if ( member_type == "TASA Member - Unwaged / Student" || member_type == "New TASA Member - Unwaged / Student" || member_type == "ASA, BSA, SAANZ, SAI Reciprocal Member - Unwaged / Student" )
		{
			document.regForm.registerforcost.value = '350.00'; // TASA Member - Unwaged / Student ***
		}
	}
	else
	{
		// Single Day
		if ( member_type == "Non-TASA Member - Waged")
		{
			document.regForm.registerforcost.value = '360.00'; // Non-TASA Member - Waged
		}
		else if ( member_type == "Non-TASA Member - Unwaged / Student")
		{
			document.regForm.registerforcost.value = '285.00'; // Non-TASA Member - Unwaged / Student
		}
		else if ( member_type == "TASA Member - Waged" || member_type == "New TASA Member - Waged" || member_type == "ASA, BSA, SAANZ, SAI Reciprocal Member")
		{
			document.regForm.registerforcost.value = '265.00'; // TASA Member - Waged
		}
		else if ( member_type == "TASA Member - Unwaged / Student" || member_type == "New TASA Member - Unwaged / Student" || member_type == "ASA, BSA, SAANZ, SAI Reciprocal Member - Unwaged / Student")
		{
			document.regForm.registerforcost.value = '180.00'; // TASA Member - Unwaged / Student
		}
	}
	document.getElementById('registerforcosthtml').innerHTML = document.regForm.registerforcost.value;
	//Travel Details
	document.regForm.Bus_from_airport_cost.value = roundcurrency( document.regForm.Bus_from_Airport.selectedIndex * 25);
	document.regForm.Bus_to_airport_cost.value = roundcurrency( document.regForm.Bus_To_Airport.selectedIndex * 25);
	
	document.regForm.Bus_airport_cost.value = roundcurrency((document.regForm.Bus_To_Airport.selectedIndex * 25) + ( document.regForm.Bus_from_Airport.selectedIndex * 25));
	
	// Additional Options
	if (document.regForm.healthday.value == "Yes")
	{
	  document.regForm.healthdaycost.value = roundcurrency(1 * 55);
	  document.getElementById('healthdaycosthtml').innerHTML = document.regForm.healthdaycost.value;
	}
	else
	{
	  document.regForm.healthdaycost.value = roundcurrency(0 * 35);
	  document.getElementById('healthdaycosthtml').innerHTML = document.regForm.healthdaycost.value;
	}
	if (document.regForm.postgradworkshop.value == "Yes")
	{
	  document.regForm.postgradworkshopcost.value = roundcurrency(1 * 35);
	  document.getElementById('postgradworkshopcosthtml').innerHTML = document.regForm.postgradworkshopcost.value;
	}
	else
	{
	  document.regForm.postgradworkshopcost.value = roundcurrency(0 * 40);
	  document.getElementById('postgradworkshopcosthtml').innerHTML = document.regForm.postgradworkshopcost.value;
	} 
	document.regForm.extradinnercost.value = roundcurrency( document.regForm.extra_dinner.selectedIndex * 65);
	  document.getElementById('extradinnercosthtml').innerHTML = document.regForm.extradinnercost.value;
	  
	//Accommodation
	document.regForm.accommcost.value = roundcurrency(document.regForm.rooms_required.value * document.regForm.accommnumberofnights.selectedIndex * document.regForm.accomm_subcost.value);
	  document.getElementById('accommcosthtml').innerHTML = document.regForm.accommcost.value;
	//document.regForm.healthdaycost.value = roundcurrency( document.regForm.healthday.selectedIndex * 40 );
	//	document.getElementById('healthdaycosthtml').innerHTML = document.regForm.healthdaycost.value;
	//document.regForm.postgradworkshopcost.value = roundcurrency( document.regForm.postgradworkshop.selectedIndex * 40 );
	//	document.getElementById('postgradworkshopcosthtml').innerHTML = document.regForm.postgradworkshopcost.value;
	//document.regForm.galadinnercost.value = roundcurrency( document.regForm.galadinner.selectedIndex * 66 );
	//	document.getElementById('galadinnercosthtml').innerHTML = document.regForm.galadinnercost.value;
	//document.regForm.accommcost.value = roundcurrency( document.regForm.accommnumberofpersons.selectedIndex * document.regForm.accommnumberofnights.selectedIndex * 55 );
	//	document.getElementById('accommcosthtml').innerHTML = document.regForm.accommcost.value;
	document.regForm.totalamount.value = roundcurrency( parseInt(document.regForm.registerforcost.value) +
										   parseInt(document.regForm.Bus_from_airport_cost.value) +
										   parseInt(document.regForm.Bus_to_airport_cost.value) +
										   parseInt(document.regForm.healthdaycost.value) +
										   parseInt(document.regForm.postgradworkshopcost.value) +
										   parseInt(document.regForm.extradinnercost.value) +
										   parseInt(document.regForm.accommcost.value) );
		document.getElementById('totalamounthtml').innerHTML = document.regForm.totalamount.value;
	//	if ( parseInt(document.regForm.accommcost.value) > 0 && document.regForm.accommdatein.value.indexOf("dd mm yyyy") >= 0 )
	//	{
	//		alert( "You have elected to stay at the oncampus accommodation provided by the Mary White. Please provide a date that you will arrive at the on-campus accommodation." );
	//		return false;
	//	}
} // end function calcRegFee

//Calculate cost of Accommodation Category
function calcAccommCat() {
	var accomm_cat = document.regForm.accom_category.selectedIndex;
	
	if (accomm_cat == 0)
	{
  	  document.regForm.accomm_subcost.value = '45.00';
	}
	else if (accomm_cat == 1)
	{
	  document.regForm.accomm_subcost.value = '65.00';
	}
	else if (accomm_cat == 2)
	{
	  document.regForm.accomm_subcost.value = '55.00';
	}
	else if (accomm_cat == 3)
	{
	  document.regForm.accomm_subcost.value = '55.00';
	}
	else if (accomm_cat == 4)
	{
	  document.regForm.accomm_subcost.value = '70.00';
	}
	else if (accomm_cat == 5)
	{
	  document.regForm.accomm_subcost.value = '75.00';
	}
}