/***************para arreglar el parpadeo de las imagenes en IE5.0 ,IE5.5 , IE6.0*************/
try {
    document.execCommand("BackgroundImageCache", false, true);
} catch(err) {

}
/**********************************************************************************************/

/******** Document.getElementById coge elementos con el NAME coincidente en vez del ID en IE6-IE7 ***/
if (/msie/i.test (navigator.userAgent)) //only override IE
{
    document.nativeGetElementById = document.getElementById;
    document.getElementById = function(id)
    {
        var elem = document.nativeGetElementById(id);
        if(elem)
        {
            //make sure that it is a valid match on id
            if(elem.attributes['id'].value == id)
            {
                return elem;
            }
            else
            {
                //otherwise find the correct element
                for(var i=1;i<document.all[id].length;i++)
                {
                    if(document.all[id][i].attributes['id'].value == id)
                    {
                        return document.all[id][i];
                    }
                }
            }
        }
        return null;
    };
}

/**********/


var global_actual_help_id = 52;


YAHOO.namespace("contactos");
YAHOO.namespace("mdirector.container");
YAHOO.namespace("mdirector.panel");
YAHOO.mdirector.container.wait;
//YAHOO.mdirector.panel.panel_upload;
YAHOO.widget.Overlay.prototype.closeInTime = function(time) {
    var me = this;
    setTimeout(function(){
        me.cfg.setProperty("visible",false);
    },time);
};
var mostrarCargandoInnerDiv = function(divid,texto) {
    document.getElementById(divid).innerHTML='<div style="margin-top:2px;margin-left:2px;"><img align="TOP" src="/images/ico_cargandoinnerdiv.gif"> '+texto+'</div>';
}
var show_sessionClosePanel = function(texto){
    if(YAHOO.mdirector.container.session == undefined){
        YAHOO.mdirector.container.session = new YAHOO.widget.SimpleDialog("session",
        {
            width:"280px",
            fixedcenter:true,
            close:false,
            draggable:false,
            modal:true,
            visible:false,
            underlay:"matte",
            effect:{
                effect:YAHOO.widget.ContainerEffect.FADE,
                duration:0.1
            },
            zindex:5000
        }
        );
    }
    YAHOO.mdirector.container.session.setHeader("Informacion");
    YAHOO.mdirector.container.session.cfg.queueProperty("icon",YAHOO.widget.SimpleDialog.ICON_WARN);
    YAHOO.mdirector.container.session.setBody("<p style=\"margin:0 auto;text-align:left;clear:left;font-weight:bold;font-size:14px\" class=\"Color1\">"+texto+"</p>");
    YAHOO.mdirector.container.session.render(document.body);
    YAHOO.mdirector.container.session.show();
};


var help_display = function(){
    if (global_actual_help_id == undefined) global_actual_help_id = 52;
    var sUrl = "/ayuda/menu/id/" + global_actual_help_id;
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            var f = document.forms;
            YAHOO.mdirector.panel.panel_ayuda_data = new YAHOO.widget.Panel("panel_ayuda_data",
            {
                zindex:1500,
                width:"700px",
                close:true,
                visible:false,
                draggable:true,
                modal:true,
                constraintoviewport:true,
                fixedcenter:true,
                underlay:"matte",
                effect:{
                    effect:YAHOO.widget.ContainerEffect.FADE,
                    duration:0.5
                }
            }
            );
            YAHOO.mdirector.panel.panel_ayuda_data.setHeader("Ayuda");
            YAHOO.mdirector.panel.panel_ayuda_data.setBody(respuesta);
            YAHOO.mdirector.panel.panel_ayuda_data.render(document.body);
            //ocultarCargando();
            YAHOO.mdirector.panel.panel_ayuda_data.show();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback);
};


var hide_sessionClosePanel = function(){
    if(YAHOO.mdirector.container.session != undefined) {
        YAHOO.mdirector.container.session.hide();
    }
}




var mostrarCargando = function(texto, z){
    if(!z)
        var z = 50;

    if(YAHOO.mdirector.container.wait != undefined) {
        YAHOO.mdirector.container.wait.destroy();
    }
	
    //    if(YAHOO.mdirector.container.wait == undefined){
    YAHOO.mdirector.container.wait = new YAHOO.widget.Panel("wait",
    {
        width:"240px",
        fixedcenter:true,
        close:false,
        draggable:false,
        modal:true,
        visible:false,
        underlay:"matte",
        effect:{
            effect:YAHOO.widget.ContainerEffect.FADE,
            duration:0.1
        },
        zindex: z
    }
    );

    YAHOO.mdirector.container.wait.setHeader(texto+"...");
    YAHOO.mdirector.container.wait.setBody('<img src="http://us.i1.yimg.com/us.yimg.com/i/us/per/gr/gp/rel_interstitial_loading.gif" />');
    YAHOO.mdirector.container.wait.render(document.body);
    //    } else {
    //        YAHOO.mdirector.container.wait.setHeader(texto+"...");
    //    }
    YAHOO.mdirector.container.wait.show();
};

var ocultarCargando = function(){
    if(YAHOO.mdirector.container.wait != undefined) {
        YAHOO.mdirector.container.wait.hide();
    }
}
var overlay_information_show = function(texto){

    if(YAHOO.mdirector.container.overlay2 == undefined){

        YAHOO.mdirector.container.overlay2 = new YAHOO.widget.SimpleDialog("overlay2",{
            fixedcenter:true,
            visible:false,
            modal:true,
            draggable:false,
            zindex:12000,
            underlay:"matte",
            close: false,
            width:"300px"
        } );
    }
    YAHOO.mdirector.container.overlay2.setBody(texto);
    YAHOO.mdirector.container.overlay2.render(document.body);
    YAHOO.mdirector.container.overlay2.show();

}
var overlay_information_hide = function(){

    YAHOO.mdirector.container.overlay2.hide();

}
var cargando_lateral = function(id){
    document.getElementById(id).className = 'cargando';
}
var cerrando_lateral = function(id){
    document.getElementById(id).className = 'Click FondoCOLOR1 Param';
}
function sendForm(sUrl,formid,recipient,load_msg){
    var show_msg=(arguments.length>3)?true:false;
    if (show_msg) {
        mostrarCargando(load_msg);
    }
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            if (show_msg) {
                ocultarCargando();
            }
            var respuesta = o.responseText;
            if (recipient!=null) {
                document.getElementById(recipient).innerHTML=respuesta;
                if (recipient=="group_detail_content")
                    YAHOO.mdirector.panel.panel_group_data.center();
            }
        }
    }
    var callback = {
        success:handleSuccess
    };
    var formObject = document.getElementById(formid);
    YAHOO.util.Connect.setForm(formObject);
    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback);
}

function sendFormAndEval(sUrl,formid,recipient,load_msg){
    var show_msg=(arguments.length>3)?true:false;
    if (show_msg) {
        mostrarCargando(load_msg,500);
    }
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            if (show_msg) {
                ocultarCargando();
            }
            var respuesta = o.responseText;
            document.getElementById(recipient).innerHTML=respuesta;
            md_launchJavascript(respuesta);
        /*
      if (recipient=="group_detail_content")
        YAHOO.mdirector.panel.panel_group_data.center();
      */
        }
    }
    var callback = {
        success:handleSuccess
    };
    var formObject = document.getElementById(formid);
    YAHOO.util.Connect.setForm(formObject);
    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback);
}
function setFieldValue(field,value){
    document.getElementById(field).value=value;
}
/* ********************************************************************** */

/* ********************************************************************** */
/* REGISTER (Primer paso de registro de clientes)						 */
/* ********************************************************************** */
function ValidateRegisterForm() {
    if (
        document.getElementById('idProductos') &&
        document.getElementById('idRegistros') &&
        document.getElementById('idTarifas') &&
        document.getElementById('idProductos').selectedIndex != 0 &&
        document.getElementById('idRegistros').selectedIndex != 0 &&
        document.getElementById('idTarifas').selectedIndex != 0
        ) {
        return true;
    }
    else {
        alert ("Por favor indique el producto que desea.")
        return false;
    }
}
function writeDesc(id){
    if(id=='-'){
        document.getElementById('descId').innerHTML='';
    }else{
        document.getElementById('descId').innerHTML=productos[id].lit_value;
    }
}

function chargeRegistros(sUrl,id){
    if (id != '-') {
        var handleSuccess = function(o){
            if(o.responseText !== undefined){
                var respuesta = o.responseText;
                document.getElementById('divRegistros').innerHTML=respuesta;
                resetTarifas();
            }
        }

        var callback = {
            success:handleSuccess
        };
        //var formObject = document.getElementById('Formulario');
        // YAHOO.util.Connect.setForm(formObject);
        var desc_pro = document.getElementById('idProductos').options[document.getElementById('idProductos').selectedIndex].text;
        var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, 'pro_id='+id+'&desc_pro='+desc_pro);
    } else {
        resetRegistros();
        resetTarifas();
    }
}

function resetRegistros () {
    document.getElementById('divRegistros').innerHTML="Seleccione el producto.";
}

function chargeTarifas(sUrl){
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById('idContratacion').innerHTML=respuesta;
        }
    }
    var callback = {
        success:handleSuccess
    };
    var desc_reg = document.getElementById('idRegistros').options[document.getElementById('idRegistros').selectedIndex].text;
    var formObject = document.getElementById('Formulario');
    YAHOO.util.Connect.setForm(formObject);
    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback ,'desc_reg='+desc_reg);
}

function resetTarifas () {
    document.getElementById('idContratacion').innerHTML="Seleccione los registros.";
}

function cargaTarifaDesc(obj){
    //document.forms['Formulario'].elements['desc_tarifa'].value= obj.options[obj.selectedIndex].text;
    document.forms['Formulario'].elements['idTarifas'].value= obj.options[obj.selectedIndex].text;
//alert(document.forms['Formulario'].elements['idTarifas'].value);
}
/* ********************************************************************** */

/* ********************************************************************** */
/* ALTA CLIENTE (Segundo paso de registro de clientes)					*/
/* ********************************************************************** */
function chargeZone (zone_type_id,sUrl,parent_zone_id,preselected_id,reset_others){
    var preselected_id = (preselected_id == null) ? 0 : preselected_id;
    var reset_others = (reset_others == null) ? true : reset_others;

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            if (zone_type_id == 2) {
                document.getElementById('divPaises').innerHTML=respuesta;
                if (reset_others) {
                    resetComunidades();
                    resetProvincias();
                }
            }
            if (zone_type_id == 3) {
                document.getElementById('divComunidades').innerHTML=respuesta;
                if (reset_others) {
                    resetProvincias();
                }
            }
            if (zone_type_id == 4) {
                document.getElementById('divProvincias').innerHTML=respuesta;
            }
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback, 'parent_zone_id='+parent_zone_id+'&zone_type_id='+zone_type_id+'&preselected_id='+preselected_id);
}

function resetPaises() {
    document.getElementById('divPaises').innerHTML = '<select size="1" name="pais_id" class="formhome" onchange="" disabled><option value="0" selected="selected">- Seleccione Pais -</option></select>';
}
function resetComunidades() {
    document.getElementById('divComunidades').innerHTML = '<select size="1" name="comunidad_id" class="formhome" onchange="" disabled><option value="0" selected="selected">- Seleccione Comunidad -</option></select> ';
}
function resetProvincias() {
    document.getElementById('divProvincias').innerHTML = '<select size="1" name="provincia_id" class="formhome" onchange="" disabled><option value="0" selected="selected">- Seleccione Provincia -</option></select> ';

}
/* ********************************************************************** */


