//Definim els arrays
menu_pestanyes = new Array();
menu_pestanyes['id'] = new Array();
menu_pestanyes['nom'] = new Array();
menu_pestanyes['url'] = new Array();
menu_pestanyes['color'] = new Array();
menu_pestanyes['perfiles'] = new Array();

menu_opcions = new Array();
menu_opcions['id'] = new Array();
menu_opcions['pertany_id'] = new Array();
menu_opcions['nom'] = new Array();
menu_opcions['url'] = new Array();
menu_opcions['target'] = new Array();

menu_perfils = new Array();
menu_perfils['empresa'] = new Array();
menu_perfils['medico'] = new Array();
menu_perfils['farmaceutico'] = new Array();
menu_perfils['veterinario'] = new Array();
menu_perfils['particular'] = new Array();
menu_perfils['areas'] = new Array();


// Funció per omplir la matriu de manera més clara
function menu_novaOpcio(id, pertany_id, nom, url, target) {
	var index = menu_opcions['id'].length;
	menu_opcions['id'][index] = id;
	menu_opcions['pertany_id'][index] = pertany_id;
	menu_opcions['nom'][index] = nom;
	menu_opcions['url'][index] = url;
	menu_opcions['target'][index] = target;
}

function menu_genHTML_pestanyes (perfil,d1,d2,d3,d4,d5,comentaris,vistacodi) {
	if (vistacodi) {
		var ret=String.fromCharCode(13,10);
		var tab='\t';
	} else {
		var ret='';
		var tab='';
	}

	var codiHtml = '';
	if (comentaris) {
		codiHtml = codiHtml + tab + tab + '<!--El número que hi ha en el parametre de js ha de coincidir després amb el ID dels submenús corresponents -->' + ret;
		codiHtml = codiHtml + tab + tab + "<!--El class aplica el color corresponent a la opció, de la mateixa manera, al submenú també l'aplicarem -->" +ret;
	}

	//Posem les pestanyes
	for (var i=1; i<menu_pestanyes['id'].length; i++) {
		if (mostrar_pestanya(perfil, menu_pestanyes['perfiles'][i])) {
			if (menu_pestanyes['url'][i] =='#') {
				//La pestanya te continguts
				codiHtml = codiHtml + tab + tab + '<a href="' + menu_pestanyes['url'][i] + '" onclick="menu_desplega(' + menu_pestanyes['id'][i] + '); return false;" class="' + menu_pestanyes['color'][i] + '">' + menu_pestanyes['nom'][i] + '</a>' + ret;
			} else {
				//La pestanya es un link directe (Vademecum)
				codiHtml = codiHtml + tab + tab + '<a href="' + menu_pestanyes['url'][i] + '" class="' + menu_pestanyes['color'][i] + '">' + menu_pestanyes['nom'][i] + '</a>' + ret;
			}
		}
	}

	return codifica_unicode(codiHtml,vistacodi);
}

