window.addEvent('domready',function(){
	if($chk($('whysthis'))){
		$('whysthis').setStyle('cursor','pointer');
		var whytooltip = new Element('div', {
			'html':'We just need to verify your human.',
			'styles': {
				'position':'absolute',
				'top':$('whysthis').getPosition().y+$('whysthis').getSize().y+2,
				'left':$('whysthis').getPosition().x+($('whysthis').getSize().x/2),
				'background-color':'#D4ECE3',
				'border':'1px solid #026227',
				'padding':'5px',
				'font-size':'11px',
				'color':'#026227',
				'display':'none'
			}
		}).inject($(document.body));

		$('whysthis').addEvent('mouseover',function(){
			whytooltip.setStyle('display','');
		});
		$('whysthis').addEvent('mouseout',function(){
			whytooltip.setStyle('display','none');
		});
	}
});


var EcceMenu = new Class({
	Implements: [Options],				
	options: {
		'selection': '.menuitem',
		'menu': 'ul',
		'duration':300,
		'closedelay':300
	},
	initialize: function(options) {
		this.setOptions(options);
		var op = this.options;
		var c = this;
		op.id = new Array();
		
		$$(this.options.selection).each(function(elm,i){
				elm.setStyles({'position':'absolute','overflow':'hidden','height':0});
				var parent = elm.getParent();
				parent.addEvent('mouseenter',function(){
					var size = elm.getScrollSize();
					var myFx = new Fx.Tween(elm,{'duration':op.duration});
					myFx.start('height', size.y);
				});
				parent.addEvent('mouseover',function(){
					$clear(op.id[i]);
				});
				parent.addEvent('mouseleave',function(){
					$clear(op.id[i]);
					op.id[i] = c.closeelm.delay(op.closedelay,c,elm);
				});
				elm.addEvent('mouseleave',function(){
					op.id[i] = c.closeelm.delay(op.closedelay,c,elm);
				});
				elm.addEvent('mouseenter',function(){
					$clear(op.id[i]);
				});
		});
		
	},
	closeelm: function(elm){
		var op = this.options;
		var myFx2 = new Fx.Tween(elm,{'duration':op.duration});
		myFx2.start('height', 0);	
	}
});

