//Variables globales para mantener la posicion del carrito
var coord_x=0;
var coord_y=0;




//Esta funcion crear la capa carrito y la inyecta en el body para tener posiciones absolutas
function crear_repositorio_carrito(){
	var cart = new Element('div', {'id': 'cart','height':'100%'}).injectInside($E('body'));
	
	var maximizar_carrito = new Element('div', {'id': 'maximizar_carrito'}).injectInside(cart);
	var tablita = new Element('table' , {'id': 'tablita_max'}).adopt(
									new Element('tbody').adopt(
										new Element('tr').adopt(
											new Element('td').adopt(
												new Element('img', {'src': 'img/img_mini_cesta.gif','title':'Mi cesta'})
											),
											new Element('td', {'id': 'arrastrar_max' , 'width':'100%' , 'height' : '15px' })
											,
											new Element('td').adopt(
												new Element('table').adopt(
													new Element('tbody').adopt(
														new Element('tr').adopt(
															new Element('td').adopt(
																new Element('a', {'href': 'javascript:cerrar_carrito();','id': 'mi'}).adopt(
																	new Element('img', {'src': 'img/img_mini_cerrar.gif','title':'Cerrar'})
																)
															)
														)
														,
														new Element('tr').adopt(
															new Element('td').adopt(
																new Element('a', {'href': 'javascript:maximizar_carrito();','id': 'ma'}).adopt(
																	new Element('img', {'src': 'img/img_mini_ampliar.gif','title':'Maximizar'})
																)
															)
														)
													)
												)		
																
											)
										
											
										)
									)
								).injectInside(maximizar_carrito);
	
	var contenido_carrito_maximizado = new Element('div', {'id': 'contenido_carrito_maximizado'}).injectInside(cart);
	var minimizar_carrito = new Element('div', {'id': 'minimizar_carrito'}).injectInside(contenido_carrito_maximizado);
	var tablita = new Element('table' , {'id': 'tablita_min' }).adopt(
									new Element('tbody').adopt(
										new Element('tr').adopt(
										new Element('td').adopt(
												new Element('img', {'src': 'img/img_mi_cesta.gif'})
											)
											,
											new Element('td', {'id': 'arrastrar_min' , 'width':'100%' , 'height' : '20px' })
											,
											new Element('td').adopt(
												new Element('img', {'src': 'img/img_fondo_mi_cesta.gif'})
											)
											,
											
											new Element('td').adopt(
												new Element('table').adopt(
													new Element('tbody').adopt(
														new Element('tr').adopt(
															new Element('td').adopt(
																new Element('a', {'href': 'javascript:cerrar_carrito();','id': 'mi'}).adopt(
																	new Element('img', {'src': 'img/btn_cerrar_mi_cesta.gif','title':'Cerrar'})
																)
															)
														)
														,
														new Element('tr').adopt(
															new Element('td').adopt(
																new Element('a', {'href': 'javascript:minimizar_carrito();','id': 'mi'}).adopt(
																	new Element('img', {'src': 'img/btn_minimizar_mi_cesta.gif','title':'minimizar'})
																)
															)
														)
													)
												)		
																
											)
											
										)
									)
								).injectInside(minimizar_carrito);
								
	//var info = new Element('div', {'id': 'info','class': 'info'}).injectInside(cart);
	
	var contenido_carrito_minimizado = new Element('div', {'id': 'contenido_carrito_minimizado' ,'display':'block'}).injectInside(cart);
	var listado_carrito_maximizado = new Element('div', {'id': 'listado_carrito_maximizado' }).injectInside(contenido_carrito_maximizado);
	
	var tam = $('cart').getCoordinates();	
	var alto = (screen.height/2) - (tam['height'].toInt()/2);
	var ancho = (screen.width/2) - (tam['width'].toInt()/2);
	$('cart').setStyles({'top':alto,'left':ancho,'z-index':'10000','visibility':'hidden','display':'none'});
	$('contenido_carrito_minimizado').setStyles({ 'display':'block'});
	$('listado_carrito_maximizado').setStyles({ 'height':'260px'});
	$('contenido_carrito_minimizado').setProperty('height','100%');
	//$('info').setHTML('Carrito');
	$('tablita_max').setStyles({ 'background-color':'#FFFFFF' ,'display':'block' });
	$('tablita_min').setStyles({ 'background-color':'#FFFFFF'  });
	$('arrastrar_min').setStyles({ 'cursor':'move' });
	$('arrastrar_max').setStyles({ 'cursor':'move' });
	
}

