       			   
var Site = {
	init: function() {
	
		if ($('elasticosPortafolio')) 
			Elastico.parseLiquids("elasticosPortafolio","#elasticosPortafolio .elasticoPortafolio",'sine:in',125,250,140,140,140,false);
				
		if ($('muestras_content'))
			Muestras.load();
		
		if ($('formContacto'))
			$('formContacto').addEvent('submit', function(e) {
			    new Event(e).stop();

				$('inputAsunto').set('value',$('inputAsunto').get('value').trim());
				$('inputMail').set('value',$('inputMail').get('value').trim());
				$('inputNombre').set('value',$('inputNombre').get('value').trim());
				$('textMensaje').set('value',$('textMensaje').get('value').trim());

			    var regularMail=/^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])/;
		        var regularNombre=/^[a-zA-Z0-9_.-]/;
		        
		        if($('inputMail').get('value').length==0){
		        	if($$('.mMailVacio').length==0)
						new Mensaje({clase:'mMailVacio'},'text','formularioRapido');
		        }else if(!regularMail.test($('inputMail').get('value'))){
					if($$('.mMailErroneo').length==0)
						new Mensaje({clase:'mMailErroneo'},'text','formularioRapido');
		        }
		        else if(!regularNombre.test($('inputNombre').get('value'))){
		        	if($$('.mNombreVacio').length==0)
						new Mensaje({clase:'mNombreVacio'},'text','formularioRapido');
		        }else{	
					this.submit(); 				
				}
		});
		
		//animacion botonera principal
		var menuPrincipal = $$('#mainNav li');

		var idElemActivo = 0;
			
		if($('infoIndex'))    idElemActivo = 0;
		if($('contentServicios')) idElemActivo = 1;
		if($('miniaturasPortafolio') || $('muestras')) idElemActivo = 2;
		if($('formularioContacto')) idElemActivo = 3;
		if($('contentNoticias')) idElemActivo = 4;
			
		$('mainNav').set('style','background:url(http://kybalion.es/wp-content/themes/kybalion2.x/images/comun/flechasMenu.png) no-repeat;');

		animaBotoneraPrincipal('mainNav','#mainNav a',idElemActivo,10);					
	}
};

var animaBotoneraPrincipal = function(idBotonera,botones,idElemActivo,ajuste) {
	var animaPosActual = new Fx.Tween($(idBotonera), { 
		duration: 200,
		transition: Fx.Transitions.Sine.easeOut  
	});

	$$(botones).each(function(item){  
		item.addEvent('mouseenter', function() { 
			var thisPos = item.getPosition(idBotonera).x  + item.getSize().x/2 -ajuste; 
			animaPosActual.cancel();
			animaPosActual.start('background-position', thisPos + 'px 0px'); 
		});
	});
	
	var posActual = function() {
		animaPosActual.cancel();		
		var activePos = $$(botones)[idElemActivo].getPosition(idBotonera).x  + $$(botones)[idElemActivo].getSize().x/2 -ajuste; ; 
		animaPosActual.start('background-position', activePos + 'px 0px' );      
	};
	
	posActual(); 
	$(idBotonera).addEvent('mouseleave', posActual);	
};
		
var Elastico = {	
	parseLiquids: function(idContenedor,elementos,tAnimacion,d,wExpandido,wEscalar,wEscalado,wElem,retorno){ 
		var elastico = $$(elementos);
		var fx = new Fx.Elements(elastico, {wait: false, duration: d, transition: tAnimacion});
		elastico.each(function(e, i) {
			e.addEvent("mouseenter", function(event) {
				var o = {};
				o[i] = {width: [e.getStyle("width").toInt(), wExpandido]}
				elastico.each(function(other, j) {
					if(i != j) {
						var w = other.getStyle("width").toInt();
						if(w != wEscalar) o[j] = {'width': [w,wEscalado]};
					}
				});
				fx.start(o);
			});
		});
	 
	 if(retorno)
		$(idContenedor).addEvent("mouseleave", function(event) {
			var o = {};
			elastico.each(function(e, i) {
				o[i] = {width: [e.getStyle("width").toInt(),wElem]}
			});
			fx.start(o);
		});
	}
};

