// FORMULARIO CON VALOR PREDETERMINADO 
// PARA ACCESIBILIDAD AAA:
// 
//
// Definir un valor predeterminado en todos los campos de texto y poner:
// en body :  onload="form_accesible('name_del_formulario');"
// para campos que no queremos que se reseteen (por ejemplo, guardamos su valor despues de un POST) -> class="noreset"
var color_apagado = '#bbbbbb';

var color_normal;
var form;
var val_def = new Array();
function form_accesible(formulario) {
	var j = 0;
	var prim = false;
	form = document.forms[formulario];
	if (!form) return false;
	form.onreset= restablecer_colores;
	form.onsubmit= limpia_campos;
	if (form.elements.length >0 ) {
		for (var i = 0; i < form.elements.length; i++ ) {
//			if ( (form.elements[i].type == 'text' || form.elements[i].type == 'textarea' ) && (form.elements[i].value != '') && (form.elements[i].onfocus)){
			if ( (form.elements[i].type == 'text' || form.elements[i].type == 'textarea' ) && (form.elements[i].value != '') && (form.elements[i].className.indexOf('noreset') < 0)){
				if (!prim) prim = form.elements[i];
				form.elements[i].onfocus = function (){ resetea(this) };
				form.elements[i].onblur = function (){ poner_texto_def(this) };
				val_def[j] = new Array();
				val_def[j]['nid'] = i;
				val_def[j]['id'] = form.elements[i].id;
				val_def[j]['valor'] = form.elements[i].value;
				val_def[j]['modificado'] = false;
				j++;
				if (!color_normal) color_normal = form.elements[i].style.color
				form.elements[i].style.color = color_apagado;
			}
		}
		if (prim) prim.focus();
	}
}
function poner_texto_def(campo){
	if (form.elements.length >0 ) {
		for (var i = 0; i < val_def.length; i++ ) {
			if (val_def[i]['id'] == campo.id && form.elements[val_def[i]['nid']].value == '') {
				 form.elements[val_def[i]['nid']].style.color = color_apagado;
				 form.elements[val_def[i]['nid']].value = val_def[i]['valor'];
				 val_def[i]['modificado'] = false;
			}
		}
	}
}
function resetea(campo){

	if (form.elements.length >0 ) {
		for (var i = 0; i < val_def.length; i++ ) {
			if (val_def[i]['id'] == campo.id && form.elements[val_def[i]['nid']].value == val_def[i]['valor'] && val_def[i]['modificado'] == false) {
				 form.elements[val_def[i]['nid']].value = '';
				 form.elements[val_def[i]['nid']].style.color = color_normal;
				 val_def[i]['modificado'] = true;
			}
		}
	}
}
function restablecer_colores() {
	if (form.elements.length >0 ) {
		for (var i = 0; i < val_def.length; i++ ) {
				 form.elements[val_def[i]['nid']].style.color = color_apagado;
		}
	}
}
function limpia_campos() {
	if (form.elements.length >0 ) {
		for (var i = 0; i < val_def.length; i++ ) {
			if ((form.elements[val_def[i]['nid']].value == val_def[i]['valor']) && !val_def[i]['modificado']) {
				 form.elements[val_def[i]['nid']].value = '';
			}
		}
	}
}
//-->
