window.addEvent('domready', function() {
/******************************************
       main page accordion effect
******************************************/
	if($('content').hasChild($('accordion'))){
		var accordion = new Accordion('.toggler', '.toggled', {wait:false, duration:800, transition:Fx.Transitions.Expo.easeOut, opacity:true,
			onActive: function(toggler, toggled){
				toggler.setStyle('color', '#FFFFFF');
			},
			onBackground: function(toggler, element){
				toggler.setStyle('color', '#976da6');
			}
		}, $('accordion'));	
	}
/******************************************
      main page category selection
******************************************/
	if($('container').hasChild($('categorySelector'))){
		var szNormal = 154, szSmall  = 105, szFull   = 350;
		var kwicks = $$("#categorySelector .category");
			var fx = new Fx.Elements(kwicks, {wait: false, duration: 400, transition: Fx.Transitions.Expo.easeOut});
		kwicks.each(function(kwick, i) {
			kwick.addEvent("mouseenter", function(event) {
				var o = {};
				o[i] = {width: [kwick.getStyle("width").toInt(), szFull]}
				kwicks.each(function(other, j) {
					if(i != j) {
						var w = other.getStyle("width").toInt();
						if(w != szSmall) o[j] = {width: [w, szSmall]};
					}
				});
				fx.start(o);
			});
		});
		 
		$("categorySelector").addEvent("mouseleave", function(event) {
			var o = {};
			kwicks.each(function(kwick, i) {
				o[i] = {width: [kwick.getStyle("width").toInt(), szNormal]}
			});
			fx.start(o);
		})
	}
/******************************************
          AJAX form processing
******************************************/
	if($('container').hasChild($('form'))){
		$('form').addEvent('submit', function(e) {
			//Prevent the submit event
			new Event(e).stop();
			realtop = $('submitBtn').getTop() - 340;
			var response = $('response').empty().addClass('ajax-loading').setStyle('top',realtop);
			this.send({
				update: response,
				evalScripts:true,
				onComplete: function() {
					response.removeClass('ajax-loading');
				}
			});
		});
	}
/******************************************
      animate main navigation tabs
******************************************/
	$$('#nav a').each(function(el,i){
		el.setStyle('backgroundPosition','0 0');
		var navfx = new Fx.Style(el,'backgroundPosition', {wait:false, duration: 300});
		el.addEvent('mouseenter',function(){
			navfx.start('0 -20');
		})
		el.addEvent('mouseleave',function(){
			navfx.start('0 0');				 
		})
	});
/******************************************
       animate sub navigation links
******************************************/
	$$('#subnav a').each(function(el,i){
		var oColor = el.getStyle('color');
		el.setStyle('color',oColor);
		var subnavfx = new Fx.Style(el,'color', {wait:false, duration: 300});
		el.addEvent('mouseenter',function(){
			subnavfx.start('#000000');
		})
		el.addEvent('mouseleave',function(){
			subnavfx.start(oColor);				 
		})
	});
/******************************************
         animate content links
******************************************/
	$$('#content a').each(function(el,i){
		var oColor = el.getStyle('color');
		el.setStyle('color',oColor);
		var contentfx = new Fx.Style(el,'color', {wait:false, duration: 300});
		el.addEvent('mouseenter',function(){
			contentfx.start('#976da6');
		})
		el.addEvent('mouseleave',function(){
			contentfx.start(oColor);				 
		})
	});
/******************************************
          animate footer links
******************************************/
	$$('#footer a').each(function(el,i){
		var oColor = el.getStyle('color');
		el.setStyle('color',oColor);
		var footerfx = new Fx.Style(el,'color', {wait: false, duration: 300});
		el.addEvent('mouseenter',function(){
			footerfx.start('#cbb6d1');
		})
		el.addEvent('mouseleave',function(){
			footerfx.start(oColor);				 
		})
	});
 
});