//Esta funcion crear la capa en la que se va a ver la foto del carrito en grande
function crear_ver_producto(){
	var ver_producto_carrito = new Element('div', {'id': 'ver_producto_carrito'}).adopt(
			new Element('div', {'id': 'ver_producto_cerrar','width':'100%','text-align':'right'}).adopt(
				new Element('a', {'href': '#','text-align':'right','Title':'Cerrar foto'}).adopt(
					new Element('img', {'src': 'img/cerrar.gif'})
				)
			) 
			,
			new Element('div', {'id': 'cantidad_carrito'})
	).injectInside($E('body'));
	$('ver_producto_carrito').setStyles({'display':'none','position':'absolute','z-index':'10000','left':'0px','top':'0px','border':'1px solid black'});
	$('ver_producto_cerrar').setStyles({ 'float':'left' });
	$('cantidad_carrito').setStyles({ 'float':'left' });
}

//Esta funcion crear la capa en la que se va a ver la foto del carrito en grande
function crear_ficha_producto(){
	var ver_ficha_producto = new Element('div', {'id': 'ver_ficha_producto'}).injectInside($E('body'));
	$('ver_ficha_producto').setStyles({'display':'none','position':'absolute','z-index':'9999','left':'0px','top':'0px','border':'1px solid black' ,'width':'10px' ,'height':'10px' });
}



function preparar_scroll(delay){
	
	(function(){
		var scroller  = null;
		var scrollbar = null;
		scroller  = new jsScroller($('Scroller-1'), 400, 295, 'Scroller-Container');
		scrollbar = new jsScrollbar ($('Scrollbar-Container'), scroller, false,'', 'Scrollbar-Up', 'Scrollbar-Down' ,'Scrollbar-Track', 'Scrollbar-Handle');
	}.delay(delay));
	

	
}

function preparar_scroll_ficha(delay){
	
	(function(){
		var scroller  = null;
		var scrollbar = null;
		scroller  = new jsScroller($('Scroller-2'), 79, 250, 'Scroller-Container2');
		scrollbar = new jsScrollbar ($('Scrollbar-Container2'), scroller, false,'', 'Scrollbar-Up2', 'Scrollbar-Down2' ,'Scrollbar-Track2', 'Scrollbar-Handle2');
	}.delay(delay));
	

	
}

