// JavaScript Document
//////////////////////////////////////////////////////////////////////
//
//	- modulo de funcions JavaScript
//
//	Creado por David González 24/05/2008 | david@dagonsoft.com
//
//////////////////////////////////////////////////////////////////////	
	
	var browser_name = navigator.appName;
	var browser_version = parseFloat(navigator.appVersion); 	
	if (browser_name == "Netscape" && browser_version >= 3.0){roll = 'true';}
	if (browser_version >= 4.0){roll = 'true';}
	var isNS = (navigator.appName == "Netscape" );
	var showPreload = true;// muestra la imgens de preloading
	
//////////////////////////////////////////////////////////////////////
//
//	WEBADMIN Functions
//
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
//
//	confirmAlert() - Alerta de confirmacion
//
//////////////////////////////////////////////////////////////////////
	function confirmAlert(txt) 
	{ 
		var msg = confirm(txt);
		if (msg) return true;
		else return false ;
	}
//////////////////////////////////////////////////////////////////////
//
//	init() - inicializa la app
//
//////////////////////////////////////////////////////////////////////
	function init() 
	{ 
		return true;
	}
//////////////////////////////////////////////////////////////////////
//
//
//
//////////////////////////////////////////////////////////////////////
	function menu(categoria)
	{	
		frm = document.getElementById('frmProcess');
		frm.action.value = "showFamily";	
		frm.section.value = "";
		frm.option.value = categoria;
		frm.submit();	
	}
//////////////////////////////////////////////////////////////////////
//
//
//
//////////////////////////////////////////////////////////////////////
	function addSectionList(objSource, objDestination)
	{
		var source = document.getElementById(objSource);
		var destination = document.getElementById(objDestination);		
		if (source.value != '')
		{
			var len = destination.length;
			var found = false;			
			for(var count = 0; count < len; count++) 
			{
				if (destination.options[count] != null) 
				{
					if (destination.options[count].text == source.value) 
					{
						found = true;
						break;
					}
				}
			}			
			if (found != true) 
				destination.options[len] = new Option(source.value);		
		}
		refreshList('sections',objDestination);
		source.value = "";
		source.focus();
	}
//////////////////////////////////////////////////////////////////////
//
//
//
//////////////////////////////////////////////////////////////////////
	function delSectionList(objDestination) 
	{
		var destination = document.getElementById(objDestination);
		var len = destination.options.length;
		for(var i = (len-1); i >= 0; i--)
		{
			if ((destination.options[i] != null) && (destination.options[i].selected == true)) 
			{
				destination.options[i] = null;
			}
		}
		refreshList('sections',objDestination)
	}
//////////////////////////////////////////////////////////////////////
//
//	refreshList() - Refresca una lista
//
//////////////////////////////////////////////////////////////////////
	function refreshList(objSections,objSource)
	{
		var sections = document.getElementById(objSections);
		var source = document.getElementById(objSource);
		var len = source.length;
		var data = "";
		for(var count = 0; count < len; count++) 
		{
			if (source.options[count] != null) 
				data = data + source.options[count].text + ";"
		}	
		sections.value = data;
	}
//////////////////////////////////////////////////////////////////////
//
//	processType() - Muestra los tipos
//
//////////////////////////////////////////////////////////////////////
	function processType()
	{
		var types = document.getElementById('type');
		var len = types.length;
		for(var count = 0; count < len; count++) 
		{
			if (types.options[count].selected && types.options[count].text == 'Pirules')				
				document.getElementById('selectTypePirules').style.display='block';				
			else
				document.getElementById('selectTypePirules').style.display='none';
		}		
	}
//////////////////////////////////////////////////////////////////////
//
//	MUSEU Functions
//
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
//
//	processContents() - Carga los contenidos de la web
//
//////////////////////////////////////////////////////////////////////
	function processContents(content)
	{
		if(content == 'museu' || content == 'exposicio' || content == 'activitats' || content == 'horaris' || content == 'ubicacio')
			changeClass(content,'linkMenu_active');
		else
			changeClass(content,'lnkColLeft_active');
		var url = "process.php?action=getContent&option="+content;
		getRequest(url, 'col_center');		
	}
//////////////////////////////////////////////////////////////////
//
// 	getBanners() - muestra los banners de las secciones
//
//////////////////////////////////////////////////////////////////	
	function getBanners(content)
	{
		// cambio de banners por seccion
		var location = 0;
		switch(content)
		{
			case "museu":
				location = 1;
				break;
			case "exposicio":
				location = 2;
				break;
			case "colleccio":
				location = 3;
				break;
			case "activitats":
				location = 4;
				break;
			case "actualitat":
				location = 5;
				break;
			case "trobades":
				location = 6;
				break;
			case "botiga":
				location = 7;
				break;
			case "horaris":
				location = 8;
				break;
			case "ubicacio":
				location = 9;
				break;
		}
		var url = "process.php?action=showBanners&id="+location;
		getRequest(url, 'col_rigth');
	}
	
//////////////////////////////////////////////////////////////////////
//
//	processRegisterForm() - procesa los datos del formulario de registro
//
//////////////////////////////////////////////////////////////////////
	function processRegisterForm()
	{
		var errorMessage = "";
		var boxError = document.getElementById('errorBox');
		boxError.style.display = 'none';
	
		var m = document.getElementById('email').value.indexOf('@');
		
		if(document.getElementById('name').value == '')
		{
			errorMessage = "Ha d'indicar un nom.";
			document.getElementById('name').focus();
		}		
		else if(document.getElementById('surname').value == '')
		{
			errorMessage = "Ha d'indicar els cognoms.";
			document.getElementById('surname').focus();	
		}
		else if(document.getElementById('adress').value == '')
		{
			errorMessage = "Ha d'indicar una dre&ccedil;a.";
			document.getElementById('adress').focus();	
		}
		else if(document.getElementById('city').value == '')
		{
			errorMessage = "Ha d'indicar una ciutat.";
			document.getElementById('city').focus();	
		}
		else if(document.getElementById('zipCode').value == '')
		{
			errorMessage = "Ha d'indicar un nom codi postal.";
			document.getElementById('zipCode').focus();	
		}
		else if(document.getElementById('state').value == '')
		{
			errorMessage = "Ha d'indicar una provincia.";
			document.getElementById('state').focus();	
		}
		else if(document.getElementById('user_country').value == '')
		{
			errorMessage = "Ha d'indicar un pis.";
			document.getElementById('user_country').focus();	
		}		
		else if(document.getElementById('email').value == '' || m < 1 || m == (document.getElementById('email').value.length - 1))
		{
			errorMessage = "Ha d'indicar un e-mail v&agrave;lid.";
		document.getElementById('email').focus();	
		}
		else if(document.getElementById('phone').value == '')
		{
			errorMessage = "Ha d'indicar un tel&egrave;fon.";
			document.getElementById('phone').focus();	
		}
		else if(document.getElementById('vat').value == '')
		{
			errorMessage = "Ha d'indicar un NIF/CIF.";
			document.getElementById('vat').focus();	
		}
		else if(document.getElementById('vat').value == '')
		{
			errorMessage = "Ha d'indicar un NIF/CIF.";
			document.getElementById('vat').focus();	
		}
		else if(document.getElementById('registerPassword').value == '')
		{
			errorMessage = "Ha d'indicar una contrasenya.";
			document.getElementById('registerPassword').focus();	
		}		
		else if(document.getElementById('registerPassword').value != document.getElementById('registerPasswordConfirm').value)
		{
			errorMessage = "Les contrasenyes no son iguals.";
			document.getElementById('registerPasswordConfirm').value = "";
			document.getElementById('registerPasswordConfirm').focus();	
		}
		else if(document.getElementById('coditions').checked == false)
		{
			errorMessage = "Ha d'acceptar les condicions.";
			document.getElementById('coditions').focus();	
		}
		
		if(errorMessage != '')
		{
			boxError.style.display = 'block';
			boxError.innerHTML = errorMessage;
		}
		else
			sendRegisterForm();
	}
//////////////////////////////////////////////////////////////////////
//
//	sendRegisterForm() - envio de daos de registro
//
//////////////////////////////////////////////////////////////////////
	function sendRegisterForm()
	{
		var params = "process.php?action=registerUser";
		params += "&name=" + document.getElementById('name').value;
		params += "&surname=" + document.getElementById('surname').value;
		params += "&adress=" + document.getElementById('adress').value;
		params += "&city=" + document.getElementById('city').value;
		params += "&zipCode=" + document.getElementById('zipCode').value;
		params += "&state=" + document.getElementById('state').value;
		params += "&country=" + document.getElementById('user_country').value;
		params += "&email=" + document.getElementById('email').value;
		params += "&phone=" + document.getElementById('phone').value;
		params += "&vat=" + document.getElementById('vat').value;
		params += "&registerPassword=" + document.getElementById('registerPassword').value;
		params += "&userNewsLetter=" + document.getElementById('userNewsLetter').value;
		getRequest(params, 'col_center');
	}
