String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ""); };

function apagarMostrar(elementoID) {

    var elElemento =  document.getElementById(elementoID);

	//si no está en la intranet hay que eliminar el boton
    if (elElemento.style.visibility == 'visible' && elElemento) {
	  elElemento.style.visibility = 'hidden';
 	}else{
		elElemento.style.visibility = 'visible';
	}

}
actualizaID = function(elLink,provID){
	var lista = document.getElementById("listado").getElementsByTagName('li');
	var cualProv;
	for (var i=0; i < lista.length; i++){
		lista[i].id = '';
		cualProv = "prov_"+(i+1);
		document.getElementById(cualProv).style.visibility='hidden';
		//document.getElementById("prov_"+provID).display ='none';
	}
	elLink.parentNode.id = 'current';
	document.getElementById("prov_"+provID).style.visibility='visible';
	//document.getElementById("prov_"+provID).display ='block';
}
/**/
actualizaTab = function(laProv){
	var lista = document.getElementById("listado").getElementsByTagName('li');
	for (var i=0; i < lista.length; i++){
		lista[i].id = '';
	}
	lista[laProv-1].id = 'current';
	apagarEncender(laProv);
}
/**/
apagarEncender = function(elNum){
	var lista = document.getElementById("tablasInfo").getElementsByTagName('ul');
	//alert("apagando");
	for (var i=0; i < lista.length; i++){
			lista[i].style.display='none';

	}
	if(elNum){
		//alert("encendiendo");
		lista[elNum-1].style.display='block';
	}
}
/*Obtiene el control de la pagina especificando su id y tipo, sin importar que comience por ctl00$content...*/
function getElement(elementId, elementTag)
{
    var hdnControl = document.getElementsByTagName(elementTag);
    for(var i = 0; i < hdnControl.length; i++)
    { 
        var hdnLength = parseInt(hdnControl[i].id.length);
        if (hdnControl[i].id.substring((hdnLength - elementId.length), hdnLength) == elementId)
            return hdnControl[i];
    }
}
/*Cambia las imagenes de las celdas de la tabla para simular la activacion y desactivacion de tabulaciones*/
function changeTab()
{
    var td = null;
    var cssClass = null;
    var seleccion = getElement("itemSeleccionado", "input").value;
    seleccion = seleccion.substring(2, seleccion.length);

    if (seleccion != "")
    {
        for(var i = 1; i > 0; i++)
        {
            var td = document.getElementById("td" + i);
            if (td != null)
            {
                cssClass = td.className;
                if ((i == seleccion) || 
                    ((cssClass.substring(0, 8) == "tab-left") && (parseInt(i) == (parseInt(seleccion) - 1))) || 
                    ((cssClass.substring(0, 9) == "tab-right") && (parseInt(i) == (parseInt(seleccion) + 1))))
                    cssClass = cssClass.replace(/grey/,"purple");
                else if (parseInt(i) == (parseInt(seleccion) - 1))
                    cssClass = "tab-ledge-purple";
                else if (parseInt(i) == (parseInt(seleccion) + 1))
                    cssClass = "tab-redge-purple";
                else
                {
                    if (cssClass.substring(5, cssClass.length) == "edge-purple")
                        cssClass = "tab-total-grey";
                    else
                        cssClass = cssClass.replace(/purple/,"grey");
                }
                td.className = cssClass;
            }
            else
                i = -1;
        }
    }
}
/*Agrega el evento "setPageChanged" al "onChange" de los controles definidos en el arreglo*/
function setChangeControlEvent()
{
    var pageControls;   
    var tagControls = new Array("input","textarea","select");
    
    for (var tagCtr in tagControls)
    {
        pageControls = document.getElementsByTagName(tagControls[tagCtr]);
        for(var pageCtr in pageControls)
        {
            if ((pageControls[pageCtr].id != undefined) && 
                (pageControls[pageCtr].id != "") &&
                (pageControls[pageCtr].type != "hidden") &&
                !(pageControls[pageCtr].type == "select-one" && 
                    (pageControls[pageCtr].name == "ctl00$ContentPlaceHolder1$DropDownListProvincia" || pageControls[pageCtr].name == "ctl00$ContentPlaceHolder1$DropDownListCanton"))
                )
               {
                   if (!(pageControls[pageCtr].name == "ctl00$ContentPlaceHolder1$DropDownListProvincia2" || 
                         pageControls[pageCtr].name == "ctl00$ContentPlaceHolder1$DropDownListCanton2"))
                    {
                        if (pageControls[pageCtr].attachEvent)
                            pageControls[pageCtr].attachEvent("onchange", setPageChanged);
                        else
                            pageControls[pageCtr].setAttribute("onchange", "setPageChanged();");
                    }
               }
        }
    }
}
/*Pone el valor de un hidden en "true" cuando algun control de la pagina ha sido cambiado*/
function setPageChanged()
{    
    try {
        var pageChanged = getElement("ctl00$ContentPlaceHolder1$pageChanged", "input");
        pageChanged.value = "true";
    } 
    catch (e) {
    }
}
/*Muesta una ventana de dialogo con el titulo, mensaje y tipo (alert, confirm) definidos y devuelve un valor booleano*/
function messageBox(title, message, type)
{
    var line = '';
    if (title.length < 20)
        line = '¯¯¯¯¯¯¯¯';
    
    for (var i = 0; i < title.length; i++)
        line +=  '¯';
    var totalMessage = title + '\n' + line + '\n' + message;
    if (type == 'confirm')
        return confirm(totalMessage);
    else
    {
        alert(totalMessage);
        return true;
    }
}
/*Obtiene el valor de pageChanged, si la pagina cambio muestra un mensaje de confirmacion y cambia el pageChanged a false si se desea continuar.*/
function PageChanged(title, message) {

    try {
        var pageChanged = getElement("ctl00$ContentPlaceHolder1$pageChanged", "input");
        var response = "false";
        if (pageChanged.value == "true")
        {
            response = messageBox(title,message,'confirm');
            if (response == true)
                pageChanged.value = "false";
            return response;
        }
	}catch ( e ){
	}
}
/**/
function saveSectionChanges(title)
{
    return PageChanged(title, 'No has guardado los datos de esta sección.\nSi deseas guardar los cambios, presiona \'Cancelar\' y usa el\nbotón \'Guardar\', de otra forma presiona \'Aceptar\'.');
}