function crear_tienda(){
	
	//Creo la capa del carrito y la inyecto en el body
	if($('cart') == null){
		crear_repositorio_carrito();
	}
	//Creo la capa de la imagen y la inyecto en el body
	if($('ver_producto_carrito') == null){
		crear_ver_producto();
	}
	//Creo la capa de la imagen y la inyecto en el body
	if($('ver_ficha_producto') == null){
		crear_ficha_producto();
	}
	
	
	var drop = $('cart');
	var inject_drop = $('contenido_carrito_minimizado');
	var dropFx = drop.effect('background-color', {wait: false}); // wait es necesario para hacer el efecto toggle
/*
	$$('.item_carrito').each(function(item_carrito){
		//guardo el tamaño de la imagen original
	 	tamano_imagen = item_carrito.getSize();
	 	
		item_carrito.addEvent('mousedown', function(e) {
			e = new Event(e).stop();
	 
			var clone = this.clone()
				.setStyles(this.getCoordinates()) // Devuelve un objeto con left/top/bottom/right igualito
				.setStyles({'opacity': 0.7, 'position': 'absolute', 'z-index':'10001' ,'font-size': '0.7em'})
				.addEvent('emptydrop', function() {
					this.remove();
					drop.removeEvents();
				}).inject(document.body);
	 
			drop.addEvents({
				'drop': function() {
					drop.removeEvents();
					clone.remove();
					
					//Obtengo el id del producto
					var inputs = item_carrito.getElements('input').getValue();
					
					//inputs[0] es el id del producto
					//inputs[1] es el id de la caracteristica
					//obtengo la cantidad que he escogido del producto
					//var cantidad_producto = $('cuenta'+inputs[0]).getValue();
					var cantidad_producto = 1;
			
					//inserto el producto
					parametros = '&id_producto='+inputs[0]+'&cantidad_producto='+cantidad_producto+'&id_caracteristica='+inputs[1];
					//inserto el producto en session
					ir_a_publica('listado_carrito_maximizado', 'tienda_insert_item', parametros ,true);
					
					//Cojo el estilo  de la capa para ver si esta ampliada o no 
					estilo_ampliado = $('contenido_carrito_maximizado').getStyle('display');
					if( estilo_ampliado == 'block' ){
						(function(){fila_seleccionada(inputs[0]+'-'+inputs[1]);}.delay(300));
						dropFx.start('FFFFFF');
					}
					if( estilo_ampliado != 'block' ){
						dropFx.start('7389AE').chain(dropFx.start.pass('ffffff', dropFx));
					}
					
					//muestro el carrito pequeño
					(function(){ir_a_publica('contenido_carrito_minimizado', 'tienda_gestor_items_mini' );}.delay(400));
					//creamos los tooltips
				
					(function(){
						ocultar_fila_seleccionada(inputs[0]+'-'+inputs[1]);
						crear_tool_tip();
						preparar_scroll(1);
						ir_a_publica('total_carrito', 'calcular_total_sin_iva', '' );
						ir_a_publica('total_mas_portes', 'tienda_calcular_total_portes', '&portes='+$('portes_carrito').getProperty('portes') );
						}.delay(600)
					);
					
					
				},
				'over': function() {
					dropFx.start('98B5C1');
				},
				'leave': function() {
					dropFx.start('ffffff');
				}
			});
	 
			var drag = clone.makeDraggable({
				droppables: [drop]
			}); // Devuelve el elemento draggable
	 
			drag.start(e); // comienzo el evento manualmente
			hacer_draggable_carrito_(drop);
			
		});
	 
	});
*/
	
	hacer_draggable_carrito_(drop);
	(function(){ir_a_publica('contenido_carrito_minimizado', 'tienda_gestor_items_mini' );}.delay(100));
	(function(){ir_a_publica('listado_carrito_maximizado', 'tienda_gestor_items');}.delay(300));
	if($('total_mas_portes')){
	(function(){ir_a_publica('total_carrito', 'calcular_total_sin_iva', '' );
      ir_a_publica('total_mas_portes', 'tienda_calcular_total_portes', '&portes='+$('portes_carrito').getProperty('portes') );}.delay(800));
	}
	(function(){crear_tool_tip();}.delay(1000));
}

function add_item_cart(id_producto,id_item){
	var drop = $('cart');
	var inject_drop = $('contenido_carrito_minimizado');
	//Cojo el estilo  de la capa para ver si esta ampliada o no 
	estilo_ampliado = $('contenido_carrito_maximizado').getStyle('display');
	
	//desactivo los botones de añadir al carrito
	if( estilo_ampliado != 'block' ){
		var dropFx = drop.effect('background-color', {wait: false}); // wait es necesario para hacer el efecto toggle
		dropFx.start('7389AE').chain(dropFx.start.pass('ffffff', dropFx)).chain(dropFx.start.pass('ffffff', dropFx));
	}
	//obtengo la cantidad que he escogido del producto
	//var cantidad_producto = $('cuenta'+id_producto).getValue();
	var cantidad_producto = 1;
	var i = 0;
	$$('.item_carrito').each(function(item_carrito){
		var current_inputs = item_carrito.getElements('input').getValue();
		if( (current_inputs[0]) == id_producto && (i==0) ){
			var coordenadas = $('cart').getStyles('top','left','width');
			
			
			
			//desactivo los botones de añadir al carrito
			if( estilo_ampliado == 'block' ){
				desactivar_botones_carrito();
			}
			
			//inserto el producto
			parametros = '&id_producto='+id_producto+'&id_item='+id_item+'&cantidad_producto='+cantidad_producto+'&id_caracteristica='+current_inputs[1];
			//inserto el producto en session
			ir_a_publica('listado_carrito_maximizado', 'tienda_insert_item', parametros,true );
			
			
			if( estilo_ampliado == 'block' ){
				(function(){fila_seleccionada(id_producto+'-'+current_inputs[1]);}.delay(200));
			}

			//muestro el carrito pequeño
			(function(){ir_a_publica('contenido_carrito_minimizado', 'tienda_gestor_items_mini' );}.delay(400));
			
			
			//creamos los tooltips
		
			(function(){
				ocultar_fila_seleccionada(id_producto+'-'+current_inputs[1]);
				crear_tool_tip();
				preparar_scroll(1);
				ir_a_publica('total_carrito', 'calcular_total_sin_iva', '' );
				ir_a_publica('total_mas_portes', 'tienda_calcular_total_portes', '&portes='+$('portes_carrito').getProperty('portes') );
				}.delay(600)
			);
			
			i = 1;
		}
	});
	mostrar_carrito();
}