//////////////////////////////////////////////////////////////////////
//
//	processLogin() - procesar el login de usuario
//
//////////////////////////////////////////////////////////////////////
	function processLogin()
	{
		var params = "process.php?action=loginUser";
		params += "&user=" + document.getElementById('user').value;
		params += "&password=" + document.getElementById('password').value;
		getRequest(params, 'col_center');	
	}
//////////////////////////////////////////////////////////////////////
//
// 	Funciones para AJAX	
//
//////////////////////////////////////////////////////////////////////
	
	function getRequest(url, id_obj)
	{
		var pageRequest = false;
		if (window.XMLHttpRequest)// Mozilla, Safari etc
		{
			pageRequest = new XMLHttpRequest ();
		} 
		else if (window.ActiveXObject)// IE
		{
			try 
			{
				pageRequest = new ActiveXObject ("Msxml2.XMLHTTP");
			}
			catch (e)// old version
			{
				try
				{
					pageRequest = new ActiveXObject ("Microsoft.XMLHTTP");
				}
				catch (e)
				{
					e = null;
				}
			}
		} 
		else
			return false;
		pageRequest.onreadystatechange = function ()
		{
			if(showPreload)
				document.getElementById(id_obj).innerHTML = "<img src='img/loading.gif'/>";// imagen de espera
			pageLoad (pageRequest, id_obj);
		}
		
		
		
		
		pageRequest.open ('GET', url, true);
		pageRequest.send (null);
	
	}
	
	function pageLoad (pageRequest, id_obj)
	{
		if (pageRequest.readyState == 4 && (pageRequest.status == 200 || window.location.href.indexOf ("http") == - 1))
		{
			document.getElementById (id_obj).innerHTML = pageRequest.responseText;
			showPreload = true;
			////////// esto ejecuta el js del request //////////
			js = pageRequest.responseText.split('<!--JS-->');
			if(js.length>1) eval(js[1]);
			currentTime = new Date();
			document.getElementById('if_center').src = "process.php?time="+currentTime.getTime() ;
		}
	}
//////////////////////////////////////////////////////////////////////	
	function sendRequest(url)
	{
		var pageRequest = false;
		if (window.XMLHttpRequest)// Mozilla, Safari etc
		{
			pageRequest = new XMLHttpRequest ();
		} 
		else if (window.ActiveXObject)// IE
		{
			try 
			{
				pageRequest = new ActiveXObject ("Msxml2.XMLHTTP");
			}
			catch (e)// old version
			{
				try
				{
					pageRequest = new ActiveXObject ("Microsoft.XMLHTTP");
				}
				catch (e)
				{
				}
			}
		} 
		else
			return false;
		pageRequest.onreadystatechange = function ()
		{
			confirmRequest(pageRequest);
		}
		pageRequest.open ('GET', url, true);
		pageRequest.send (null);
	}
	
	function confirmRequest(pageRequest)
	{
		if (pageRequest.readyState == 4 && (pageRequest.status == 200 || window.location.href.indexOf ("http") == - 1))
		{
			return true;
		}
	}
	
//////////////////////////////////////////////////////////////////////
//
// 	refreshColLeft() - refresca la columna izquierda
//
//////////////////////////////////////////////////////////////////////
	function refreshColLeft()
	{
		//document.getElementById('col_left').innerHTML = "<img src='img/loading.gif'/>";
		var url = "process.php?action=getColLeft";
		getRequest(url, 'col_left');
	}
//////////////////////////////////////////////////////////////////////
//
// 	gotoNextPage() - mueve la pagina del webadmin
//
//////////////////////////////////////////////////////////////////////	
	function gotoNextPage()
	{
		var sel = document.getElementById('page');		
		var i = eval(sel.selectedIndex + 1);
		if(sel.options[i] != null)
		{
			sel.options[i].selected = true;
			document.getElementById('frm_paginacion').submit();
		}
	}
//////////////////////////////////////////////////////////////////////
//
// 	gotoPreviusPage() - mueve la pagina del webadmin
//
//////////////////////////////////////////////////////////////////////	
	function gotoPreviusPage()
	{
		var sel = document.getElementById('page');		
		var i = eval(sel.selectedIndex - 1);
		if(sel.selectedIndex > 0)
		{
			sel.options[i].selected = true;
			document.getElementById('frm_paginacion').submit();
		}
	}

//////////////////////////////////////////////////////////////////////
//
//	processSelect() - procesa las selecciones de los selects
//
//////////////////////////////////////////////////////////////////////
	function processSelect(idSelect)
	{
		var sel = document.getElementById(idSelect);
		if(idSelect == 'country' || idSelect == 'bodega' )//desctivamos cava y pirules
		{
			document.getElementById('cava').options[0].selected = true;
			document.getElementById('pirules').options[0].selected = true;
			if(idSelect == 'country') 
			{
				showPreload = false;
				var url = "process.php?action=getBodegasByCountry&country=" + sel.value;
				getRequest(url,'selectBodegas');
			}
		}
		else if(idSelect == 'cava')//desctivamos pais y pirules
		{
			document.getElementById('country').options[0].selected = true;
			document.getElementById('bodega').options[0].selected = true;
			document.getElementById('pirules').options[0].selected = true;		
		}
		else if(idSelect == 'pirules')//desctivamos pais y cava
		{
			document.getElementById('country').options[0].selected = true;
			document.getElementById('bodega').options[0].selected = true;
			document.getElementById('cava').options[0].selected = true;
		}
	}
//////////////////////////////////////////////////////////////////////
//	COPIA PARA LA TIENDA!!
//	processSelectShop() - procesa las selecciones de los selects
//
//////////////////////////////////////////////////////////////////////
	function processSelectShop(idSelect)
	{
		var sel = document.getElementById(idSelect);
		if(idSelect == 'countryShop' || idSelect == 'bodegaShop' )//desctivamos cava y pirules
		{
			document.getElementById('cavaShop').options[0].selected = true;
			document.getElementById('pirulesShop').options[0].selected = true;
			if(idSelect == 'countryShop') 
			{
				showPreload = false;
				var url = "process.php?action=getBodegasByCountryShop&country=" + sel.value;
				getRequest(url,'selectBodegasShop');
			}
		}
		else if(idSelect == 'cavaShop')//desctivamos pais y pirules
		{
			document.getElementById('countryShop').options[0].selected = true;
			document.getElementById('bodegaShop').options[0].selected = true;
			document.getElementById('pirulesShop').options[0].selected = true;		
		}
		else if(idSelect == 'pirulesShop')//desctivamos pais y cava
		{
			document.getElementById('countryShop').options[0].selected = true;
			document.getElementById('bodegaShop').options[0].selected = true;
			document.getElementById('cavaShop').options[0].selected = true;
		}
	}
//////////////////////////////////////////////////////////////////////
//
//	processMuseumSearch() - placas que busca el museu
//
//////////////////////////////////////////////////////////////////////
	function processMuseumSearch(type)
	{
		var cava = document.getElementById('requestCava');	// filtro solo cavas
		var country = document.getElementById('requestCountry'); // filtro solo paises
		var bodega = document.getElementById('requestBodega'); // filtro solo bodegas
		var pirules = document.getElementById('requestPirules'); // filtro solo pirules
		// reset filtros
		cava.value = 'null';
		country.value = 'null';
		bodega.value = 'null';
		pirules.value = 'null';
		// cargamos con la opcion de la busqueda por tipo
		if(type == 'cava')
			cava.value = 'all';
		else if(type == 'estrangeres')
		{
			country.value = 'all';
			bodega.value = 'all';
		}
		else if(type == 'pirules')
			pirules.value = 'all';
		// ejecutamos la busqueda
		processSearch('museuSearch');
	}	
//////////////////////////////////////////////////////////////////////
//
//	processNewBoardsByDate() - placas nuevas por tipo de listado
//
//////////////////////////////////////////////////////////////////////		
	function processNewBoardsByDate(type)
	{
		var cava = document.getElementById('requestCava');	// filtro solo cavas
		var country = document.getElementById('requestCountry'); // filtro solo paises
		var bodega = document.getElementById('requestBodega'); // filtro solo bodegas
		var pirules = document.getElementById('requestPirules'); // filtro solo pirules
		// reset filtros
		cava.value = 'null';
		country.value = 'null';
		bodega.value = 'null';
		pirules.value = 'null';
		// cargamos con la opcion de la busqueda por tipo
		if(type == 'cava')
			cava.value = 'all';
		else if(type == 'estrangeres')
		{
			country.value = 'all';
			bodega.value = 'all';
		}
		else if(type == 'pirules')
			pirules.value = 'all';
		// ejecutamos la busqueda
		processSearch('newBoardsByDate');
	}
