/**
* Gestion des formulaire - Fonctions
*
* @version		$Id: form.js 2007-12-04 Frederic $
* @package		CMS.Framework
* @subpackage	Javascript
*/


/**
* Intitialise les champs d'un formulaire.
*
* @param string $formName Nom du formulaire
* @param Array $errorField Liste des noms des champs invalides
* @access public
* @since 1.0
*/
window.onload = function initFormField(/*formName, errorField*/) {
	for(i = 0; i < document.getElementById(formName).elements.length; i++) {
		document.getElementById(formName).elements[i].onclick = function focusInput() {
			this.className = 'focusedField';
		}
		document.getElementById(formName).elements[i].onblur = function blurInput() {
			if(isInvalidField(this)) {
				this.className = 'errorField';
			}
			else {
				this.className = '';
			}
		}
	}
	
	if(errorField != undefined) {
		displayErrorField();
	}
}


/**
* Met en surbrillance les champs invalide d'un formulaire.
*
* @param string $formName Nom du formulaire
* @param Array $errorField Liste des noms des champs invalides
* @access public
* @since 1.0
*/
function displayErrorField(/*formName, errorField*/) {
	for(i = 0; i < errorField.length; i++) {
		eval('if(document.getElementById(\'' + formName + '\').' + errorField[i] + ' != undefined) { document.getElementById(\'' + formName + '\').' + errorField[i] + '.className = \'errorField\' };');
	}
}


/**
* Indique si un champs est invalide ou pas.
*
* @param InputForm $field Champs de formulaire ŕ vérifier
* @return Boolean Le champs est invalide (true) ou valide (false)
* @access public
* @since 1.0
*/
function isInvalidField(field) {
	invalidField = false;
	if(errorField != undefined) {
		for(i = 0; i < errorField.length; i++) {
			if(field.name == errorField[i]) {
				invalidField = true;
			}
		}
	}
	
	return invalidField;
}
