// JavaScript Document
var Email = new Class({
	
	initialize: function(anchor, debug){
		this.anchor = anchor;
		this.anchorText = this.anchor.get('href').replace('mailto:', '');
		if (debug){
			 console.log(this.anchorText, ':', this.encode(this.anchorText));
		} else {
			this.anchor.set('href', 'mailto:' + this.decode(this.anchorText));
			this.anchor.set('text', this.decode(this.anchorText));
		}
	},
	
	encode: function(address){
		var part1 = '';
		var part2 = '';
		for (var i=0; i<address.length; i++){
			if (i%2) {
				part1 += address.charAt(i);
			} else {
				part2 += address.charAt(i);
			}
		}
		return (part1 + part2);
	},
	
	decode: function(address){
		var newAddress = '';
		var splitter = Math.floor(address.length/2);
		var part1 = address.substr(0,splitter);
		var part2 = address.substr(splitter);
		for (var i=0; i<Math.max(part1.length, part2.length); i++){
			newAddress += (part2.charAt(i)?part2.charAt(i):'') + (part1.charAt(i)?part1.charAt(i):'');
		}
		return newAddress;
	}
	
});

window.addEvent('domready', function(){
  $$('a._blank').each(function(element){
	  element.addEvent('click', function(event){
		  event.stop();
			window.open(element.get('href'));
		});
	});
	$('giant').getElement('img').addEvent('click', function(event){
	  window.open(this.getParent('div').getElement('a').get('href'));
	});
	$('giant').getElement('img').style.cursor = 'pointer';
	
	// client access
	if ($('form-login')){
		var container = $('form-login');
		// fx
    var clientFx = new Fx.Tween(container, { property: 'width', link: 'cancel', duration: 800, transition: Fx.Transitions.Quart.easeOut });
		
		// form fx
		var formFx = new Fx.Tween(container.getElement('form'), { property: 'opacity', duration: 800, link: 'cancel' });
		var size = container.getSize();
		formFx.set(0);
		clientFx.set(150);
	  $('client-access').addEvent('click', function(event){
		  event.stop();
			size = container.getSize();
			if (size.x > 200) {
				clientFx.start(150);
				formFx.start(0);
			} else {
				clientFx.start(480);
				formFx.start(1);
			}
		});
		
		// form field events
		$$('#form-login .input').each(function(element){
		  element.addEvent('focus', function(){
		    if (element.value == element.defaultValue) element.value = '';
			});
			element.addEvent('blur', function(){
				if (element.value.trim() == '') element.value = element.defaultValue;
			});
		});
	}
	
	var emailArray = new Array();
	var emails = $('main-content').getElements('a[href^=mailto]');
	// email decode
	emails.each(function(element, index){
	  emailArray[index] = new Email(element);
	});
	
	// Flash
	var flash = new Swiff('/flash/n' + (Math.floor(Math.random() * 4) + 1) + '.swf', {
	  id : 'nDataFlash',
		container : 'flash',
		width: 200,
		height: 200,
		params: {
        wmode: 'transparent'
    }
	});
	
});
