
function activar_input(campo) {
	if( ! campo.id ) { campo.id = campo.name; }
	var jframe_input = $('msg_err_'+campo.id);

	var jframe_inputFx = jframe_input.effect('background-color', {wait: false});
	jframe_inputFx.start('#FFFFFF');
	jframe_inputFx.start('#cccccc').chain(jframe_inputFx.start.pass('#FFFFFF', jframe_inputFx));
}

function marcar_producto_sel(){
	$$('.productos_marcados').each( function(producto) {
		producto.removeClass('listadopmenu_marcado');
	});
}

function marcar_noticia_sel(){
	$$('.noticias_marcadas').each( function(noticia) {
		noticia.removeClass('texto_tit_noticia_marcado');
	});
}

function preparar_scroll_noticias(delay){
	
	(function(){
		var scroller  = null;
		var scrollbar = null;
		scroller  = new jsScroller($('Scroller-2'), 181, 389, 'Scroller-Container2');
		scrollbar = new jsScrollbar ($('Scrollbar-Container2'), scroller, false,'', 'Scrollbar-Up2', 'Scrollbar-Down2' ,'Scrollbar-Track2', 'Scrollbar-Handle2');
		var a1 = $('Scroller-Container2').getCoordinates()
		var a2 = $('Container2').getCoordinates()
		
		if(a1['height'] < a2['height']){
			$('Scrollbar-Container2').setStyle('visibility','hidden');
		}
		var scroller2  = null;
		var scrollbar2 = null;
		scroller2  = new jsScroller($('Scroller-1'), 581, 160, 'Scroller-Container');
		scrollbar2 = new jsScrollbar ($('Scrollbar-Container'), scroller2, false,'', 'Scrollbar-Up', 'Scrollbar-Down' ,'Scrollbar-Track', 'Scrollbar-Handle');
		var b1 = $('Scroller-Container').getCoordinates()
		var b2 = $('Container').getCoordinates()
		if(b1['height'] < b2['height']){
			$('Scrollbar-Container').setStyle('visibility','hidden');
		}
	}.delay(delay));
	

	
}

function redireccionar_pagina(servicio){
	$('servicio').setProperty('value',servicio);
	document.forms['frm_redireccion'].submit();
}


function colocar_pie(){
			var ancho_pagina = window.getWidth();
			var alto_pagina = window.getHeight();
			$('mitad_der').setStyle('left',(ancho_pagina/2));
			//var alto = $('pie').getStyle('height');
		
			//$('pie').setStyle('top',(alto_pagina -18 ));
			
}

function dispara_evento(id_elemento,name_evento) {
	sentencia = $(id_elemento).getProperty(name_evento);
	if(sentencia) {
		sentencia = sentencia.replace('this', "$('"+id_elemento+"')");
		eval( sentencia );
	}
}