var cargaUsuarios = function(e){
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById('contenido').innerHTML = respuesta;
            overlay_information_hide();
        }
    }
    var callback =
    {
        success:handleSuccess
    };

    overlay_information_show("Cargando Usuarios.");
    var request = YAHOO.util.Connect.asyncRequest('GET', '/account/users-list', callback );

}
var cargaUsuariosGrupo = function(e){
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById('contenido').innerHTML = respuesta;
            overlay_information_hide();
        }
    }
    var callback =
    {
        success:handleSuccess
    };

    overlay_information_show("Cargando Usuarios.");
    var request = YAHOO.util.Connect.asyncRequest('GET', '/account/users-to-company-list', callback );

}
function editarUsuarios( usu_id , usu_name , usu_apellido1 , usu_apellido2 , usu_email , usu_login ,usu_pass , rol_desc ,usu_active ){
    $ = document.forms['Formulario'].elements;
    document.getElementById('id').value = usu_id;
    document.getElementById('usu_id').value = usu_id
    $['usu_name'].value = usu_name;
    $['usu_apellido1'].value = usu_apellido1;
    $['usu_apellido2'].value = usu_apellido2;
    $['usu_email'].value = usu_email;
    $['usu_login'].value = usu_login;
    $['usu_pass'].value = usu_pass;
    for(var i = 0 ; i < document.getElementById('idrol').options.length; i++){
        if(rol_desc == document.getElementById('idrol').options[i].text){
            document.getElementById('idrol').options[i].selected= 'true';
        }
    }
    for(var i = 0 ; i < document.getElementById('idactive').options.length; i++){
        if(usu_active == document.getElementById('idactive').options[i].value){
            document.getElementById('idactive').options[i].selected= 'true';
        }
    }

}

function clearForm(formIdent)
{
    var form, elements, i, elm;
    form = document.getElementById
    ? document.getElementById(formIdent)
    : document.forms[formIdent];

    if (document.getElementsByTagName)
    {
        elements = form.getElementsByTagName('input');
        for( i=0, elm; elm=elements.item(i++); )
        {
            if (elm.getAttribute('type') == "text")
            {
                elm.value = '';
            }
        }
    }

    else
    {
        elements = form.elements;
        for( i=0, elm; elm=elements[i++]; )
        {
            if (elm.type == "text")
            {
                elm.value ='';
            }
        }
    }
    try{
        document.getElementById('id').innerHTML = "";
    }catch(e){
    }
}



function borrarUsuarios( usu_id , usu_name , usu_apellido1 , usu_apellido2 , usu_email , usu_login ,usu_pass , rol_desc ,usu_active ){

    var handleYes = function(){
        var query = "usu_id="+usu_id+"&usu_name="+usu_name+"&usu_apellido1="+usu_apellido1+"&usu_apellido2="+usu_apellido2+"&usu_email="+usu_email+"&usu_login="+usu_login+"&usu_pass="+usu_pass+"&rol_desc="+rol_desc;
        var handleSuccess = function(o){
            if(o.responseText !== undefined){
                var respuesta = o.responseText;
                if(respuesta == '0'){
                    document.getElementById('peoplebody').className = 'FondoCOLOR1 Cvisible';
                    document.getElementById('peoplebody').innerHTML = "No ha sido posible borrar el usuario. Al menos deberia existir un usuario administrador en el sistema.";
                }else{
                    document.getElementById('contenido').innerHTML = respuesta;
                }

                overlay_information_hide();
            }
        }
        var callback =
        {
            success:handleSuccess
        };
        YAHOO.mdirector.panel.simpledialog1.hide();
        overlay_information_show("Borrando Usuario");
        var request = YAHOO.util.Connect.asyncRequest('POST', '/account/user-unsubscribe', callback ,query);

    }
    var handleNo = function(){
        YAHOO.mdirector.panel.simpledialog1.hide();
    }
    YAHOO.mdirector.panel.simpledialog1 =
    new YAHOO.widget.SimpleDialog("simpledialog1",
    {
        width: "300px",
        fixedcenter: true,
        visible: false,
        draggable: false,
        close: true,
        text: "¿Esta seguro que quiere borrar el usuario?",
        icon: YAHOO.widget.SimpleDialog.ICON_HELP,
        constraintoviewport: true,
        modal:true,
        underlay:"matte",
        zindex:12000,
        buttons: [ {
            text:"Si",
            handler:handleYes,
            isDefault:true
        },
        {
            text:"No",
            handler:handleNo
        } ]

    } );
    YAHOO.mdirector.panel.simpledialog1.setHeader("Confirmaci&oacute;n")
    YAHOO.mdirector.panel.simpledialog1.render(document.body);
    YAHOO.mdirector.panel.simpledialog1.show();


}

YAHOO.contactos.init = function(_id) {
    var attributes = {
        color: {
            to: '#f00'
        },
        backgroundColor: {
            to:  'rgb(255, 255, 255)'
        },
        borderTopColor: {
            to: '#dcdcdc'
        },
        borderRightColor: {
            to: 'dcdcdc'
        },
        borderBottomColor: {
            to: 'dcdcdc'
        },
        borderLeftColor: {
            to: 'dcdcdc'
        }
    };
    var anim = new YAHOO.util.ColorAnim(_id, attributes);
    anim.animate();
/// YAHOO.util.Event.on(document, 'click', anim.animate, anim, true);
};

function borrarUsuariosGrupo( usu_id , usu_name , usu_apellido1 , usu_apellido2 , usu_email , usu_login ,usu_pass , rol_desc ,usu_active ){

    var handleYes = function(){
        var query = "bygroup=1&usu_id="+usu_id+"&usu_name="+usu_name+"&usu_apellido1="+usu_apellido1+"&usu_apellido2="+usu_apellido2+"&usu_email="+usu_email+"&usu_login="+usu_login+"&usu_pass="+usu_pass+"&rol_desc="+rol_desc;
        var handleSuccess = function(o){
            if(o.responseText !== undefined){
                var respuesta = o.responseText;
                if(respuesta == '0'){
                    document.getElementById('peoplebody').className = 'FondoCOLOR1 Cvisible';
                    document.getElementById('peoplebody').innerHTML = "No ha sido posible borrar el usuario. Al menos deberia existir un usuario administrador en el sistema.";
                }
                else{
                    document.getElementById('contenido').innerHTML = respuesta;
                }

                overlay_information_hide();
            }
        }
        var callback =
        {
            success:handleSuccess
        };
        YAHOO.mdirector.panel.simpledialog1.hide();
        overlay_information_show("Borrando Usuario");
        var request = YAHOO.util.Connect.asyncRequest('POST', '/account/user-unsubscribe', callback ,query);

    }
    var handleNo = function(){
        YAHOO.mdirector.panel.simpledialog1.hide();
    }
    YAHOO.mdirector.panel.simpledialog1 =
    new YAHOO.widget.SimpleDialog("simpledialog1",
    {
        width: "300px",
        fixedcenter: true,
        visible: false,
        draggable: false,
        close: true,
        text: "¿Esta seguro que quiere borrar el usuario?",
        icon: YAHOO.widget.SimpleDialog.ICON_HELP,
        constraintoviewport: true,
        modal:true,
        underlay:"matte",
        zindex:12000,
        buttons: [ {
            text:"Si",
            handler:handleYes,
            isDefault:true
        },
        {
            text:"No",
            handler:handleNo
        } ]

    } );
    YAHOO.mdirector.panel.simpledialog1.setHeader("Confirmaci&oacute;n")
    YAHOO.mdirector.panel.simpledialog1.render(document.body);
    YAHOO.mdirector.panel.simpledialog1.show();


}

YAHOO.contactos.init = function(_id) {
    var attributes = {
        color: {
            to: '#f00'
        },
        backgroundColor: {
            to:  'rgb(255, 255, 255)'
        },
        borderTopColor: {
            to: '#dcdcdc'
        },
        borderRightColor: {
            to: 'dcdcdc'
        },
        borderBottomColor: {
            to: 'dcdcdc'
        },
        borderLeftColor: {
            to: 'dcdcdc'
        }
    };
    var anim = new YAHOO.util.ColorAnim(_id, attributes);
    anim.animate();
/// YAHOO.util.Event.on(document, 'click', anim.animate, anim, true);
};

function modificarUsuarios(_id){
    if (mdirector_trim(document.getElementById('login').value)!="" && mdirector_trim(document.getElementById('password').value!="")) {
        var handleSuccess = function(o){
            if(o.responseText !== undefined){
                var respuesta = o.responseText;
                //YAHOO.util.Event.onAvailable('demo', YAHOO.example.init);
                document.getElementById('contenido').innerHTML = respuesta;
                document.getElementById('peoplebody').className = "FondoCOLOR1 Cvisible";
                overlay_information_hide();
                YAHOO.contactos.init('tr_'+_id);
            }
        }
        var callback =
        {
            success:handleSuccess
        };

        var formObject = document.getElementById('idFormListUsuario'+_id);
        YAHOO.util.Connect.setForm(formObject);
        overlay_information_show("Modificando Usuario");
        var request = YAHOO.util.Connect.asyncRequest('POST', '/account/user-edit-save', callback);
    }
    else{
        var handleYes = function(){
            YAHOO.mdirector.panel.simpledialog1.hide();
        }
        YAHOO.mdirector.panel.simpledialog1 =
        new YAHOO.widget.SimpleDialog("simpledialog1",
        {
            width: "300px",
            fixedcenter: true,
            visible: false,
            draggable: false,
            close: true,
            text: "Por favor, asegurate de rellenar al menos los campos 'usuario' y 'contraseña'.",
            icon: YAHOO.widget.SimpleDialog.ICON_HELP,
            constraintoviewport: true,
            modal:true,
            underlay:"matte",
            zindex:12000,
            buttons: [ {
                text:"Cerrar",
                handler:handleYes,
                isDefault:true
            }]

        } );
        YAHOO.mdirector.panel.simpledialog1.setHeader("Confirmaci&oacute;n")
        YAHOO.mdirector.panel.simpledialog1.render(document.body);
        YAHOO.mdirector.panel.simpledialog1.show();
    }
}

