/**
 *	Common JavaScript Functions for Form Validations
 *	For: registration form
 *
 *	@author: mariz
 *	@copyright: 2008
 */
 
function setStateFld(country_fld){
	var obj = document.getElementById(country_fld);	
	var states = document.getElementById('state');
	
	sel_country = obj.options[obj.selectedIndex].value;
	sel_state = states.options[states.selectedIndex].value;
	
	x_select_state(sel_country, sel_state, showStates);
}

function showStates(output){
	setElementInnerHTML('div_state', output);
	setElementInnerHTML('lbl_state', (sel_country == 'US' ? "State" : "Province"));
}

function showElement(elem_id){
	document.getElementById(elem_id).style.display = 'block';
}

function hideElement(elem_id){
	document.getElementById(elem_id).style.display = 'none';
}

function clearElement(elem_id){
	document.getElementById(elem_id).innerHTML = '';
}

function setElementInnerHTML(elem_id, html_value){
	document.getElementById(elem_id).innerHTML = html_value;
}

function setFocusOnElement(elem_id){
	document.getElementById(elem_id).focus();
}

function trimXSpaces(Str){
	if(!Str.length)
  		return Str;

	while(Str.charAt(0) == ' ')
  		Str = Str.substring(1, Str.length);

	if(!Str.length)
  		return Str;

 	while(Str.charAt(Str.length - 1) == ' ')
  		Str = Str.substring(0, Str.length - 1);

	return Str;
}

function containsSomething(Field){
	if ((Field.type == "text") || (Field.type == "textarea") || (Field.type == "password") || (Field.type == "hidden")) {
		Str = trimXSpaces(Field.value);
		if (Str == ""){
			return false;
		}
	} else {
    	if (returnSelection(Field) == null) {
      		return false;
    	}
  	}

  	return true;
}

function isValidEmail(Field){
	if (!containsSomething(Field)){
  		return false;
  	}

  	if (Field.value.indexOf("@")==-1 || Field.value.indexOf("@")== 0 || Field.value.indexOf(".")==-1 || Field.value.indexOf(".")== 0 || trimXSpaces(Field.value).indexOf(" ")!=-1 || Field.value.length<6){
  		return false;
  	}
  	
	return true;  	
}

function checkCheckboxes(Form, FieldName){
	for(var i=0;i<Form.elements.length;i++)
		if(Form.elements[i].type == 'checkbox' && Form.elements[i].name == FieldName)
			if(Form.elements[i].checked)
				return true;

	return false;
}

function checkRadio(Form, FieldName/*, AlertMsg*/){
	for(var i=0;i<Form.elements.length;i++){
		if(Form.elements[i].type == 'radio' && Form.elements[i].name == FieldName)
			if(Form.elements[i].checked)
				return true;
	}

	//alert(AlertMsg);

	return false;
}

function checkSelect(Field){
	var i;

	for(i=0;i<Field.length;i++)
		if(Field.options[i].selected)
			break;

	if(!Field.options[i].value && (Field.selectedIndex <= 0)){
		return false;
	}

	return true;
}

function checkSelectM(Field/*, AlertMsg*/){
	var i;
 	var SelectProceed = 0;

	for (i=0; i<=(Field.options.length - 1); i++){
  		if (Field.options[i].selected){
  			SelectProceed = 1;
  	  		break;
  		}
  	}

	if (SelectProceed == 0){
    	//alert(AlertMsg);
  		return false;
  	}

  	return true;
}

/*****************************************************/
/*		Get Form Values 						     */
/*****************************************************/
function getRadio(Form, FieldName){
	var answer = '';
	
	for(var i=0; i<Form.elements.length; i++){
		if(Form.elements[i].type == 'radio' && Form.elements[i].name == FieldName)
			if(Form.elements[i].checked){
				answer = Form.elements[i].value;
				break;
			}
	}
	
	return answer;
}