function checkMaxLen(txt,maxLen) 
{
	try {
		if(txt.value.length > (maxLen-1)) {
		var cont = txt.value;
		txt.value = cont.substring(0,(maxLen -1));
		return false;
	}
	}catch ( e ){
	}
}

function checkNumeric(control)
{                
    if (isNaN(control.value))
    {
        if (control.value.length == 1)
            control.value = "";
        else
            control.value = parseInt(control.value, 10); 
    }
                
    if (control.value == "NaN")
        control.value = "";
    else
        control.value = control.value.trim();
}

function openPopupPrint(url, winName)
{
    settings= "toolbar=no,location=no,directories=no,"+
        "status=no,menubar=no,scrollbars=yes,"+
        "resizable=yes,width=740,height=780,"+
        "titlebar=no"

    win = window.open( url, winName, settings );
    win.focus();
}

/* imprime el contenido de un Dic, recibe como parametro el id del div */
function CallPrint(strid)
{
var prtContent = document.getElementById(strid);
var WinPrint =
window.open('','','left=0,top=0,width=1,height=1,toolbar=0,scrollbars=0,status=0');
WinPrint.document.write(prtContent.innerHTML);
WinPrint.document.close();
WinPrint.focus();
WinPrint.print();
WinPrint.close();
prtContent.innerHTML=strOldOne;
return false;
}

/* muestra u oculta un div y activa o desactiva un boton */
function mostrarBarraEspera(divId, botonId)
{

/* verificar que haya cargado el cuerpo de la página */
/* verificar que la página se haya validado */

    apagarMostrar(divId);
    var boton = document.getElementById(botonId);
    if (boton != null)
    {
        if(boton.disabled == 'true')
            boton.disabled = 'false';
        else
            boton.disabled = 'true';
    }
}
