ie5 = (document.all && document.getElementById);
ns6 = (!document.all && document.getElementById);

//****************************************************************
//Funciones de socios
//****************************************************************
function ValidaError(error) {
	if (error > 0)  window.alert("Error, póngase en contacto con la asistencia técnica");
	return
}

//****************************************************************
//Funcion de control de fechas
//****************************************************************
function ObtenerFecha(diames, diasemana, idioma) {
  var dia_cas = ["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado"];
  var dia_cat = ["Diumenge","Dilluns","Dimarts","Dimecres","Dijous","Divendres","Dissabte"];
  var dia_ing = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
  
  var mes_cas = ["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"];
  var mes_cat = ["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"];
  var mes_ing = ["january","february","march","april","may","june","july","august","september","october","november","december"]
  
  switch (idioma) {
    case 1:
		//Castellano
		return dia_cas[diasemana-1] +", "+ diames;
		break;
	case 2:
		//Catalan
		return dia_cat[diasemana-1] +", "+ diames;
		break;
	case 3:
		//English
		return dia_ing[diasemana-1] + " " + diames; 
		break;
  }
}
//**************************************************************************
//Funciones de rollover
//**************************************************************************
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_opaco(obj,tipo) { 
		document.getElementById(obj).style.MozOpacity=tipo/100;
		document.getElementById(obj).style.opacity=tipo/100;
		document.getElementById(obj).style.filter='Alpha(Opacity='+tipo+')';
	return


}

//***********************************************************************************
// Funciones de control de navegacion
//***********************************************************************************
function AbreVentana(tipo,valor,ancho,alto, arriba, izquierda) {
 	switch(tipo) {
 		case "A":
			winprops = "height="+alto+",width="+ancho+",top=" + arriba + ",left=" + izquierda + ",toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no";
			win = window.open(valor,'Login',winprops);
			win.opener = window;
			win.focus();
			break;
 		case "B":
			winprops = "height="+alto+",width="+ancho+",top=" + arriba + ",left=" + izquierda + ",toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no";
			win = window.open(valor,'Visor',winprops);
			win.opener = window;
			win.focus();
			break;
   		default:
			alert("Error en la aplicacion,");
  	}
    
}

//**************************************************************************
//Funciones de la cabecera
//**************************************************************************
function VerSubmenu(opcion, pagina) {
	EstadoInicial(pagina);
	switch (opcion) {
		case 1:
			document.base.src="/99_auxiliares/cabecera/cab_boto_azul_asoc"+pagina+".jpg";
			document.getElementById("asoctxt").style.visibility="visible";
			document.getElementById("asocazul").style.visibility="visible";
			break;
		case 2:
			document.base.src="/99_auxiliares/cabecera/cab_boto_azul_magaz"+pagina+".jpg";
			document.getElementById("magaztxt").style.visibility="visible";
			document.getElementById("magazazul").style.visibility="visible";			
			break;
		case 3:
			document.base.src="/99_auxiliares/cabecera/cab_boto_azul_dia"+pagina+".jpg";
			document.getElementById("diatxt").style.visibility="visible";
			document.getElementById("diaazul").style.visibility="visible";			
	}
}

function EstadoInicial(pagina) {
	document.base.src="/99_auxiliares/cabecera/cab_boto_negro"+pagina+".jpg";
	document.getElementById("asoctxt").style.visibility="hidden";
	document.getElementById("asocazul").style.visibility="hidden";
	document.getElementById("magaztxt").style.visibility="hidden";
	document.getElementById("magazazul").style.visibility="hidden";			
	document.getElementById("diatxt").style.visibility="hidden";
	document.getElementById("diaazul").style.visibility="hidden";			
}


//***************************************************************************
//Funciones generales de control de capas
//***************************************************************************
var tiempo_in;

function BorrarCapa() {
	var a = BorrarCapa.arguments;
	var i;
	for (i=0; i<a.length; i++) {
		if (ie5) document.getElementById(a[i]).filters.alpha.opacity = 0;
		if(ns6) document.getElementById(a[i]).style.MozOpacity = 0;
    	document.getElementById(a[i]).style.visibility="hidden";
	}
}

function fadeIn(elemento, inicio, fin) {
	document.getElementById(elemento).style.visibility = "visible";
	clearTimeout(tiempo_in);
	if(inicio < fin){
		inicio+=5;
		if (ie5) document.getElementById(elemento).filters.alpha.opacity = inicio;
		if(ns6) document.getElementById(elemento).style.MozOpacity = inicio/100;
		tiempo_in=setTimeout("fadeIn('"+ elemento + "',"+ inicio + ","+ fin + ")", 0);
	}
}

function fadeOut(elemento,inicio, fin) {
	if(inicio > fin){
		inicio-=5;
		if (ie5) document.getElementById(elemento).filters.alpha.opacity = inicio;
		if(ns6) document.getElementById(elemento).style.MozOpacity = inicio/100;
		setTimeout("fadeOut('"+ elemento + "',"+ inicio + "," + fin + ")", 0);
	} else {
		document.getElementById(elemento).style.visibility = "hidden";
	}
}

//***********************************************************************************
//Funciones de control de flash
//*****************************************************************************
function GoTo(objeto,frame) {
		objeto.GotoFrame(frame);
}