var ClickRotate = new Class({
	Implements: [Options],
	options: {
		stage: 'slider-stage',
		sliders: 'slider-list',
		gotoclass: 'gotolink',
		gotoevent:'click',
		next:'next',
		nextevent:'click',
		transition:'fade',
		transitionduration:1000,
		previous:'previous',
		previousevent:'click',
		autorotate:true,
		waittime:7000,
		returnrotate:true,
		returnafter:5000,
		returnid:null,
		intervalID:null
	},
	initialize: function(options) {
		this.setOptions(options);
		var op = this.options;
		var f = this;
		op.children = $(op.sliders).getChildren('li');
		if (op.transition == "fade"){
			var startloop = 1000+op.children.length;
			for(i=0;i<op.children.length;i++){
				op.children[i].setStyle("z-index",startloop);
				startloop--;
			}
		}
		
		if(op.autorotate) op.intervalID = this.autorotate.periodical(op.waittime,this);
		$(op.sliders).getChildren('li').each(function(elm){
			elm.addEvent('mouseenter',function(){
				$clear(op.intervalID);
			});
			elm.addEvent('mouseleave',function(){
				if(op.autorotate) op.intervalID = f.autorotate.periodical(op.waittime,f);
			});
		});
		
		if($type($(op.next))=='element'){
			$(op.next).addEvent(op.nextevent,function(e){
				e.stop();
				if($type(op.returnid)=='number') $clear(op.returnid);
				if($type(op.intervalID)=='number'){
					$clear(op.intervalID);
					if(op.returnrotate) op.returnid = f.autorotate.delay(op.returnafter,f);
				}
				var children = $(op.sliders).getChildren('li');
				if (op.transition == "fade"){
					children[0].set('tween',{duration:op.transitionduration,onComplete:function(){
						children[0].setStyle("z-index",0).inject($(op.sliders)).setStyle('opacity',1);
						var children2 = $(op.sliders).getChildren('li');
						var startloop = 1000+op.children.length;
						for(i=0;i<children2.length;i++){
							children2[i].setStyle("z-index",startloop);
							startloop--;
						}
					}});
					children[0].tween('opacity', 0);
				}else{
					children[0].set('tween',{duration:op.transitionduration,onComplete:function(){children[0].inject($(op.sliders)).setStyle('margin-left',0);}});
					children[0].tween('margin-left', -children[0].getSize().x);
				}
			});
		}
		if($type($(op.previous))=='element'){
			$(op.previous).addEvent(op.previousevent,function(e){
				e.stop();
				if($type(op.returnid)=='number') $clear(op.returnid);
				if($type(op.intervalID)=='number'){
					$clear(op.intervalID);
					if(op.returnrotate) op.returnid = f.autorotate.delay(op.returnafter,f);
				}
				var children = $(op.sliders).getChildren('li');
				var last = children.length-1;
				if (op.transition == "fade"){
					children[last].set('tween',{duration:op.transitionduration,onComplete:function(){children[last].setStyle('opacity',1);}});
					children[last].setStyle('opacity',0).inject($(op.sliders),'top');
					var children2 = $(op.sliders).getChildren('li');
					var startloop = 1000+op.children.length;
					for(i=0;i<children2.length;i++){
						children2[i].setStyle("z-index",startloop);
						startloop--;
					}
					children[last].tween('opacity', 1);
				}else{
					children[last].set('tween',{duration:op.transitionduration,onComplete:function(){children[last].set('style','');}});
					children[last].setStyle('margin-left',-children[last].getSize().x).inject($(op.sliders),'top');
					children[last].tween('margin-left', 0);
				}
			});
		}
		$$("a."+op.gotoclass).each(function(elm){
			var slideid = elm.getProperty('rel');
			if ($type(slideid)=="string"){
				slideid=slideid.toInt();
				elm.addEvent(op.gotoevent,function(e){
					e.stop();
					if($type(op.returnid)=='number') $clear(op.returnid);
					if($type(op.intervalID)=='number'){
						$clear(op.intervalID);
						if(op.returnrotate) op.returnid = f.autorotate.delay(op.returnafter,f);
					}
					var children = $(op.sliders).getChildren('li');
					if (op.transition == "fade"){
						op.children[slideid].set('tween',{duration:op.transitionduration,onComplete:function(){
								op.children[slideid].setStyle('opacity',1);
								for(i=slideid+1;i<op.children.length;i++) op.children[i].inject($(op.sliders),'bottom');
								for(i=0;i<slideid;i++) op.children[i].inject($(op.sliders),'bottom');
								var children2 = $(op.sliders).getChildren('li');
								var startloop = 1000+op.children.length;
								for(i=0;i<children2.length;i++){
									children2[i].setStyle("z-index",startloop);
									startloop--;
								}
						}});
						op.children[slideid].setStyle('opacity',0).inject($(op.sliders),'top');
						var children2 = $(op.sliders).getChildren('li');
						var startloop = 1000+op.children.length;
						for(i=0;i<children2.length;i++){
							children2[i].setStyle("z-index",startloop);
							startloop--;
						}
						op.children[slideid].tween('opacity', 1);
					}else{
						op.children[slideid].set('tween',{duration:op.transitionduration,onComplete:function(){
							op.children[slideid].set('style','');
							for(i=slideid+1;i<op.children.length;i++) op.children[i].inject($(op.sliders),'bottom');
							for(i=0;i<slideid;i++) op.children[i].inject($(op.sliders),'bottom');
						}});
						op.children[slideid].setStyle('margin-left',-op.children[slideid].getSize().x).inject($(op.sliders),'top');
						op.children[slideid].tween('margin-left', 0);
					}
				});
			}

		
		});
		
	},
	autorotate:function(){
		var op = this.options;
		if($type(op.returnid)=='number'){
			$clear(op.returnid);
			op.returnid=null;
			op.intervalID = this.autorotate.periodical(op.waittime,this);
		}
		var children = $(op.sliders).getChildren('li');
		if (op.transition == "fade"){
			children[0].set('tween',{duration:op.transitionduration,onComplete:function(){
				children[0].setStyle("z-index",0).inject($(op.sliders)).setStyle('opacity',1);
				var children2 = $(op.sliders).getChildren('li');
				var startloop = 1000+op.children.length;
				for(i=0;i<children2.length;i++){
					children2[i].setStyle("z-index",startloop);
					startloop--;
				}
			}});
			children[0].tween('opacity', 0);
		}else{
			children[0].set('tween',{duration:op.transitionduration,onComplete:function(){children[0].inject($(op.sliders)).setStyle('margin-left',0);}});
			children[0].tween('margin-left', -children[0].getSize().x);
		}
	}
		
	
});