/** function prepara_scroll(id_j_frame)
 * si queremos hacer un scroll con o sin barra los requisitos son:
		1) El scroll estara formado por dos capas:
			a) La capa contenedora que tiene un ancho y alto concreto y position:relative o absolute (como queramos)
					Ademas tendra overflow:hidden
					La capa contededora debe tener el className 'scroller_undanet' y el id que queramos (por ejemplo 'myid').
			b) La capa que tiene el contenido que tendra un ancho fijo y el alto dependera de su contenido
					Su position debe ser absolute.
					La capa de contenido debe tener el className 'Scroller-Container' y el id debe ser el de la contenedora
					con '_contenido' (por ejemplo 'myid_contenido').
		2) Si ademas queremos que tenga barra de scroll tendremos una capa con el id de la capa contenedora del scroll
					seguido de '_barra' (por ejemplo 'myid_barra').
					esta capa tendra los botones de subir y bajar (si no se quieren poner no son obligatorios) y la capa
					que determina el carril de scroll, dentro de esta capa de carril estara la capa que determina la pieza que
					podremos mover por el carril para desplazar el scroll. Siguiendo el ejemplo tendriamos:
						<div id="myid_barra">
							<a href="javascript:;" class="Scrollbar-Up"></a>
							<div class="Scrollbar-Track">
								<a href="javascript:;" class="Scrollbar-Handle"></a>
							</div>
							<a href="javascript:;" class="Scrollbar-Down"></a>
						</div>
					como se puede ver es obligatorio que los className de los componentes que forman la barra de scroll sean
					los del ejemplo ('Scrollbar-Up', 'Scrollbar-Track', 'Scrollbar-Handle', 'Scrollbar-Down') aun así
					podemos incluir otros estilos css para darle el aspecto visual deseado.
**/
function prepara_scroll(id_j_frame) {
	$ES('.scroller_undanet',id_j_frame).each( function(scroller) {
		
		if( $(scroller.id + '_contenido') ) {
				var contenido = $(scroller.id + '_contenido'); // sin el var en IE falla
				
				if( scroller.offsetHeight < contenido.offsetHeight ) {
						/* necesitamos el scroller porque el contenido es mas grande que el marco */
						var width_scroller = scroller.getStyle('width').toInt();
						var height_scroller = scroller.getStyle('height').toInt();
						var obj_scroller = new jsScroller( contenido, width_scroller, height_scroller );
						if( $(scroller.id + '_barra') ) {
								var barra = $(scroller.id + '_barra');
								barra.setStyle('visibility','visible');
								barra.setStyle('display','block');
								var obj_scrollbar = new jsScrollbar(barra, obj_scroller);
						}
				} else if( $(scroller.id + '_barra') ) {
						var barra = $(scroller.id + '_barra');
						barra.setStyle('visibility','hidden');
						barra.setStyle('display','none');
				}
		}
	} );
}


function prepara_galeria_productos(id_j_frame){
	
	$ES('.all_productos',id_j_frame).each( function(all_productos) {
	
		var fx_titulo = $('contenedor_titulo_producto').effects({
				duration: 1200 ,
				transition: Fx.Transitions.Cubic.easeIn ,
				wait: false
			});
		var fx_descripcion = $('contenedor_texto_producto').effects({
				duration: 1200 ,
				transition: Fx.Transitions.Cubic.easeIn ,
				wait:false
				
			});
		var fx_foto = $('imagen_producto').effects({
				duration: 1000 ,
				transition: Fx.Transitions.Cubic.easeIn ,
				wait:false
				
			});
		
		
		all_productos.addEvent('click', function(e) {
			eliminar_eventos_productos('');
			$('cargando_productos').setStyle('visibility','visible');
			var foto_ampliada = all_productos.getProperty('foto');
			var descripcion = all_productos.getProperty('descripcion');
			var titulo = all_productos.getProperty('rel');
			new Asset.images([foto_ampliada], {
			    onComplete: function(){
			        fx_foto.start({
									'opacity': [1,0]
							}).chain(function() {
								$('imagen_producto').src = foto_ampliada;
								fx_foto.start({
									'opacity': [0,1]
								});
							});
							fx_descripcion.start({
								  'opacity': [1,0]
							}).chain(function() {
								$('contenedor_texto_producto').setHTML(descripcion);
								fx_descripcion.start({
									'opacity': [0,1]
								});
						  });
						  fx_titulo.start({
								  'opacity': [1,0]
							}).chain(function() {
								$('cargando_productos').setStyle('visibility','hidden');
								$('contenedor_titulo_producto').setHTML(titulo);
								fx_titulo.start({
									'opacity': [0,1]
								});
						  });
						  (function(){prepara_galeria_productos('');}.delay(2400))
			    }
			    
			});
		});
		
	} );
}

function eliminar_eventos_productos(id_j_frame){
	
	$ES('.all_productos',id_j_frame).each( function(all_productos) {
		all_productos.removeEvents();
	});
	
}

function activar_producto(id_producto){
	desactivar_productos();
	$('producto_'+id_producto).removeClass('texto_producto');
	$('producto_'+id_producto).addClass('texto_producto_selecc');
	
}