function crearUsuarios(){
    if (	mdirector_trim(document.getElementById('login').value)!="" &&
        mdirector_trim(document.getElementById('password').value)!="" &&
        mdirector_trim(document.getElementById('password2').value)!="" &&
        mdirector_trim(document.getElementById('password').value) ==
        mdirector_trim(document.getElementById('password2').value) &&
        (
            document.getElementById('mandatory_emp_id')==null ||
            document.getElementById('emp_id').selectedIndex >= 0
            ) &&
        mdirector_trim(document.getElementById('login').value).length <= 12 &&
        mdirector_trim(document.getElementById('password').value).length <= 12
        ) {
        var handleSuccess = function(o){
            if(o.responseText !== undefined){
                overlay_information_hide();
                var respuesta = o.responseText;
                var objson = respuesta.parseJSON();
                if(objson.error == '0'){
                    document.getElementById('peoplebody').innerHTML = objson.html;
                    document.forms.Formulario.reset();
                }else{
                    document.getElementById('peoplebody').innerHTML = objson.html;
                }

            }
        }
        var callback =
        {
            success:handleSuccess
        };
        overlay_information_show("Creando Usuario.")
        var formObject = document.getElementById('Formulario');
        YAHOO.util.Connect.setForm(formObject);
        var request = YAHOO.util.Connect.asyncRequest('POST', '/account/user-add-save', callback );
    } else {
        var handleYes = function(){
            YAHOO.mdirector.panel.simpledialog1.hide();
        }
        var alerttext = "";
        if (mdirector_trim(document.getElementById('login').value)=="" ||
            mdirector_trim(document.getElementById('password').value)=="")
            alerttext = "Por favor, asegurate de rellenar al menos los campos 'usuario' y 'contraseña'.";
        else if (mdirector_trim(document.getElementById('password2').value)=="")
            alerttext = "Por favor, asegurate de rellenar el campo 'confirmar contraseña'.";
        else if (mdirector_trim(document.getElementById('password').value)!=mdirector_trim(document.getElementById('password2').value))
            alerttext = "Las contraseñas no coinciden.";
        else if (mdirector_trim(document.getElementById('login').value).length > 12 ||
            mdirector_trim(document.getElementById('password').value).length > 12)
            alerttext = "El máximo de carácteres para el nombre de usuario y la contraseña es de 12.";
        else alerttext = "Por favor asegurate de escoger al menos una empresa.";

        YAHOO.mdirector.panel.simpledialog1 =
        new YAHOO.widget.SimpleDialog("simpledialog1",
        {
            width: "300px",
            fixedcenter: true,
            visible: false,
            draggable: false,
            close: true,
            text: alerttext,
            icon: YAHOO.widget.SimpleDialog.ICON_HELP,
            constraintoviewport: true,
            modal:true,
            zindex:12000,
            underlay:"matte",
            buttons: [ {
                text:"Cerrar",
                handler:handleYes,
                isDefault:true
            }]

        } );
        YAHOO.mdirector.panel.simpledialog1.setHeader("Confirmaci&oacute;n")
        YAHOO.mdirector.panel.simpledialog1.render(document.body);
        YAHOO.mdirector.panel.simpledialog1.show();
    }
}
function crearContacto(){
    var _err = document.getElementById("error");
    var _peoplebody = document.getElementById('resultado');
    _err.innerHTML = '';
    _err.className = 'invalid_form Cinvisible';
    _peoplebody.innerHTML = "";
    _peoplebody.className = 'FondoCOLOR1 Cinvisible';
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            overlay_information_hide();
            var respuesta = o.responseText;
            var input_text = YAHOO.util.Dom.getElementsByClassName( "TXT BordeCOLOR1" , "input" , "idFormCrearContactos" );
            resetearForm.limpiarText(input_text);
            var combos = YAHOO.util.Dom.getElementsByClassName( "TXT BordeCOLOR1" , "select" , "idFormCrearContactos" );
            resetearForm.limpiarCombos(combos);
            if (isInt(respuesta)) {
                if (respuesta != 0)
                    _peoplebody.innerHTML =	"Contacto " + respuesta + " correctamente creado";
                else
                    _peoplebody.innerHTML = respuesta;
                _peoplebody.className = 'FondoCOLOR1 Cvisible';
            } else {
                _err.innerHTML = respuesta;
                _err.className = 'invalid_form Cvisible';
            }
        }
        return true;
    }
    var callback =
    {
        success:handleSuccess
    };
    if(validaciones.trim(document.getElementById('con_email').value) == '' &&
        validaciones.trim(document.getElementById('con_direccion').value) == '' &&
        validaciones.trim(document.getElementById('con_movil').value) == '')
        {
        _err.innerHTML = "Es necesario rellenar el campo e-mail o m&oacute;vil o direcci&oacute;n para dar de alta un contacto.";
        _err.className = 'invalid_form Cvisible';
        return false;
    }
    if(validaciones.sizeMin(document.getElementById('con_movil').value,9) && validaciones.trim(document.getElementById('con_movil').value) != ''){
        _err.innerHTML = "Es necesario rellenar el campo m&oacute;vil con un n&uacute;mero valido.";
        _err.className = 'invalid_form Cvisible';
        return false;
    }
    var _array_error = YAHOO.util.Dom.getElementsByClassName('x-form-invalid');
    if(_array_error.length > 0 ) {
        _err.innerHTML = "Existen campos con errores, por favor revise los mismos.";
        _err.className = 'invalid_form Cvisible';
        return false;
    }
    overlay_information_show("Creando Contacto.");
    var formObject = document.getElementById('idFormCrearContactos');
    YAHOO.util.Connect.setForm(formObject);
    YAHOO.util.Connect.asyncRequest('POST', '/contacto/crear', callback );
    return true;
}

function fnContactosCallback(e) {
    if(YAHOO.util.Dom.inDocument("resultado")){
        document.getElementById("resultado").innerHTML = '';
    }
    var _test = true;
    var _arr = (this.className).split(" ");
    var _err = document.getElementById("error");
    switch (_arr[0]){
        case 'num':
            if(validaciones.trim(this.value) !== '' && validaciones.num(validaciones.trim(this.value)) == false){
                _test = false;
                this.className = _arr[0]+' x-form-invalid';
                _err.innerHTML = validaciones.numText;

            }else{
                this.className = _arr[0]+' TXT BordeCOLOR1';
                _err.innerHTML = "";
            }
            break;
        case 'date':
            if(validaciones.trim(this.value) !== '' && validaciones.date(validaciones.trim(this.value)) == false){
                _test = false;
                this.className = _arr[0]+' x-form-invalid';
                _err.innerHTML = validaciones.dateText;
            }else{
                this.className = _arr[0]+' TXT BordeCOLOR1';
                _err.innerHTML = "";
            }
            break;
        case 'alphanum':
            if(validaciones.trim(this.value) !== '' && validaciones.alphanum(validaciones.trim(this.value)) == false){
                _test = false;
                this.className = _arr[0]+' x-form-invalid';
                _err.innerHTML = validaciones.alphanumText;
            }else{
                this.className = _arr[0]+' TXT BordeCOLOR1';
                _err.innerHTML = "";
            }
            break;
        case 'alpha':
            if(validaciones.trim(this.value) !== '' && validaciones.alpha(validaciones.trim(this.value)) == false){
                _test = false;
                this.className = _arr[0]+' x-form-invalid';
                _err.innerHTML = validaciones.alphaText;
            }else{
                this.className = _arr[0]+' TXT BordeCOLOR1';
                _err.innerHTML = "";
            }
            break;
        case 'url':
            if(validaciones.trim(this.value) !== '' && validaciones.url(validaciones.trim(this.value)) == false){
                _test = false;
                this.className = _arr[0]+' x-form-invalid';
                _err.innerHTML = validaciones.urlText;
            }else{
                this.className = _arr[0]+' TXT BordeCOLOR1';
                _err.innerHTML = "";
            }
            break;
        case 'email':
            if(validaciones.trim(this.value) !== '' && validaciones.email(validaciones.trim(this.value)) == false){
                _test = false;
                this.className = _arr[0]+' x-form-invalid';
                _err.innerHTML = validaciones.emailText;
            }else{
                this.className = _arr[0]+' TXT BordeCOLOR1';
                _err.innerHTML = "";
            }
            break;
    }
    //this.style.width = document.getElementById(this.id).style.clientWidth;
    if(_test == false ){
        _err.className = 'invalid_form Cvisible';
    }else{
        _err.className = 'invalid_form Cinvisible';
    }
}
function buscarContacto(current ,url){
    mostrarCargando("Buscando sus contactos");
    if(current == undefined) current = 1;
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            ocultarCargando();
            var respuesta = o.responseText;
            document.getElementById('peoplebody').innerHTML = respuesta;
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var formObject = document.getElementById('idFormContactos');
    YAHOO.util.Connect.setForm(formObject);
    //document.getElementById('peoplebody').innerHTML = "<span style='color:#FFF;font-size:16px;font-weight:bold;background-color:#3467AA;'>Buscando Contacto...";
    var request = YAHOO.util.Connect.asyncRequest('POST', url+"/current/"+current , callback);

}

function uploadFile(){
    var fn = function(o){
        if(o.responseText !== undefined){
            document.getElementById('inf1_1').className = "Cinvisible";
            var respuesta = o.responseText;
            var objson = respuesta.parseJSON();
            if(objson.file_source.error == 0){
                document.getElementById('cuerpo_1').innerHTML += "<p id='1_2'>Fichero subido correctamente</p>";
                document.getElementById('cuerpo_1').innerHTML += "<h4 id='1_3'>Nombre: <strong>"+objson.file_source.name+"</strong></h4>";
                document.getElementById('cuerpo_1').innerHTML += "<h4 id='1_4'>Tamaño: <strong>"+objson.file_source.size/1000+" kb.</strong></h4>";
                if( objson.file_source.unzip != undefined)
                    document.getElementById('cuerpo_1').innerHTML += "<p id='1_2'>"+objson.file_source.unzip+"</p>";
                document.getElementById('marca_1').className = "FondoCOLOR1";
                analizandoCabeceras();
            }else{
                document.getElementById('error_1').innerHTML = "Error en la subida del fichero. "+objson.file_source.desc_error;
                document.getElementById('error_1').className = "BordeError cVisible";
            }
        }
        return true;
    }
    var callback =
    {
        upload:fn
    };
    try{
        document.getElementById('cuerpo_1').innerHTML = "";
        document.getElementById('cuerpo_2').innerHTML = "";
        document.getElementById('cuerpo_3').innerHTML = "";
        document.getElementById('cuerpo_4').innerHTML = "";
        document.getElementById('error_1').className = "Cinvisible";
        document.getElementById('preview').innerHTML = "";
        document.getElementById('marca_1').className = "FondoCOLOR3 BordeCOLOR2";
        document.getElementById('marca_2').className = "FondoCOLOR3 BordeCOLOR2";
        document.getElementById('marca_3').className = "FondoCOLOR3 BordeCOLOR2";
        document.getElementById('marca_4').className = "FondoCOLOR3 BordeCOLOR2";
    }catch(e){}

    fichero = document.getElementById('file_source').value;
    if(fichero == ''){
        var handleYes = function(){
            YAHOO.mdirector.panel.simpledialog1.hide();
        }
        YAHOO.mdirector.panel.simpledialog1 =
        new YAHOO.widget.SimpleDialog("simpledialog1",
        {
            width: "300px",
            fixedcenter: true,
            visible: false,
            draggable: false,
            close: true,
            text: "Por favor, asegurate de rellenar el campo fichero a importar.",
            icon: YAHOO.widget.SimpleDialog.ICON_HELP,
            constraintoviewport: true,
            modal:true,
            underlay:"matte",
            zindex:1000,
            buttons: [ {
                text:"Cerrar",
                handler:handleYes,
                isDefault:true
            }]

        } );
        YAHOO.mdirector.panel.simpledialog1.setHeader("Aviso.")
        YAHOO.mdirector.panel.simpledialog1.render(document.body);
        YAHOO.mdirector.panel.simpledialog1.show();
        return false;
    }
    document.getElementById('boton_upload').className = "Cinvisible";
    if( document.getElementById('boton_deleteAllContacts') != null )
        document.getElementById('boton_deleteAllContacts').className = "Cinvisible";
    document.getElementById('file_source').className = "Cinvisible";
    document.getElementById('inf1_1').className = "TXT Color1 Cvisible";
    var formObject = document.getElementById('formUpload');
    YAHOO.util.Connect.setForm(formObject ,true);
    YAHOO.util.Connect.asyncRequest('POST', '/upload/subir', callback );
    return true;
}








