/**
 * Toggler.js - Based on Tabs.js
 * 
 * @author  Webstores <info at webstores dot nl>
 *           Copyright (c) Webstores internet totaalbureau <http://www.webstores.nl/>
 */

var Toggler = function() {
	var togglers,
		activeToggler,
		activeCls = arguments[1] || 'active';
		togglerCls = arguments[2] || 'toggler';
	
	return {
		initialize: function() {
			togglers = WS.DOM.getElementsByClass(togglerCls);
			if(togglers.length === 0) return;
			this.initEvents();
		},
		initEvents: function() {
			var self = this;
			for(var i = 0; i < togglers.length; i++) {
				var toggler = togglers[i];
				toggler.container = $(togglers[i].href.split('#')[1]);
				
				WS.hide(toggler.container);
				
				WS.Event.addEvent(toggler, 'click', function() {
					self.showTogglerContent(this);
				});
			}
		},
		showTogglerContent: function(el) {
			if(activeToggler) {
				WS.hide(activeToggler.container);
				WS.removeClass(activeToggler, activeCls);
				if(el == activeToggler) {
					activeToggler = null;
					return;
				}
			}
			
			WS.show(el.container);
			WS.addClass(el, activeCls);
			activeToggler = el;
		}
	}
}