//////////////////////////////////////////////////////////////////
//
// 	processUserBoards() - 
//
//////////////////////////////////////////////////////////////////	
	function processUserBoards(type,option)
	{
		// generamos los resultados para la busqueda de las plaas del usuario segun el tipo
		var cava = document.getElementById('requestCava');	// filtro solo cavas
		var country = document.getElementById('requestCountry'); // filtro solo paises
		var bodega = document.getElementById('requestBodega'); // filtro solo bodegas
		var pirules = document.getElementById('requestPirules'); // filtro solo pirules

		if(type == "cava")
		{
			cava.value = 'all';
			country.value = 'null';
			bodega.value = 'null';
			pirules.value = 'null';
		}
		else if(type == "estrangeres")
		{
			cava.value = 'null';
			country.value = 'all';
			bodega.value = 'all';
			pirules.value = 'null';
		}
		else if(type == "pirules")
		{
			cava.value = 'null';
			country.value = 'null';
			bodega.value = 'null';
			pirules.value = 'all';
		}
		
		if(option == "me")
			processSearch('userBoards');
		else if(option == "other")
			processSearch('otherUserBoards');

		else if(option == "me_repeated")
			processSearch('userRepeatedBoards');
		else if(option == "other_repeated")
			processSearch('otherUserRepeatedBoards');
		else if(option == "other_search")
			processSearch('otherUserSearchBoards');
	}
//////////////////////////////////////////////////////////////////
//
// 	processUserRepeatedBoards() - 
//
//////////////////////////////////////////////////////////////////	
	/*function processUserRepeatedBoards(type)
	{
		// generamos los resultados para la busqueda de las plaas del usuario segun el tipo
		var cava = document.getElementById('requestCava');	// filtro solo cavas
		var country = document.getElementById('requestCountry'); // filtro solo paises
		var bodega = document.getElementById('requestBodega'); // filtro solo bodegas
		var pirules = document.getElementById('requestPirules'); // filtro solo pirules

		if(type == 'cava')
		{
			cava.value = 'all';
			country.value = 'null';
			bodega.value = 'null';
			pirules.value = 'null';
		}
		else if(type == 'estrangeres')
		{
			cava.value = 'null';
			country.value = 'all';
			bodega.value = 'all';
			pirules.value = 'null';
		}
		else if(type == 'pirules')
		{
			cava.value = 'null';
			country.value = 'null';
			bodega.value = 'null';
			pirules.value = 'all';
		}
		processSearch('userRepeatedBoards');
	}	*/
//////////////////////////////////////////////////////////////////////
//
//	processSearch() - proceso de busqueda
//
//////////////////////////////////////////////////////////////////////
	
	function processSearch(listType)
	{
		changeClass(listType,'lnkColLeft_active');		
		var cava = document.getElementById('requestCava');	// filtro solo cavas
		var country = document.getElementById('requestCountry'); // filtro solo paises
		var bodega = document.getElementById('requestBodega'); // filtro solo bodegas
		var pirules = document.getElementById('requestPirules'); // filtro solo pirules
		var type = document.getElementById('requestType'); // filtro de tipo
		var keyword = document.getElementById('requestKeywords'); // filtro para las palabras a buscar
		var letter = document.getElementById('requestLetter'); // filto para las letras
		var list = document.getElementById('requestListType');// tipo de sitado a mostrar
		var date = document.getElementById('requestDate');// filtro por fecha de la placa
		var typeBoard = document.getElementById('requestBoardType');// filtro por tipo de placas		
		var userId = document.getElementById('requestUserId');// filtro por id de usuario
		var missing = document.getElementById('requestMissing');// filtro placas que me faltan
		// guardamos los campos de busqueda
		if(listType != 'museuSearch' && listType != 'userBoards' && listType != 'otherUserBoards' && listType != 'userRepeatedBoards' && listType != 'otherUserRepeatedBoards' && listType != 'otherUserSearchBoards' && listType != 'newBoardsByDate')// exepcion para buscar las placas que busca el museo y las del usuario o usurios
		{
			cava.value = document.getElementById('cava').value;
			country.value = document.getElementById('country').value;
			bodega.value = document.getElementById('bodega').value;
			pirules.value = document.getElementById('pirules').value;
		}		
		type.value = document.getElementById('type').value;
		keyword.value = document.getElementById('keyword').value;
		letter.value = "null";		
		list.value = listType;
		// solo si existe del objeto de seleccion por fecha
		try{date.value = document.getElementById('dateSearch').value;}
		catch(e){date.value = ""}		
		// creamos los parametros
		var params = "process.php?action=getSearch";		
		params+= "&cava=" + cava.value;
		params+= "&country=" + country.value;		
		params+= "&bodega=" + bodega.value;
		params+= "&pirules=" + pirules.value;
		params+= "&sub_type=" + type.value;
		params+= "&keyword=" + keyword.value;
		params+= "&letter=" + letter.value;
		params+= "&list=" + list.value;		
		params+= "&date_search=" + date.value;
		params+= "&board_type=" + typeBoard.value;	
		params+= "&user_id=" + userId.value;	
		params+= "&missing=" + missing.value;
		// revisamos que haya datos de busqueda validos y es una busqueda
		if((cava.value != 'null' || pirules.value != 'null' || country.value != 'null' || bodega.value != 'null') && listType == 'search')		
			getRequest(params,'col_center');// enviamos los parametros
		// tipo de listado valido
		else if(listType == 'newBoardsByDate' || listType == 'userBoards' || listType == 'otherUserBoards' || listType == 'userRepeatedBoards' || listType == 'otherUserRepeatedBoards' || listType == 'newBoards' || listType == 'museuSearch' || listType == 'otherUserSearchBoards')
			getRequest(params,'col_center');// enviamos los parametros
		else
			alert(messages['processSearch']);
	}
//////////////////////////////////////////////////////////////////////
//
//	processSearchPagination() - proceso de busqueda con paginacion
//
//////////////////////////////////////////////////////////////////////
	function processSearchPagination(paginationIndex,paginationMax,divId)
	{
		var cava = document.getElementById('requestCava');	// filtro solo cavas
		var country = document.getElementById('requestCountry'); // filtro solo paises
		var bodega = document.getElementById('requestBodega'); // filtro solo bodegas
		var pirules = document.getElementById('requestPirules'); // filtro solo pirules
		var type = document.getElementById('requestType'); // filtro de tipo
		var keyword = document.getElementById('requestKeywords'); // filtro para las palabras a buscar
		var letter = document.getElementById('requestLetter'); // filto para las letras
		var list = document.getElementById('requestListType');// tipo de sitado a mostrar
		var date = document.getElementById('requestDate');// filtro por fecha de la placa
		var typeBoard = document.getElementById('requestBoardType');// filtro por tipo de placas
		var userId = document.getElementById('requestUserId');// filtro por id de usuario
		var missing = document.getElementById('requestMissing');// filtro placas que me faltan
		// enviamos los parametros
		var params = "process.php?action=getSearch";
		params+= "&cava=" + cava.value;
		params+= "&country=" + country.value;		
		params+= "&bodega=" + bodega.value;
		params+= "&pirules=" + pirules.value;
		params+= "&sub_type=" + type.value;
		params+= "&keyword=" + keyword.value;
		params+= "&letter=" + letter.value;
		params+= "&list=" + list.value;
		params+= "&date_search=" + date.value;
		params+= "&board_type=" + typeBoard.value;
		params+= "&user_id=" + userId.value;
		params+= "&missing=" + missing.value;
		// filtro de la paginacion
		if(paginationIndex != null)
			params+= "&pagination_index=" + paginationIndex;
		if(paginationMax != null)
			params+= "&pagination_max=" + paginationMax;
		getRequest(params,divId);
	}	
//////////////////////////////////////////////////////////////////////
//	COPIA PARA LA TIENDA
//	processSearchShop() - proceso de busqueda par ala tienda
//
//////////////////////////////////////////////////////////////////////
	function processSearchShop()
	{
		var cava = document.getElementById('requestCava');	
		var country = document.getElementById('requestCountry');
		var bodega = document.getElementById('requestBodega');
		var pirules = document.getElementById('requestPirules');
		var type = document.getElementById('requestType');
		var keyword = document.getElementById('requestKeywords');
		var letter = document.getElementById('requestLetter');
		var list = document.getElementById('requestListType');
		var missing = document.getElementById('requestMissing');
		// guardamos los campos de busqueda
		cava.value = document.getElementById('cavaShop').value;
		country.value = document.getElementById('countryShop').value;
		bodega.value = document.getElementById('bodegaShop').value;
		pirules.value = document.getElementById('pirulesShop').value;
		
		type.value = "all";
		keyword.value = "";
		letter.value = "null";
		list.value = "searchShop";		
		missing.value = "";	
		// revisamos que haya datos de busqueda validos
		if(cava.value != 'null' || pirules.value != 'null' || country.value != 'null' || bodega.value != 'null')		
		{	// enviamos los parametros
			var params = "process.php?action=getSearchShop";
			params+= "&cava=" + cava.value;
			params+= "&country=" + country.value;		
			params+= "&bodega=" + bodega.value;
			params+= "&pirules=" + pirules.value;
			params+= "&sub_type=" + type.value;
			params+= "&keyword=" ;//+ keyword.value;
			params+= "&letter=" + letter.value;
			params+= "&list=" + list.value;
			params+= "&missing=" + missing.value;
			getRequest(params,'shopBoards');
		}	
		else
			alert(messages['processSearch']);
	}	