function add_item_cart_ficha(id_producto,id_caracteristica,desde_ficha){
	var drop = $('cart');
	var inject_drop = $('contenido_carrito_minimizado');
	//Cojo el estilo  de la capa para ver si esta ampliada o no 
	estilo_ampliado = $('contenido_carrito_maximizado').getStyle('display');
	
	//desactivo los botones de añadir al carrito
	if( estilo_ampliado != 'block' ){
		var dropFx = drop.effect('background-color', {wait: false}); // wait es necesario para hacer el efecto toggle
		dropFx.start('7389AE').chain(dropFx.start.pass('ffffff', dropFx)).chain(dropFx.start.pass('ffffff', dropFx));
	}
	//inserto el producto
	parametros = '&id_producto='+id_producto+'&cantidad_producto=1&id_caracteristica='+id_caracteristica;
	if(desde_ficha) { parametros += '&desde_ficha=S'; }
	//inserto el producto en session
	ir_a_publica('listado_carrito_maximizado', 'tienda_insert_item', parametros );
	if( estilo_ampliado == 'block' ){
		(function(){fila_seleccionada(id_producto + '-' + id_caracteristica);}.delay(100));
	}
	//muestro el carrito pequeño
	(function(){ir_a_publica('contenido_carrito_minimizado', 'tienda_gestor_items_mini' );}.delay(400));
	//creamos los tooltips
	(function(){
		ocultar_fila_seleccionada(id_producto + '-' + id_caracteristica);
		crear_tool_tip();
		preparar_scroll(1);
		ir_a_publica('total_carrito', 'calcular_total_sin_iva', '' );
		ir_a_publica('total_mas_portes', 'tienda_calcular_total_portes', '&portes='+$('portes_carrito').getProperty('portes') );
		}.delay(1000)
	);
	mostrar_carrito();

	
}


function delete_item_cart(id_producto){
	
	//desactivo los botones
	desactivar_botones_carrito();
	fila_seleccionada(id_producto);
	var i = 0;
	var id_producto_carrito = id_producto.split('-');
	var coordenadas = $('cart').getStyles('top','left','width');
		
	//inserto el producto
	parametros = '&id_producto='+id_producto_carrito[0]+'&id_caracteristica='+id_producto_carrito[1];
	
	//Cojo el estilo  de la capa para ver si esta ampliada o no 
	estilo_ampliado = $('contenido_carrito_maximizado').getStyle('display');
	if( estilo_ampliado == 'block' ){
		//borro el producto de la session
		(function(){
			ir_a_publica('listado_carrito_maximizado', 'tienda_delete_item', parametros )	
			//activo los botones
			activar_botones_carrito();
			}.delay(500)
		);	
	}
	//muestro el carrito pequeño
	(function(){ir_a_publica('contenido_carrito_minimizado', 'tienda_gestor_items_mini' );}.delay(400));
	//creamos los tooltips
	(function(){
		//ocultar_fila_seleccionada(id_producto_carrito)
		crear_tool_tip();
		preparar_scroll(1);
		ir_a_publica('total_carrito', 'calcular_total_sin_iva', '' );
		ir_a_publica('total_mas_portes', 'tienda_calcular_total_portes', '&portes='+$('portes_carrito').getProperty('portes') );
		}.delay(1000)
	);
}