//Funció que genera l'html de les opcions
function menu_genHTML_opcions(perfil,d1,d2,d3,d4,d5,comentaris,vistacodi) {
	if (vistacodi) {
		var ret=String.fromCharCode(13,10);
		var tab='\t';
	} else {
		var ret='';
		var tab='';
	}

	var codiHtml = '<div id="menu" class="persistencia">' + ret;
	codiHtml = codiHtml + tab +'<div id="mascaraMouseover"></div>' + ret;
	
	//Anidem tots els submenus, dins del contenidor corresponent a la pestanya
	for (var i=1; i<menu_pestanyes['id'].length; i++) {

		if ((comentaris) && menu_pestanyes['id'][i]==d1) {
			codiHtml = codiHtml + tab + '<!--El submenú actiu, necessita aquests dos events de js per treure i posar les opcions marcades per defecte -->' + ret;
		}
		
		codiHtml = codiHtml + tab + '<div id="submenu_' + menu_pestanyes['id'][i] + '" class="submenu ' + menu_pestanyes['color'][i] + ((menu_pestanyes['id'][i]==d1) ? ' actiu" onmouseover="menu_persistencia(false)" onmouseout="menu_persistencia(true)"' : '"') + '>' + ret;
		codiHtml = codiHtml + tab  + tab + '<ul>' + ret;
		
		for (var i2=0; i2<menu_opcions['id'].length; i2++) {
			if (menu_opcions['pertany_id'][i2]==menu_pestanyes['id'][i]) {
				
				if ((comentaris) && menu_opcions['id'][i2]==d2) {
					codiHtml = codiHtml + tab + tab + '<!--Les opcions de menú que apareixen marcades pq assenyalen on estem, tenen el class on -->' + ret;
				}
				
				if (menu_opcions['url'][i2]=='#'){
					codiHtml = codiHtml + tab + tab + '<li><a href="#" onclick="return false;"' + menu_montaClass(i2,d2) + '>' + menu_opcions['nom'][i2] + '</a>';
				} else {
					if (menu_opcions['target'][i2]){
						codiHtml = codiHtml + tab + tab + '<li><a href="' + menu_opcions['url'][i2] + '"' + menu_montaClass(i2,d2) + ' target="_blank">' + menu_opcions['nom'][i2] + '</a>';
					} else {					
						codiHtml = codiHtml + tab + tab + '<li><a href="' + menu_opcions['url'][i2] + '"' + menu_montaClass(i2,d2) + ' >' + menu_opcions['nom'][i2] + '</a>';
					}
				}
				
				var opcions_i3=0;
				for (var i3=0; i3<menu_opcions['id'].length; i3++) {
					if (menu_opcions['pertany_id'][i3]==menu_opcions['id'][i2]) {
						opcions_i3++;
						if (opcions_i3==1) {

							if (menu_opcions['id'][i2]==d2 && (comentaris)) {
								codiHtml = codiHtml + ret + tab + tab + tab + '<!--Els blocs de subopcions que han de sortir desplegades, també tenen el class on -->';
							}

							codiHtml = codiHtml + ret + tab + tab + tab + '<ul' + ((menu_opcions['id'][i2]==d2) ? ' class="on"' : '') + '>' + ret;
						}

						if (menu_opcions['url'][i3]=='#'){
							codiHtml = codiHtml + tab + tab + tab + tab + '<li><a href="#" onclick="return false;"'+ menu_montaClass(i3,d3) + '>' + menu_opcions['nom'][i3] + '</a>';
						} else {
							if (menu_opcions['target'][i3]){
								codiHtml = codiHtml + tab + tab + tab + tab + '<li><a href="' + menu_opcions['url'][i3] + '"' + menu_montaClass(i3,d3) + ' target="_blank">' + menu_opcions['nom'][i3] + '</a>';
							} else {
								codiHtml = codiHtml + tab + tab + tab + tab + '<li><a href="' + menu_opcions['url'][i3] + '"' + menu_montaClass(i3,d3) + '>' + menu_opcions['nom'][i3] + '</a>';
							}
						}

						var opcions_i4=0;
						for (var i4=0; i4<menu_opcions['id'].length; i4++) {
							if (menu_opcions['pertany_id'][i4]==menu_opcions['id'][i3]) {
								opcions_i4++;
								if (opcions_i4==1) {
									codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + '<ul' + ((menu_opcions['id'][i3]==d3) ? ' class="on"' : '') + '>'
								}

								if (menu_opcions['url'][i4]=='#'){
									codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + tab + '<li><a href="#" onclick="return false;"' + menu_montaClass(i4,d4) + '>' + menu_opcions['nom'][i4] + '</a>';
								} else {
									if (menu_opcions['target'][i4]){
										codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + tab + '<li><a href="' + menu_opcions['url'][i4] + '"' + menu_montaClass(i4,d4) + ' target="_blank">' + menu_opcions['nom'][i4] + '</a>';
									} else {
										codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + tab + '<li><a href="' + menu_opcions['url'][i4] + '"' + menu_montaClass(i4,d4) + '>' + menu_opcions['nom'][i4] + '</a>';	
									}
								}

								var opcions_i5=0;
								for (var i5=0; i5<menu_opcions['id'].length; i5++) {
									if (menu_opcions['pertany_id'][i5]==menu_opcions['id'][i4]) {
										opcions_i5++;
										if (opcions_i5==1) {
											codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + tab + tab + '<ul' + ((menu_opcions['id'][i4]==d4) ? ' class="on"' : '') + '>'
										}
										
										if (menu_opcions['url'][i5]=='#'){
											codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + tab + tab + tab + '<li><a href="#" onclick="return false;"' + ((menu_opcions['id'][i5]==d5) ? ' class="on"' : '') + '>' + menu_opcions['nom'][i5] + '</a></li>';
										} else {
											if (menu_opcions['target'][i4]){
												codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + tab + tab + tab + '<li><a href="' + menu_opcions['url'][i5] + '"' + ((menu_opcions['id'][i5]==d5) ? ' class="on"' : '') + ' target="_blank">' + menu_opcions['nom'][i5] + '</a></li>';
											} else {
												codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + tab + tab + tab + '<li><a href="' + menu_opcions['url'][i5] + '"' + ((menu_opcions['id'][i5]==d5) ? ' class="on"' : '') + '>' + menu_opcions['nom'][i5] + '</a></li>';
											}
										}
									}
								}
								if (opcions_i5>0) {
									codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + tab + tab + '</ul>' + ret + tab + tab + tab + tab + tab + tab;
								}
								codiHtml = codiHtml + '</li>';
							}
						}
						if (opcions_i4>0) {
							codiHtml = codiHtml + ret + tab + tab + tab + tab + tab + '</ul>' + ret + tab + tab + tab + tab;
						}
						codiHtml = codiHtml + '</li>' + ret;
					}
				}
				if (opcions_i3>0) {
					codiHtml = codiHtml + tab + tab + tab + '</ul>' + ret + tab + tab;
				}
				codiHtml = codiHtml + '</li>' + ret;
			}
		}
		codiHtml = codiHtml + tab + tab + '</ul>'+ret;
		codiHtml = codiHtml + tab + '</div>'+ret;
	}
	codiHtml = codiHtml + '</div>'+ret;
	
	return codifica_unicode(codiHtml,vistacodi);
}