var timer = 0;  //Creando ficheros querys
var timer2 = 0; //Insertando querys
var timer3 = 0; //Analizando cabeceras
var timer4 = 0; //Analizando cabeceras

function updateProgressBar(bar){
    var resultado = function(o){
        var percent = 0;
        if(o.responseText !== undefined){
            percent = o.responseText;
            document.getElementById('progressBar'+bar+'_2').style.width=(percent*2)+"px";
            document.getElementById('progressBar'+bar+'_3').innerHTML=percent+" %";
        }
        return true;
    }

    var callbackProgressBar = {
        success:resultado
    };
    var EID = document.getElementById('EID').value;
    var url = "/progress.php?file="+bar+"&id="+EID;
    YAHOO.util.Connect.asyncRequest('GET', url, callbackProgressBar);
    return true;
}








var analizandoCabeceras = function(){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            document.getElementById('inf1_2').className = "Cinvisible";
            document.getElementById('marca_2').className = "FondoCOLOR1";
            document.getElementById('inf1_3').className = "Cinvisible";
            var respuesta = o.responseText;
            var objson = respuesta.parseJSON();
            document.getElementById('cuerpo_2').innerHTML += objson._1;
            document.getElementById('cuerpo_3').innerHTML = objson._2;

            clearInterval(timer3);
            document.getElementById('progressBar3_1').className = "Cinvisible";
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    document.getElementById('inf1_2').className = "TXT Color1 Cvisible";
    document.getElementById('progressBar3_1').className = "TXT Color1 Cvisible";

    timer3 = setInterval("updateProgressBar(3)", 500);
    var request = YAHOO.util.Connect.asyncRequest('POST', '/upload/cabeceras', callback );

}




var importar = function(url){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            var objson = respuesta.parseJSON();
            document.getElementById('inf1_4').className = "Cinvisible";
            document.getElementById('marca_4').className = "FondoCOLOR1";
            document.getElementById('cuerpo_4').innerHTML = objson._1;
            document.getElementById('cc_personas').innerHTML = objson.cc_personas;

            clearInterval(timer);
            clearInterval(timer2);
            document.getElementById('progressBar1_1').className = "Cinvisible";
            document.getElementById('progressBar2_1').className = "Cinvisible";
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    document.getElementById('marca_3').className = "FondoCOLOR1";

    //Ocultar enlace 'proceder a la importacion' para evitar que los usuarios pinchen varias veces antes de acabar.
    document.getElementById('cuerpo_3').style.visibility = "hidden";
    document.getElementById('inf1_4').className = "TXT Color1 Cvisible";

    document.getElementById('progressBar1_1').className = "TXT Color1 Cvisible";
    document.getElementById('progressBar2_1').className = "TXT Color1 Cvisible";

    timer  = setInterval("updateProgressBar(1)", 500);
    timer2 = setInterval("updateProgressBar(2)", 500);

    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );
}


var mdirector_loadpage = function(url, _id){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            //alert(respuesta);
            //var respuesta = parseCabeceras(o);
            try {
                document.getElementById(_id).innerHTML = respuesta;
                document.title = getTitle(url);
                md_launchJavascript(respuesta);
            } catch ( e ) {}

        }
    }

    var callback =
    {
        success:handleSuccess
    };
    YAHOO.util.Connect.asyncRequest('POST', url, callback );
    return true;
}


var getTitle = function(url) {
    var t='';

    switch (url) {
        case "/admin/home":
            t="Inicio";
            break;

        case "/account/index":
        case "/account/companies-management":
        case "/account/user-to-company-add":
        case "/account/customize":
        case "/account/form-pdf-contact-subscribe":
        case "/account/pixel-doc":
        case "/account/sms-buy":
            t="Gestión";
            break;

        case "/contacto/home":
        case "/upload":
        case "/contacto/alta":
        case "/contacto/eliminar":
            t="Contactos";
            break;


        case "/plantillas-gestion/md":
            t="Plantillas";
            break;

        case "/campanias-gestion/load-campanias-list?last10=1":
        case "/campanias-gestion/search":
            t="Campañas";
            break;

        case "/informes/acciones-lista?ultimas=1":
        case "/informes/acciones":
        case "/informes/links":
        case "/informes/bajas":
        case "/admin/robinson":
            t="Informes de las Campañas";
            break;

        default:
            t='';
            break;
    }


    return t+" :: Marketing Director ( Zona Privada ) ::";
}








var mdirector_contactospage = function(url){
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            YAHOO.mdirector.panel.panel_five.setBody(respuesta);
            YAHOO.mdirector.panel.panel_five.render(document.body);
            YAHOO.mdirector.panel.panel_five.show();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

}

var mdirector_LoadPageWithQuery = function(url, _id,query){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            overlay_information_hide();
            var respuesta = o.responseText;
            document.getElementById(_id).innerHTML = respuesta;
            md_launchJavascript(respuesta);
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    overlay_information_show("en proceso espere unos segundos....");
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback,query );

}

var mdirector_loadpage_contactos = function(url, _id){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById(_id).innerHTML = respuesta;
            cargaUsuarios();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

}

var mdirector_loadpage_groupusers = function(url, _id){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById(_id).innerHTML = respuesta;
            cargaUsuariosGrupo();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

}

var mdirector_loadpage_plantillas_index = function(url, _id){
    //mostrarCargando("Cargando plantillas");
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById(_id).innerHTML = respuesta;
            md_launchJavascript(respuesta);
        //PlantillasGestion_loadIndexContents();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

}
var mdirector_loadpage_plantillas = function(url, _id){
    //mostrarCargando("Cargando plantillas");
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById(_id).innerHTML = respuesta;
            md_launchJavascript(respuesta);
            PlantillasGestion_loadIndexContents();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

}
var mdirector_loadpage_campanias_index = function(url, _id){
    //mostrarCargando("Cargando campañas");
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById(_id).innerHTML = respuesta;
            md_launchJavascript(respuesta);
        //ocultarCargando();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

}


var mdirector_loadpage_campanias_create = function(url, _id){
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById(_id).innerHTML = respuesta;
            md_launchJavascript(respuesta);
            CampaniasGestion_ClearCampaignGlobals();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

}


var creaSubmenu = function(padre, nivel){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById('submenu').innerHTML = respuesta;
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    query = "padre="+padre+"&nivel="+(nivel+1);
    var request = YAHOO.util.Connect.asyncRequest('POST', "/admin/submenu", callback, query );

}

function cargaContenido (contenido){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById('contenido').innerHTML = respuesta;
        }
    }
    var callback =
    {
        success:handleSuccess
    };

    var request = YAHOO.util.Connect.asyncRequest('POST', contenido, callback);

}





var abierto = false;

var clickhandler = function (e) {
    if(abierto != false)
        return false;
    abierto = true;
    var texto = "";
    var elTarget = YAHOO.util.Event.getTarget(e);

    function MyPersonalizado(texto,objeto,tipo,id) {
        this.texto = texto;
        this.objeto = objeto;
        this.tipo = tipo;
        this.id = id;
    }

    function grabaParametros(e, obj) {
        var valor = this.value;
        function handleSuccess(o){
            if(o.responseText !== undefined){
                cerrando_lateral(obj.id);
                var respuesta = o.responseText;
                var literal = "";
                if(respuesta == 0){
                    literal = obj.texto;
                }else{
                    literal = valor;
                }
                obj.objeto.innerHTML = literal;
            }
            abierto = false;
            return true;
        }

        function handleFailure(){
            cerrando_lateral(obj.id);
            alert("No se ha podido realizar el cambio, disculpe las molestias.");
            abierto = false;
            return false;
        }

        var callback =
        {
            success:handleSuccess,
            failure:handleFailure

        };
        cargando_lateral(this.id);
        YAHOO.util.Connect.asyncRequest('POST','/account/customize-update', callback , "campo="+obj.objeto.id+"&valor="+valor);
        return true;
    }

    function grabaParametrosPersonalizados(e,obj) {
        var valor = this.value;
        function handleSuccess(o){
            if(o.responseText !== undefined){
                cerrando_lateral(obj.id);
                var respuesta = o.responseText;
                var literal = "";
                if(respuesta == 0){
                    literal = obj.texto;
                }else{
                    literal = valor;
                }
                obj.objeto.innerHTML = literal;
            }
            abierto = false;
            return true;
        }
        function handleFailure(){
            cerrando_lateral(obj.id);
            alert("No se ha podido realizar el cambio, disculpe las molestias.");
            abierto = false;
            return false;
        }

        var callback =
        {
            success:handleSuccess,
            failure:handleFailure

        };
        cargando_lateral(this.id);
        if(valor.length > 11 && obj.objeto.id == 'emp_remitente_sms_per') {
            obj.objeto.innerHTML = obj.texto;
            cerrando_lateral(obj.objeto.id);
            overlay_information_show("El campo remitente sms tiene un tamaño maximo de 11 caracteres.");
            YAHOO.mdirector.container.overlay2.closeInTime(1500);
            abierto = false;
            return false;
        }
        if (obj.objeto.id == 'emp_remitente_sms_per') {
            var regex = new RegExp(/^[a-zA-Z0-9ñÑüÜ @]+$/);
            if(!valor.match(regex)) {
                obj.objeto.innerHTML = obj.texto;
                cerrando_lateral(obj.objeto.id);
                overlay_information_show("El campo remitente sms solo puede contener caracteres A-Z, 0-9,Ñ, Ü y @.");
                YAHOO.mdirector.container.overlay2.closeInTime(1500);
                abierto = false;
                return false;
            }
        }

        YAHOO.util.Connect.asyncRequest('POST','/account/customize-update-personalizados', callback , "campo="+obj.objeto.id+"&valor="+valor);
        return true;
    }

    function grabaParametrosLibres(e,obj) {
        var valor = this.value;
        function handleSuccess(o){
            if(o.responseText !== undefined){
                cerrando_lateral(obj.id);
                var respuesta = o.responseText;
                var literal = "";
                if(respuesta >= 0){
                    literal = valor;
                }else{
                    overlay_information_show(respuesta);
                    YAHOO.mdirector.container.overlay2.closeInTime(2000);
                    literal = obj.texto;
                }
                obj.objeto.innerHTML = literal;
            }
            abierto = false;
            return true;
        }

        var callback = {
            success:handleSuccess
        };

        cargando_lateral(this.id);
        YAHOO.util.Connect.asyncRequest('POST','/account/customize-param-update/name/'+obj.texto+'/name_new/'+valor+'/id/'+obj.id, callback );
        return true;
    }

    if(elTarget.nodeName.toUpperCase() == "TD" && elTarget.id != "noeditable"){
        var re = new RegExp("Param");
        var tipo = (elTarget.className).match(re);
        var obj_input = document.createElement("input");
        obj_input.size = 25;
        var obj = null;

        if(elTarget.hasChildNodes()){
            if(elTarget.firstChild.nodeType == 3){
                texto = elTarget.firstChild.nodeValue;
                elTarget.removeChild(elTarget.firstChild);

            }else if(elTarget.firstChild.nodeType == 1){
                if((elTarget.firstChild).tagName.toUpperCase() != "SELECT" && (elTarget.firstChild).tagName.toUpperCase() != "DIV"){
                    texto = "";
                    if((elTarget.firstChild).hasChildNodes())
                        texto = (elTarget.firstChild).firstChild.nodeValue;
                    elTarget.removeChild(elTarget.firstChild);
                    
                }
                else
                    return false;
            }

        }

        obj_input.value = texto;
        obj = new MyPersonalizado(texto, elTarget, tipo, elTarget.id);
        elTarget.appendChild(obj_input);
        obj_input.focus();
        obj_input.className="editable";
        YAHOO.util.Dom.generateId(obj_input);

        if(obj.tipo == "Param"){
            YAHOO.util.Event.on(obj_input, 'blur', grabaParametrosLibres , obj );
        }
        else if(obj.id == "emp_name_from"){
            YAHOO.util.Event.on(obj_input, 'blur', grabaParametros , obj );
        }
        else{
            YAHOO.util.Event.on(obj_input, 'blur', grabaParametrosPersonalizados , obj );
        }
    }
}