//////////////////////////////////////////////////////////////////////
//	COPIA PARA LA TIENDA
//	processSearchShopPagination() - proceso de busqueda con paginacion
//
//////////////////////////////////////////////////////////////////////
	function processSearchShopPagination(paginationIndex,paginationMax,divId)
	{
		var cava = document.getElementById('requestCava');	// filtro solo cavas
		var country = document.getElementById('requestCountry'); // filtro solo paises
		var bodega = document.getElementById('requestBodega'); // filtro solo bodegas
		var pirules = document.getElementById('requestPirules'); // filtro solo pirules
		var type = document.getElementById('requestType'); // filtro de tipo
		var keyword = document.getElementById('requestKeywords'); // filtro para las palabras a buscar
		var letter = document.getElementById('requestLetter'); // filto para las letras
		var list = document.getElementById('requestListType');// tipo de sitado a mostrar
		var missing = document.getElementById('requestMissing');
		//var date = document.getElementById('requestDate');// filtro por fecha de la placa
		//var typeBoard = document.getElementById('requestBoardType');// filtro por tipo de placas
		// enviamos los parametros
		var params = "process.php?action=getSearchShop";
		params+= "&cava=" + cava.value;
		params+= "&country=" + country.value;		
		params+= "&bodega=" + bodega.value;
		params+= "&pirules=" + pirules.value;
		params+= "&sub_type=" + type.value;
		params+= "&keyword=" + keyword.value;
		params+= "&letter=" + letter.value;
		params+= "&list=" + list.value;
		params+= "&missing=" + missing.value;
		//params+= "&date_search=" + date.value;
		//params+= "&board_type=" + typeBoard.value;
		// filtro de la paginacion
		if(paginationIndex != null)
			params+= "&pagination_index=" + paginationIndex;
		if(paginationMax != null)
			params+= "&pagination_max=" + paginationMax;
		getRequest(params,divId);
	}	
//////////////////////////////////////////////////////////////////////
//
//	processPage() - cambio de pagina	
//
//////////////////////////////////////////////////////////////////////
	function processPage(index)
	{
		processSearchPagination(index,null,'col_center');
	}
//////////////////////////////////////////////////////////////////////
//
//	processPageShop() - cambio de pagina en la tienda
//
//////////////////////////////////////////////////////////////////////
	function processPageShop(index)
	{
		processSearchShopPagination(index,null,'shopBoards');
	}
//////////////////////////////////////////////////////////////////////
//
//	processPageChangeLimit() - cambio de elementos en paginacion	
//
//////////////////////////////////////////////////////////////////////
	function processPageChangeLimit(index)
	{
		processSearchPagination(null,index,'col_center');
	}
//////////////////////////////////////////////////////////////////////
//
//	processPageChangeLimitUserBoards() - cambio de elementos en paginacionlista de placas del usuario
//
//////////////////////////////////////////////////////////////////////
	/*function processPageChangeLimitUserBoards(index)
	{
		var cava = document.getElementById('requestCava');	
		var country = document.getElementById('requestCountry');
		var bodega = document.getElementById('requestBodega');
		var pirules = document.getElementById('requestPirules');
		var type = document.getElementById('requestType');
		var keyword = document.getElementById('requestKeywords');
		var letter = document.getElementById('requestLetter');
		var list = document.getElementById('requestListType');
		// enviamos los parametros
		var params = "process.php?action=getSection&section=userBoards";
		params+= "&cava=" + cava.value;
		params+= "&country=" + country.value;		
		params+= "&bodega=" + bodega.value;
		params+= "&pirules=" + pirules.value;
		params+= "&sub_type=" + type.value;
		params+= "&keyword=" + keyword.value;
		params+= "&letter=" + letter.value;
		
		params+= "&list=" + list.value;
		
		//params+= "&pagination_index=" + index;
		params+= "&pagination_max=" + index;	
		getRequest(params,'col_center');
	}*/
//////////////////////////////////////////////////////////////////////
//
//	processPageUserBoards() - cambio de pagina de las placas de usuario
//
//////////////////////////////////////////////////////////////////////
	/*function processPageUserBoards(index)
	{		
		var cava = document.getElementById('requestCava');	
		var country = document.getElementById('requestCountry');
		var bodega = document.getElementById('requestBodega');
		var pirules = document.getElementById('requestPirules');
		var type = document.getElementById('requestType');
		var keyword = document.getElementById('requestKeywords');
		var letter = document.getElementById('requestLetter');
		// enviamos los parametros
		var params = "process.php?action=getSection&section=userBoards";
		params+= "&cava=" + cava.value;
		params+= "&country=" + country.value;		
		params+= "&bodega=" + bodega.value;
		params+= "&pirules=" + pirules.value;
		params+= "&sub_type=" + type.value;
		params+= "&keyword=" + keyword.value;
		params+= "&letter=" + letter.value;
		params+= "&pagination_index=" + index;
		//params+= "&pagination_max=" + index;	
		getRequest(params,'col_center');	
	}*/
//////////////////////////////////////////////////////////////////////
//
//	processPageChangeLimitShop() - cambio de elementos en paginacion de la tienda
//
//////////////////////////////////////////////////////////////////////
	function processPageChangeLimitShop(index)
	{
		processSearchShopPagination(null,index,'shopBoards');
	}
////////////////////////////////////////////////////////////////////////////
//
//	precessSelect() - envia la consulta para generar el select
//
////////////////////////////////////////////////////////////////////////////
	function precessSelect(idObj, type, params)
	{
		var url = "select.php?typeSelect="+type+"&paramSearchSelect="+params;
		getRequest (url, idObj);
	}
//////////////////////////////////////////////////////////////////////
//
//	processPlacaBox() - envia los datos para mostrar la ficha de placa
//
//////////////////////////////////////////////////////////////////////
	function processPlacaBox(id)
	{
		var searchData = document.getElementById('searchData');
		searchData.style.display = 'none';
		var params = "process.php?action=getPlacaData";
		params+= "&id=" + id;
		getRequest(params,'placaData');
		var placaData = document.getElementById('placaData');
		placaData.style.display = 'block';
	}
//////////////////////////////////////////////////////////////////////
//
//	processPlacaBack() - carga a la lista de placas
//
//////////////////////////////////////////////////////////////////////
	function processPlacaBack()
	{
		var placaData = document.getElementById('placaData');	
		placaData.style.display = 'none';
		placaData.innerHTML = "<img src='img/loading.gif'/>";;
		var searchData = document.getElementById('searchData');
		searchData.style.display = 'block';
	}
//////////////////////////////////////////////////////////////////////
//
//	processSections() - carga la seccion segun se indique
//
//////////////////////////////////////////////////////////////////////
	function processSections(section)
	{		
		if(section == 'actualitat' || section == 'trobades' || section == 'botiga')
			changeClass(section,'linkMenu_active');
		else
			changeClass(section,'lnkColLeft_active');
		var url = "process.php?action=getSection&section="+section;
		getRequest(url, 'col_center');
	}
//////////////////////////////////////////////////////////////////////
//
//	processCollection() - carga la coleccion entera de chapas
//
//////////////////////////////////////////////////////////////////////
	function processCollection(character,typeBoard)
	{
		changeClass('a','linkMenu_active');
		
		var cava = document.getElementById('requestCava');	
		var country = document.getElementById('requestCountry');
		var bodega = document.getElementById('requestBodega');
		var pirules = document.getElementById('requestPirules');
		var type = document.getElementById('requestType');
		var keyword = document.getElementById('requestKeywords');
		var letter = document.getElementById('requestLetter');		
		var list = document.getElementById('requestListType');

		// guardamos los campos de busqueda
		cava.value = (typeBoard == "cava") ? "all" : "null";
		
		country.value = (typeBoard == "estrangeres") ? "all" : "null";
		bodega.value =  (typeBoard == "estrangeres") ?  "all" : "null";
		
		pirules.value = (typeBoard == "pirules") ?  "all" : "null";
		
		type.value = "all";
		keyword.value = "";		
		list.value = "collection";		
		letter.value = (typeBoard == "pirules") ? "null" : character;
		
		processSearchPagination(null,null,'col_center');		
	}
//////////////////////////////////////////////////////////////////////
//
//	showCollection() - carga la coleccion de chapas
//
//////////////////////////////////////////////////////////////////////
	function showCollection(typeList)
	{
		changeClass(type,'linkMenu_active');

		var cava = document.getElementById('requestCava');	
		var country = document.getElementById('requestCountry');
		var bodega = document.getElementById('requestBodega');
		var pirules = document.getElementById('requestPirules');
		var type = document.getElementById('requestType');
		var keyword = document.getElementById('requestKeywords');
		var letter = document.getElementById('requestLetter');		
		var list = document.getElementById('requestListType');
		
		// guardamos los campos de busqueda
		if(typeList == 'cava')
			cava.value = "all";
		else
			cava.value = "null";
		
		if(typeList == 'estrangeres')
		{
			country.value = "all";
			bodega.value = "null";
		}
		else
		{
			country.value = "null";
			bodega.value = "null";
		}
		
		if(typeList == 'pirules')
			pirules.value = "all";
		else
			pirules.value = "null";
		
		type.value = "all";
		keyword.value = " ";		
		list.value = "search";		
		letter.value = "a";
		
		processSearchPagination(null,null,'col_center');		
	}
