function ponValorFormulario(strNombre, strTitulo, strValor)
{
	obj=leeElementoPagina(strNombre + "_val")
	obj.value=strTitulo;

	obj=leeElementoPagina(strNombre)
	obj.value=strValor;
	if (obj.onchange!=null) obj.onchange()
}

function eliminaValorFormulario(strNombre)
{
	obj=leeElementoPagina(strNombre + "_val")
	if (obj.value!="")
	{
		obj.value=""
		obj=leeElementoPagina(strNombre)
		obj.value=""
		if (obj.onchange!=null) obj.onchange()
	}
}

function leeCodigoCaracterFormulario(varEvento)
{
	if (window.event)
		if (window.event.ctrlKey)
			return(window.event.keyCode+1000)
		else
			return(window.event.keyCode)
	else if (varEvento)
		return varEvento.which;
	else
		return null
}

function leeCaracterFormulario_PRUEBA(varEvento, strCaracteres)
{
	var key, keychar
	key = leeCodigoCaracterFormulario(varEvento)
	if (key == null) return true

	keychar = String.fromCharCode(key)
	keychar = keychar.toLowerCase()
	strCaracteres = strCaracteres.toLowerCase()
	alert(key + ","+  keychar + "," + strCaracteres.indexOf(keychar))
	if (strCaracteres.indexOf(keychar) != -1)
		return true
	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==16  || key==18 || key==27 || key==37 || key==39 || key==46 || key==116 || key==1017 || key==1067 || key==1086 || key==1088)
		return true
	return false
}

function leeCaracterFormulario(varEvento, strCaracteres)
{
	var key, keychar
	key = leeCodigoCaracterFormulario(varEvento)
	if (key == null) return true

	keychar = String.fromCharCode(key)
	keychar = keychar.toLowerCase()
	strCaracteres = strCaracteres.toLowerCase()
	if (strCaracteres.indexOf(keychar) != -1)
		return true
	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==16  || key==18 || key==27 || key==37 || key==39 || key==46 || key==116 || key==1017 || key==1067 || key==1086 || key==1088)
	   return true
	return false;
}

function validaHora(obj)
{
	var timePat = /^(\d{1,2}):(\d{2})$/
	var matchArray = obj.value.match(timePat)

	if (matchArray == null)
		obj.value=""
	else
	{
		intHora = matchArray[1]
		intMinutos = matchArray[2]
		if (intHora<0) intHora=0
		if (intHora>23) intHora=23
		if (intMinutos<0) intMinutos=0
		if (intMinutos>59) intMinutos=59
		obj.value=intHora + ":" + intMinutos
	}
}

function aceptaUrlFormulario(strNombre, strUrl)
{
	var obj=leeElementoPagina(strNombre)

	if (!obj) return
	obj.action=strUrl
	obj.submit()
}

function iniciaSubidaFormulario(formObj, strUrl)
{
    if(typeof(formObj)=="string") formObj = document.getElementById(formObj);
    formObj.action=strUrl;
    progress=false;
    for (i=0; i<formObj.elements.length; ++i) {
        if(formObj.elements[i].type=="file") progress=(formObj.elements[i].value!='');
    }
    var uniqueID = Math.floor(Math.random() * 10000000) + (new Date()).getTime() % 1000000000;
    if (progress) {
        var objProgreso=window.open('/_aspsopde/interfaz/formulario/progreso.asp?UpID=' + uniqueID,'','height=150,width=550,toolbar=no,directories=no,status=no, linemenubar=no,scrollbars=no,resizable=no');
        var w = 640, h = 480;
        if (screen.availWidth){
           w = screen.availWidth;
           h = screen.availHeight;
        }
        objProgreso.moveTo((w-550)/2, (h-150)/2);
    }
    thePos = formObj.action.indexOf("UpID");
    if (thePos >= 1)
        formObj.action = formObj.action.substring(0, thePos-1);
    if(formObj.action.indexOf("?")==-1)
        formObj.action += '?UpID=' + uniqueID
    else
        formObj.action += '&UpID=' + uniqueID;    
    formObj.submit();
    return true;
}