function GoToPlay(objeto,frame) {
	GoTo(objeto,frame);
	objeto.Play();
}	
//***********************************************************************************
//Funciones de control de DOM
//*****************************************************************************
var getElementsByClassName = function (className, tag, elm){
    if (document.getElementsByClassName) {
        getElementsByClassName = function (className, tag, elm) {
            elm = elm || document;
            var elements = elm.getElementsByClassName(className),
                    nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
                    returnElements = [],
                    current;
            for(var i=0, il=elements.length; i<il; i+=1){
                    current = elements[i];
                    if(!nodeName || nodeName.test(current.nodeName)) {
                            returnElements.push(current);
                    }
            }
            return returnElements;
        };
	}
	else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	}
	else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};
/* ***************************************************************************
* ****************************************************************************/
function PintarAjaxHTML(opcion,capa,parametros){
    switch(opcion){
        case 4://consulta de campana
            AjaxPostSincrono("/servlet/srvlet_pintarhtml","opcion="+opcion+"&"+parametros,"Pintar("+"_objetus.responseText,'"+capa+"');PintarAjaxHTML(7,'envios','"+parametros+"')","");
            break;
        case 5:
          AjaxPost("/servlet/srvlet_pintarhtml","opcion="+opcion+"&"+parametros,"Pintar("+"_objetus.responseText,'"+capa+"');PintarAjaxHTML(8,'grupos','id_padre=0')","");
        break;
       case 6://busqueda de usuarios
       case 19://lista de contactos para consultar
          AjaxPostSincrono("/servlet/srvlet_pintarhtml","opcion="+opcion+"&"+parametros,"Pintar("+"_objetus.responseText,'"+capa+"')","");
          break;
        case 1://lista de campanas de email:
        case 2://alta de campana
        case 3://carga formulario de plantilla
        case 4://consulta de campana
        case 5://mostrar envio
        case 7://dibuja fechas de envios
        case 10://dibuja arbol de usuarios
        case 11://alta de categoria
        case 13://lista de contactos
        case 14://nuevo contacto
        case 15://editar contacto
        case 17://listar contactos de una campana y fecha
        case 18://formulario de busquedda de contacto
        case 20://lista contactos con mismo id
            AjaxPost("/servlet/srvlet_pintarhtml","opcion="+opcion+"&"+parametros,"Pintar("+"_objetus.responseText,'"+capa+"')","");
        break;
        case 12://edicion de categoria
            AjaxPost("/servlet/srvlet_pintarhtml","opcion="+opcion+"&"+parametros,"Pintar("+"_objetus.responseText,'"+capa+"');PintarAjaxHTML(13,'lista_contactos','"+parametros+"')","");
        break;
        case 8://arbol de envio de campana
        case 9://arbol de alta de usurios
            AjaxPost("/servlet/srvlet_pintarhtml","opcion="+opcion+"&"+parametros,"Pintar("+"_objetus.responseText,'"+capa+"');nitobi.loadComponent('lista')"  ,"");
            break;
        case 16:
            AjaxPost("/servlet/srvlet_pintarhtml","opcion="+opcion+"&"+parametros,"Pintar("+"_objetus.responseText,'"+capa+"');document.getElementById('sloader').innerHTML='';document.getElementById('busqueda_usuarios').value=''; PintarAjaxHTML(8,'grupos','id_padre=0')"  ,"document.getElementById('sloader').innerHTML=''");           
            break;
        case 21:
            AjaxPost("/servlet/srvlet_pintarhtml","opcion="+opcion+"&"+parametros,"Pintar("+"_objetus.responseText,'"+capa+"');document.getElementById('sloader').innerHTML='';"  ,"");           
        break;
    }
}


function Borrar(id){
    document.getElementById(id).innerHTML="";
}
/**************************************************************************
**************************************************************************/
function EnvioOk(){
    alert("La operación se ha realizado correctamente"); 
}
/**************************************************************************
**************************************************************************/
function EnvioError(){
    alert("La operación no se ha realizado correctamente. Revise los datos y si el error continúa, póngase en contacto con el webmaster"); 
}
/**************************************************************************
**************************************************************************/
function Pintar(html,id){
    document.getElementById(id).innerHTML=html;
}
/**************************************************************************
**************************************************************************/
function current(id,div){
    element_menu=document.getElementById(div).getElementsByTagName("a");
    //Deselecciona todas las opciones del menu principal
    for(j=0;j<element_menu.length;j++){
        element_menu[j].className="";
    }
    //selecciona la indicada
    element_menu=document.getElementById(id).className="current";
}
/**************************************************************************
**************************************************************************/
 function buscarLabelMarcado(capa){
       element_menu=document.getElementById(capa).getElementsByTagName("a");

        for(j=0;j<element_menu.length;j++){
            if(element_menu[j].className=="current"){
                return element_menu[j].innerHTML;
            }
        }
     }
/**************************************************************************
**************************************************************************/
 function buscarIdMarcado(capa){
       element_menu=document.getElementById(capa).getElementsByTagName("a");
        for(j=0;j<element_menu.length;j++){
            if(element_menu[j].className=="current"){
                return element_menu[j].getAttribute("id");
            }
        }
        return 0;
}

function AbrirPopup(url,width,height,titulo){
        Shadowbox.clearCache();
        Shadowbox.open({
        content:  url,
        player:     "iframe",
        title:     titulo,
        height:    height,
        width:      width
        });
}