//////////////////////////////////////////////////////////////////////
//
// 	processPush() - cambiamos los estados de lso iconos de la placa
//
//////////////////////////////////////////////////////////////////////
	
	function processPush(action, id)
	{
		var element = ''+ id + action;
		var option = false; 
		
		var obj = document.getElementById(element);	
		
		if(obj.className == 'icon_active')
		{
			obj.className = "icon_default";
			option = false; 
		}
		else if(obj.className == 'icon_default')
		{
			obj.className = "icon_active";
			option = true; 
		}
		try// de la placa si existe
		{
			var element = ''+ id + action + '_P';
			var obj = document.getElementById(element);	
			if(obj.className == 'icon_active')
			{
				obj.className = "icon_default";
				option = false; 
			}
			else if(obj.className == 'icon_default')
			{
				obj.className = "icon_active";
				option = true; 
			}
		}
		catch(e)
		{
			
		}
		setBoardToUser(action,option,id);
	}
//////////////////////////////////////////////////////////////////////
//
// 	setBoardToUser() - establecemos las opciones d ela placa para el usuario
//
//////////////////////////////////////////////////////////////////////
	
	function setBoardToUser(section,option,id)
	{	
		
		var params = "process.php?action=setBoardToUser";
		params+= "&section=" + section;
		params+= "&option=" + option;		
		params+= "&id=" + id;
		
		sendRequest(params);
		getColLeftTopRefresh();//refresacamos los datos de las placas
	
	}
	
	function placaBoxMessage()
	{
		
		TagToTip('tooltip1');	
	}
	
	
//////////////////////////////////////////////////////////////////////
// 
//	getCatalogListCava( group ) recarga el list con las datos del grupo
//
//////////////////////////////////////////////////////////////////////
	
	function getCatalogListCava(group)
	{
		//document.getElementById('listCavas').innerHTML = "<img src='img/loading.gif'/>";	
		var url = "process.php?action=getCatalogCavaList&section="+group;
		getRequest(url, 'listCavas');
		clearCatalogListCavas();
	}
//////////////////////////////////////////////////////////////////////
// 
//	clearCatalogListCavas() elimina la lista de cavas para el catalogo
//
//////////////////////////////////////////////////////////////////////
	
	function clearCatalogListCavas()
	{
		var list = document.getElementById('cavasSelected');
		for (var i=list.options.length-1; i>=0; i--)
			list.options[i] = null;
	  	list.selectedIndex = -1;
	}
/////////////////////////////////////////////////////////////////////
// 
//	delCatalogListCavas() elimina los items de cavas seleccionados para el catalogo
//
//////////////////////////////////////////////////////////////////////
	
	function delCatalogListCavas()
	{
		var list = document.getElementById('cavasSelected');
		for (var i=list.options.length-1; i>=0; i--)
		{
			if(list.options[i].selected && list.options[i] != "") 
				list.options[i] = null;		
		}
	}	
//////////////////////////////////////////////////////////////////////
// 
//	addCatalogListCavas() añade la lista de cavas para el catalogo
//
//////////////////////////////////////////////////////////////////////
	
	function addCatalogListCavas()
	{
		var list = document.getElementById('cavas');
		var listSelected = document.getElementById('cavasSelected');
		
		for(var i = 0; i < list.options.length; i++)
		{
			if(list.options[i].selected && list.options[i] != "") 
			{
				var exist = false;
				// revisamos que no exista en la lista actual
				for(var e = 0; e < listSelected.options.length; e++)
				{
					if(list.options[i].value == listSelected.options[e].value)
					{
						exist = true;
						break;
					}
				}
				if(!exist) moveItem(list.options[i].value, list.options[i].text);
			}
		}// end for
	}	
	
	function moveItem(value, text)
	{
		var list = document.getElementById('cavasSelected');
		if(value != "" && text != "") 
		{
			var op = new Option();
			op.value = value;
			op.text = text;
			list.options[list.options.length] = op;
		 }
	}
//////////////////////////////////////////////////////////////////////
//
//	createCatalog()
//
//////////////////////////////////////////////////////////////////////
	function createCatalog()
	{
		var type = document.getElementById('group');
		var list = document.getElementById('cavasSelected');	
		var c = document.getElementById('c');
		var r = document.getElementById('r');		
		var i = document.getElementById('i');
		var n = document.getElementById('n');
		var t = document.getElementById('t');
		var f = document.getElementById('f');
		var cavas = "";
		var filter = "";		
		if(list.options.length > 0)
		{
			for(var e = 0; e < list.options.length; e++)
				cavas+= list.options[e].value+";";
			if(c.checked) filter+= c.value+";"
			if(r.checked) filter+= r.value+";"
			if(f.checked) filter+= f.value+";"
			if(n.checked) filter+= n.value+";"
			if(t.checked) filter+= t.value+";"
			if(i.checked) filter+= i.value+";"
			if(filter == '')
				alert(messages['catalogAddParams']);
			else
			{// sen request
				var frm = document.getElementById('frmCatalog');
				frm.cavas.value = cavas;
				frm.filter.value = filter;
				frm.type.value = type.value;
				frm.submit();
			}
		}
		else
			alert(messages['catalogEmptyList']);
	}
//////////////////////////////////////////////////////////////////////
// 
//	processSendUserMail() - carga el formulario para enviar un mensaje al usuario
//
//////////////////////////////////////////////////////////////////////
	function processSendUserMail(list, idBoard)
	{
		var list = document.getElementById(list);
		if(list.value != "") 
		{
			document.getElementById('messageView').style.display = 'block';
			var params = "process.php?action=getMessage";
			params+= "&section=newBoard";
			params+= "&id=" + list.value;
			params+= "&idBoard=" + idBoard;
			getRequest(params, 'messageView');
		}
	}
//////////////////////////////////////////////////////////////////////
// 
//	sendMessage() - envia un mensaje al usuario
//
//////////////////////////////////////////////////////////////////////	
	function sendMessage(reply)
	{
		var msgSubject = document.getElementById('subject');
		var msgBody = document.getElementById('body');
		var msgTo = document.getElementById('user_to_id');		
		if(msgSubject.value != "" && msgBody.value != "") 
		{
			var str = msgBody.value;
			str = str.replace(/\r/g, "");
			str = str.replace(/\n/g, "<br>");			
			var url = "process.php";			
			var params = "action=getMessage";
			params+= "&section=send";
			params+= "&subject=" + msgSubject.value;
			params+= "&body=" + str;
			params+= "&to=" + msgTo.value;
			if(reply == '1') params+= "&reply=" + reply; // opcion para mensages contestados				
						
			var pageRequest = false;			
			if (window.XMLHttpRequest)// Mozilla, Safari etc
			{
				pageRequest = new XMLHttpRequest ();
			} 
			else if (window.ActiveXObject)// IE
			{
				try 
				{
					pageRequest = new ActiveXObject ("Msxml2.XMLHTTP");
				}
				catch (e)// old version
				{
					try
					{
						pageRequest = new ActiveXObject ("Microsoft.XMLHTTP");
					}
					catch (e)
					{
						e = null;
					}
				}
			} 
			else
				return false;			
			pageRequest.onreadystatechange = function ()
			{
				if(showPreload)
					document.getElementById('messageView').innerHTML = "<img src='img/loading.gif'/>";// imagen de espera
				pageLoad (pageRequest, 'messageView');
			}
			pageRequest.open("POST", url, true);
			//Send the proper header information along with the request
			pageRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			pageRequest.setRequestHeader("Content-length", params.length);
			pageRequest.setRequestHeader("Connection", "close");
			pageRequest.send(params);
			
		}
		else
		{
			alert(messages['sendMessageError']);
		}
	}
//////////////////////////////////////////////////////////////////////
// 
//	sendMessage() - envia un mensaje al usuario
//
//////////////////////////////////////////////////////////////////////		
	function processViewMessage(id,activeClick)
	{
		var oldId = document.getElementById('msgId').value;
		if(oldId != id)// cambiamos el estilo del anterior mail seleccionado
		{
			try{document.getElementById(oldId).className = "message_status_2";}
			catch(e){document.getElementById('msgId').value = id;}
			document.getElementById(id).className = "message_status_selected";
			document.getElementById('msgId').value = id;
			var params = "process.php?action=getMessage";
			params+= "&section=view";
			params+= "&id=" + id;
			params+= "&activeClick=" + activeClick;
			getRequest(params, 'messageView');		
		}
	}
//////////////////////////////////////////////////////////////////////
// 
//	processMessageInBox() - recupera la lista de mensages recibidos
//
//////////////////////////////////////////////////////////////////////		
	function processMessageInBox()
	{
		document.getElementById('mail_inbox_bto_on').style.display = "block"; // mostramos boton entrada on 
		document.getElementById('mail_inbox_bto_off').style.display = "none"; // ocultamos boton entrada off 
		document.getElementById('mail_sent_bto_on').style.display = "none"; // ocultamos boton enviados on
		document.getElementById('mail_sent_bto_off').style.display = "block"; // mostramos boton enviados off
		document.getElementById('replyButton').style.display = "block"; // mostramos la opcion de resonder
		document.getElementById('deleteButton').style.display = "block"; // mostramos la opcion de eliminar
		document.getElementById('msgId').value = ""; // reset id mensaje
		document.getElementById('msgAction').value = "inBox" // acciones de los botones pulsados
		document.getElementById('messageView').innerHTML = '';//limpiamos mensage
		var params = "process.php?action=getMessage";
		params+= "&section=inBox";
		getRequest(params, 'messageList');	
	}