function update_item_cart(id_producto,cantidad){

	//desactivo los botones
	fila_seleccionada(id_producto);
	desactivar_botones_carrito();
	var i = 0;
	var id_producto_carrito = id_producto.split('-');
	var coordenadas = $('cart').getStyles('top','left','width');
	
	//inserto el producto
	parametros = '&id_producto='+id_producto_carrito[0]+'&cantidad_producto='+cantidad+'&id_caracteristica='+id_producto_carrito[1];
	
	//Cojo el estilo  de la capa para ver si esta ampliada o no 
	estilo_ampliado = $('contenido_carrito_maximizado').getStyle('display');
	if( estilo_ampliado == 'block' ){
		ir_a_publica('listado_carrito_maximizado', 'tienda_update_item', parametros );
		//activo los botones
		(function(){
			ir_a_publica('total_carrito', 'calcular_total_sin_iva', '' );
			ir_a_publica('total_mas_portes', 'tienda_calcular_total_portes', '&portes='+$('portes_carrito').getProperty('portes') );
			}.delay(1000));
	}
	//muestro el carrito pequeño
	(function(){ir_a_publica('contenido_carrito_minimizado', 'tienda_gestor_items_mini' );}.delay(400));
	//creamos los tooltips
	(function(){
		ocultar_fila_seleccionada(id_producto);
		activar_botones_carrito();
		preparar_scroll(1);
		crear_tool_tip();
		}.delay(1000)
	);
}

function desactivar_botones_carrito(){
	$$('.imagen_add_carrito').each(function(imagen_carrito){
		imagen_carrito.setStyle('visibility','hidden');
	});
}

function activar_botones_carrito(){
	$$('.imagen_add_carrito').each(function(imagen_carrito){
		imagen_carrito.setStyle('visibility','visible');
	});
}

function fila_seleccionada(id_producto){
	activar_botones_carrito();
	
	
	
	var listado_efectos = 0;
	var filaproducto = $('fila_loading'+id_producto);
	if(filaproducto){
		filaproducto.setStyle('visibility','visible');
	}		
	var total_loading = $('total_loading');
	if(total_loading){
		total_loading.setStyle('visibility','visible');
	}		
	var total_mas_portes_loading = $('total_mas_portes_loading');
	if(total_mas_portes_loading){
		total_mas_portes_loading.setStyle('visibility','visible');
	}		
	
}

function ocultar_fila_seleccionada(id_producto){
	
	var listado_efectos = 0;
	
	var filaproducto = $('fila_loading'+id_producto);
	if(filaproducto){
		filaproducto.setStyle('visibility','hidden');
	}		
	var total_loading = $('total_loading');
	if(total_loading){
		total_loading.setStyle('visibility','hidden');
	}		
	var total_mas_portes_loading = $('total_mas_portes_loading');
	if(total_mas_portes_loading){
		total_mas_portes_loading.setStyle('visibility','hidden');
	}		
}

function minimizar_carrito(){
	
	//esta variable la uso porque al hacer dos efectos el oncomplete se ejecuta cada vez que termine un efecto
	var listado_efectos = 0;
	
	$('minimizar_carrito').setStyle('display','none');
	ir_a_publica('contenido_carrito_minimizado', 'tienda_gestor_items_mini' );
	var drop = $('cart');
	
	
	var fx = drop.effects({
		duration: 1200 ,
		transition: Fx.Transitions.Circ.easeOut ,
		onComplete: function()
		{
			listado_efectos += 1;
			if(listado_efectos == 2){
				$('contenido_carrito_minimizado').setStyle('display','block');
				//$('info').setStyle('display','block');
				$('maximizar_carrito').setStyle('display','block');
				$('contenido_items_minimizados').setStyle('display','block');
				
			}
		}
		});
	// Aqui deberemos poner el tamaño original del css del id cart
	var alto='128px';
	if(window.ie){
		var alto='154px';
	}
	fx.start({
		'width': '271px',
		'height': alto
	}).chain(function() {
		this.start({
			'top': coord_y,
			'left': coord_x
		});
	})
	
	
	$('contenido_carrito_maximizado').setStyle('display','none');
}

