/*

general.js contains tools and handlers, 
that may be used throughout the site. 

eg to form accordions

*/


// create accordions
window.addEvent('domready', function(){
	var accordions = $(document.body).getElements('.accordion');
	accordions.each(function(acc){
		acc.getElements('.accordion_trigger').each(function(trigger){
			trigger.removeClass('trigger_active');
		});
		new Accordion(acc, '.accordion_trigger', '.accordion_content', {
			display:false,
			alwaysHide: true,
			onActive: function(trigger, element){
				trigger.addClass('trigger_active');
			},
			onBackground: function(trigger, element){
				trigger.removeClass('trigger_active');
			}
		});
	});
	
	// funky tools
	Element.implement({
		'show' : function(){
			this.removeClass('hidden');
			return this;
		},
		'hide': function(){
			this.addClass('hidden');
			return this;
		}
	});
	
	// add classnames to checkboxes if IE6
	if(Browser.ie6 || Browser.ie7){
		$$('input[type="checkbox"]').each(function(item){
			item.addClass('checkbox');
		});
		$$('input[type="submit"]').each(function(item){
			item.addClass('submit');
		});
	}
});

function makeFieldsetsCollapsable(openindex){
	var form = $(document.body).getElement('form');
	var triggers = $(document.body).getElements('legend');
	triggers.addClass('accordion_trigger');
	new Accordion(form, 'legend', '.fieldset_content', {
		display:openindex,
		alwaysHide: true,
		onActive: function(trigger, element){
			trigger.addClass('trigger_active');
		}, 
		onBackground: function(trigger, element){
			trigger.removeClass('trigger_active');
		}
	});
}