//////////////////////////////////////////////////////////////////////
// 
//	processMessageSentBox() - recupera la lista de mensages enviados
//
//////////////////////////////////////////////////////////////////////
	function processMessageSentBox()
	{
		document.getElementById('mail_inbox_bto_on').style.display = "none"; // ocultamos boton entrada on 
		document.getElementById('mail_inbox_bto_off').style.display = "block"; // mostramos boton entrada off 
		document.getElementById('mail_sent_bto_on').style.display = "block"; // mostramos boton enviados on
		document.getElementById('mail_sent_bto_off').style.display = "none"; // ocultamos boton enviados off		
		document.getElementById('replyButton').style.display = "none"; // quitamos la opcion de resonder
		document.getElementById('deleteButton').style.display = "none"; // quitamos la opcion de eliminar
		document.getElementById('msgId').value = ""; // reset id mensaje
		document.getElementById('msgAction').value = "replyList"; // acciones de los botones pulsados
		document.getElementById('messageView').innerHTML = '';//limpiamos mensage
		var params = "process.php?action=getMessage";
		params+= "&section=sentBox";
		getRequest(params, 'messageList');	
	}
//////////////////////////////////////////////////////////////////////
// 
//	processMessageReply() - recupera la lista de mensages enviados
//
//////////////////////////////////////////////////////////////////////	
	function processMessageReply()
	{
		document.getElementById('messageView').innerHTML = '';//limpiamos mensage
		var id = document.getElementById('msgId').value;
		if(id == '' ) 
			alert(messages['selectMessageError']);
		else
		{
			var params = "process.php?action=getMessage";
			params+= "&section=msgReply";
			params+= "&id=" + id;
			getRequest(params, 'messageView');	
		}
	}
//////////////////////////////////////////////////////////////////////
// 
//	processMessageDelete() - elimina el mensage
//
//////////////////////////////////////////////////////////////////////	
	function processMessageDelete()
	{
		document.getElementById('messageView').innerHTML = '';//limpiamos mensage
		var id = document.getElementById('msgId').value;
		if(id == '' ) 
			alert(messages['selectMessageError']);
		else
		{
			var params = "process.php?action=getMessage";
			if(document.getElementById('msgAction').value == "replyList")
				params+= "&section=msgDeleteReply";
			else
				params+= "&section=msgDelete";
			params+= "&id=" + id;
			getRequest(params, 'messageList');	
		}
	}
//////////////////////////////////////////////////////////////////////
// 
//	processMessagePrint() - imprime la pantalla
//
//////////////////////////////////////////////////////////////////////	
	function processMessagePrint()
	{
		//document.getElementById('messageView').innerHTML = '';//limpiamos mensage
		var id = document.getElementById('msgId').value;
		if(id == '' ) 
			alert(messages['selectMessageError']);
		else
		{
			window.print();
			/*var params = "process.php?action=getMessage";
			params+= "&section=msgPrint";
			params+= "&id=" + id;
			window.open(params);	*/
		}
	}
//////////////////////////////////////////////////////////////////////
// 
//	changeBgColor() - cambia el fondo de las lineas de mensajes
//
//////////////////////////////////////////////////////////////////////
	function changeBgColor(mouse,line)
	{
		var line = document.getElementById(line);		
		if(mouse == 'over')
		{
			line.style.backgroundColor='#F7F7F7';
		}
		else if(mouse == 'out')
		{
			line.style.backgroundColor='#FFFFFF';
		}
	}
//////////////////////////////////////////////////////////////////////
//
//	processShop() - procesa los contenidos de la tienda	
//
//////////////////////////////////////////////////////////////////////
	function processShop(content)
	{
		var params = "process.php?action=getShopSections";
		params+= "&section=" + content;
		getRequest(params, 'shopContents');
	}
//////////////////////////////////////////////////////////////////
//
// 	processShopBox() - muestra la ficha del articulo
//
//////////////////////////////////////////////////////////////////	
	function processShopBox(id)
	{
		// cerramos la capa de los productos
		document.getElementById('shopProducts').style.display = "none";
		// abrimos la capa del producto
		document.getElementById('shopProduct').style.display = "block";
		
		var params = "process.php?action=getShopSections";
		params+= "&section=getProductData";
		params+= "&id=" + id;
		getRequest(params, 'shopProduct');
	
	}
//////////////////////////////////////////////////////////////////
//
// 	processShopBoardBox() - muestra la ficha de la placa en la tienda
//
//////////////////////////////////////////////////////////////////	
	function processShopBoardBox(id)
	{
		// cerramos la capa de los productos
		document.getElementById('shopProducts').style.display = "none";
		// abrimos la capa del producto
		document.getElementById('shopProduct').style.display = "block";
		var params = "process.php?action=getShopSections";
		params+= "&section=getShopBoardData";
		params+= "&id=" + id;
		getRequest(params, 'shopProduct');
	}
//////////////////////////////////////////////////////////////////
//
// 	processShopProductBack() - muestra la capa con los articulos
//
//////////////////////////////////////////////////////////////////	
	function processShopProductBack()
	{	
		// abrimos la capa de los productos
		document.getElementById('shopProducts').style.display = "block";
		// cerramos y limpiamos la capa del producto
		document.getElementById('shopProduct').style.display = "none";
		document.getElementById('shopProduct').innerHTML = "";
	}
//////////////////////////////////////////////////////////////////////
//
//	processShopAddProduct() - añade el producto a la cesta del usuario
//
//////////////////////////////////////////////////////////////////////		
	function processShopAddProduct(id)
	{
		var params = "process.php?action=getShopSections";
		params+= "&section=setAddProduct";
		params+= "&id=" + id;
		params+= "&quantity=1";
		showPreload = false;
		getRequest(params, 'basketAmount');
		//processShopViewBasket();
		alert(messages['shopMessageAddProduct']);
		// mostramos el resumen de la cesta
		document.getElementById('summaryBasket').style.display = "block";
	}
//////////////////////////////////////////////////////////////////////
//
//	processShopViewBasket() - muestra la pantalla de la cesta
//
//////////////////////////////////////////////////////////////////////	
	function processShopViewBasket()
	{
		var params = "process.php?action=getShopSections";
		params+= "&section=showBasket";
		getRequest(params, 'col_center');
	}
//////////////////////////////////////////////////////////////////////
//
//	processBasketDelete() - elimina el articulo de la cesta y recalcula
//
//////////////////////////////////////////////////////////////////////	
	function processBasketDelete(id)
	{
		// lineas
		var params = "process.php?action=getShopSections";
		params+= "&section=deleteProduct";
		params+= "&id=" + id;
		getRequest(params, 'basket_lines');
		// totales
		var params = "process.php?action=getShopSections";
		params+= "&section=getTotals";
		getRequest(params, 'basket_totals');
	}
//////////////////////////////////////////////////////////////////////
//
//	processBasketChangeQuantity() - recalcula la cantidad de productos
//
//////////////////////////////////////////////////////////////////////	
	function processBasketChangeQuantity(operator,id)
	{	
		// lineas
		var params = "process.php?action=getShopSections";
		if(operator == '-')
			params+= "&section=removeProduct";
		else if(operator == '+')
			params+= "&section=addProduct";
		params+= "&id=" + id;
		getRequest(params, 'basket_lines');
		// totales
		var params = "process.php?action=getShopSections";
		params+= "&section=getTotals";
		getRequest(params, 'basket_totals');
	}
//////////////////////////////////////////////////////////////////////
//
//	processMeetings() - cargar lso contenidos de las reuniones
//
//////////////////////////////////////////////////////////////////////	
	function processMeetings(id)
	{
		var params = "process.php?action=getMeetingsContents";
		params+= "&id=" + id;
		getRequest(params, 'meetingsContents');
	}
//////////////////////////////////////////////////////////////////////
//
//	processUserProfile() - precesa la ficha del usuario seleccionado
//
//////////////////////////////////////////////////////////////////////	
	function processUserProfile(idSelect)
	{
		var source = document.getElementById(idSelect);
		if (source.value != 'null')
		{
			var len = source.length;
			for(var i = (len-1); i >= 0; i--)
			{
				if ((source.options[i] != null) && (source.options[i].selected == true)) 
				{
					var userId = source.options[i].value;
					break;
				}
			}
			var params = "process.php?action=getSection";
			params+= "&section=userData";
			params+= "&id=" + userId;
			getRequest(params, 'userProfile');
		}
	}	