function maximizar_carrito(){
	
	//esta variable la uso porque al hacer dos efectos el oncomplete se ejecuta cada vez que termine un efecto
	var listado_efectos = 0;
	
	$('maximizar_carrito').setStyle('display','none');
	if ($('contenido_items_minimizados')){
	 	 $('contenido_items_minimizados').setStyle('display','none');
  }
	var drop = $('cart');
	
	//guardo las coordenadas de la posicion desde donde se empezó el movimiento
	coordenadas_carrito = drop.getCoordinates();
	coord_x = coordenadas_carrito['left'];
	coord_y = coordenadas_carrito['top'];

	/*alto_pagina = window.screen.height;
	ancho_pagina = window.screen.width;*/
	ancho_pagina =766;
	if(window.ie){
		alto_pagina =525;
	}else{
		alto_pagina =505;
	}
	var fx = drop.effects({
		duration: 1500 ,
		transition: Fx.Transitions.Elastic.easeOut ,
		onComplete: function()
		{
			listado_efectos += 1;
			if(listado_efectos == 2){
				ir_a_publica('total_carrito', 'calcular_total_sin_iva', '' );
				if($('total_mas_portes')){
					ir_a_publica('total_mas_portes', 'tienda_calcular_total_portes', '&portes='+$('portes_carrito').getProperty('portes') );
				}
				$('contenido_carrito_maximizado').setStyle('display','block');
				//ir_a_publica('listado_carrito_maximizado', 'tienda_gestor_items');
			}
		}
	});
	
	fx.start({
		'top': ((screen.height/2)-(alto_pagina/2)),
		'left': ((screen.width/2)-(ancho_pagina/2))
	}).chain(function() {
		this.start({
			'width': ancho_pagina,
			'height': alto_pagina
		});
	})
	//$('info').setStyle('display','none');
	$('contenido_carrito_minimizado').setStyle('display','none');
	$('minimizar_carrito').setStyle('display','block');
	if($('fila_producto')){
		preparar_scroll(3200);
	}
}

function hacer_draggable_carrito_(drop){
	drop.makeDraggable(
		{ 
			handle: $('arrastrar_max'),
			onStart: function(){
				drop.setOpacity(0.5);
			}.bind(this),
			onComplete: function(){
				drop.setOpacity(1);
			}
		} );
		
	drop.makeDraggable(
		{ 
			handle: $('arrastrar_min'),
			onStart: function(){
				drop.setOpacity(0.5);
			}.bind(this),
			onComplete: function(){
				preparar_scroll(1);
				drop.setOpacity(1);
			}
		} );
}


function crear_tool_tip(){

	$$('.tooltip_class').each(function(tooltip){
	
		tooltip.removeEvents();
		
		//creo un efecto como de salir del carro
		var fx = $('ver_producto_carrito').effects({
			duration: 700 ,
			transition: Fx.Transitions.Bounce.easeOut,
			wait:false
		});
		
		tooltip.addEvent('click', function(e) {
			//recojo el estilo
			var estilos = tooltip.getStyles('background-image','width','height');
			
			//recupero las coordenadas del carrito
			var coordenadas = $('cart').getStyles('top','left','width');
			
			var tamanos_imagen = tooltip.getProperties('x_normal','y_normal','n_items');
			valor_x_imagen = tamanos_imagen['x_normal'];
			valor_y_imagen = tamanos_imagen['y_normal'];
			
			n_cantidad = tamanos_imagen['n_items'];
			$('cantidad_carrito').setHTML('x ' + n_cantidad);
			
			//recupero el tamaño en pixels de ancho de la pantalla
			width_pagina = screen.width;
			total_desplazamiento = coordenadas['left'].toInt() + valor_x_imagen.toInt() + coordenadas['width'].toInt();
			if( width_pagina.toInt() < total_desplazamiento ){
				total = coordenadas['left'].toInt() - valor_x_imagen;
			}else{
				total = coordenadas['left'].toInt() + coordenadas['width'].toInt();
			}
						
			//recupero las coordenadas de la mini-imagen
			tooltip_coordenadas = tooltip.getCoordinates();
			
			
			
			//$('ver_producto_carrito').setStyles({'top':coordenadas['top'],'left':total,'width':valor_x_imagen,'height':valor_y_imagen,'background-image':estilos['background-image'],'background-repeat':'no-repeat','display':'block'});
			$('ver_producto_carrito').setStyles({'top':tooltip_coordenadas['top'],'left':(tooltip_coordenadas['left'] + 16) ,'width':estilos['width'],'height':estilos['height'],'background':'#FFFFFF','background-image':estilos['background-image'],'background-repeat':'no-repeat','display':'block'});
		
			fx.start({
				'opacity': [0, 1],
				'left': total,
				'width': valor_x_imagen,
				'height': valor_y_imagen
			})
	
		});
			
		$('ver_producto_carrito').addEvent('click', function(e) {
			//recupero las coordenadas del carrito
			var coordenadas = $('cart').getStyles('top','left','width');
			fx.start({
				'opacity': [1, 0],
				'left': coordenadas['left'].toInt(),
				'width': [valor_x_imagen,0],
				'height': [valor_y_imagen,0]
			})
			
		});
	 
	});

}