var guardar_combo = function(objeto){
    if(abierto != false) return false;
    abierto = true;
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            if(respuesta == 1){
                YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName("FondoCOLOR3","option",objeto.id),"FondoCOLOR3","");
                objeto.options[objeto.selectedIndex].className = "FondoCOLOR3";
            }else{
                alert("no lo ha hecho bien");
            }
        }
        abierto = false;
    }
    var callback =
    {
        success:handleSuccess
    };
    objeto.focus();
    if (objeto.id == "SEC_IDE_ID" || objeto.id == "EMP_ZON_HOR")
        YAHOO.util.Connect.asyncRequest('POST','/account/customize-update-personalizados', callback,'campo='+objeto.id+'&valor='+objeto.value );
    else
        YAHOO.util.Connect.asyncRequest('POST','/account/customize-update', callback,'campo='+objeto.id+'&valor='+objeto.value );
}

YAHOO.mdirector.panel.panel_five;
var _id = "";
var con_id = "";
var mostrarFicha = function (_id,con_id ,id_capa, id_field_set,tipo,size){
    _id = _id;
    con_id = con_id;
    var abrir, cerrar;
    var abrirField = function(tamanio){
        var attributes = {
            height: {
                to: tamanio
            }
        };
        abrir = new YAHOO.util.Anim(id_capa+_id,  attributes, 0.2, YAHOO.util.Easing.backOut);
        abrir.onStart.subscribe(posicionarField);
        abrir.onComplete.subscribe(mostrarField);
        abrir.animate();
    }
    var posicionarField = function(){
        document.getElementById(id_capa+_id).className= 'Cvisible';
        document.getElementById(id_capa+_id).focus();
    }
    var cerrarField = function(){
        document.getElementById(id_field_set+_id).className= 'Cinvisible';
        document.getElementById(id_capa+_id).className= 'Cinvisible';
        var attributes = {
            height: {
                to: 0
            }
        };
        cerrar = new YAHOO.util.Anim(id_capa+_id,  attributes, 0.2, YAHOO.util.Easing.backIn);
        cerrar.animate();
        cerrar = null;
    }
    var mostrarField = function(){
        switch(tipo){
            case 1:
                mdirector_loadcontacto_user("/contacto/view/idcontacto/"+con_id+"/id/"+_id,id_capa+_id,id_field_set+_id);
                break;
            case 2:
                mdirector_loadcontacto_user("/account/user-edit/idusuario/"+con_id+"/id/"+_id,id_capa+_id,id_field_set+_id);
                break;
            case 3:
                mdirector_loadcontacto_user("/syncro/syncro-edit/idsyncro/"+con_id+"/id/"+_id,id_capa+_id,id_field_set+_id);
                break;
        }
        document.getElementById(id_capa+_id).className= 'abierto';
        abrir = null;
    }
    var elementos = YAHOO.util.Dom.getElementsByClassName('abierto');
    if(elementos.length == 0){
        abrirField(size);
    }else{
        if(_id == elementos[0].title){
            cerrarField();
        }else{
            var tmp = _id;
            _id = elementos[0].title;
            cerrarField();
            _id = tmp;
            abrirField(size);
        }
    }

};
/*var mdirector_viewcontacto = function(url, _idcontacto , name){
  alert("dentro");
  var handleSuccess = function(o){
    if(o.responseText !== undefined){
      ocultarCargando();
      respuesta = o.responseText;
      YAHOO.mdirector.panel.panel_five.setBody(respuesta);
      YAHOO.mdirector.panel.panel_five.render(document.body);
      YAHOO.mdirector.panel.panel_five.show();
    }
  }
  var callback =
  {
     success:handleSuccess
  };
  mostrarCargando("Cargando la ficha de "+name);
  var request = YAHOO.util.Connect.asyncRequest('POST', url, callback , 'con_id='+_idcontacto);
}


*/
var mdirector_loadcontacto_user = function(url, _id , _id2){
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            document.getElementById(_id).innerHTML = respuesta;
            md_launchJavascript(respuesta);
            try{
                var y = document.getElementById(_id2).offsetHeight;
                var attributes = {
                    height: {
                        to: y+15
                    }
                };
                abrir = new YAHOO.util.Anim(_id,  attributes, 0.2, YAHOO.util.Easing.backOut);
                abrir.animate();
            }catch(e){
            }
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

};

function md_launchJavascriptBlock( textBlock ) {
    // RegExp from prototype.sonio.net
    var ScriptFragment = '(?:<script.*?>)((\r|\n|.)*?)(?:</script>)';
    
    var match	= new RegExp(ScriptFragment, 'img');
    var scripts  = textBlock.match(match);

    if(scripts) {
        var js = '';
        for(var s = 0; s < scripts.length; s++) {
            var match = new RegExp(ScriptFragment, 'im');
            js += scripts[s].match(match)[1];
        }
        eval(js);
    }
}

function md_launchJavascript(responseText) {    
    md_launchJavascriptBlock(responseText);
}
var mdirector_updatecontacto = function(url,_id){
    var handleYes = function(){
        var handleSuccess = function(o){
            if(o.responseText !== undefined){
                var respuesta = o.responseText;
                document.getElementById("peoplebody").innerHTML = respuesta;
                overlay_information_hide();
                YAHOO.contactos.init('linea_'+_id);
            }
        }
        var callback =
        {
            success:handleSuccess
        };
        YAHOO.mdirector.panel.simpledialog1.hide();
        overlay_information_show("Modificando Contacto");
        mostrarFicha(_id,con_id,"idMasInfoContacto","idMasInfoContactoFieldset",1,435);
        var formObject = document.getElementById('idFormListContactos'+_id);
        YAHOO.util.Connect.setForm(formObject);
        //document.getElementById('peoplebody').innerHTML = "<span style='color:#FFF;font-size:16px;font-weight:bold;background-color:#3467AA;'>Buscando Contacto...";
        var request = YAHOO.util.Connect.asyncRequest('POST', url, callback  );
    }
    var handleNo = function(){
        YAHOO.mdirector.panel.simpledialog1.hide();
    }
    var _err = document.getElementById("error");
    var _array_error = YAHOO.util.Dom.getElementsByClassName('x-form-invalid');
    if(_array_error.length > 0 ) {
        _err.innerHTML = "Existen campos con errores, por favor revise los mismos.";
        _err.className = 'invalid_form Cvisible';
        return false;
    }
    YAHOO.mdirector.panel.simpledialog1 =
    new YAHOO.widget.SimpleDialog("simpledialog1",
    {
        width: "300px",
        fixedcenter: true,
        visible: false,
        draggable: false,
        close: true,
        text: "¿Esta seguro que quiere modificar el contacto?",
        icon: YAHOO.widget.SimpleDialog.ICON_HELP,
        constraintoviewport: true,
        modal:true,
        underlay:"matte",
        zindex:12000,
        buttons: [ {
            text:"Si",
            handler:handleYes,
            isDefault:true
        },
        {
            text:"No",
            handler:handleNo
        } ]

    } );
    YAHOO.mdirector.panel.simpledialog1.setHeader("Confirmaci&oacute;n")
    YAHOO.mdirector.panel.simpledialog1.render(document.body);
    YAHOO.mdirector.panel.simpledialog1.show();
};
var mdirector_borrarcontacto = function(url){
    var handleYes = function(){
        var handleSuccess = function(o){
            if(o.responseText !== undefined){
                ocultarCargando();
                var respuesta = o.responseText;
                document.getElementById('peoplebody').innerHTML = respuesta;
            }
        }
        var callback =
        {
            success:handleSuccess
        };
        YAHOO.mdirector.panel.simpledialog1.hide();
        mostrarCargando("Borrando Contacto");
        var request = YAHOO.util.Connect.asyncRequest('POST', url, callback  );
    }
    var handleNo = function(){
        YAHOO.mdirector.panel.simpledialog1.hide();
    }
    YAHOO.mdirector.panel.simpledialog1 =
    new YAHOO.widget.SimpleDialog("simpledialog1",
    {
        width: "300px",
        fixedcenter: true,
        visible: false,
        draggable: false,
        close: true,
        text: "¿Esta seguro que quiere borrar el contacto?",
        icon: YAHOO.widget.SimpleDialog.ICON_HELP,
        constraintoviewport: true,
        modal:true,
        underlay:"matte",
        zindex:1000,
        buttons: [ {
            text:"Si",
            handler:handleYes,
            isDefault:true
        },
        {
            text:"No",
            handler:handleNo
        } ]

    } );
    YAHOO.mdirector.panel.simpledialog1.setHeader("Confirmaci&oacute;n")
    YAHOO.mdirector.panel.simpledialog1.render(document.body);
    YAHOO.mdirector.panel.simpledialog1.show();
};

var mdirector_uploadfile = function(){

    if(typeof YAHOO.mdirector.panel.panel_upload == 'undefined'){
        YAHOO.mdirector.panel.panel_upload = new YAHOO.widget.Dialog("panel_upload",
        {

            close:true,
            visible:false,
            context:["link_upload" ,"tl","br"]
        }
        );
    }
    mdirector_viewupload('/account/customize-logo');
};
var mdirector_viewupload = function(url){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            try{
                YAHOO.mdirector.panel.panel_upload.setHeader("Escoge tu foto:");
                YAHOO.mdirector.panel.panel_upload.setBody(respuesta);
                YAHOO.mdirector.panel.panel_upload.setFooter("");
                YAHOO.mdirector.panel.panel_upload.render(document.body);
                YAHOO.mdirector.panel.panel_upload.show();
                document.getElementById("logo").focus();
            }catch(e){
            /////////////////
            }

        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', url, callback );

};


var mdirector_hacerVisible = function(_id)
{
    //alert(_id);
    document.getElementById(_id).className = "Cvisible";


};


var uploadFoto = function()
{

    var fn = function(o){
        if(o.responseText !== undefined){
            overlay_information_hide();
            var respuesta = o.responseText;
            if(respuesta != "0"){
                YAHOO.mdirector.panel.panel_upload.hide();
                mdirector_loadpage('/account/customize','contenido');

            }else{
                YAHOO.mdirector.panel.panel_upload.setFooter("<div style='text-align:center;color:red;'>Error en la subida de fichero</div>");
                YAHOO.mdirector.panel.panel_upload.render(document.body);
            }
        }
    }
    var callback =
    {
        upload:fn
    };
    overlay_information_show("Subiendo logo, para personalizar envios.");
    var formObject = document.getElementById('formUploadFoto');
    YAHOO.util.Connect.setForm(formObject ,true);
    var request = YAHOO.util.Connect.asyncRequest('POST', '/account/customize-logo-save', callback );

};