function menu_genHTML_breadcrumb (perfil,d1,d2,d3,d4,d5,comentaris,vistacodi, especial) {
	var variantClass='';
	var dd1=d1;
	if (menu_pestanyes['url'][d1] !='#') {
		if (d1!=0) variantClass='Des';
		dd1=0;
	}

	if (vistacodi) {
		var ret=String.fromCharCode(13,10);
		var tab='\t';
	} else {
		var ret='';
		var tab='';
	}

	var codiHtml = '';
	if (comentaris) {
		codiHtml = codiHtml + tab + tab + '<!--El breadcrumb també porta el class de color -->' + ret;
	}

	codiHtml = codiHtml + tab + tab + '<div class="breadcrumb ' + menu_pestanyes['color'][menu_localiza_pes(d1)] + variantClass + '">' + ret;

	//	Posem el nom de les opcions i les urls del breadcrumb
	codiHtml = codiHtml + tab + tab + tab + '<div class="ruta"><a href="'+rutaMenu+txtEnlace+'">'+txtInicio+'</a>';
	
	if (menu_perfils[perfil][0]=='#'){
		codiHtml = codiHtml + ' &gt; <a <a href="#" onclick="return false;">' + menu_perfils[perfil][1] + '</a>';
	} else {
		codiHtml = codiHtml + ' &gt; <a href="' + menu_perfils[perfil][0] + '">' + menu_perfils[perfil][1] + '</a>';
	}

	//Si el perfil es áreas tenemos que pintar el nombre de la misma en las migas y su url
	if (perfil=='areas'){
		codiHtml = codiHtml + ' &gt; <a href="' + menu_opcions['url'][menu_localiza(perfilArea)] + '">' + menu_opcions['nom'][menu_localiza(perfilArea)] + '</a>';
	}

	//Si estamos en la pestanya de areas no pintamos la opción en el menu
	if (d1 != 0 && d1 != 5 && menu_pestanyes['nom'][menu_localiza_pes(d1)]) {
		if (menu_pestanyes['url'][menu_localiza_pes(d1)]=='#'){
			codiHtml = codiHtml + ' &gt; <a href="#" onclick="return false;">' + menu_pestanyes['nom'][menu_localiza_pes(d1)] + '</a>';
		} else {		
		 	codiHtml = codiHtml + ' &gt; <a href="' + menu_pestanyes['url'][menu_localiza_pes(d1)] + '">' + menu_pestanyes['nom'][menu_localiza_pes(d1)] + '</a>';
		}
	}
	
	if (d2 != 0 && menu_opcions['nom'][menu_localiza(d2)]) {
		if (menu_opcions['url'][menu_localiza(d2)]=='#'){
			codiHtml = codiHtml + ' &gt; <a href="#" onclick="return false;">' + menu_opcions['nom'][menu_localiza(d2)] + '</a>';
		} else {
			codiHtml = codiHtml + ' &gt; <a href="' + menu_opcions['url'][menu_localiza(d2)] + '">' + menu_opcions['nom'][menu_localiza(d2)] + '</a>';
		}
	}
	
	if (d3 != 0 && menu_opcions['nom'][menu_localiza(d3)]) {
		if (menu_opcions['url'][menu_localiza(d3)]=='#'){
			codiHtml = codiHtml + ' &gt; <a href="#" onclick="return false;">' + menu_opcions['nom'][menu_localiza(d3)] + '</a>';
		} else {
			codiHtml = codiHtml + ' &gt; <a href="' + menu_opcions['url'][menu_localiza(d3)] + '">' + menu_opcions['nom'][menu_localiza(d3)] + '</a>';
		}
	}

	if (d4 != 0 && menu_opcions['nom'][menu_localiza(d4)]) {
		if (menu_opcions['url'][menu_localiza(d4)]=='#'){
			codiHtml = codiHtml + ' &gt; <a href="#" onclick="return false;">' + menu_opcions['nom'][menu_localiza(d4)] + '</a>';
		} else {
			codiHtml = codiHtml + ' &gt; <a href="' + menu_opcions['url'][menu_localiza(d4)] + '">' + menu_opcions['nom'][menu_localiza(d4)] + '</a>';
		}
	}

	if (d5 != 0 && menu_opcions['nom'][menu_localiza(d5)]) {
		if (menu_opcions['url'][menu_localiza(d5)]=='#'){
			codiHtml = codiHtml + ' &gt; <a href="#" onclick="return false;">' + menu_opcions['nom'][menu_localiza(d5)] + '</a>';
		} else {
			codiHtml = codiHtml + ' &gt; <a href="' + menu_opcions['url'][menu_localiza(d5)] + '">' + menu_opcions['nom'][menu_localiza(d5)] + '</a>';
		}
	}

	if (especial!=null) {
		codiHtml = codiHtml + ' &gt; <a>' + especial + '</a>';
	}


	codiHtml = codiHtml + '</div>' + ret;

	if (comentaris) {
		codiHtml = codiHtml + tab + tab + tab + '<!--Per saber quin submenu ha de desplegar al clicar al link del breadcrumb, hem d\'especificar aquí, en el parametre de la funcio, el numero de la ID de la pestanya -->' + ret;
	}

	codiHtml = codiHtml + tab + tab + tab + '<a href="#" id="plegaDesplega" onclick="menu_plega_desplega(' + dd1 + '); return false;">&nbsp;</a>' + ret;
	codiHtml = codiHtml + tab + tab + tab + mostrarBuscador() + ret;
	codiHtml = codiHtml + tab + tab + '</div>' + ret;

	return codifica_unicode(codiHtml,vistacodi);
}