function desactivar_productos(id_j_frame){
	$ES('.all_productos',id_j_frame).each( function(productos) {
		productos.removeClass('texto_producto_selecc');
		productos.addClass('texto_producto');
	} );
}

function prepara_galeria(id_j_frame){
	
	$ES('.container_foto',id_j_frame).each( function(container_foto) {
		var texto_foto = container_foto.getLast();
		var cont_foto = container_foto.getFirst();
		var foto = cont_foto.getFirst();
		var descripcion_foto = foto.getProperty('descripcion');
		
		
		var fx = texto_foto.effects({
				duration: 300 ,
				transition: Fx.Transitions.Back.easeOut ,
				wait: false
			});
		var fx_descripcion = $('descripcion_foto').effects({
				duration: 1900 ,
				transition: Fx.Transitions.Back.easeOut ,
				wait: false
			});
		var fx_foto = $('foto_ampliada').effects({
				duration: 1000 ,
				transition: Fx.Transitions.Cubic.easeIn ,
				wait:false
				
			});
		container_foto.addEvent('mouseover', function(e) {
			texto_foto.setOpacity(0);
			texto_foto.setStyle('visibility','visible');
			fx.start({
				'opacity': [0,1]
			})
			container_foto.setStyles({'height':77,'background-image':'url(img/bkg_galeria_activo.gif)'})
		});
		container_foto.addEvent('mouseout', function(e) {
			texto_foto.setOpacity(1);
			fx.start({
				'opacity': [1,0]
			});
			texto_foto.setStyle('visibility','hidden');
			
			container_foto.setStyles({'height':64,'background-image':'url(img/bkg_contenedor_foto.gif)'})
		});
		
		foto.addEvent('click', function(e) {
			$('cargando').setStyle('visibility','visible');
			var padre = this.getParent();
			var padre_del_padre = padre.getParent();
			eliminar_eventos('',padre_del_padre);
			prepara_galeria();
			deshabilitar_fotos();
			deshabilitar_seleccionado(padre,foto,container_foto,padre_del_padre,texto_foto);
			var foto_ampliada = foto.getProperty('rel');
			new Asset.images([foto_ampliada], {
			    onComplete: function(){
			        fx_foto.start({
									'opacity': [1,0]
							}).chain(function() {
								$('foto_ampliada').src = foto_ampliada;
								fx_foto.start({
									'opacity': [0,1]
								});
							});
							fx_descripcion.start({
								  'opacity': [1,0]
							}).chain(function() {
								
								$('descripcion_foto').setHTML(descripcion_foto);
								$('cargando').setStyle('visibility','hidden');
								fx_descripcion.start({
									'opacity': [0,1]
							});
							
							habilitar_fotos();
							
							})
			    }
			    
			});
		});
		
	} );
}