//////////////////////////////////////////////////////////////////////
//
//	processUpdateUserData() - procesa el formulario de actualizacion
//
//////////////////////////////////////////////////////////////////////
	function processUpdateUserData()
	{
		var errorMessage = "";
		var boxError = document.getElementById('errorBox');
		boxError.style.display = 'none';
	
		var m = document.getElementById('userEmail').value.indexOf('@');
		
		if(document.getElementById('userName').value == '')
		{
			errorMessage = "Ha d'indicar un nom.";
			document.getElementById('userName').focus();
		}		
		else if(document.getElementById('userSurname').value == '')
		{
			errorMessage = "Ha d'indicar els cognoms.";
			document.getElementById('userSurname').focus();	
		}
		else if(document.getElementById('userAddress').value == '')
		{
			errorMessage = "Ha d'indicar una dreça.";
			document.getElementById('userAddress').focus();	
		}
		else if(document.getElementById('userCity').value == '')
		{
			errorMessage = "Ha d'indicar una ciuat.";
			document.getElementById('userCity').focus();	
		}
		else if(document.getElementById('userPostCode').value == '')
		{
			errorMessage = "Ha d'indicar un nom codi postal.";
			document.getElementById('userPostCode').focus();	
		}
		else if(document.getElementById('userState').value == '')
		{
			errorMessage = "Ha d'indicar una provincia.";
			document.getElementById('userState').focus();	
		}
		else if(document.getElementById('userCountry').value == '')
		{
			errorMessage = "Ha d'indicar un pis.";
			document.getElementById('userCountry').focus();	
		}		
		else if(document.getElementById('userEmail').value == '' || m < 1 || m == (document.getElementById('userEmail').value.length - 1))
		{
			errorMessage = "Ha d'indicar un e-mail vàlid.";
		document.getElementById('userEmail').focus();	
		}
		else if(document.getElementById('userPhone').value == '')
		{
			errorMessage = "Ha d'indicar un telèfon.";
			document.getElementById('userPhone').focus();	
		}
		else if(document.getElementById('userTaxNumber').value == '')
		{
			errorMessage = "Ha d'indicar un NIF/CIF.";
			document.getElementById('userTaxNumber').focus();	
		}
		else if(document.getElementById('userPassword').value == '')
		{
			errorMessage = "Ha d'indicar una contraseña.";
			document.getElementById('userPassword').focus();	
		}		
		else if(document.getElementById('userPassword').value != document.getElementById('userPasswordConfirm').value)
		{
			errorMessage = "Les contraseñes no son iguals.";
			document.getElementById('userPasswordConfirm').value = "";
			document.getElementById('userPasswordConfirm').focus();	
		}
		/*else if(document.getElementById('userNick').value == '')
		{
			errorMessage = "Ha d'indicar un Nick.";
			document.getElementById('userNick').focus();	
		}
		else if(document.getElementById('userDescription').value == '')
		{
			errorMessage = "Ha d'indicar una descripció.";
			document.getElementById('userDescription').focus();	
		}*/
		
		if(errorMessage != '')
		{
			boxError.style.display = 'block';
			boxError.innerHTML = errorMessage;
		}
		else
			sendUpdateUserData();
	}
//////////////////////////////////////////////////////////////////////
//
//	function sendUpdateUserData() - actializa los datos del usuario
//
//////////////////////////////////////////////////////////////////////
	function sendUpdateUserData()
	{
		var params = "process.php?action=setUserData";
		params += "&name=" + document.getElementById('userName').value;
		params += "&surname=" + document.getElementById('userSurname').value;
		params += "&address=" + document.getElementById('userAddress').value;
		params += "&city=" + document.getElementById('userCity').value;
		params += "&postCode=" + document.getElementById('userPostCode').value;
		params += "&state=" + document.getElementById('userState').value;
		params += "&country=" + document.getElementById('userCountry').value;
		//params += "&email=" + document.getElementById('userEmail').value;
		params += "&phone=" + document.getElementById('userPhone').value;
		params += "&taxNumber=" + document.getElementById('userTaxNumber').value;
		params += "&password=" + document.getElementById('userPassword').value;
		params += "&nick=" + document.getElementById('userNick').value;
		params += "&description=" + document.getElementById('userDescription').value;
		params += "&newsLetter=" + document.getElementById('userNewsLetter').value;
		getRequest(params, 'col_center');		
	}
//////////////////////////////////////////////////////////////////////
//
//	sendMessageUser() - enviar un mensaje al usuario
//
//////////////////////////////////////////////////////////////////////	
	function sendMessageUser(idUser)
	{
		document.getElementById('messageView').style.display = 'block';
		var params = "process.php?action=getMessage";
		params+= "&section=newMessage";
		params+= "&id=" + idUser;
		getRequest(params, 'messageView');
	}
//////////////////////////////////////////////////////////////////////
//
//	getNews() - carga las noticias en la columna central
//
//////////////////////////////////////////////////////////////////////		
	function getNews(id)
	{
		var params = "process.php?action=getNews";
		params+= "&id=" + id;
		getRequest(params, 'col_center');	
	}
//////////////////////////////////////////////////////////////////////
//
//	getMeetings() - carga las reuniones en la columna central
//
//////////////////////////////////////////////////////////////////////		
	function getMeetings(id)
	{
		var params = "process.php?action=getMeetings";
		params+= "&id=" + id;
		getRequest(params, 'col_center');	
	}
//////////////////////////////////////////////////////////////////////
//
//	lostPassword() - envia la contraseña al usuario
//
//////////////////////////////////////////////////////////////////////	
	function lostPassword()
	{
		var email = document.getElementById('lostEmail').value;
		var m = email.indexOf('@');
		if(email == '' || m < 1 || m == (m.length - 1))
			alert(messages['mailNotValid']);
		else
		{
			var params = "process.php?action=lostPassword";
			params+= "&id=" + email;
			getRequest(params, 'col_center');
		}
	}
//////////////////////////////////////////////////////////////////////
//
//	funciones para los mapas
//
//////////////////////////////////////////////////////////////////////	
	function showMapDetail()
	{
		document.getElementById('map1').style.display = "none"; 
		document.getElementById('map2').style.display = "block"; 
	}
	function hideMapDetail()
	{
		document.getElementById('map1').style.display = "block"; 
		document.getElementById('map2').style.display = "none"; 	
	}	
	function showUbicacion()
	{
		document.getElementById('ubicacion').style.display = "block";
		document.getElementById('lnkUbucacion').style.display = "block";
		document.getElementById('lnkUbucacion2').style.display = "none";
		document.getElementById('distancias').style.display = "none";
		document.getElementById('lnkDistancia').style.display = "block";
		document.getElementById('lnkDistancia2').style.display = "none";
	}
	function showDistancia()
	{
		document.getElementById('ubicacion').style.display = "none";
		document.getElementById('lnkUbucacion').style.display = "none";
		document.getElementById('lnkUbucacion2').style.display = "block";
		document.getElementById('distancias').style.display = "block";
		document.getElementById('lnkDistancia').style.display = "none";
		document.getElementById('lnkDistancia2').style.display = "block";
	}
	function fromBarcelona()
	{
		document.getElementById('paris').style.display = "none"; 
		document.getElementById('madrid').style.display = "none"; 	
		document.getElementById('barcelona').style.display = "block"; 
	}
	function fromMadrid()
	{
		document.getElementById('paris').style.display = "none"; 
		document.getElementById('madrid').style.display = "block"; 	
		document.getElementById('barcelona').style.display = "none"; 
	}
	
	function fromParis()
	{
		document.getElementById('paris').style.display = "block"; 
		document.getElementById('madrid').style.display = "none"; 	
		document.getElementById('barcelona').style.display = "none"; 
	}
//////////////////////////////////////////////////////////////////////
//
//
//
//////////////////////////////////////////////////////////////////////
	function openMeeting(id)
	{
		var div = document.getElementById('meeting_'+id);
		var lnk = document.getElementById('link_meeting_'+id);
		if(div.style.display == "block")
		{
			div.style.display = "none";
			lnk.className = "lnkNewsTitles";
		}
		else
		{
			div.style.display = "block";
			lnk.className = "lnkNewsTitles_active";
		}
	}
//////////////////////////////////////////////////////////////////////
//
//	
//
//////////////////////////////////////////////////////////////////////		
	
	function changeClass(id,newClass)
	{
		// reseteamos todas las classes activas
		node = document.getElementsByTagName("body")[0];		
		var re = new RegExp('\\blinkMenu_active\\b');		
		var re2 = new RegExp('\\blnkColLeft_active\\b');
		var els = node.getElementsByTagName("*");	
		for(var i=0,j=els.length; i<j; i++)
		{
			if(re.test(els[i].className))
				document.getElementById(els[i].id).className = 'linkMenu';
			if(re2.test(els[i].className))
				document.getElementById(els[i].id).className = 'lnkColLeft';
		}
		// activamos la nueva classe en el objeto clicado	
		try
		{	
			var obj = document.getElementById(id);	
			if(obj.className == 'linkMenu')
				obj.className = 'linkMenu_active';
			else if(obj.className == 'lnkColLeft')
				obj.className = 'lnkColLeft_active';
		}
		catch(e)
		{		
			//alert(e+'\n'+id+'\n'+newClass);
		}		
	}