function mostrar_pestanya(id, lista){
	var ver=false;
	var perfiles;

	if (lista.length>0){
		perfiles = lista.split(":");
		for (var i=0; i<perfiles.length; i++) {
			if (perfiles[i]==id){
				ver=true;
			}
		}
	} else {
		ver=true;
	}

	return ver;
}

function codifica_unicode(codiHtml,vistacodi) {
	codiHtml = codiHtml.split('á').join('\u00e1');
	codiHtml = codiHtml.split('é').join('\u00e9');
	codiHtml = codiHtml.split('í').join('\u00ed');
	codiHtml = codiHtml.split('ó').join('\u00f3');
	codiHtml = codiHtml.split('ú').join('\u00fa');
	codiHtml = codiHtml.split('Á').join('\u00c1');
	codiHtml = codiHtml.split('É').join('\u00c9');
	codiHtml = codiHtml.split('Í').join('\u00cd');
	codiHtml = codiHtml.split('Ó').join('\u00d3');
	codiHtml = codiHtml.split('Ú').join('\u00da');
	codiHtml = codiHtml.split('ñ').join('\u00f1');
	codiHtml = codiHtml.split('Ñ').join('\u00d1');
	return codiHtml;
}

function menu_localiza_pes(n) {
	for (var i=0; i<menu_pestanyes['id'].length; i++) {
		if (menu_pestanyes['id'][i]==n) return i;
	}
}

function menu_localiza(n) {
	for (var i=0; i<menu_opcions['id'].length; i++) {
		if (menu_opcions['id'][i]==n) return i;
	}
}

function menu_montaClass(i,d) {
	//Montem el class pels links
	var clase='';
	if (menu_teFills(i)) clase='pare';
	if (menu_opcions['id'][i]==d) clase=clase+ ' on';
	if (clase==' on') clase='on';
	if (clase != '') clase=' class="'+clase+'"';
	
	return clase;
}
				
function menu_teFills(n) {
	for (var x=0; x<menu_opcions['id'].length; x++) {
		if (menu_opcions['pertany_id'][x]==menu_opcions['id'][n]) return true;
	}
	return false;
}


