var ultimo_panel=null;
function montarCapa(nombrePanel, capa, lheader, lbody, lwidth, lheight, lElem, lCenter) {
    var centrar = true;
    if(typeof(lCenter)!='undefined'){
        centrar = lCenter;
    } else {
        centrar = true;
    }
    lElem = new YAHOO.widget.Panel('win'+capa, {
        width:lwidth+"px",
        constraintoviewport: true,
        close:true,
        fixedcenter: centrar,
        visible:false,
        modal:true,
        context:[nombrePanel,"tl","bl"],
        draggable:false,
        zindex:9500} );
    if(!lheader){
        lheader=mensaje_cabecera_capas;
    }
    if(lheight!=null){
        lElem.cfg.setProperty('height',lheight+"px");
    }
    lElem.setHeader(lheader);
    if(lbody && lbody!=""){
        lElem.setBody(lbody);
    }
    lElem.render(document.body);
    lElem.hidepanel = function (){
        ultimo_panel.hide();
    }
    lElem.mostrar = function (){
        ultimo_panel=lElem;
        // Parche Igor Puchkov
        // Se restablece visibilidad de los divs antes de mostrarlos de nuevo
        resOp_nok = YAHOO.util.Dom.get('resultadoOperacion_nok');
        if (resOp_nok) {
            resOp_nok.style.display = 'none';
        }
        resOp_ok = YAHOO.util.Dom.get('resultadoOperacion_ok');
        if (resOp_ok) {
            resOp_ok.style.display = 'none';
        }
        ResOpCall_nok = YAHOO.util.Dom.get('resultadoOperacionCall_nok');
        if (ResOpCall_nok) {
            ResOpCall_nok.style.display = 'none';
        }
        ResOpCall_ok = YAHOO.util.Dom.get('resultadoOperacionCall_ok');
        if (ResOpCall_ok) {
            ResOpCall_ok.style.display = 'none';
        }
        try
        {
            mail_contenido = YAHOO.util.Dom.get('mail_contenido');
            if (mail_contenido) {
                mail_contenido.style.display = 'block';
            }
        }catch(err){}
        try
        {
            callme_contenido = YAHOO.util.Dom.get('callme_contenido');
            if (callme_contenido) {
                callme_contenido.style.display = 'block';
            }
        }catch(err){}
        lElem.show();
    }
    //YAHOO.util.Event.addListener(nombrePanel, "click", lElem.mostrar, lElem, true);
    var kl = new YAHOO.util.KeyListener(document, { keys:27 },
                                              { fn:lElem.hide,
                                                scope:lElem,
                                                correctScope:true } );
    lElem.cfg.queueProperty("keylisteners", kl);
    lElem.render();
    return lElem;
}

function destruirPanel(){
    ultimo_panel.hide();
}

function mostrarCapaListado(tipoitem,iditem,numeroitems) {
    var i = 1;
    var estilo = "";
    while (i<=numeroitems){
        estilo = document.getElementById(tipoitem+i).style.display;
        if (i!=iditem){
            document.getElementById(tipoitem+i).style.display = 'none';
        }else{
            if (estilo=='none'){
                document.getElementById(tipoitem+i).style.display = 'block';
            }else{
                document.getElementById(tipoitem+i).style.display = 'none';
            }
        }
        i++;
    }
}

function mostrarCapaListadoEst(tipoitem,iditem){
    estilo = document.getElementById(tipoitem+iditem).style.display;
    if (estilo=='none'){
        document.getElementById(tipoitem+iditem).style.display = 'inline';
        document.getElementById(tipoitem+iditem).style.display = '';
    }else{
        document.getElementById(tipoitem+iditem).style.display = 'none';
    }
}

//Devuelve el document.getElementById de un elemento
function getId(objeto)
{
    if (objeto)
        return document.getElementById(objeto);
    else
        return null;
}

// Funciones que rellenan los campos de formulario con texto por defecto


function vaciarTextoDefectoCampoForm(ev,elem){
    if(document.all){
        elem.parentNode.childNodes[0].style.display='none';
    }else{
        elem.parentNode.childNodes[1].style.display='none';
        if(document.getElementById('pass')){
            document.getElementById('pass').style.display='none';
        }
    }
    return false;
}
function mostrarTextoDefectoCampoForm(ev, elem){
    if(elem.value==''){
        if(document.all){
             elem.parentNode.childNodes[0].style.display='inline';
        }else{
             elem.parentNode.childNodes[1].style.display='inline';
        }
    }
    ocultaTextoAlternativo(elem);
    return false;
}

function ocultaTextoAlternativo(o){
    if(typeof(o) != 'undefined') {
        if(document.getElementById(o.id)){
            if(document.getElementById(o.id).value != "") {
                vaciarTextoDefectoCampoForm(null,document.getElementById(o.id));
            }
        }
    }
}

function mostrarCapa(idcapa) {
    var capa = getId(idcapa);
    if (capa.style.display == 'none'){
        // El valor block para la atributo display de un TR, solo se admite en IE
        if ((capa.tagName=='TR') && ('\v'!='v')) {
            capa.style.display = 'table-row';
        } else {
            capa.style.display = 'block';
        }
    } else {
        capa.style.display = 'none';
    }
}
funciones_someter_onload[funciones_someter_onload.length] = "ocultaTextoAlternativo";

function panelIframe(url, titulo, nombreId, nwidth, nheight) {
    var link = "link-" + nombreId;
    var ancho  = nwidth || '700px';
    var alto   = nheight || '450px';
    // Create a panel Instance, from the 'resizablepanel' DIV standard module markup
    var panel = new YAHOO.widget.Panel(nombreId, {
        close: true,
        width: ancho,
        height: alto,
        fixedcenter: true,
        autofillheight: "body", // default value, specified here to highlight its use in the example
        constraintoviewport:true,
        effect:{effect:YAHOO.widget.ContainerEffect.FADE, duration: 1},
        context: [link, "tr", "tr"]
    });
    panel.setHeader(titulo);
    panel.setBody("<iframe src='" + url + "' height='100%' width='100%' scrollign='no' frameborder='0'></iframe>");

    //YAHOO.util.Event.addListener(nombrePanel, "click", lElem.mostrar, lElem, true);
    var kl = new YAHOO.util.KeyListener(document, { keys:27 },
                                              { fn:panel.hide,
                                                scope:panel,
                                                correctScope:true } );
    panel.cfg.queueProperty("keylisteners", kl);
    panel.render();
}