//////////////////////////////////////////////////////////////////////
//
//	processShopOrderConfirm
//
//////////////////////////////////////////////////////////////////////	
	function processShopOrderConfirm()
	{
		var params = "process.php?action=getSection&section=order_confirm";
		// datos de envio
		params += "&user_name=" + document.getElementById('user_name').value;
		params += "&user_surname=" + document.getElementById('user_surname').value;
		params += "&user_address=" + document.getElementById('user_address').value;
		params += "&user_city=" + document.getElementById('user_city').value;
		params += "&user_zipCode=" + document.getElementById('user_zipCode').value;
		params += "&user_state=" + document.getElementById('user_state').value;
		params += "&user_state_id=" + document.getElementById('user_state_id').value;
		params += "&user_country=" + document.getElementById('user_country').value;
		params += "&user_country_id=" + document.getElementById('user_country_id').value;
		params += "&user_telephone=" + document.getElementById('user_telephone').value;
		// datos de facturacion
		params += "&invoice_name=" + document.getElementById('invoice_name').value;
		params += "&invoice_surname=" + document.getElementById('invoice_surname').value;
		params += "&invoice_address=" + document.getElementById('invoice_address').value;
		params += "&invoice_city=" + document.getElementById('invoice_city').value;
		params += "&invoice_zipCode=" + document.getElementById('invoice_zipCode').value;
		params += "&invoice_state=" + document.getElementById('invoice_state').value;
		params += "&invoice_country=" + document.getElementById('invoice_country').value;
		params += "&invoice_telephone=" + document.getElementById('invoice_telephone').value;		
		params += "&invoice_taxNumber=" + document.getElementById('invoice_taxNumber').value;
		params += "&invoice_mail=" + document.getElementById('invoice_mail').value;
		// enviamos
		getRequest(params, 'col_center');
	}
//////////////////////////////////////////////////////////////////////
//
//	processShowHideDetails()
//
//////////////////////////////////////////////////////////////////////
	function processShowHideDetails()
	{
		var option = false;
		if(document.getElementById('details').checked)
			option = true;
		
		var params = "process.php?action=setShowDatils";
		params+= "&option=" + option;
		
		getRequest(params,'col_left');
	}
//////////////////////////////////////////////////////////////////////
//
//	processCatalogOptions() - modifica las selecciones para el catalaogo
//
//////////////////////////////////////////////////////////////////////	
	function processCatalogOptions(value)
	{
		if(value == 'f')
		{// limpiamos 
			document.getElementById('c').checked= ""; 
			document.getElementById('r').checked= ""; 
			document.getElementById('i').checked= ""; 
			document.getElementById('n').checked= "";
		}
		else if(value != 't')
			document.getElementById('f').checked= "";
	}	
//////////////////////////////////////////////////////////////////////
//
//	setState() - inserta la provincia para el pedido 
//
//////////////////////////////////////////////////////////////////////		
	function setState(sel)
	{
		var i;
		objSel = document.getElementById('select_provincia')
		for (i = 0; i < objSel.length; i++) 
		{
		   if(objSel.options[i].value == sel)
		   {
			   document.getElementById('user_state').value = objSel.options[i].text;
			   document.getElementById('user_state_id').value = objSel.options[i].value;
		   }
		}
	}
//////////////////////////////////////////////////////////////////////
//
//	setCountry() - inserta el pais para el pedido 
//
//////////////////////////////////////////////////////////////////////		
	function setCountry(sel)
	{
		var i;
		objSel = document.getElementById('select_country')
		for (i = 0; i < objSel.length; i++) 
		{
		   if(objSel.options[i].value == sel)
		   {
			   document.getElementById('user_country').value = objSel.options[i].text;
			   document.getElementById('user_country_id').value = objSel.options[i].value;
		   }
		}
	}	
//////////////////////////////////////////////////////////////////////
//
//	Cookies functions
//
//////////////////////////////////////////////////////////////////////	
	function createCookie(name,value,days) 
	{
		if (days)
		{
			var date = new Date();
			date.setTime(date.getTime()+(days*24*60*60*1000));
			var expires = "; expires="+date.toGMTString();
		}
		else var expires = "";
		document.cookie = name+"="+value+expires+"; path=/";
	}
	
	function readCookie(name) 
	{
		var nameEQ = name + "=";
		var ca = document.cookie.split(';');
		for(var i=0;i < ca.length;i++) {
			var c = ca[i];
			while (c.charAt(0)==' ') c = c.substring(1,c.length);
			if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
		}
		return null;
	}
	
	function eraseCookie(name) 
	{
		createCookie(name,"",-1);
	}
	
//////////////////////////////////////////////////////////////////////
//
//	viewUserBoards() - listar las placas del usuario
//
//////////////////////////////////////////////////////////////////////
	function viewUserBoards(userId)
	{
		document.getElementById('requestUserId').value = userId;
		processSearch('otherUserBoards');

	}
//////////////////////////////////////////////////////////////////////
//
//	viewUserBoardsRepeated() - listar las placas repetidas del usuario
//
//////////////////////////////////////////////////////////////////////	
	function viewUserBoardsRepeated(userId)
	{
		document.getElementById('requestUserId').value = userId;
		processSearch('otherUserRepeatedBoards');
	}	
//////////////////////////////////////////////////////////////////////
//
//	viewUserBoardsSearch() - listar las placas que busca el usuario
//
//////////////////////////////////////////////////////////////////////	
	function viewUserBoardsSearch(userId)
	{
		document.getElementById('requestUserId').value = userId;
		processSearch('otherUserSearchBoards');
	}
//////////////////////////////////////////////////////////////////////
//
//	processMissing() - filtro para mostrar la que me faltan
//
//////////////////////////////////////////////////////////////////////
	function processMissing(tipeList,typeBoard,letter)
	{

		if(document.getElementById('missing').checked)		
			document.getElementById('requestMissing').value = 1;
		else
			document.getElementById('requestMissing').value = 0;
		
		//alert(tipeList+" | " +typeBoard+ " | "+letter)
		
		if(tipeList == 'search')
			processSearch('search');
		else if(tipeList == 'collection')
			processCollection(letter,typeBoard);	
		else if(tipeList == 'otherUserBoards')
			processSearch('otherUserBoards');	
		else if(tipeList == 'otherUserRepeatedBoards')
			processSearch('otherUserRepeatedBoards');
		
		else if(tipeList == 'otherUserSearchBoards')
			processSearch('otherUserSearchBoards');	
	}
//////////////////////////////////////////////////////////////////
//
//	sendUserComment() - envia los comentarios del usuario
//
//////////////////////////////////////////////////////////////////
	function sendUserComment(user_set_id, user_get_id)
	{
		var comment = document.getElementById('comment');
		var str = comment.value;
			str = str.replace(/\r/g, "");
			str = str.replace(/\n/g, "<br>");	
		
		var params = "process.php?action=setUserComment";
		params+= "&user_set_id=" + user_set_id;
		params+= "&user_get_id=" + user_get_id;		
		params+= "&comment=" + str;
		
		sendRequest(params);
	}	
//////////////////////////////////////////////////////////////////////
//
//	getColLeftTop()
//
//////////////////////////////////////////////////////////////////////
	function getColLeftTop()
	{		
		var params = "process.php?action=getColLeftTop";
		getRequest(params,'top_data');
		setTimeout("getColLeftTop()",60000);
	}
//////////////////////////////////////////////////////////////////////
//
//	getColLeftTopRefresh()
//
//////////////////////////////////////////////////////////////////////
	function getColLeftTopRefresh()
	{		
		var params = "process.php?action=getColLeftTop";
		getRequest(params,'top_data');
	}
//////////////////////////////////////////////////////////////////////
//
//	setLanguage()
//
//////////////////////////////////////////////////////////////////////	
	function setLanguage(lng)
	{
		window.location='?lng='+lng;
	}
//////////////////////////////////////////////////////////////////////
//
//	DW functions
//
//////////////////////////////////////////////////////////////////////	
	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_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_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_openBrWindow(theURL,winName,features) { //v2.0
	  window.open(theURL,winName,features);
	}	
	
	function MM_validateForm() { //v4.0
	  if (document.getElementById){
		var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
		for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
		  if (val) { nm=val.name; if ((val=val.value)!="") {
			if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
			  if (p<1 || p==(val.length-1)) errors+='- '+messages['shopOrderFormFields'][nm]+messages['shopOrderFormEmail']+'\n';
			} else if (test!='R') { num = parseFloat(val);
			  if (isNaN(val)) errors+='- '+messages['shopOrderFormFields'][nm]+messages['shopOrderFormNumbers']+'\n';
			  if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
				min=test.substring(8,p); max=test.substring(p+1);
				if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
		  } } } 
		  else if (test.charAt(0) == 'R')  errors += '- '+messages['shopOrderFormFields'][nm]+messages['shopOrderFormRequired']+'\n';}
		} 
		if (errors)
		 alert(messages['shopOrderFormErrorTitle']+'\n\n'+errors);
		else
		processShopOrderConfirm();
		
		document.MM_returnValue = (errors == '');
	} }
	
	
	
	

