/*****************************************************************************/
/*                                2010 Shio2e                                */
/*                  JAVASCRIPT BUSCADOR :: ANUNCIOS :: TIPOS                 */
/*****************************************************************************/

buscador.anuncios.tipos = {
	// VARIABLES CONFIGURACION

	// VARIABLES INTERNAS
	parent : buscador.anuncios,

	// FUNCIONES
	mostrar : function (anuncio, datos){
		switch(parseInt(anuncio.tipo)) {
			case 1:
			case 2:
			case 3:
			case 4:
			case 5:
				this.general(anuncio, datos);
				break;
			case 6: // ES UN PORTAL
				switch(parseInt(datos.tipo_portal)) {
					case 1: // ES UN PORTAL
						this.asociacion(anuncio, datos);
						break;
					case 2:
						this.franquicia(anuncio, datos);
						break;
					case 3:
						this.portalDeportivo.mostrar(anuncio, datos);
						break;
					case 4:
						this.portal_multiportal.mostrar(anuncio, datos);
						break;
					case 5:
						this.portalMultipagina.mostrar(anuncio, datos);
						break;
				}
				break;
		}
	},

	mostrarDivs : function (tipo, subtipo){
		subtipo = typeof subtipo != "undefined" ? subtipo : 0;

		$(this.parent.divAnuncioNormal).hide();
		$(this.parent.divAnuncioAsociacion).hide();
		$(this.parent.divAnuncioFranquicia).hide();
		$(this.parent.divAnuncioPortalDeportivo).hide();
		$(this.parent.divAnuncioPortalMultiPortal).hide();
		$(this.parent.divAnuncioPortalMultiPagina).hide();

		switch(parseInt(tipo)) {
			case 1:
			case 2:
			case 3:
			case 4:
			case 5:
				$(this.parent.divAnuncioNormal).show();
				break;
			case 6: // ES UN PORTAL
				switch(parseInt(subtipo)) {
					case 1: // ES UN PORTAL
						$(this.parent.divAnuncioAsociacion).show();
						break;
					case 2:
						$(this.parent.divAnuncioFranquicia).show();
						break;
					case 3:
						$(this.parent.divAnuncioPortalDeportivo).show();
						break;
					case 4:
						$(this.parent.divAnuncioPortalMultiPortal).show();
						break;
					case 5:
						$(this.parent.divAnuncioPortalMultiPagina).show();
						$('pmp_pagina').update('');
						break;
				}
				break;
		}
	},

	general : function (anuncio, datos){
		// CONFIGURAR ELEMENTOS A MOSTRAR
		switch(parseInt(anuncio.tipo)) {
			case 1: // CARTELERIA SIMPLE
				$('tipo_cupon').show();

				if (anuncio.id_anuncio == 216) {
					$('b_sorteo').show();
					$('b_portal').show();
				}
				break;
			case 2: // CARTELERIA CON CUPON
				$('tipo_cupon').show();
				$('b_cupon').show();
				break;
			case 3: // CARTELERIA CON LIMITE DE TIEMPO
				$('tipo_oferta').show();
				$('b_oferta').show();
				$('b_tiempo').show();
				break;
			case 4: // CARTELERIA CON LIMITE DE CANTIDAD
				$('tipo_oferta').show();
				$('b_oferta').show();
				$('b_porcentaje').show();
				break;
			case 5: // CARTELERIA CON LIMITE DE TIEMPO Y CANTIDAD
				$('tipo_oferta').show();
				$('b_oferta').show();
				$('b_tiempo').show();
				$('b_porcentaje').show();
				break;
		}

		// BOTON MAS INFORMACION
		if (datos.mas_informacion != '') {
			$('b_mas_info').show();
			$('b_mas_info').href = datos.mas_informacion;
		}

		// TEXTOS EN FORMULARIOS
		$('fd_txtformulario_personalizado').update(datos.texto_formulario);
		$('fd_formulario_ok_comercio').update(datos.nombre);
		$('fd_formulario_cupon_comercio').update(datos.nombre);

		$('fd_formulario_compra_img').alt = datos.nombre;
		$('fd_formulario_compra_img').src = 'http://img.shio2e.com/t/buscador-anuncio_banner-'+anuncio.id_anuncio+'.png';
		$('fd_formulario_compra_comercio').update(datos.nombre);
		$('fd_formulario_compra_descripcion').update(datos.descripcion);
		$('fd_formulario_compra_precio').update(datos.precio);

		$('fd_formulario_compra_resumen_img').alt = datos.nombre;
		$('fd_formulario_compra_resumen_img').src = 'http://img.shio2e.com/t/buscador-anuncio_banner-'+anuncio.id_anuncio+'.png';
		$('fd_formulario_compra_resumen_comercio').update(datos.nombre);
		$('fd_formulario_compra_resumen_descripcion').update(datos.descripcion);
		$('fd_formulario_compra_resumen_precio').update(datos.precio);

		$('formulario_compra_inicial').reset();
		$('formulario_compra_facturacion').reset();

		// DIRECCION COMERCIO
		var info_comercio = '';
		info_comercio += '<h2>'+datos.nombre+'</h2>';
		info_comercio += datos.direccion+'<br/>'+datos.codigo_postal+' '+datos.poblacion+'<br/>'+datos.provincia;
		$(this.parent.divInfoComercio).update(info_comercio);

		// BOTONES SOCIAL MEDIA
		var social_media = '';
		social_media += '<a href="http://www.facebook.com/share.php?u='+datos.url_encoded+'" target="_blank"><img src="/img/buscador/comp_fb.gif" alt="facebook" /></a>';
		social_media += '&nbsp;&nbsp;&nbsp;';
		social_media += '<a href="http://twitter.com/share?url='+datos.url_encoded+'&text='+datos.texto_encoded+'&via=Shio2e" target="_blank"><img src="/img/buscador/comp_tw.gif" alt="twitter" /></a>';
		$(this.parent.divSocialMedia).update(social_media);

		// CUENTA ATRAS
		if (this.parent.cuenta_atras != null) {
			this.parent.cuenta_atras.stop();
			this.parent.cuenta_atras = null;
		}
		if (datos.tipo == 3 || datos.tipo == 5) {
			this.parent.cuenta_atras = new cuentaAtras('buscador.anuncios.cuenta_atras', datos.fecha_fin, 'rdias', 'rhor', 'rmin', 'rsec');
			this.parent.cuenta_atras.start();
		}

		// DISPONIBILIDAD
		if (datos.tipo == 4 || datos.tipo == 5) {
			var disponibilidad = parseInt(datos.disponibilidad);
			$('porc_restante').update(disponibilidad);
			$('barra_porc').setStyle({ width: disponibilidad+'%' });
		}

		// CARTELERIA
		$('cartel_img').alt = anuncio.nombre;
		$('cartel_img').onload = function(){ $('cargando_cartel').hide(); };
		$('cartel_img').src = 'http://img.shio2e.com/n/buscador-anuncio-'+anuncio.id_anuncio+'.jpg';
	},

	asociacion : function (anuncio, datos){
		// MOSTRAR BOTONES
		$('b_asociaciones').show();

		// DIRECCION COMERCIO
		var info_comercio = '';
		info_comercio += '<h2>'+datos.nombre+'</h2>';
		info_comercio += datos.direccion+'<br/>'+datos.codigo_postal+' '+datos.poblacion+'<br/>'+datos.provincia;
		$(this.parent.divInfoComercio).update(info_comercio);

		// CARTELERIA
		$('cartel_aso_img').alt = anuncio.nombre;
		$('cartel_aso_img').src = 'http://img.shio2e.com/n/buscador-anuncio-'+anuncio.id_anuncio+'.jpg';

		// TITULO CONTENIDO
		$('as_titulo_generico').update(datos.extras.titulo_contenido != '' ? datos.extras.titulo_contenido : 'comercios asociados');

		// COMERCIOS
		var prefijo = 'li.aso.';
		var nuevo_listado = '';
		var style;

		// COMERCIOS - ELIMINAR TODAS LAS OPCIONES DEL LISTADO ACTUAL
		var i = 0;
		while($(prefijo+i))
			$(prefijo+(i++)).remove();

		// COMERCIOS - CREAR LOS NUEVOS ELEMENTOS QUE PASEN EL FILTRO
		var creados = 0;
		for (i=0; i<datos.extras.asociados.length; i++) {
			var obj = datos.extras.asociados[i];

			style = creados < buscador.numOpcMenuAso ? '' : 'display: none;';

			nuevo_listado += '<li id="li.aso.'+creados+'" style="'+style+'" onmouseover="javascript:buscador.fichaTecnica.mostrarInfoListado('+obj.id_comercio+', \''+addslashes(obj.nombre)+'\', ['+obj.categorias.join(',')+'], \'aso.\', 0, 5, 133);" onmouseout="javascript:buscador.fichaTecnica.ocultarInfo();">';
			nuevo_listado += '<a id="aso.'+obj.id_comercio+'" href="javascript:void(0);" onclick="javascript:buscador.abrir(\'ficha\', {id_comercio: '+obj.id_comercio+'});">'+obj.nombre_abreviado+'</a>';
			nuevo_listado += '</li>';

			creados++;
		}

		$('lista_comercios_aso').update(nuevo_listado);
		menuListadoVertical.reset('aso');

		// ANUNCIOS
		var prefijo = 'li.anu.';
		var nuevo_listado = '';
		var style;

		// ANUNCIOS - ELIMINAR TODAS LAS OPCIONES DEL LISTADO ACTUAL
		var i = 0;
		while($(prefijo+i))
			$(prefijo+(i++)).remove();

		// ANUNCIOS - CREAR LOS NUEVOS ELEMENTOS QUE PASEN EL FILTRO
		var creados = 0;
		for (i=0; i<datos.extras.anuncios.length; i++) {
			var obj = datos.extras.anuncios[i];

			style = creados < buscador.numOpcMenuAnu ? '' : 'display: none;';

			nuevo_listado += '<li id="li.anu.'+creados+'" style="'+style+'">';
			nuevo_listado += '<a href="javascript:void(0);" onclick="javascript:buscador.anuncios.clic('+obj.id_anuncio+');buscador.abrir(\'carteleria\', {id_anuncio: '+obj.id_anuncio+', tipo: '+obj.tipo+', id_comercio: '+obj.id_comercio+', nombre: \''+addslashes(obj.nombre)+'\'});"><img id="anuncio.'+obj.id_anuncio+'" src="http://img.shio2e.com/n/buscador-anuncio_banner-'+obj.id_anuncio+'.png"></a>';
			nuevo_listado += '</li>';

			creados++;
		}

		$('as_minibanners').update(nuevo_listado);
		menuListadoVertical.reset('anu');
	},

	franquicia : function (anuncio, datos){
		// MOSTRAR BOTONES
		$('b_asociaciones').show();

		// DIRECCION COMERCIO
		var info_comercio = '';
		info_comercio += '<h2>'+datos.nombre+'</h2>';
		info_comercio += datos.direccion+'<br/>'+datos.codigo_postal+' '+datos.poblacion+'<br/>'+datos.provincia;
		$(this.parent.divInfoComercio).update(info_comercio);

		// CARTELERIA
		$('cartel_aso_img').alt = anuncio.nombre;
		$('cartel_aso_img').src = 'http://img.shio2e.com/n/buscador-anuncio-'+anuncio.id_anuncio+'.jpg';

		// TITULO CONTENIDO
		$('as_titulo_generico').update(datos.extras.titulo_contenido != '' ? datos.extras.titulo_contenido : 'oficinas');

		// COMERCIOS
		var prefijo = 'li.aso.';
		var nuevo_listado = '';
		var style;

		// COMERCIOS - ELIMINAR TODAS LAS OPCIONES DEL LISTADO ACTUAL
		var i = 0;
		while($(prefijo+i))
			$(prefijo+(i++)).remove();

		// COMERCIOS - CREAR LOS NUEVOS ELEMENTOS QUE PASEN EL FILTRO
		var creados = 0;
		for (i=0; i<datos.extras.franquicias.length; i++) {
			var obj = datos.extras.franquicias[i];

			style = creados < buscador.numOpcMenuAso ? '' : 'display: none;';

			nuevo_listado += '<li id="li.aso.'+creados+'" style="'+style+'" onmouseover="javascript:buscador.fichaTecnica.mostrarInfoListado('+obj.id_comercio+', \''+addslashes(obj.nombre)+'\', ['+obj.categorias.join(',')+'], \'aso.\', 0, 5, 133);" onmouseout="javascript:buscador.fichaTecnica.ocultarInfo();">';
			nuevo_listado += '<a id="aso.'+obj.id_comercio+'" href="javascript:void(0);" onclick="javascript:buscador.abrir(\'ficha\', {id_comercio: '+obj.id_comercio+'});">'+obj.nombre_abreviado+'</a>';
			nuevo_listado += '</li>';

			creados++;
		}

		$('lista_comercios_aso').update(nuevo_listado);
		menuListadoVertical.reset('aso');

		// ANUNCIOS
		var prefijo = 'li.anu.';
		var nuevo_listado = '';
		var style;

		// ANUNCIOS - ELIMINAR TODAS LAS OPCIONES DEL LISTADO ACTUAL
		var i = 0;
		while($(prefijo+i))
			$(prefijo+(i++)).remove();

		// ANUNCIOS - CREAR LOS NUEVOS ELEMENTOS QUE PASEN EL FILTRO
		var creados = 0;
		for (i=0; i<datos.extras.anuncios.length; i++) {
			var obj = datos.extras.anuncios[i];

			style = creados < buscador.numOpcMenuAnu ? '' : 'display: none;';

			nuevo_listado += '<li id="li.anu.'+creados+'" style="'+style+'">';
			nuevo_listado += '<a href="javascript:void(0);" onclick="javascript:buscador.anuncios.clic('+obj.id_anuncio+');buscador.abrir(\'carteleria\', {id_anuncio: '+obj.id_anuncio+', tipo: '+obj.tipo+', id_comercio: '+obj.id_comercio+', nombre: \''+addslashes(obj.nombre)+'\'});"><img id="anuncio.'+obj.id_anuncio+'" src="http://img.shio2e.com/n/buscador-anuncio_banner-'+obj.id_anuncio+'.png"></a>';
			nuevo_listado += '</li>';

			creados++;
		}

		$('as_minibanners').update(nuevo_listado);
		menuListadoVertical.reset('anu');
	}
}