function deshabilitar_seleccionado(padre,foto,container_foto,padre_del_padre,texto_foto){
	padre.removeEvents();
	foto.removeEvents();
	padre_del_padre.removeEvents();
	container_foto.removeEvents();
}
function deshabilitar_fotos(id_j_frame){
	
	$ES('.container_foto',id_j_frame).each( function(container_foto) {
		var texto_foto = container_foto.getLast();
		var cont_foto = container_foto.getFirst();
		var foto = cont_foto.getFirst();
		foto.removeEvents();
		foto.setStyle('cursor','default')
	});
	
}
function habilitar_fotos(id_j_frame){
	
	var fx_descripcion = $('descripcion_foto').effects({
				duration: 1900 ,
				transition: Fx.Transitions.Back.easeOut ,
				wait: false
			});
	var fx_foto = $('foto_ampliada').effects({
				duration: 1000 ,
				transition: Fx.Transitions.Cubic.easeIn ,
				wait:false
				
			});
	$ES('.container_foto',id_j_frame).each( function(container_foto) {
		$('cargando').setStyle('visibility','visible');
		var texto_foto = container_foto.getLast();
		var cont_foto = container_foto.getFirst();
		var foto = cont_foto.getFirst();
		var descripcion_foto = foto.getProperty('descripcion');
		foto.setStyle('cursor','pointer')
		foto.addEvent('click', function(e) {
			var padre = this.getParent();
			var padre_del_padre = padre.getParent();
			eliminar_eventos('',padre_del_padre);
			prepara_galeria();
			deshabilitar_fotos();
			deshabilitar_seleccionado(padre,foto,container_foto,padre_del_padre,texto_foto);
			var foto_ampliada = foto.getProperty('rel');
			new Asset.images([foto_ampliada], {
			    onComplete: function(){
			        fx_foto.start({
									'opacity': [1,0]
							}).chain(function() {
								$('foto_ampliada').src = foto_ampliada;
								fx_foto.start({
									'opacity': [0,1]
								});
							});
							fx_descripcion.start({
								  'opacity': [1,0]
							}).chain(function() {
								$('descripcion_foto').setHTML(descripcion_foto);
								$('cargando').setStyle('visibility','hidden');
								fx_descripcion.start({
									'opacity': [0,1]
							});
							
							habilitar_fotos();
							
							})
			    }
			    
			});
		});
	});
	
}

function eliminar_eventos(id_j_frame,padre_del_padre){
	
	$ES('.container_foto',id_j_frame).each( function(container_foto) {
		var texto_foto = container_foto.getLast();
		var cont_foto = container_foto.getFirst();
		var foto = cont_foto.getFirst();
		container_foto.removeEvents();
		foto.removeEvents();
		if(padre_del_padre.id != container_foto.id){
			container_foto.setStyles({'height':'64px','background-image':'url(img/bkg_contenedor_foto.gif)'})
			texto_foto.setStyle('visibility','hidden');
			
		}
	});
	
}







/** function prepara_scroll_h(id_j_frame)
 * si queremos hacer un scroll horizontal con o sin barra los requisitos son:
		1) El scroll estara formado por dos capas:
			a) La capa contenedora que tiene un ancho y alto concreto y position:relative o absolute (como queramos)
					Ademas tendra overflow:hidden
					La capa contededora debe tener el className 'scroller_undanet' y el id que queramos (por ejemplo 'myid').
			b) La capa que tiene el contenido que tendra un ancho fijo y el alto dependera de su contenido
					Su position debe ser absolute.
					La capa de contenido debe tener el className 'scroller_container' y el id debe ser el de la contenedora
					con '_contenido' (por ejemplo 'myid_contenido').
		2) Si ademas queremos que tenga barra de scroll tendremos una capa con el id de la capa contenedora del scroll
					seguido de '_barra' (por ejemplo 'myid_barra').
					esta capa tendra los botones de subir y bajar (si no se quieren poner no son obligatorios) y la capa
					que determina el carril de scroll, dentro de esta capa de carril estara la capa que determina la pieza que
					podremos mover por el carril para desplazar el scroll. Siguiendo el ejemplo tendriamos:
						<div id="myid_barra">
							<a href="javascript:;" class="scrollbar_left"></a>
							<div class="scrollbar_track">
								<a href="javascript:;" class="scrollbar_handle"></a>
							</div>
							<a href="javascript:;" class="scrollbar_right"></a>
						</div>
					como se puede ver es obligatorio que los className de los componentes que forman la barra de scroll sean
					los del ejemplo ('scrollbar_left', 'scrollbar_track', 'scrollbar_handle', 'scrollbar_right') aun así
					podemos incluir otros estilos css para darle el aspecto visual deseado.
**/
function prepara_scroll_h(id_j_frame) {

	$ES('.scroller_undanet_h',id_j_frame).each( function(scroller) {
		
		if( $(scroller.id + '_contenido') ) {
				var contenido = $(scroller.id + '_contenido'); // sin el var en IE falla
				if( scroller.offsetWidth + 5 < contenido.offsetWidth ) {
						/* necesitamos el scroller porque el contenido es mas grande que el marco */
						var width_scroller = scroller.getStyle('width').toInt();
						var height_scroller = scroller.getStyle('height').toInt();
						var obj_scroller = new jsScroller( contenido, width_scroller, height_scroller );
						if( $(scroller.id + '_barra') ) {
								var barra = $(scroller.id + '_barra');
								barra.setStyle('visibility','visible');
								barra.setStyle('display','block');
								var obj_scrollbar_h = new jsScrollbarH(barra, obj_scroller);
						}
				} else if( $(scroller.id + '_barra') ) {
						var barra = $(scroller.id + '_barra');
						barra.setStyle('visibility','hidden');
						barra.setStyle('display','none');
				}
		}
	} );
}

