// Copyright 2000 by CS Traducoes (TM)
// DO NOT use for any purpose without explicitly permit
// web site : http://www.cstraducoes.pt/


//=====Manage the display of QOLF_TransType according to QOLF_NbChar
//   QOLF_NbChar>1500 -> blur/deselect QOLF_TransType[1] (express translation)
//private: select QOLF_TransType[0] (normal translation) / deselect QOLF_TransType[1] (express translation)
function __resetQOLF_TransType(thisForm)
{	var fe_QOLF_TransType = thisForm.elements['QOLF_TransType'];
	fe_QOLF_TransType[0].click();
	fe_QOLF_TransType[1].blur();
}
//public: Select the QOLF_TransType with QOLF_NbChar
function computeTransType(thisForm,thisValue)
{	thisValue = iOnlyNumbers(thisValue);
	if (thisValue>1500)
	{	__resetQOLF_TransType(thisForm);
		changeClassOfElementById('font_QOLF_TransType',document,"FontSpeDisabled"); //taint the text "express translation"
		hideUnhideElementById('radio_QOLF_TransType',document,true); //hide the radio button "express translation"
	} else
	{	changeClassOfElementById('font_QOLF_TransType',document,"FontDefault"); //not taint the text "express translation"
		hideUnhideElementById('radio_QOLF_TransType',document,false); //unhide the radio button "express translation"
	}
}


//=====Manage the display of QOLF_LangTo according to QOLF_LangFrom
//   The QOLF_LangTo equals to QOLF_LangTo must be hidden
//public: Hide the QOLF_LangTo according to QOLF_LangFrom
function computeLangFrom(thisForm,thisValue)
{	var fe_QOLF_LangTo = thisForm.elements['QOLF_LangTo'];
	//unhide all
	for (i=0;i<fe_QOLF_LangTo.length;i++)	hideUnhideElementById(fe_QOLF_LangTo[i].name,document,false);
	//hide the LangTo=LangFrom
	if (thisValue!="...")
	{	hideUnhideElementById('QOLF_LangTo['+thisValue+']',document,true);
		//uncheck the box   -> no to don't bore the webuser if he checks target lang before source lang
		var txtObj = extGetElementById('QOLF_LangTo['+thisValue+']',document);
		txtObj.checked=false;
	}
}


//=====Manage the display of QOLF_NbDocCert according to QOLF_LangTo
//   The QOLF_NbDocCert must be hidden if another language than PTE is selected in QOLF_LangTo
//   According to QOLF_LangTo -> reset QOLF_NbDocCert
//private: put QOLF_NbDocCert to 0 before hide
function __resetQOLF_NbDocCert(thisForm)
{	var fe_QOLF_NbDocCert = thisForm.elements['QOLF_NbDocCert'];
	fe_QOLF_NbDocCert.value = 0;
}
//public: Hide the QOLF_NbDocCert according to QOLF_LangTo
function computeCertPTE(thisForm)
{	var fe_QOLF_LangTo = thisForm.elements['QOLF_LangTo'];
	var bOtherPTEchecked = false;
	//Check if another lang than PTE is checked
	for (i=0;i<fe_QOLF_LangTo.length;i++)	if (fe_QOLF_LangTo[i].checked && fe_QOLF_LangTo[i].value!="PTE") bOtherPTEchecked = true;
	//hide the QOLF_NbDocCert
	if (bOtherPTEchecked)
	{	__resetQOLF_NbDocCert(thisForm);
		changeClassOfElementById('font_QOLF_NbDocCert',document,"FontSpeDisabled"); //taint the text "N° cert"
		hideUnhideElementById('QOLF_NbDocCert',document,true); //hide the select list "N° cert"
	} else
	{	changeClassOfElementById('font_QOLF_NbDocCert',document,"FontDefault"); //not taint the text "N° cert"
		hideUnhideElementById('QOLF_NbDocCert',document,false); //unhide the select list "N° cert"
	}
}


//=====Validate the email in QOLF_Email
function checkMultiEmail(thisForm)
{	var fe_QOLF_Email = thisForm.elements['QOLF_Email'];
	val=fe_QOLF_Email.value;
	val=val.replace(/ /g,"");
	val=val.replace(/;/g,",");
	val=val.replace(/,/g,", ");
	fe_QOLF_Email.value=val;
	if (! ValidMultiEmail(fe_QOLF_Email.value))
	{ changeClassOfElementById('QOLF_Email',document,"inputBkgRed"); return false; }  //email error
	else changeClassOfElementById('QOLF_Email',document,"inputBkgWhite"); //email ok
	return true;
}


//=====Manage the mandatory records when submit : case GetPrice
//private fonctions
function __alertSubmit(submitKo)
{	var alertTxt = '';
	if (submitKo.indexOf('_1_',0)>=0) alertTxt = alertTxt + js_alert_rec_1+"\r\n";
	if (submitKo.indexOf('_2_',0)>=0) alertTxt = alertTxt + js_alert_rec_2+"\r\n";
	if (submitKo.indexOf('_3_',0)>=0) alertTxt = alertTxt + js_alert_rec_3+"\r\n";
	if (submitKo.indexOf('_4_',0)>=0) alertTxt = alertTxt + js_alert_rec_4+"\r\n";
	if (submitKo.indexOf('_5_',0)>=0) alertTxt = alertTxt + js_alert_rec_5+"\r\n";
	alert(alertTxt+"\r\n   -> "+js_alert_rec_mand);
}