//carrusel muestras
var Muestras ={
	load: function (){
		//config del carrusel
		var cTrabajos = new iCarousel("muestras_content", {
			idPrevious: "muestras_previous",
			idNext: "muestras_next",
			idToggle: "undefined",
			item: {
				klass: "muestras_item",
				size: 990
			},
			animation: {
				type: "scroll",
				duration: 1000,
				amount: 1
			}
		});
		
		window.addEvent('keydown', function(event){
   			if(event.key=='right') cTrabajos._next();	   			
   			if(event.key=='left')  cTrabajos._previous();
		});

		$$('.trabajoInfo').each(function(trabajo,i){
			var actual = 0;	
			masImg  = trabajo.getElement('.otrasImagenes');
			if(masImg){
				masImg.getElements('a').each(function(img,k){
					img.addEvent("click", function(event){
						event.stop();
						if(actual!=k){
							imgPrin = trabajo.getElement('.imgFull');
							//cambiar replace x una er !!
							srcNew  = imgPrin.src.replace(actual+".jpg",k+".jpg");
							tIn 	= new Date().getTime();		
							loader  = new Element('div',{'id':'loader'}).injectInside(trabajo);			
							
							new Asset.images([srcNew], {
								onProgress: function(i) {
								
								},
								onComplete: function() {										
									loader.dispose();									
									imgPrin.fade('toggle');
									actual=k;								
									function myFunction(){
										imgPrin.fade('toggle');
										imgPrin.src= srcNew;
 									}  
 									myFunction.delay(300);
								}
							});						
						}
					});
				});
			}
		});

		$$('.ant').each(function(flecha,i){ flecha.addEvent("click", function(e) { e.stop();cTrabajos._previous();	});});
		$$('.sig').each(function(flecha,i){ flecha.addEvent("click", function(e) { e.stop();cTrabajos._next();		});});
		
		//retiramos todas las miniaturas para hacer carga con loader 
		var acum=1;
		var pathImg= new Array();
		var despla=new Array();
		var listaTrabajos=$$('.trabajo');
		
		for(i=0;i<listaTrabajos.length/2;i++){
			var t=listaTrabajos[i];
			var l=t.getFirst('.listadoTrabajos');
			var e=t.getFirst('.imgTrabajo').getChildren();
			pathImg[i]=e.get('src');
			e.setStyle('opacity','0');
			e.destroy();			
			listaTrabajos[i+listaTrabajos.length/2].getFirst('.imgTrabajo').getChildren().destroy();
			despla[i]=acum;
			if(!l) acum++;
			else acum+=l.getChildren().length;
		}
							
		pathImg.each(function(img,i){
			
			new Asset.image(img,{title: 'Pulse aquí para visualizar el trabajo', 
				onload: function(){	
					var e;

					for(j=1;j>=0;j--){	

						e=listaTrabajos[i+listaTrabajos.length/2*j].getFirst('.imgTrabajo');
						var l=listaTrabajos[i+listaTrabajos.length/2*j].getFirst('.listadoTrabajos');
						this.clone().injectInside(e);		

						e.addEvent("click", function(event){ 
							event.stop();
							cTrabajos.goTo(cTrabajos._atScreen()+despla[i]); 
						});	
					
						if(l){
							l.getChildren().each(function(il,k){
								il.addEvent("click", function(event){
									event.stop();cTrabajos.goTo(cTrabajos._atScreen()+despla[i]+k);
								});
							});	
						}
					}	
					e.setStyle('opacity','0');
					e.fade(1);
				}			
			});
		});
	}
};

var Mensaje = new Class({ 
	Implements:[Events,Options],
	options: {
		clase:'burbujaMensaje',
		animation: {
			type: "fadeNscroll",// fadeNscroll, scroll, fade
			direction: "left",// if type = scroll, set: top || left
			amount: 1,// if type = scroll, set the amount to scroll
			transition: 'Cubic:In:Out',
			duration: 1000,
			rotate: {
				type: "manual",// auto || manual
				interval:4000,// if type = auto, set the interval (ms)
				onMouseOver: "stop"// if type = auto, set the onmouseover behavior: stop || proceed
			}
		},
		tipoMensaje:'info',
		onClick: Class.empty
	},
	
    initialize: function(options,texto,idContenedor){ 
    	
		this.setOptions(options);
		var contenedor = new Element('div',{
			'class':this.options.clase,
			'events': {
				'click': function(event){
				//	event.stop();
				//	contenedor.dispose();
				}
			}
			
		}).injectInside(idContenedor);
		
		contenedor.setStyle('opacity','0');
		contenedor.fade(1);
					
		(function(){contenedor.fade(0);(function(){contenedor.dispose()}.delay(1000))}).delay(3500); 

    },
	setMensaje : function(mensaje){	},
	getMensaje : function(){ },
	getTipoMensaje: function(){ return this.options.tipoMensaje;}
});

window.addEvent('domready', function() {
	Site.init();
});