var mdirector_changecolor = function(color){

    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
        //parseCabeceras(o);
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', escape("/account/customize-color-save/color/"+color), callback);

};
YAHOO.mdirector.container.overlay3;
var mdirector_cargapaleta = function(){
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            YAHOO.mdirector.container.overlay3 =
            new YAHOO.widget.Panel("overlay3", {
                close:true,
                width:"112px",
                visible:false,
                draggable:true,
                modal:true,
                constraintoviewport:true,
                underlay:"matte",
                context:["color" ,"tl","br"]
            } );
            YAHOO.mdirector.container.overlay3.setHeader("Elige tu color");
            YAHOO.mdirector.container.overlay3.setBody(respuesta);
            YAHOO.mdirector.container.overlay3.render(document.body);
            YAHOO.mdirector.container.overlay3.show();
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', "/account/customize-color", callback);
}
function setActiveStyleSheet(title) {
    var i, a, main;
    for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
        if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
            a.disabled = true;
            if(a.getAttribute("title") == title){
                a.disabled = false;
                mdirector_changecolor(a.getAttribute("title"));
            }
        }
    }
}



function mdirector_trim(stringToTrim) {
    return stringToTrim.replace(/^\s+|\s+$/g,"");
}

function marcaPestanas(objeto,num_pestanas){
    for(i=0 ; i < num_pestanas; i++){
        eval("document.getElementById('pestana_"+i+"').className='FondoCOLOR1'");
    }
    objeto.className='pestana';
    objeto.blur();

}
function marcaPestanasBack(id,num_pestanas){
    objeto = eval("document.getElementById('"+id+"')");
    for(i=0 ; i < num_pestanas; i++){
        var num = getIdPestana(i);
        eval("document.getElementById('pestana_"+num+"').className='FondoCOLOR1'");
    }
    objeto.className='pestana';
    objeto.blur();

}
function marcaSubPestanas(objeto,num_pestanas){
    for(i=0 ; i < num_pestanas; i++){
        eval("document.getElementById('subpestana_"+i+"').className='Color2'");
    }
    objeto.className='pestana'
    objeto.blur();
    return null;
}

function leerEstilo() {
    var cookie = readCookie("style");
    var title;
    if(cookie == null){
        title = "fd802c";
    } else {
        title = cookie ? cookie : getPreferredStyleSheet();
    }
    setActiveStyleSheet(title);
}

function guardarEstilo() {
    var title = getActiveStyleSheet();
    createCookie("style", title, 365);
}

function mdirector_trim(stringToTrim) {
    //return stringToTrim.replace(/^\s+|\s+$/g,"");
    return stringToTrim;
}

function createRow(texto1,texto2,tdId, emp_id){
    var table = document.getElementById("tabla_datos2").getElementsByTagName("tbody")[0];
    var trTag = document.createElement('tr');
    var thTag = document.createElement('th');
    thTag.setAttribute("scope","row");
    thTag.setAttribute("id","th" + tdId);
    var txt2 = document.createTextNode(texto2)
    thTag.appendChild(txt2);
    var tdTag = document.createElement('td');
    tdTag.setAttribute("id",tdId);
    tdTag.className = "Click FondoCOLOR1 Param";
    var txt1 = document.createTextNode(texto1);
    tdTag.appendChild(txt1);
    trTag.appendChild(thTag);
    trTag.appendChild(tdTag);
    table.appendChild(trTag);

    document.getElementById("th" + tdId).innerHTML = texto2 + "<span><a href='javascript:void(0);' onclick='Eliminar_Campo_Libre(" + tdId + ","+ emp_id +");return false;'><img border='0' title='Eliminar Campo' alt='Eliminar Campo' src='/images/ic_eliminar.gif'></a></span><input type='checkbox' checked='checked' onchange='update_param_visibility("+ tdId +",this.checked);'> ";

    return trTag;
}
var crearParametrosLibres = function()
{
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            var objson = respuesta.parseJSON();
            if(objson.mensaje_error != ""){
                overlay_information_show(objson.mensaje_error);
                YAHOO.mdirector.container.overlay2.closeInTime(2000);
            }else{
                overlay_information_show("El parametro libre "+objson.emp_par_nombre_per+" ha sido creado correctamente.");
                YAHOO.mdirector.container.overlay2.closeInTime(2000);
                var table = document.getElementById("tabla_datos2").getElementsByTagName("tbody")[0];

                var trTag = createRow(
                    objson.emp_par_nombre_per,
                    "Campo Libre "+(YAHOO.util.Dom.getElementsByClassName("Param").length+1)+": ",
                    objson.result,
                    objson.emp_id
                    );

                YAHOO.util.Event.on(objson.result, "click", clickhandler);
            }
        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var formObject = document.getElementById('formParametrosLibres');
    YAHOO.util.Connect.setForm(formObject);
    var request = YAHOO.util.Connect.asyncRequest('POST', '/account/customize-param-add', callback );

};
var parseCabeceras = function(o){

    if(o.getResponseHeader['Login'] != "1"){
        show_sessionClosePanel("Su sesion ha caducado será redirigido a la home, para que introducir usuario y contraseña.");
        redirect_home();
        return "";
    }else{
        return o.responseText;
    }

}

var movercapa = function() {
    mdirector_movercapa ("Parametroslibres",null,143,"alternar");
};


var mdirector_movercapa = function(_id,altura,anchura,accion) {  // accion [abrir, cerrar, alternar]
    var attributes;
    var abierto = (document.getElementById('Cont'+_id).style.visibility == 'visible')?"true":"false";
    var realizar = true;
    //anchura = (anchura == null)?document.getElementById('Cont'+_id).style.width  : anchura;
    //altura  = (altura  == null)?document.getElementById('Cont'+_id).style.height : altura;
    if(abierto == "false"){
        if(YAHOO.util.Dom.inDocument(document.getElementById('id_flecha')))
            document.getElementById('id_flecha').className = 'ParDown';
        if (altura!=null) {
            attributes = {
                width: {
                    to: anchura
                },
                height: {
                    to: altura
                }
            };
        }
        else {
            attributes = {
                width: {
                    to: anchura
                }
            };
        }



        if (accion=="cerrar") realizar=false;
    }else{
        if(YAHOO.util.Dom.inDocument(document.getElementById('id_flecha')))
            document.getElementById('id_flecha').className = 'ParUp';
        if (altura!=null) {
            attributes = {
                width: {
                    to: anchura
                },
                height: {
                    to: 0
                }
            };
        }
        else {
            attributes = {
                width: {
                    to: anchura
                }
            };
        }


        if (accion=="abrir") realizar=false;
    }
    if (realizar) {
        var anim = new YAHOO.util.Anim(_id, attributes, 0.5, YAHOO.util.Easing.backOut);
        var mostrarInterno = function(){
            document.getElementById('Cont'+_id).style.visibility= 'visible';
            document.getElementById('Cont'+_id).style.display='block';
        }
        var ocultarInterno = function(){
            document.getElementById('Cont'+_id).style.visibility= 'hidden';
            document.getElementById('Cont'+_id).style.display='none';
        }
        if(abierto == "false") anim.onComplete.subscribe(mostrarInterno);
        else anim.onStart.subscribe(ocultarInterno);

        anim.animate();
    }
};


var mdirector_set_menu_permiso = function(menu_id,permiso){
    var url = "/gestion/set-menu-permiso/menu_id/" + menu_id + "/per_id/" + permiso.value;
    var request = YAHOO.util.Connect.asyncRequest('POST', url);
};

var mdirector_set_menu_recurso = function(menu_id,recurso){
    var url = "/gestion/set-menu-recurso/menu_id/" + menu_id + "/rec_id/" + recurso.value;
    var request = YAHOO.util.Connect.asyncRequest('POST', url);
};

var mdirector_set_menu_url = function(menu_id,men_url){
    var url = "/gestion/set-menu-url/menu_id/" + menu_id;
    var request = YAHOO.util.Connect.asyncRequest('POST', url,null,"men_url="+men_url.value);
};
var mdirector_set_menu_active = function(menu_id,men_active){
    var checked=(men_active.checked)?1:0;
    var url = "/gestion/set-menu-active/menu_id/" + menu_id + "/men_active/" + checked;
    var request = YAHOO.util.Connect.asyncRequest('POST', url);
};
var mdirector_set_menu_order = function(menu_id,men_order){
    var url = "/gestion/set-menu-order/menu_id/" + menu_id+"/men_order/"+men_order.value;
    var request = YAHOO.util.Connect.asyncRequest('POST', url);
};


var mdirector_tooltips = function(){
    var clickables = YAHOO.util.Dom.getElementsByClassName("Click","td","personalizacion")
    var myTooltip = new YAHOO.widget.Tooltip("myTooltip", {
        context:clickables,
        text:"Haz click aqui para personalizar el parametro."
    } );
}

var mdirector_ShowHidde_div = function(divid) {
    if (document.getElementById(divid).style.visibility=='hidden'){
        document.getElementById(divid).style.visibility = 'visible';
        document.getElementById(divid).style.display = 'block';
    }else{
        document.getElementById(divid).style.visibility = 'hidden';
        document.getElementById(divid).style.visibility = 'none';
    }
}

function md_alert(message) {
    var mbody;
    mbody = '<div style="margin-top:10px;margin-left:10px;">';
    mbody = mbody + '<table width=325 border=0>';
    mbody = mbody + '<tr><td valign=top align=left width=50><img src="/images/privada/md_alert.gif" width=32 height=32></td><td width=275 align=left valign=top>'+message+'</td></tr>';
    mbody = mbody + '<tr><td colspan=2 align=center height=30><input style="width:100px;" class="BTN FondoCOLOR1" OnClick="YAHOO.mdirector.panel.msgalert.destroy();return false;" type=button name="botonaceptalert" value="Aceptar"></td></tr>';
    mbody = mbody + '</table>';
    mbody = mbody + '</div>';

    //var height=120;
    //if (message>100) height=140;
    if (typeof(YAHOO.mdirector.panel.msgalert)!='undefined') YAHOO.mdirector.panel.msgalert.destroy();

    YAHOO.mdirector.panel.msgalert = new YAHOO.widget.Panel("msgalert",
    {
        zindex:100,
        width:"350px",
        height:"120px",
        close:true,
        visible:false,
        draggable:true,
        modal:false,
        constraintoviewport:true,
        fixedcenter:true,
        underlay:"matte"
    });

    YAHOO.mdirector.panel.msgalert.setHeader('mdirector.com');
    YAHOO.mdirector.panel.msgalert.setBody(mbody);
    YAHOO.mdirector.panel.msgalert.render(document.body);
    YAHOO.mdirector.panel.msgalert.show();
}


