var accType = ['info','help','opts'];

var zIncrease = 1000;

var accInfo_Opacity	= 1;
var accInfo_Duration = 500;

var accOpts_Opacity	= 1;
var accOpts_Duration = 500;

var accHelp_Opacity	= 1;
var accHelp_Duration = 500;

var tipDelay_Show	= 1500;
var tipDelay_Hide	= 50;
var tipFade_Time	= 800;

var tipOffset_info_X	= 16;
var tipOffset_info_Y	= -13;

var tipOffset_opts_X	= -50;
var tipOffset_opts_Y	= -13;

var tipOffset_help_X	= -138;
var tipOffset_help_Y	= -13;

var globalClose = 0;

var notUsed = '<!--empty-->';
var ajaxPath = '/ajax/accordion_';

window.addEvent('domready', function() {
	var accOpacity = [accInfo_Opacity,accOpts_Opacity,accHelp_Opacity];
	var accDuration = [accInfo_Duration,accOpts_Duration,accHelp_Duration];

	loadAccordion();
	
	accType.each(function(val,i) { loadAccSliders(accType[i],accDuration[i],accOpacity[i]); });
	if(globalClose) {
		$$('div.acc_info').setStyle('cursor','pointer');
		$$('div.acc_opts').setStyle('cursor','pointer');
		$$('div.acc_help').setStyle('cursor','pointer');
	}
	setRollovers();
	setToolTips();
});

function loadAccordion() {
	var CookieAutoAccordion = new Class({
		Extends: Accordion,

	initialize: function(togglers, elements, options) {
		this.options.cookieName = 'accordion-place';
		this.options.cookieOptions = {path: '/', duration: 30};	
		this.setOptions(options);
		this.options.allowMultipleOpen = false;
		this.options.opacity = true;
		if(Browser.Engine.trident) { this.options.opacity = false; }
		this.options.openAll = false;
		this.options.link = 'cancel';
		this.options.height = true;
		this.options.show = 0;
		this.options.alwaysHide = false;
		
		var cookieValue = Cookie.read(this.options.cookieName);
		if(cookieValue) { this.options.show = cookieValue.toInt(); }
		this.addEvent('onActive', function(toggler, element) { toggler.addClass('accnav_active'); });
		this.parent.apply(this, arguments);
		this.addEvent('onActive', function(toggler, element) {
			Cookie.write(this.options.cookieName, this.togglers.indexOf(toggler), this.options.cookieOptions);
			toggler.addClass('accnav_active');
		});
		this.addEvent('onBackground', function(toggler, element) {
			if (toggler.hasClass('accnav_active')) { 
				toggler.removeClass('accnav_active');
			}
		});
	  }
	});
	var accordion = new CookieAutoAccordion($$('ul.accnav'), $$('div.acc_content')); 
	$$('ul#accordion').setStyle('visibility','visible');
	
} // end of loadAccordion()

function loadAccSliders(type,Duration,Opacity) {	

	var list = $$('#accordion li div.' + type + '_slide');
	var acc_upSlider = new Array();
	var acc_dnSlider = new Array();
	var div_tab = 'a.focus_' + type;

	list.each( function(el, i) {
		var	num = i + 1;

		var div_id = 'accslide_' + type + num;
		var x = $(div_id).getStyle('height');
		var y = $$(div_tab).getStyle('height');
		var Height = 0 - (x.toInt() - y[0].toInt());
		if(Browser.Engine.trident4) { Height -= 30; }
		
		var zIndex = $(div_id).getStyle('z-index');
	
		$$('div.tab_triggers').setStyle('visibility','visible');

		var btn_id = 'close_' + type + num;
		var down_div = 'down_' + type + num;
		var up_div = 'up_' + type + num;
		var btn_name = 'close_' + type + num;

		$(div_id).setStyle('visibility','hidden');
		$(up_div).setStyle('cursor','default');
			
		var myHTML = $(down_div).innerHTML;

		if(!myHTML.contains(notUsed)) {

			$(div_id).setStyle('visibility','visible');
			$(up_div).setStyle('cursor','pointer');

			acc_upSlider[i] = new Fx.Tween(div_id, {
					property: 'bottom',
					duration: Duration,
					transition: Fx.Transitions.Quad.easeInOut
				});
			
			acc_dnSlider[i] = new Fx.Tween(div_id, {
					property: 'bottom',
					duration: Duration,
					transition: Fx.Transitions.Back.easeOut
				})
				.addEvent('onComplete', function() { $(div_id).setStyle('z-index',zIndex); });

			acc_upSlider[i].set(Height);
			$(btn_id).setStyle('opacity',0);

			$(up_div).addEvent('click', function(e) { 
				var e = new Event(e);
				var new_zIndex = zIndex + zIncrease;
				$(div_id).setStyle('z-index',new_zIndex);
				$(down_div).set('html', '<img class="acc_spinner" src="/images/spinner.gif" border="0" height="32" width="32" />');
				var date = new Date();
				var tStamp = date.getTime();
				$(down_div).load(ajaxPath+type+num+'.html?t='+tStamp);
				var pos = 0;
				if(Browser.Engine.trident4) { pos = -30; }
				acc_upSlider[i].start(pos); 
				$(btn_id).fade(Opacity);
				e.stop();
			});

			if(globalClose) {
				$(down_div).addEvent('click', function(e) {
					var e = new Event(e);
					acc_dnSlider[i].start(Height);
				$(btn_id).fade('out');
					e.stop();
				});
			}

			$(btn_name).addEvent('click', function(e) {
				var e = new Event(e);
				acc_dnSlider[i].start(Height);
				$(btn_id).fade('out');
				e.stop();
			});
		}
	});
}

