function formataHora(data,req){
	var objData = data;
	data = data.value;
	var tamData = data.length;
	var simbData = "/.- ";
	var subData = new Array();
	var aux = "";
	var numero = "0123456789";
	var ret = "";
	var j = 0;
	var i = 0;
	var dataAtual = new Date();
	var ano = ""+dataAtual.getYear();
	var erro = 'é inválido. Formas de horas possíveis:\n\n- hh:mm\n- h:m\n- hh\n- h\n\nO símbolo (:) pode ser substituido por espaço.';
	while (i < tamData) {
		aux = data.charAt(i);
		if (numero.indexOf(aux) != -1) {
			if (subData[j]) {
				subData[j] += aux;
			}else {
			 subData[j] = aux;
			}
		}else {
			j++;
		}
		i++;
	}
	if (subData.length == 1) {
		subData[1]='00';
		tamData=3;
	}
	if ((tamData > 2)) {
		if ((subData.length > 1) && (subData.length < 3)){
			var x;
			j = true;
			switch (subData.length) {
				case 2:{
					if (subData[1]){
						x = subData[1].length;
						if ((x < 1) || (x > 2) || (parseInt(subData[1],10) > 59)){
							j = false;
							break;
						}
						x = parseInt(subData[1],10);
						if (x < 10) subData[1] = '0'+x;
					}else j = false;
				}
				case 1:{
					if (subData[0]) {
						x = subData[0].length;
						if ((x < 1) || (x > 2) || (parseInt(subData[0],10) > 23)){
							j = false;
							break;
						}
						x = parseInt(subData[0],10);
						if (x < 10) subData[0] = '0'+x;
					}else j =false;
				}
			}
			if (j){
				aux = subData[0]+":"+subData[1];
					objData.value = aux;
					ret = '';
			}else ret = erro;
		}else ret = erro;
	}else if (tamData > 0) ret = erro;
	return ret;
}