function md_confirm(message,okexecode) {
    var mbody;

    //okhandler();

    mbody = '<div style="margin-top:10px;margin-left:10px;">';
    mbody = mbody + '<table width=425 border=0>';
    mbody = mbody + '<tr><td valign=top align=left width=50><img src="/images/privada/md_alert.gif" width=32 height=32></td><td width=375 align=left valign=top>'+message+'</td></tr>';
    mbody = mbody + '<tr><td colspan=2 align=center height=30><input style="width:100px;" class="BTN FondoCOLOR1" OnClick="YAHOO.mdirector.panel.msgalert.destroy();'+okexecode+';return false;" type=button name="botonaceptconfirm" value="Aceptar">&nbsp;<input style="width:100px;" class="BTN FondoCOLOR1" OnClick="YAHOO.mdirector.panel.msgalert.destroy();return false;" type=button name="botoncancelconfirm" value="Cancelar"></td></tr>';
    mbody = mbody + '</table>';
    mbody = mbody + '</div>';

    //var height=120;
    //if (message>100) height=140;
    if (typeof(YAHOO.mdirector.panel.msgalert)!='undefined') YAHOO.mdirector.panel.msgalert.destroy();

    YAHOO.mdirector.panel.msgalert = new YAHOO.widget.Panel("msgalert",
    {
        zindex:100,
        width:"450px",
        height:"200px",
        close:true,
        visible:false,
        draggable:true,
        modal:false,
        constraintoviewport:true,
        fixedcenter:true,
        underlay:"matte"
    });

    YAHOO.mdirector.panel.msgalert.setHeader('mdirector.com');
    YAHOO.mdirector.panel.msgalert.setBody(mbody);
    YAHOO.mdirector.panel.msgalert.render(document.body);
    YAHOO.mdirector.panel.msgalert.show();
}

