var Newsberry = {
	
	init: function(){
	  
		if (Browser.Engine.trident && Browser.Engine.version <= 4) Newsberry.IEFixes();
	
	  if ($$('.slideshow')[0]) Newsberry.initSlideshow();
	  
		if ($('formula-libre') && $('formula-guiada')) Newsberry.initPlans();

		if ($('browse-clients')) Newsberry.initClients();
		
	},
	
	IEFixes: function(){
		/* Fixes the phone hover */
		
		$$('div.help span.tel').each(function(el){
			el.addEvent('mouseover', function(e){
				el.getElement('span.value').setStyle('display', 'block');
			});
			
			el.addEvent('mouseout', function(e){
				el.getElement('span.value').setStyle('display', 'none');
			});
		})
	},
	
	initSlideshow: function(){
	  var scrollFx = new Fx.Scroll($$('.slideshow')[0]);
	  var position = 1;
	  
	  $$('div.slide-1, div.slide-2, div.slide-3').each(function(el){
	    var next = new Element('a').set('html', 'Siguiente<span></span>').addClass('next').injectInside(el);
	    
	    next.addEvent('click', function(e){
	      e = Event(e).stop();

        this.setOpacity(0);
        
	      scrollFx.start(position * 980, 0);
	      
	      $$('.slideshow-nav')[0].removeClass('current-' + position).addClass('current-' + String(position + 1));
	      
	      position++;
	    });
	  });
	  
	  $$('li.slide-1, li.slide-2, li.slide-3, li.slide-4').each(function(el){
	    el.addEvent('click', function(e){
	      e = Event(e).stop();
    
	      var current = position;
	      position    = parseInt(el.get('class').replace(/slide-/, ''));
	      
	      scrollFx.start((position - 1) * 980, 0);
	      
	      $$('.slideshow-nav')[0].removeClass('current-' + current).addClass('current-' + position);
	      
	      $$('.next').each(function(el){ el.fade('in'); });
	    });
	  });
	},
	
	initPlans: function(){
		var hash = window.location.hash;
		
		if (hash == '') hash = '#formula-libre';
		
		$('n-libre').store('html', $('n-libre').get('html'));
		$('n-guiado').store('html', $('n-guiado').get('html'));
		
		Newsberry.selectPlan(hash);
		
		$$('.pricing-tabs').each(function(el){
			el.addEvent('click', function(e){
				e = Event(e).stop();
				
				Newsberry.selectPlan(el.getElement('a').get('href'));
			});
		});
	},
	
	selectPlan: function(hash){
		var selected = hash.split('#')[1];

		switch(selected) {
			case 'formula-libre':
				$('n-libre').set('html', $('n-libre').get('html').replace(/<a[^>]*>/i, '<strong>').replace(/<\/a>/i, '</strong>'));
				$('n-guiado').set('html', $('n-guiado').retrieve('html'));
				
				$('formula-libre').show();
				$('formula-guiada').hide();
			break;
			case 'formula-guiada':
				$('n-guiado').set('html', $('n-guiado').get('html').replace(/[^>]*>/i, '<strong>').replace(/<\/a>/i, '</strong>'));
				$('n-libre').set('html', $('n-libre').retrieve('html'));
				
				$('formula-libre').hide();
				$('formula-guiada').show();
			break;			
		}
	},
	
	initClients: function(){
		var state 	= 0;
		var quotes = $$('div.quote');

		$('browse-clients').addEvent('click', function(e){
			e = Event(e).stop();
			
			quotes[state].hide();
			
			if (state >= quotes.length - 1) {
				state = 0;
			} else {
				state++;
			}
			
			quotes[state].show();
		});
	}
	
}

window.addEvent('domready', Newsberry.init);

/* Extension to MooTools core */

Element.implement({
	
	show: function(){
		if (this.hasClass('hide')) {
			this.removeClass('hide');
		}
	},
	
	hide: function(){
		if (!this.hasClass('hide')) {
			this.addClass('hide');
		}
	}
	
});