/** function prepara_efecto_alargado(id_j_frame)
	Establece un efecto de carga que estira las capas con className 'alargado'
**/
function prepara_efecto_alargado(id_j_frame) {
	$ES('.alargado',id_j_frame).each(function(barra){
		var w = barra.getStyle('width').toInt();
		var fx = barra.effects({
			duration: 1000,
			transition: Fx.Transitions.Back.easeOut 
		});
		fx.start({
			'opacity': [0, 1],
			'width': [0, w]
		})
	});
}

/** function prepara_calendario(id_j_frame)
	Establece el calendario js para aquellos input con un id que lo identifique y el className 'calendario_undanet'
	Si queremos que solo permita seleccionar fechas pasadas o solo fechas futuras fijaremos la propiedad direction="-1"
	o direction="1" respectivamente.
**/
function prepara_calendario(id_j_frame) {
	$ES('.calendario_undanet',id_j_frame).each( function(calendario) {
		var id_calendario = calendario.id.toString();

		Calendar.setup( {
			inputField : id_calendario,
			ifFormat : '%d/%m/%Y',
			align:'bR',
			step: 1,
			firstDay: 1
		} );
		
	} );
}

/** function prepara_textarea(id_j_frame)
			siempre que haya un textarea en un formulario con
			el class='editor_undanet_myid' donde 'myid' sea el id del textarea
			automaticamente lo transforma en un editor visual
**/
function prepara_textarea(id_j_frame) {
	$ES('textarea',id_j_frame).each( function(tipo_textarea) {
		if(tipo_textarea.hasClass('editor_undanet_'+tipo_textarea.id)) {
			tinyMCE.init({
				mode : "textareas",
				theme : "advanced",
				language : "es",
				plugins : "safari,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template",
				theme_advanced_buttons1 : "bold,italic,underline,separator,link,justifyleft,justifycenter,justifyright, justifyfull",
				theme_advanced_buttons2 : "",
				theme_advanced_buttons1_add: "pastetext,pasteword",
				theme_advanced_toolbar_location : "top",
				theme_advanced_toolbar_align : "left",
				theme_advanced_resizing : true,
				apply_source_formatting : false,
				width : "254",
				editor_selector : 'editor_undanet_'+tipo_textarea.id
			});
		}
	} );
}

function cambia_pais(pais,capaboton,capacaja) {
	if(pais==724) {
		capaboton =document.getElementById(capaboton).style;
		capaboton.visibility = "visible";	
	} else {
		capaboton =document.getElementById(capaboton).style;
		capaboton.visibility = "hidden";
	}
}
function vacia_subcategoria(id_caja,id_caja_oculta) {
	document.getElementById(id_caja).value='';
	document.getElementById(id_caja_oculta).value='';
}

function validarEnter(oEvento) {
 if (oEvento.keyCode == 13) {   // Para que directamente funcione el ENTER = Tabulador
 
  return true; 
 }
 return false;
}

function pie(t){
	$('pie').setStyle('top',(t));
}

function borrar_inputs(input1,input2) {
	if(document.getElementById(input1)) { document.getElementById(input1).value=''; }
	if(document.getElementById(input2)) { document.getElementById(input2).value=''; }
}