var validaciones = function(){
    var _1=/^[a-zA-Z_ÁÉÍÓÚáéíóúàèìòùÀÈÌÒÙ`´ÜüÑñç\s]+$/;
    var _2=/^[a-zA-Z0-9àèìòùÀÈÌÒÙ_]+$/;
    var _3=/^([\w]+)(.[\w]+)*@([\w-]+\.){1,5}([A-Za-z]){2,4}$/;
    var _4=/(((https?)|(ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;
    var _5=/^\s+|\s+$/g;
    var _6=/^(0?[1-9]|[12][0-9]|3[01])[- /.](0?[1-9]|1[012])[- /.](19|20)[0-9]{2}$/;
    var _7=/^\b\d+\b/;
    return {
        "email":function(v){
            return _3.test(v);
        },
        "emailText":"El campo e-mail deber&iacute;a ser una direccion de e-mail con el formato \"usuario@dominio.com\"",
        "emailMask":/[a-z0-9_\.\-@]/i,
        "url":function(v){
            return _4.test(v);
        },
        "urlText":"This field should be a URL in the format \"http:/"+"/www.domain.com\"",
        "alpha":function(v){
            return _1.test(v);
        },
        "alphaText":"Este campo solo puede contener letras.",
        "alphaMask":/[a-z_]/i,
        "alphanum":function(v){
            return _2.test(v);
        },
        "alphanumText":"Este campo solo puede contener letras, numeros.",
        "alphanumMask":/[a-z0-9_]/i,
        "trim":function(v){
            return String(v).replace(_5,"");
        },
        "date":function(v){
            return _6.test(v);
        },
        "dateText":"El campo fecha de nacimiento no cumple con el formato dd-mm-yyyy o dd/mm/yyyy.",
        "num":function(v){
            return _7.test(v);
        },
        "numText":"Existe un campo numerico con error.",
        "sizeMax":function(v,tamanio){
            return v.length > tamanio;
        },
        "sizeMin":function(v,tamanio){
            return v.length < tamanio;
        }
    };

}();
var mdirector_loadimage = function(_id,url)
{
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            if (document.getElementById(_id)!=undefined & document.getElementById("informe_accion_listados")!=undefined) {
                document.getElementById(_id).src = url;
                grafica = document.getElementById("informe_accion_listados").innerHTML;
            }
        }
    }
    var callback = {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('GET', url, callback );
};






var global_actual_stat_image=1;
var stats_images = new Array();

function prev_url(){
    if (stats_images[global_actual_stat_image-1] != undefined) {
        global_actual_stat_image--;
        change_image();
    }
}

function next_url(){
    if (stats_images[global_actual_stat_image+1] != undefined) {
        global_actual_stat_image++;
        change_image();
    }
}
function change_image() {
    if (stats_images[global_actual_stat_image-1] != undefined) document.getElementById("prev_button").disabled = false;
    else document.getElementById("prev_button").disabled = true;
    if (stats_images[global_actual_stat_image+1] != undefined) document.getElementById("next_button").disabled = false;
    else document.getElementById("next_button").disabled = true;

//    document.getElementById("url_stat_image").style.display = "none";
//    document.getElementById("url_stat_image").style.visibility = "hidden";
    document.getElementById("actual_link").innerHTML = "Grafico Link " + global_actual_stat_image;
    var puntos = (stats_images[global_actual_stat_image]["url"].length > 75 )? "..":"";
    document.getElementById("actual_url").innerHTML = "<a href='" + stats_images[global_actual_stat_image]["url"] +"' target='_blank'>"+ stats_images[global_actual_stat_image]["url"].substring(0,75) +puntos+ "</a>";
    document.getElementById("url_stat_image").src = stats_images[global_actual_stat_image]["image"];
//    document.getElementById("url_stat_image").style.display = "block";
//    document.getElementById("url_stat_image").style.visibility = "visible";
}

var md_seleccion_pers = function(e){

    var objeto = YAHOO.util.Event.getTarget(e);
    if(objeto.checked == true){
        YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName("Cinvisible","div","control_creatividad"),"Cinvisible","Cvisible");
    //document.getElementById('SEC_IDE_ID').selectedIndex = document.getElementById('sector_id').value;
    }else{
        var indice = document.getElementById('SEC_IDE_ID').selectedIndex;
        YAHOO.util.Dom.replaceClass(YAHOO.util.Dom.getElementsByClassName("Cvisible","div","control_creatividad"),"Cvisible","Cinvisible");
        document.getElementById('TRATAM_IDE_ID').selectedIndex = 0;
        document.getElementById('PERSON_IDE_ID').selectedIndex = 0;
        document.getElementById('SEC_IDE_ID').selectedIndex = 18;
        PlantillasGestion_LoadCategIdeasOnSectorChange('selectcategdiv');
        PlantillasGestion_LoadIdeasOnCategoryChange('selectideasdiv');
    }
}
















function number_format (number, decimals, dec_point, thousands_sep)
{
    var exponent = "";
    var numberstr = number.toString ();
    var eindex = numberstr.indexOf ("e");
    if (eindex > -1)
    {
        exponent = numberstr.substring (eindex);
        number = parseFloat (numberstr.substring (0, eindex));
    }

    if (decimals != null)
    {
        var temp = Math.pow (10, decimals);
        number = Math.round (number * temp) / temp;
    }
    var sign = number < 0 ? "-" : "";
    var integer = (number > 0 ?
        Math.floor (number) : Math.abs (Math.ceil (number))).toString ();

    var fractional = number.toString ().substring (integer.length + sign.length);
    dec_point = dec_point != null ? dec_point : ".";
    fractional = decimals != null && decimals > 0 || fractional.length > 1 ?
    (dec_point + fractional.substring (1)) : "";
    if (decimals != null && decimals > 0)
    {
        for (i = fractional.length - 1, z = decimals; i < z; ++i)
            fractional += "0";
    }

    thousands_sep = (thousands_sep != dec_point || fractional.length == 0) ?
    thousands_sep : null;
    if (thousands_sep != null && thousands_sep != "")
    {
        for (i = integer.length - 3; i > 0; i -= 3)
            integer = integer.substring (0 , i) + thousands_sep + integer.substring (i);
    }

    return sign + integer + fractional + exponent;
}


function pago_change_pack(_object) {
    if (_object.value==0) {
        document.getElementById("div_datos_tarjeta").style.visibility="hidden";
    } else {
        document.getElementById("div_datos_tarjeta").style.visibility="visible";
        document.getElementById("Importe").value = tarifas_prices[_object.value] + " €";
        document.getElementById("pack_name").innerHTML = tarifas_names[_object.value];
    }
}
function pago_ValidaFormularioSMS() {
    var expReg = /W/gi;
    var msg="";

    var idProducto = document.getElementById("idProductos").value.replace(expReg, "");

    /* YA NO SE PIDE EL NUMERO DE TARJETA
  var NumeroTarjeta = document.getElementById("NumeroTarjeta").value.replace(expReg, "");
  var TipoTarjeta = document.getElementById("TipoTarjeta").value.replace(expReg, "");
  var MesCaducaTarjeta = document.getElementById("MesCaducaTarjeta").value.replace(expReg, "");
  var AnualCaducaTarjeta = document.getElementById("AnualCaducaTarjeta").value.replace(expReg, "");
  var TitularTarjeta = document.getElementById("TitularTarjeta").value.replace(expReg, "");

  if (MesCaducaTarjeta==0) msg+="- Mes de Caducidad\n";
  if (AnualCaducaTarjeta==0) msg+="- Año de Caducidad\n";
  if (MesCaducaTarjeta!=0 & AnualCaducaTarjeta!=0) {
    today = new Date();
    expiry = new Date(AnualCaducaTarjeta,MesCaducaTarjeta-1);
    if (today.getTime() > expiry.getTime())
      msg+="- Tarjeta Caducada\n";
  }
  var valida = validarTarjeta(NumeroTarjeta);
  if (valida!=true) msg+=valida +"\n";
  if (TipoTarjeta==0) msg+="- Tipo de tarjeta\n";
  if (TitularTarjeta=="") msg+="- Titular\n";

  if (msg!="") {alert(msg); return false;}
  else sendForm("/account/sms-buy/","form_sms","contenido","Comprobando datos..");
  */

    sendForm("/account/sms-buy/","form_sms","contenido","Comprobando datos..");


}

function validarTarjeta(numero_tarjeta) {
    //Limpiamos el número de tarjeta  de posibles espacios en blanco y guiones...
    //var expReg = /\- /gi;
    var numero = numero_tarjeta.replace(/[W\-]/gi, "");
    //Chequeamos que el numero entrado tenga formato numérico...
    if (numero=="") return " - Indique el número de tarjeta de crédito.";
    if (isNaN(numero))
        return " - El número de la tarjeta de crédito no tiene formato numérico.";


    var suma = 0;
    for (i = numero.length; i > 0; i--) {

        //Si la posición es impar
        if (i % 2 == 1) {
            var doble = "" + (parseInt(numero.substring(i - 1, i)) * 2);

            //Si el doble tiene más dos cifras (o sea es mayor que 9)
            if (doble.length == 2) {
                doble = parseInt(doble.substring(0,1)) + parseInt(doble.substring(1,2));
            }
            suma += parseInt(doble);
        }
        //Si la posición es par
        else {
            suma += parseInt(numero.substring(i - 1, i));
        }
    }

    //Si la suma total no es divisible por 10 entonces el número no es válido
    if (suma % 10 != 0) {
        return " - El número de la tarjeta de crédito no es válido.";
    }

    // VALIDACIONES AVANZADAS
    var numero_izq  = numero.substr(0, 4);
    var numero_derecha = numero.substr(-4);
    var longitud_correcta;
    var longitud = numero.length;
    if (numero_izq>=4000 && numero_izq <=4999) {
        // VISA
        if (longitud>14) longitud_correcta=16;
        else longitud_correcta=13;
    }
    else if (numero_izq>=5100 && numero_izq <=5599) {
        // MASTERCARD
        longitud_correcta = 16;
    } else if (
        (numero_izq>=3400 && numero_izq <=3499) ||
        (numero_izq>=3700 && numero_izq <=3799)
        ) {
        // AMERICAN EXPRESS
        longitud_correcta = 15;
    } else return " - El número no es válido ("+numero_izq+"-xxxx-xxxx-xxxx)\n";

    //Chequeamos que el numero tenga el numero de digitos adecuado
    if (longitud!=longitud_correcta)
        return " - El número de dígitos en la tarjeta de crédito es incorrecto.";

    //En cualquier otro caso el número es válido
    return true;
}
function selectAll() {
    var seleccion = document.forms['formularioPdf'].getElementsByTagName('input');
    if(document.getElementById("campo_ALL").checked == true){
        for(var i = 0 ; i < seleccion.length ; i++){
            if(seleccion[i].name != 'campo[ALL]'){
                seleccion[i].checked = true;
            }
        }
    }else{
        for(var i = 0 ; i < seleccion.length ; i++){
            if(seleccion[i].name != 'campo[ALL]'){
                seleccion[i].disabled = false;
                seleccion[i].checked=false;
            }

        }
    }
/*document.getElementById("campo_SEC").checked=true;
  document.getElementById("campo_CAR").disabled=true;
  document.getElementById("campo_EST").disabled=disable;
  document.getElementById("campo_ZON").disabled=disable;
  document.getElementById("campo_CON_EMAIL").disabled=disable;
  document.getElementById("campo_CON_TELEFONO").disabled=disable;
  document.getElementById("campo_CON_MOVIL").disabled=disable;
  document.getElementById("campo_CON_EMPRESA").disabled=disable;
  document.getElementById("campo_SEX").disabled=disable;
  document.getElementById("campo_CON_FECHA_NAC").disabled=disable;
  document.getElementById("campo_CON_NOMBRE").disabled=disable;
  document.getElementById("campo_CON_APELLIDO1").disabled=disable;
  document.getElementById("campo_CON_APELLIDO2").disabled=disable;
  document.getElementById("campo_NUM_HIJOS").disabled=disable;
  document.getElementById("campo_DIRECCION").disabled=disable;
  document.getElementById("campo_CON_CP").disabled=disable;
  document.getElementById("campo_DEP").disabled=disable;
  document.getElementById("campo_CON_LOCALIDAD").disabled=disable;
  */
}

var mdirector_enviarDatosFormulario = function(formid,sUrl){
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
        }
    }
    var callback = {
        success:handleSuccess
    };
    var formObject = document.getElementById(formid);
    YAHOO.util.Connect.setForm(formObject);
    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback);

}
var md_borrarContactos = function(signature){
    var handleYes = function(){
        var handleSuccess = function(o){
            if(o.responseText !== undefined){
                var respuesta = o.responseText;
                document.getElementById('contenido').innerHTML = respuesta;
                overlay_information_hide();
            }
            YAHOO.mdirector.panel.simpledialog1.hide();
        }
        var callback =
        {
            success:handleSuccess
        };
        overlay_information_show("Borrando Contactos");
        var callback = {
            success:handleSuccess
        };
        var request = YAHOO.util.Connect.asyncRequest('POST', "/contacto/delete",  callback,"signature="+signature);

    }
    var handleNo = function(){
        YAHOO.mdirector.panel.simpledialog1.hide();
        document.getElementById('boton_upload').className = "Cvisible";
        if( document.getElementById('boton_deleteAllContacts') != null )
            document.getElementById('boton_deleteAllContacts').className = "Cvisible";
        document.getElementById('file_source').className = "Cvisible";
    }
    YAHOO.mdirector.panel.simpledialog1 =
    new YAHOO.widget.SimpleDialog("simpledialog1",
    {
        width: "300px",
        fixedcenter: true,
        visible: false,
        draggable: false,
        close: true,
        text: "¿Esta seguro que quiere borrar todos sus contactos?",
        icon: YAHOO.widget.SimpleDialog.ICON_HELP,
        constraintoviewport: true,
        modal:true,
        underlay:"matte",
        zindex:12000,
        buttons: [ {
            text:"Si",
            handler:handleYes,
            isDefault:true
        },
        {
            text:"No",
            handler:handleNo
        } ]

    } );
    document.getElementById('boton_upload').className = "Cinvisible";
    if( document.getElementById('boton_deleteAllContacts') != null )
        document.getElementById('boton_deleteAllContacts').className = "Cinvisible";
    document.getElementById('file_source').className = "Cinvisible";
    YAHOO.mdirector.panel.simpledialog1.setHeader("Confirmaci&oacute;n")
    YAHOO.mdirector.panel.simpledialog1.render(document.body);
    YAHOO.mdirector.panel.simpledialog1.show();
}

resetearForm = {
    limpiarText:function(elementos){
        for(i = 0 ; i < elementos.length ;i++){
            elementos[i].value = "";
        }
    },
    limpiarCombos:function(elementos){
        var comprobarValue = function(objeto){
            return (objeto.value == 0);
        }
        for(i = 0 ; i < elementos.length ; i++){
            var elemento = YAHOO.util.Dom.getElementsBy(comprobarValue,"option",elementos[i].id);
            if( elemento[0] != undefined ) elemento[0].selected = 'true';
        }
    }
};

var verCamposDB = function(){
    YAHOO.mdirector.container.paneln = new YAHOO.widget.Panel("panel1", {
        width:"300px",
        close:true,
        zindex:1500,
        visible:true,
        draggable:true,
        modal:true,
        constraintoviewport:true,
        fixedcenter:true,
        underlay:"matte",
        effect:{
            effect:YAHOO.widget.ContainerEffect.FADE,
            duration:0.5
        }
    } );
    YAHOO.mdirector.container.paneln.setHeader("Informacion");
    YAHOO.mdirector.container.paneln.setBody("<span style='font-size:12px'>Son nombres de parametros reservados:</span><p class='Mod_Texto1 Negrita' style='margin-left:12px;margin-top:12px;font-size:10px;'>NOMBRE, APELLIDO1, APELLIDO2, CPOSTAL, SEXO, EMPRESA, SECTOR, CARGO, ESTADO CIVIL, PROVINCIA, TELEFONO, NUMERO HIJOS, EMAIL, MOVIL, DIRECCION, LOCALIDAD, FECHA NACIMIENTO, DEPARTAMENTO</p>");
    YAHOO.mdirector.container.paneln.render(document.body);
    //YAHOO.mdirector.container.panel1.render();
    YAHOO.mdirector.container.paneln.show;
}

var registroDuplicado = function(){
    YAHOO.mdirector.container.panel2 = new YAHOO.widget.Panel("panel1", {
        width:"300px",
        close:true,
        zindex:1500,
        visible:true,
        draggable:true,
        modal:true,
        constraintoviewport:true,
        fixedcenter:true,
        underlay:"matte",
        effect:{
            effect:YAHOO.widget.ContainerEffect.FADE,
            duration:0.5
        }
    } );
    YAHOO.mdirector.container.panel2.setHeader("Informacion");
    YAHOO.mdirector.container.panel2.setBody("<span style='font-size:12px'>Registro duplicado: es áquel que tiene los mismos datos de correo electrónico, móvil y dirección postal. Si alguno de esos datos es diferente entre los dos registros, se importarán ambos."+
        " En ese caso, cuando vaya a realizar una campaña de e mail, si hay dos contactos con el mismo correo, sólo lo enviará una vez."+
        "</p>");
    YAHOO.mdirector.container.panel2.render(document.body);
    //YAHOO.mdirector.container.panel1.render();
    YAHOO.mdirector.container.panel2.show;
}


function isInt(x) {
    var y=parseInt(x);
    if (isNaN(y)) return false;
    return x==y && x.toString()==y.toString();
}

function update_param_visibility(emp_par_id,visible) {
    var visible_txt= visible?"1":"0";
    YAHOO.util.Connect.asyncRequest('POST', "/account/customize-param-visibility/emp_par_id/"+emp_par_id+"/visible/"+visible_txt);
}


function Eliminar_Campo_Libre(par_id, emp_id) {
    var sUrl = "/account/customize-param-confirm-delete/?par_id="+par_id+"&emp_id="+emp_id;
    mostrarCargando("Cargando formulario");
    var handleSuccess = function(o){
        if(o.responseText !== undefined){
            var respuesta = o.responseText;
            var f = document.forms;
            YAHOO.mdirector.panel.panel_group_delete = new YAHOO.widget.Panel("confirmarcancelar_eliminar_parametrolibre",
            {
                zindex:100,
                width:"400px",
                height:"150px",
                close:true,
                visible:false,
                draggable:true,
                modal:true,
                constraintoviewport:true,
                fixedcenter:true,
                underlay:"matte",
                effect:{
                    effect:YAHOO.widget.ContainerEffect.FADE,
                    duration:0.5
                }
            }
            );
            YAHOO.mdirector.panel.panel_group_delete.setHeader("Eliminar Parámetro Libre");
            YAHOO.mdirector.panel.panel_group_delete.setBody(respuesta);
            YAHOO.mdirector.panel.panel_group_delete.render(document.body);
            ocultarCargando();
            YAHOO.mdirector.panel.panel_group_delete.show();

        }
    }
    var callback =
    {
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback);


}

function ejecutaBorradoParametroLibre (par_id, emp_id)
{

    sUrl = "/account/customize-param-delete/?par_id=" + par_id + "&emp_id=" + emp_id;
    // alert(sUrl);
    //  mostrarCargando("Actualizando...", "1500");
    var handleSuccess = function(o) {
        if(o.responseText !== undefined){
            eval(o.responseText);

            if (o.responseText==1) {
                overlay_information_show('Actualizado correctamente!');
                setTimeout("overlay_information_hide()",1000);
            }
            else {
                overlay_information_show('Error de actualizaci&oacute;n!');
                setTimeout("overlay_information_hide()",1000);
            }

        }
    }

    var callback ={
        success:handleSuccess
    };
    var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callback);
    mdirector_loadpage('/account/customize','contenido');

}



/*
        var Event = YAHOO.util.Event;
        var pb;

        YAHOO.util.Event.onAvailable('pb', function () {
                // This is all that is required to set up the progress bars.
                // First you call the constructor and provide the settings for those attributes you want their defaults overridden
                // Then you call render and tell it where it is you want it rendered.
                // You can also create the instance, change settings explicitly (as in the second bar with the height) and then render.
                // I've provided id's in each of the bars so that the styles above could attach to each bar separately.

                pb = new YAHOO.widget.ProgressBar({height:'20px', width: '300px', barColor:'orange',backColor:'#ededed',border:'thin solid black'});
                alert(pb);
                pb.render('pb');

                // progress text
                var settingEl = YAHOO.util.Dom.get('setting');
                // This one shows it while moving
                pb.on('changingEvent',function (value) {
                        settingEl.innerHTML = ' importado ' + value + ' % ';
                });
                // This will show at the end (even if there is no animation at all)
                pb.on('completeEvent',function (value) {
                        settingEl.innerHTML = ' importado ' + value + ' % ';
                });
                Event.on('setValue','click',function() {
                        var newVal = parseInt(Dom.get('newValue').value,10);
                        pb.set('value',newVal);
                });
                Event.on('newValue','change',function() {
                        var newVal = parseInt(Dom.get('newValue').value,10);
                        pb.set('value',newVal);
                });

        });

*/


function CambiarDisplay(id) {
    if (!document.getElementById)
        return false;
    fila = document.getElementById(id);

    if (fila.style.display != "none")
        fila.style.display = "none";
    else
        fila.style.display = "";
    return true;
}

function CambiarDisplayPorIndicacion(id,oper) {
    if (!document.getElementById)
        return false;
    fila = document.getElementById(id);

    if (oper == "cerrar")
        fila.style.display = "none";
    else if (oper == "abrir")
        fila.style.display = "";
    return true;
}
