var swpLinks = null;
var swpContent = null;
var clientText = [];
var newWindowIDs = [384,1753];
var box = null;
var slide7 = null;
var homeSlider = null;
var homeOLChain = null;
var sevenSlider = null;
var isLooping = true;
var onLH = null;
function activateSwappables(links, content) {
	swpLinks = links;
	swpContent = content;
	var gthash = false;
	var gtel = false;
	if(window.location.hash.length > 1) gthash = window.location.hash.substr(1);
	swpLinks.each(function(el){
		if(gthash && el.get('href').substr(1) == gthash) gtel = el;
		el.addEvent('click', function(e) {
			var id = this.get('href').substr(1);
			swpContent.each(function(el){
				el.setStyle('display', 'none');
			});
			swpLinks.each(function(el){
				el.getParent().removeClass('active');
			});
			this.getParent().addClass('active');
			$('swp-'+id).setStyle('display', 'block');
		});
	});
	swpContent.pick().setStyle('display', 'block');
	if(gtel) gtel.fireEvent('click');
	else swpLinks.pick().fireEvent('click');
}
function activateAccordion(links, content) {
	new Fx.Accordion(links, content, {
		display: -1,
		alwaysHide: true,
		onActive: function(to, el){
			new Fx.Scroll(window).toElement(to.getParent().getParent());
		}
	});
}
function activateRescLibrary(sets) {
	if(sets.getElements('.rl_item').length > 5) {
		var left = sets.getElement('.rl_left');
		var right = sets.getElement('.rl_right');
		sets.addClass('on');
		right.addClass('on');
		sets.set('first', 0);
		left.addEvent('click', function(e){
			moveRescLibSlide(this,'left');
		});
		right.addEvent('click', function(e){
			moveRescLibSlide(this,'right');
		});
	}
	
}
function activateClientSwaps(clients) {
	clients.each(function(el) {
		el.addEvent('click', function(e){
			if($(this.get('id')+'c') != undefined) { 
				this.getParent().getChildren('.pick').removeClass('active');
				this.addClass('active');
				$('clientswp').empty();
				$(this.get('id')+'c').clone().inject('clientswp');
				//$('clientswp').set('html',$(this.get('id')+'c').get('html'));
				//new Fx.Scroll(window).toElement('clientswp');
				activateVimeoPopup();
			}
		});
	});
	if(onLH['c'] == undefined) { clients.getRandom().fireEvent('click'); }
}
function addFancy(fancyInputs) {
	fancyInputs.each(function(el){
		el.addClass('empty');
		if(el.get('title') == null) el.set('title', el.get('value'));
		if(el.hasClass('forcePW')) el.set('type', 'text');
		el.addEvents({
			focus:  function(e) {
				if(this.hasClass('empty')) {
					this.set('value', '').removeClass('empty');
				}
				if(this.hasClass('forcePW')) {
					this.set('type', 'password')
					this.set('value', '').removeClass('empty');
				}
			},
			blur: 	function(e) {
				if(this.get('value') == '') {
					this.set('value', this.get('title')).addClass('empty');
					
					if(this.hasClass('forcePW')) {
						this.set('type', 'text');
					}
				}
				
			}
		});
	});
}
function moveRescLibSlide(el, direction) {
		if(el.hasClass('on')) { 
			var slide_wrap = el.getParent().getParent();
			var slide = slide_wrap.getElement('.rl_slider');
			if(direction == 'right' && (slide_wrap.getElements('.rl_item').length - slide_wrap.get('first').toInt() - 5) > 0) {
				slide_wrap.set('first', slide_wrap.get('first').toInt() + 1);
				slide_wrap.getElement('.rl_left').addClass('on');
				if((slide_wrap.getElements('.rl_item').length - slide_wrap.get('first').toInt() - 5) == 0) el.removeClass('on');
			} else if(direction == 'left' && (slide_wrap.get('first').toInt() > 0)) {
				slide_wrap.set('first', slide_wrap.get('first').toInt() - 1);
				slide_wrap.getElement('.rl_right').addClass('on');
				if(slide_wrap.get('first').toInt() == 0) el.removeClass('on');
			}
			new Fx.Tween(slide, {
			    link: 'chain',
				property: 'left'
			}).start((-1) * (slide_wrap.get('first').toInt()  * 112));
		}
}
function activateHomeSlider() {
	if($('slider_wrapper') != null && $$('#slider_wrapper .slide').length > 1) {
		homeOLChain = new Chain;
		homeSlide = new Fx.Tween($('slider'), {
		    link: 'chain',
			property: 'left',
		    transition: 'quart:in:out',
			duration: 2000,
			events: { chainComplete: function() {
				alert('complete');
			}}
		});
		var s = 0;
		new Element('span', {
		'class': 'play_btn active',
		events: {
			click: function() {
				if(isLooping) { 
					isLooping = false;
					homeOLChain.clearChain();
					this.removeClass('active');
				} else {
					isLooping = true;
					generateHSliderLoop();
					this.addClass('active');
				} 
				/*this.getParent().getChildren('.slide_btn').removeClass('active').removeClass('next').removeClass('previous');
				this.addClass('active');
				$$('#slider_wrapper .slide').removeClass('active');
				$$('#slider_wrapper .slide')[this.get('slide')].addClass('active');
				homeSlide.start((-1) * ( $$('#slider_wrapper .slide').indexOf($$('#slider_wrapper .slide.active').pick()) * 1800) - 410);
				if(this.getNext() != null) { this.getNext().addClass('next'); } else { this.getParent().getFirst('.slide_btn').addClass('next'); }//if(isLooping){ loopHomeSlider(); }}
				if(this.getPrevious() != null) { this.getPrevious().addClass('previous'); } else { this.getParent().getLast('.slide_btn').addClass('previous'); }*/
			}
		}	
		}).inject($('slide_btns_wrapper'));
		$$('#slider_wrapper .slide').each(function(el){
			var tmpRe = new RegExp('dur([0-9]+)');
			if(tmpRe.test(el.get('class'))) {
				var tmpArr = tmpRe.exec(el.get('class'));
				el.set('duration', tmpArr[1]);
			} else {
				el.set('duration', 5000);
			}
			new Element('span', {
			'class': 'slide_btn',
			events: {
				click: function() {
					this.getParent().getChildren('.slide_btn').removeClass('active').removeClass('next').removeClass('previous');
					this.addClass('active');
					$$('#slider_wrapper .slide').removeClass('active');
					$$('#slider_wrapper .slide')[this.get('slide')].addClass('active');
					homeSlide.start((-1) * ( $$('#slider_wrapper .slide').indexOf($$('#slider_wrapper .slide.active').pick()) * 1800) - 410);
					if(this.getNext() != null) { this.getNext().addClass('next'); } else { this.getParent().getFirst('.slide_btn').addClass('next'); }//if(isLooping){ loopHomeSlider(); }}
					if(this.getPrevious() != null) { this.getPrevious().addClass('previous'); } else { this.getParent().getLast('.slide_btn').addClass('previous'); }
				}
			}	
			}).set('slide', s).set('onclick', 'isLooping = false;').inject($('slide_btns_wrapper'));
			s++;
		});
		$$('#slide_btns_wrapper .slide_btn').pick().addClass('active').addClass('next');
		$$('#slider_wrapper .slide').pick().addClass('active');
		
	}
}
function generateHSliderLoop() {
	var hasNext = 0;
	$$('#slide_btns_wrapper .slide_btn').each(function(el, index) {
		if(el.hasClass('next')) {
			hasNext = index;
		}
	});
	if(hasNext == 0) {
		for(s=0; s < 2; s++) {
			$$('#slider_wrapper .slide').each(function(el){
				homeOLChain.chain(function() {
					if(isLooping) { $$('#slide_btns_wrapper .slide_btn.next').fireEvent('click');
					this.callChain(); }
				}).wait(el.get('duration'));
			});
		}
		homeOLChain.chain(function() {
			if(isLooping) { $$('#slide_btns_wrapper .slide_btn.next').fireEvent('click');
			this.callChain(); }
		}).wait($$('#slider_wrapper .slide').pick().get('duration')).chain(function(){
				isLooping = false;
				$$('#slide_btns_wrapper .play_btn').removeClass('active');
		});
		homeOLChain.callChain();
	} else if (hasNext == 1) {
		for(s=0; s < 1; s++) {
			$$('#slider_wrapper .slide').each(function(el){
				homeOLChain.chain(function() {
					if(isLooping) { $$('#slide_btns_wrapper .slide_btn.next').fireEvent('click');
					this.callChain(); }
				}).wait(el.get('duration'));
			});
		}
		homeOLChain.chain(function(){
			isLooping = false;
			$$('#slide_btns_wrapper .play_btn').removeClass('active');
		});
		homeOLChain.callChain();
	} else {
		$$('#slider_wrapper .slide').each(function(el, index) {
			if(index >= hasNext) {
				homeOLChain.chain(function() {
					if(isLooping) { $$('#slide_btns_wrapper .slide_btn.next').fireEvent('click');
					this.callChain(); }
				}).wait(el.get('duration'));
			}
		});
		for(s=0; s < 1; s++) {
			$$('#slider_wrapper .slide').each(function(el){
				homeOLChain.chain(function() {
					if(isLooping) { $$('#slide_btns_wrapper .slide_btn.next').fireEvent('click');
					this.callChain(); }
				}).wait(el.get('duration'));
			});
		}
		homeOLChain.chain(function() {
			if(isLooping) { $$('#slide_btns_wrapper .slide_btn.next').fireEvent('click');
			this.callChain(); }
		}).wait($$('#slider_wrapper .slide').pick().get('duration')).chain(function(){
			isLooping = false;
			$$('#slide_btns_wrapper .play_btn').removeClass('active');
		});
		homeOLChain.callChain();
	}
	
}
function getHashes() {
	var tmps = window.location.hash.substring(1).split(";");
	var out = new Array();
	for(var i in tmps) {
	var tmp = (tmps[i]+"");
		if(tmp.substr(1,1) == "-") {
			out[tmp.split("-")[0]] = tmp.split("-")[1];
		}
	}
	return out;
}
function activate7Reasons() {
	if($$('#testimonial .tim').length > 1 && $('testimonial_buttons') != null) {
		slide7 = new Chain;
		$$('#testimonial .tim').each(function(el){
			new Element('span', {
				'class': 'actable',
				events: {
					click: function() {
						var delay = 0;
						if($$('#testimonial .tim.on').length != 0) {
							delay = 1100;
							$$('#testimonial .tim.on').each(function(el){
								el.fade('out');
								(function(){ el.removeClass('on'); }).delay(1000);
							});
						}
						(function(){
							$(el.get('id')).addClass('on').fade('in');
						}).delay(delay);
						this.getParent().getChildren('span').removeClass('on');
						this.addClass('on');
					}
				}
			}).set('onclick', 'isLooping = false;').inject('testimonial_buttons');
		});
		$$('#testimonial_buttons span').each(function(el){
			slide7.chain(function(){
				if(isLooping) {
				el.fireEvent('click');
				this.callChain(); }
			}).wait(7000);
		});
		slide7.chain(function(){
			if(isLooping) {
				$$('#testimonial_buttons span').pick().fireEvent('click');
				this.callChain();
			}
		}).wait(7000);
	}
}
function activateVimeoPopup() {
	$$('a').each(function(el){
		if(el.get('title') != null && el.get('title').indexOf('on Vimeo') != -1) {
			el.set('href', el.get('href')+'?callahead=true');
			box.addItems(el, {
				width: 600,
				height: 338,
				events: {
					onOpen: function() {
						$('cerabox').removeClass('ajax');
					}
				}
			});
		}
	});
}
window.addEvent('domready', function(e) {
	activateHomeSlider();
	activate7Reasons();
	onLH = getHashes();
	if($$('input[type="file"]').length != 0 && Browser.firefox) $$('input[type="file"]').set('size', 27);
	if($$('.swp-links a').length != 0 && $$('.swp-content').length != 0) activateSwappables($$('.swp-links a'),$$('.swp-content'));
	if($$('.job-link').length != 0 && $$('.job-content').length != 0) activateAccordion($$('.job-link span.lm'),$$('.job-content'));
	if($$('.fancyinput').length != 0) addFancy($$('.fancyinput'));
	$$('.fancysubmit').addEvent('click', function(e){
		this.getParent('form').submit();
	});
	$$('.rl_slider_wrapper').each(function(el){
		activateRescLibrary(el);
	});
	//$$('body').addClass(Browser.name);
	//$$('body').addClass(Browser.Platform.name);
	//$$('body').addClass(Browser.name+Browser.version.toString().replace('.', '-'));
	if($$('#picker .pick').length != 0 && Browser.Platform.name == 'ios') {
		$$('#picker .pick').each(function(el){
			el.addEvent('mouseover', function(){
				this.fireEvent('click');
			})
		});
	}
	newWindowIDs.each(function(item){
		$$('.page-item-'+item+' a').each(function(el){
			el.addEvent('click', function(){
				window.open(this.get('href'));
				return false;
			});
		});
	});
	$$('a.new-window').each(function(el){
		el.addEvent('click', function(){
			window.open(this.get('href'));
			return false;
		});
	});
	box = new CeraBox({ group: false });
	box.addItems('.page-item-400 a, .page-item-396 a', {
		width: 320,
		height: 200,
		displayTitle: false,
		ajax: {
				type: 'get',
				data: ''
			},
		events: {
			onOpen: function() {
				$('cerabox').addClass('ajax');
			},
			onAnimationEnd: function() {
				addFancy($$('#ax-loginform .fancyinput'));
			}
		}
	});
});
window.addEvent('load', function(e) {
	
	if($('slider_wrapper') != null) generateHSliderLoop();
	if(slide7 != null) slide7.callChain();
	if($$('.pick').length != 0) activateClientSwaps($$('.pick'));
	if(onLH['c'] != undefined) {
		if($('c'+onLH['c']) != null) {
			$('c'+onLH['c']).fireEvent('click');
		}
	}
	activateVimeoPopup('^P0');
});