function setRollovers() {

	$$('ul.accnav').addEvent('mouseleave', accnavLeave = function() {
		this.setStyle('background-position','0px 0px');													
		this.setStyle('color','#eee');
	});
	$$('a.focus_info').addEvent('mouseleave', infoTabLeave = function() {
		$$('ul.info_slide_top li.tab_left').setStyle('background-position','0px 0px');												
		$$('ul.info_slide_top li.tab_tile').setStyle('background-position','0px 0px');												
		$$('ul.info_slide_top li.tab_rght').setStyle('background-position','0px 0px');												
	});
	$$('a.focus_opts').addEvent('mouseleave', optsTabLeave = function() {
		$$('ul.opts_slide_top li.tab_left').setStyle('background-position','0px 0px');												
		$$('ul.opts_slide_top li.tab_tile').setStyle('background-position','0px 0px');												
		$$('ul.opts_slide_top li.tab_rght').setStyle('background-position','0px 0px');												
	});
	$$('a.focus_help').addEvent('mouseleave', helpTabLeave = function() {
		$$('ul.help_slide_top li.tab_left').setStyle('background-position','0px 0px');												
		$$('ul.help_slide_top li.tab_tile').setStyle('background-position','0px 0px');												
		$$('ul.help_slide_top li.tab_rght').setStyle('background-position','0px 0px');												
	});

	$$('ul.accnav').addEvent('mouseenter', accnavEnter = function() {
		this.setStyle('background-position','0 -29px');													
		this.setStyle('color','#444');
	});
	$$('a.focus_info').addEvent('mouseenter', infoTabEnter = function() {
		$$('ul.info_slide_top li.tab_left').setStyle('background-position','0px -30px');												
		$$('ul.info_slide_top li.tab_tile').setStyle('background-position','0px -30px');												
		$$('ul.info_slide_top li.tab_rght').setStyle('background-position','0px -30px');												
	});
	$$('a.focus_opts').addEvent('mouseenter', optsTabEnter = function() {
		$$('ul.opts_slide_top li.tab_left').setStyle('background-position','0px -60px');												
		$$('ul.opts_slide_top li.tab_tile').setStyle('background-position','0px -60px');												
		$$('ul.opts_slide_top li.tab_rght').setStyle('background-position','0px -60px');												
	});
	$$('a.focus_help').addEvent('mouseenter', helpTabEnter = function() {
		$$('ul.help_slide_top li.tab_left').setStyle('background-position','0px -90px');												
		$$('ul.help_slide_top li.tab_tile').setStyle('background-position','0px -90px');												
		$$('ul.help_slide_top li.tab_rght').setStyle('background-position','0px -90px');												
	});
	
	$$('ul.accnav').addEvent('mousedown', accnavDown = function() {
		this.setStyle('background-position','0px -58px');													
		this.setStyle('color','#fff');
	});
	$$('a.btn_info_close').addEvent('mouseleave', infoCloseDown = function() {
		this.setStyle('background-position','0px 0px');													
	});
	$$('a.btn_info_close').addEvent('mouseenter', infoCloseDown = function() {
		this.setStyle('background-position','0px -17px');													
	});
	$$('a.btn_info_close').addEvent('mousedown', infoCloseDown = function() {
		this.setStyle('background-position','0px -34px');													
	});
	$$('a.btn_opts_close').addEvent('mouseleave', optsCloseDown = function() {
		this.setStyle('background-position','0px 0px');													
	});
	$$('a.btn_opts_close').addEvent('mouseenter', optsCloseDown = function() {
		this.setStyle('background-position','0px -17px');													
	});
	$$('a.btn_opts_close').addEvent('mousedown', optsCloseDown = function() {
		this.setStyle('background-position','0px -34px');													
	});
	$$('a.btn_help_close').addEvent('mouseleave', helpCloseDown = function() {
		this.setStyle('background-position','0px 0px');													
	});
	$$('a.btn_help_close').addEvent('mouseenter', helpCloseDown = function() {
		this.setStyle('background-position','0px -17px');													
	});
	$$('a.btn_help_close').addEvent('mousedown', helpCloseDown = function() {
		this.setStyle('background-position','0px -34px');													
	});
}

function setToolTips() {

var tip = new Tips('a.focus_info', {
		onShow: function(tip) {
			tip.fade('in');
		},
  		onHide: function(tip) {
	  		tip.fade('out');
  		}
	});

}
