// JavaScript Document
Element.implement({

  makeClickable: function(){
		var anchor = this.getElement('a');
		if (anchor){
			this.setStyle('cursor', 'pointer');
			this.addEvent('click', function(event){
			  if (document.id(event.target) != anchor) window.location = anchor.href;

			});
		}
	},
	
	openInWindow: function(){
		this.addEvent('click', function(){
			event.preventDefault();
			window.open(this.href);
		});
		return this;
	}
	
});
		
var TE = {
	
	
	init: function(){
		
		$$('a._blank').openInWindow();
		
		// Forms
		TE.Form.init();
		
		if($('kontakty')){
			TE.Cap.init();	
		}
		
		var energyArrow = $$('#energy-col a');
 			if(energyArrow) {
				energyArrow.setStyle('background-position', '0px 0px');
			}
				
		  energyArrow.addEvents({
		
			
			mouseenter: function(){
				this.set('morph', {duration: 250});
				this.morph({
				'background-position': '10px 0px'
			  });
			},
		
			mouseleave: function(){
				this.set('morph', {duration: 200});
				this.morph({
				'background-position': '0px 0px'
			  });
			}
		
		  });
		  
		var facilityArrow = $$('#fm-col a');
 			if(facilityArrow) {
				facilityArrow.setStyle('background-position', '0px 0px');
			}
				
		  facilityArrow.addEvents({
		
			
			mouseenter: function(){
				this.set('morph', {duration: 250});
				this.morph({
				'background-position': '10px 0px'
			  });
			},
		
			mouseleave: function(){
				this.set('morph', {duration: 200});
				this.morph({
				'background-position': '0px 0px'
			  });
			}
		
		  });

    var tabContainers = $$('div.tabs');
		tabContainers.each(function(tabContainer){
			new Tabs(tabContainer, {
				tabs: '.tab-anchors li',
				panels: '.tab-panel',
			  observeDuration: 200
			});
		});
		

		if($('listing')){
		
			
			  var numDisplay = $$('#number span img');
			  var itemWidth = 180;
			  var slidingWrapper = $('sliding-text-wrapper');
			  

			  var items = slidingWrapper.getElementsByTagName("div");
			  var slideItemCount = items.length;
			
			  var limitWidth = itemWidth - (itemWidth*slideItemCount);
				
			  $$('a.next').addEvent('click', function(event){
				event.stop();
				var currentPosition = slidingWrapper.getStyle('left').toInt();	
				if(limitWidth<currentPosition && (currentPosition%itemWidth)==0){
					var baseNumCount = numDisplay.get('alt');		    
					baseNumCount = parseFloat(baseNumCount);	
					if(baseNumCount<slideItemCount){ increaseNumCount = baseNumCount + 1 }
					numDisplay.set('src', '/images/' + increaseNumCount + '.png');
					numDisplay.set('alt', increaseNumCount);
					newPosition = currentPosition - itemWidth;
					slidingWrapper.tween('left', newPosition + 'px');
				}
			  
			  });
			  
			  $$('a.back').addEvent('click', function(event){
				event.stop();
				var currentPosition = slidingWrapper.getStyle('left').toInt();	
				if(currentPosition<0 && (currentPosition%itemWidth)==0){
					var baseNumCount = numDisplay.get('alt');		    
					baseNumCount = parseFloat(baseNumCount);	
					if(baseNumCount>1){ decreaseNumCount = baseNumCount - 1 }
					numDisplay.set('src', '/images/' + decreaseNumCount + '.png');
					numDisplay.set('alt', decreaseNumCount);
					newPosition = currentPosition + itemWidth;
					slidingWrapper.tween('left', newPosition + 'px');
				}

			  });
	
			}

	}

}; 


TE.Form = {

  init: function(){
		
		this.forms = document.getElements('form');

		this.forms.each(function(form){
			var formID = form.get('id');
			if (formID){
				var objectTitle = formID.replace('form-','').camelCase().capitalize();
				if (this[objectTitle]) this[objectTitle].init(form);
			}
		}, this);
	
		
	}

 };
 
 
TE.Form.Directions = {
	init: function(form){
		
		var self = this;
		
		this.form = form;

		this.url = 'http://www.google.cz/maps?f=q&source=s_q&hl=cs&geocode=&q=from:%20{from}%20to:+Beranov%C3%BDch+65';
		
		this.input = this.form.getElement('input');
		
		this.form.addEvent('submit', function(event){
			event.preventDefault();
			var address = self.input.get('value').trim();
			if (address != ''){
				window.open(self.url.substitute({from: encodeURI(address)}));
			} else {
				alert('Zadejte adresu, ze které chcete zobrazit cestu.');
			}
		});
	}
};

TE.Cap = {
	
	init: function(){
		
			document.id('contact-form').getElement('noscript').destroy();
			new Element('input', {
			  'type': 'hidden',
				'name': 'anti',
				'value': 'transferenergy'
			}).inject(document.id('contact-form'));
		
		}
};
 
window.addEvent('domready', function(){

	TE.init();

});

Cufon.replace('h1', { fontFamily: 'Officina' });
Cufon.replace('.h1sub', { fontFamily: 'Officina' });
Cufon.replace('#home h2', { fontFamily: 'Officina' });
Cufon.replace('#menu-nav a', { fontFamily: 'Officina' });
Cufon.replace('#menu-nav-en a', { fontFamily: 'Officina' });
Cufon.replace('a.more-link', { fontFamily: 'Officina' });
Cufon.replace('a.back-link', { fontFamily: 'Officina' });
Cufon.replace('div.section-button span', { fontFamily: 'Officina' });
Cufon.replace('p.of', { fontFamily: 'Officina' });
Cufon.replace('h3.of', { fontFamily: 'Officina' });
Cufon.replace('#categories a', { fontFamily: 'Officina' });
Cufon.replace('.disc span', { fontFamily: 'Officina' });
Cufon.replace('#not-found p.caption', { fontFamily: 'Officina' });
