//Page initialization
function body_Load()
{
	var form=document.forms[0];
	var radios=form[NAMEPREFIX+'AgreementRadioList'];
	var yearDDL=document.getElementById(IDPREFIX+'YearDropDownList');
	var monthDDL=document.getElementById(IDPREFIX+'MonthDropDownList');
	for(var i=0;i<radios.length;i++)
	{
		attachEventListener('click',radios[i],radio_Click);
	}
	attachEventListener('change',yearDDL,doAsyncCall);
	attachEventListener('change',monthDDL,doAsyncCall);
	attachEventListener('submit',form,doAsyncCall);
	initUpdateableContents();
}

//Attaches event listeners to textboxes
function initUpdateableContents()
{
	var seniorityTB=document.getElementById(IDPREFIX+'SeniorityTextBox');
	var jobPercentageTB=document.getElementById(IDPREFIX+'JobPercentageTextBox');
	var error=document.getElementById(IDPREFIX+'error');
	var calculateButton=document.getElementById(IDPREFIX+'CalculateButton');
	attachEventListener('change',seniorityTB,doAsyncCall);
	attachEventListener('change',jobPercentageTB,doAsyncCall);
	attachEventListener('focus',seniorityTB,textBox_Focus);
	attachEventListener('focus',jobPercentageTB,textBox_Focus);
	attachEventListener('blur',seniorityTB,textBox_Blur);
	attachEventListener('blur',jobPercentageTB,textBox_Blur);
	attachEventListener('click',calculateButton,doAsyncCall);
	removeClass('CallBackInProgress',document.body,false);
	if(null!=error)
	{
		alert(error.value);
		error.parentNode.removeChild(error);
	}
}

//Calls the async callback and displays/hiden the private sector legislation anchor
function radio_Click(e)
{
	var evt=new CommonEvent(e);
	document.getElementById('privateSectorAnchor').style.display=('PrivateSector'==evt.sender.value)?'inline':'none';
	document.getElementById('stateEmployeeAnchor').style.display=('StateEmployee'==evt.sender.value)?'inline':'none';
	return doAsyncCall(e);
}
//Callbacks with the parameters from the form.
function doAsyncCall(e)
{
	var evt=new CommonEvent(e);
	if('form'==evt.sender.tagName.toLowerCase()||'submit'==evt.sender.type)//form is about to submit using POST method
	{
		evt.cancel();
		return false;
	}
	if(Page_ClientValidate())
	{
		var month=document.getElementById(IDPREFIX+'MonthDropDownList').value;
		var year=document.getElementById(IDPREFIX+'YearDropDownList').value;
		var radio=getCheckedRadio(document.forms[0][NAMEPREFIX+'AgreementRadioList']);
		var agreement=radio.value;
		var seniority=document.getElementById(IDPREFIX+'SeniorityTextBox').value;
		var percentage=document.getElementById(IDPREFIX+'JobPercentageTextBox').value;
		seniority=((''==seniority)?-1:seniority);
		percentage=((''==percentage)?-1:percentage);
		addClass('CallBackInProgress',document.body,false);
		window[IDPREFIX+'ConvalescencePayCallBack'].Callback(month,year,agreement,seniority,percentage);
	}
	return true;
}