function __testGetPrice(thisForm)
{	var fe_QOLF_NbChar = thisForm.elements['QOLF_NbChar'];
	var fe_QOLF_LangFrom = thisForm.elements['QOLF_LangFrom'];
	var fe_QOLF_LangTo = thisForm.elements['QOLF_LangTo'];
	var submitKo = '';

	if (iOnlyNumbers(fe_QOLF_NbChar.value)<=0)
	{ changeClassOfElementById('QOLF_NbChar',document,"inputBkgRed"); submitKo='_1_'; }
	else changeClassOfElementById('QOLF_NbChar',document,"inputBkgWhite");

	if (fe_QOLF_LangFrom.selectedIndex<=0)
	{ changeClassOfElementById('QOLF_LangFrom',document,"inputBkgRed"); submitKo='_1_'; }
	else changeClassOfElementById('QOLF_LangFrom',document,"inputBkgWhite");

	var LT_oneChecked = 0;
	for (i=0;i<fe_QOLF_LangTo.length;i++)
	{ if (fe_QOLF_LangTo[i].checked 
		&& fe_QOLF_LangTo[i].value!=fe_QOLF_LangFrom.options[fe_QOLF_LangFrom.selectedIndex].value)
			LT_oneChecked=1;
	}
	if (LT_oneChecked<=0)
	{	for (i=0;i<fe_QOLF_LangTo.length;i++)  changeClassOfElementById(fe_QOLF_LangTo[i].name,document,"inputBkgRed");
		submitKo='_1_';
	}
	else { for (i=0;i<fe_QOLF_LangTo.length;i++)  changeClassOfElementById(fe_QOLF_LangTo[i].name,document,""); }
		
	return submitKo;
}
//Public: Validation when submit to get the price
function submitGetPrice(thisForm)
{	var submitKo = __testGetPrice(thisForm);
	if (submitKo!='') { __alertSubmit(submitKo); return false; }
	return true;
}


//=====Manage the mandatory records when submit : case Submit the form
//private fonctions
function __testOneEltStr(elt_name,thisForm)
{	var fe_QOLF_elt = thisForm.elements[elt_name];
	if (fe_QOLF_elt.value=='')
	{ changeClassOfElementById(elt_name,document,"inputBkgRed"); return false; }
	else changeClassOfElementById(elt_name,document,"inputBkgWhite");
	return true;
}
function __testSubmit(thisForm)
{	var fe_QOLF_File_bk = thisForm.elements['QOLF_File_bk'];
	var fe_QOLF_File = thisForm.elements['QOLF_File'];
	var fe_QOLF_FormatOut = thisForm.elements['QOLF_FormatOut'];

	var submitKo = __testGetPrice(thisForm);	//part 1

	var partOk = 1;
	if (fe_QOLF_File_bk.value=='' && fe_QOLF_File.value=='')
	{	if (! confirm(js_confirm_file_missing))
		{ changeClassOfElementById('QOLF_File',document,"inputBkgRed"); partOk=0; }
		else changeClassOfElementById('QOLF_File',document,"");
	}
	else changeClassOfElementById('QOLF_File',document,"");

	if (! __testOneEltStr('QOLF_Date',thisForm)) partOk=0;
	var LT_oneChecked = 0;
	for (i=0;i<fe_QOLF_FormatOut.length;i++)  { if (fe_QOLF_FormatOut[i].checked)  LT_oneChecked=1; }
	if (LT_oneChecked<=0)
	{	for (i=0;i<fe_QOLF_FormatOut.length;i++)  changeClassOfElementById(fe_QOLF_FormatOut[i].name,document,"inputBkgRed");
		partOk=0;
	}
	else { for (i=0;i<fe_QOLF_FormatOut.length;i++)  changeClassOfElementById(fe_QOLF_FormatOut[i].name,document,""); }
	if (partOk==0)  submitKo = submitKo + '_4_';	//part 4
	
	partOk = 1;
	if (! __testOneEltStr('QOLF_Name',thisForm)) partOk=0;
	if (! __testOneEltStr('QOLF_Address',thisForm)) partOk=0;
	if (! __testOneEltStr('QOLF_Country',thisForm)) partOk=0;
	if (! __testOneEltStr('QOLF_Email',thisForm)) partOk=0;
	if (! checkMultiEmail(thisForm)) partOk=0;
	if (! __testOneEltStr('QOLF_Tel',thisForm)) partOk=0;
	if (! __testOneEltStr('QOLF_SocietyID',thisForm)) partOk=0;
	if (partOk==0)  submitKo = submitKo + '_5_';	//part 5

	return submitKo;
}
//Public: Validation when submit all the form
function submitSubmit(thisForm)
{	var submitKo = __testSubmit(thisForm);
	if (submitKo!='') { __alertSubmit(submitKo); return false; }
	return true;
}