function modificar_cantidad(accion,id_producto){
	
	var contador_producto = $('cuenta'+id_producto).getValue();
	if(accion=='up'){
		actualizar_valor= contador_producto.toInt() + 1;
		if( actualizar_valor > 1 ){
			$('down'+id_producto).setStyle('visibility','visible')
		}
	}else{
		if( contador_producto.toInt() > 1 ){
			actualizar_valor= contador_producto.toInt() - 1;
		}
		if( actualizar_valor == 1 ){
			$('down'+id_producto).setStyle('visibility','hidden')
		}
	}
	$('cuenta'+id_producto).setProperty('value',actualizar_valor)

}

//menu categorias
function menu_catalogo_subcategoria(){

	$$('.link_subcategoria').each(function(slink){
		slink.setOpacity(0.5)
		var fx = slink.effects({
				duration: 700 ,
				transition: Fx.Transitions.Back.easeOut ,
				wait: false
			});
		
		slink.addEvent('mouseover', function(e) {
			fx.start({
				'margin-left': 5,
				'font-size' : 11,
				'color' : '#000099',
				'opacity': [0.5,1]
			})
		});
			
		slink.addEvent('mouseout', function(e) {
			fx.start({
				'margin-left': 0,
				'font-size' : 9,
				'color' : '#000000',
				'opacity': [1,0.5]
			})
		});
	 
	});

}

//menu categorias
function menu_catalogo_categoria(){

	$$('.link_categoria').each(function(slink){
		slink.setOpacity(0.5)
		var fx = slink.effects({
				duration: 700 ,
				transition: Fx.Transitions.Back.easeOut ,
				wait: false
			});
		
		slink.addEvent('mouseover', function(e) {
			fx.start({
				'opacity': [0.5,1]
			})
		});
			
		slink.addEvent('mouseout', function(e) {
			fx.start({
				'opacity': [1,0.5]
			})
		});
	 
	});

}

function mostrar_nueva_ficha(id_producto){
	(function(){ir_a_publica('ver_ficha_producto', 'mostrar_ficha_producto',parametros,true,'',true );}.delay(600));
	preparar_scroll_ficha(1000);
}

function show_ficha(id_item,portada){
	parametros = '&id_item='+id_item;
	if (portada) parametros += '&portada=portada'; 
	ir_a_publica('modulo_container', 'mostrar_ficha_producto',parametros,true,'',true );		
}

function hidde_ficha(){
	
	var fx = $('ver_ficha_producto').effects({
				duration: 1000 ,
				transition: Fx.Transitions.Circ.easeInOut
			});
	fx.start({
				'opacity': [1, 0]
			})
			
	var fx = $('ver_ficha_producto').effects({
				duration: 1000 ,
				transition: Fx.Transitions.Circ.easeInOut ,
				wait: false,
				onComplete: function()
				{
						$('ver_ficha_producto').setStyle('display','none');
						$('ver_ficha_producto').setHTML('');
				}
			});
	fx.start({
				'height': 0,
				'width': 0
			});
	
}

function isnumeric(sText){
   var ValidChars = "0123456789.";
   var IsNumber=true;
   var Char;

 		 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      	
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
     
   return IsNumber;
  
}

function comprobar_stock(id_producto, cantidad, stock){
	
	if( cantidad > stock ){
		$('cuenta'+id_producto).setProperty('value',stock);
	}else if( cantidad == 0 ){
		$('cuenta'+id_producto).setProperty('value',1);
	}
}

function recargar_listado_empresas_transporte(){
	fila_seleccionada(-1);
	(function(){
	ir_a_publica('total_carrito', 'calcular_total_sin_iva', '' );
		ir_a_publica('total_mas_portes', 'tienda_calcular_total_portes', '&portes='+$('portes_carrito').getProperty('portes') );
		preparar_scroll(1);
		crear_tool_tip();
		ocultar_fila_seleccionada(0);
	}.delay(600));
	
}

function change_thumbnail(){/*                        esta funcion hace un efecto para intercambiar el icono thumbnail pero la comento porque da problemas.
	$$('.thumbnails').each(function(thumbnail){
		thumbnail.setOpacity(1);
		thumbnail.setStyle('display','block')
		var fx = thumbnail.effects({
				duration: 700 ,
				transition: Fx.Transitions.Back.easeOut ,
				wait: false
			});
		
		
		thumbnail.addEvent('mouseover', function(e) {
			thumbnail.setStyle('display','none');
			thumbnail.setOpacity(1);
			fx.start({
				'opacity': [1,0]
			}).chain(fx.start.pass({'display': 'none'}, fx));
		});
			
		thumbnail.addEvent('mouseout', function(e) {
			thumbnail.setStyle('display','block');
			fx.start({
				'opacity': [0,1]
			}).chain(fx.start.pass({'display': 'block','opacity':1}, fx));
		});
	 
	});
	*/
}
function load_video(fichero){
	$('contenedor_load_file').setHTML('<img src="img/ajax-loader.gif" style="margin-left:10px;" />');
	(function(){
		$('contenedor_load_file').setHTML('');
		$('contenedor_load_file').setHTML('<embed src="'+ fichero +'" style="border:1px solid #9b0165;" width="520" height="400" autostart="true" loop="true" >');
	}.delay(500));
	
}

function load_file(fichero){
	$('contenedor_load_file').setHTML("<img src='img/ajax-loader.gif' style='margin-left:10px;' />");
	(function(){
		//$('contenedor_load_file').setHTML('');
		$('contenedor_load_file').setHTML('<img src="'+fichero+'" style="border:1px solid #9b0165;margin-left:10px;" />');
		}.delay(500));

}

function cerrar_carrito(){
	$('cart').setStyle('visibility','hidden');
	$('cart').setStyle('display','none');
	if($('container_passat_internet_4b')) {
		$('listado_carrito_maximizado').innerHTML = '';
	}
}

function mostrar_carrito(){
	//Cojo el estilo  de la capa para ver si esta ampliada o no 
	estilo_ampliado = $('contenido_carrito_maximizado').getStyle('display');
	if( estilo_ampliado == 'block' ){
		preparar_scroll(1);
	}
	
	$('cart').setStyle('visibility','visible');
	$('cart').setStyle('display','block');
}
function mostrar_carrito_maximizado() {
	mostrar_carrito();
	maximizar_carrito();
}
function capa_direcciones () {
	$('capa_popup_direccion').setStyle('display','block');
}
function ir_direcciones () {
	
	if ($('radio').getValue()=='Y') {
  	$('capa_direcciones').setStyle('display','block');
		$('capa_popup_direccion').setStyle('height','247px');
		$('container_popup_direccion').setStyle('height','245px');
	}	else {
  	$('capa_direcciones').setStyle('display','none');
		$('capa_popup_direccion').setStyle('height','153px');
		$('container_popup_direccion').setStyle('height','151px');
	}
	
}
function aceptar_pedido() {
	if( $('radio').getValue()!='Y' || validar_formulario($('frm_otra_dir')) ) {
		$('capa_popup_direccion').setStyle('display','none');
		$('capa_direcciones').setStyle('display','none');
		var parametros='';
		if($('radio').getValue()=='Y') {
			parametros +='&nombre_destinatario='+$('nombre_destinatario').value;
			parametros +='&direccion='+$('direccion').value;
			parametros +='&n='+$('n').value;
			parametros +='&piso='+$('piso').value;
			parametros +='&localidad='+$('localidad').value;
			parametros +='&codigo_postal='+$('codigo_postal').value;
			parametros +='&pais='+$('pais').value;
			parametros +='&tlfno='+$('tlfno').value;
		}
		ir_a_publica('capa_resultado', 'tienda_realizar_pago',parametros,true );
	}
}
function chekear_direcion (check,id_caracteristica) {
	if(check.checked) {
			$('telon_'+id_caracteristica).setStyle('display','none');
		}else {$('telon_'+id_caracteristica).setStyle('display','block');}
	}