<!-- Class Execution -->
gbl.classes.event_types = {
	init : function(){
		
		var event_type_list =
		[	{ name : 'Everyone', id : 0 },
			{ name : 'Entrepreneurs & Start-Ups', id : 4 },
			{ name : 'Marketers / PR', id : 3 },
			{ name : 'Art Lovers', id : 8 },
			
			{ name : 'Designers & UX', id : 1 },
			{ name : 'Bloggers & Journalists', id : 5 },
			{ name : 'Movie Lovers', id : 10 },
			{ name : 'Fashion Lovers', id : 6 },
			
			{ name : 'Developers', id : 2 },
			{ name : 'Change Agents', id : 9 },
			{ name : 'Music Lovers', id : 7 },
			{ name : 'Food Lovers', id : 11 }	]
		
		if ($$('a[name=display_event_types]')[0]) new EventType({ 'button' : $$('a[name=display_event_types]')[0], 'event_type_list' : event_type_list });
	}
};


<!-- Classes -->
var EventType = new Class({
	
	Implements: Options,

	options: {	

		button: false,
		event_type_list : false
	
	},
	
	initialize : function(options){
		
		this.setOptions(options);
			
		if (!this.options.button) return;
		if (!this.options.event_type_list) return;
		
		this.els = {};
		
		var category_manager = Cookie.read("category_manager");
		
	
				
		this.add_events();
		this.create_view();
		
		if (category_manager == 'open') this.toggle_view();
		
	},
	
	add_events : function(){
		
		var t = this;
		
		this.options.button.addEvent('click',function(){
			
			t.toggle_view();
			
		});
		
	},
	
	toggle_view : function(){
		
		active = 'white_button_pressed is_button small';
		inactive = 'white_button is_button small';
		
		if (this.options.button.get('class') == active ) { this.options.button.set('class',inactive); Cookie.write('category_manager','closed') }
		else { this.options.button.set('class',active);  Cookie.write('category_manager','open') }
							 
		if (this.els.container){
			
			if (this.els.container.hasClass('hide')) this.els.container.removeClass('hide');
			else this.els.container.addClass('hide');
				
		}
	},
	
	create_view : function(){
				
		var button_coords = this.options.button.getCoordinates(this.options.button.getParent())
				
		this.els.container = new Element('ul', {
			'id' : 'filter_events',
			'class' : 'clear',
			styles : {
							
				/*'position' : 'absolute',
				'top' : button_coords.top+button_coords.height+2,
				'left' : button_coords.left,
				'z-index' : 200*/
				
			}})	
		
		this.els.container.addClass('hide');
		
		this.options.button.getParent().setStyle('z-index',201)
		
		//this.els.container.inject(this.options.button.getParent());
		
		this.els.container.inject('event_calendar','before');
		
		//new Element('li',{ 'class' : 'headline' }).set('text','Events for...').inject(this.els.container)
		
		for (var i = 0; i < this.options.event_type_list.length; i++){
			
			var type = this.options.event_type_list[i];
		
			var el1 = new Element('li')
			var el2 = new Element('a',{ 'name' : 'attendance_type_'+type.id, 'class' : 'attendance_type_'+type.id }).set('text',type.name);
			
			el2.inject(el1)
		
			el1.inject(this.els.container);
			
		};
		
			if (required_class('events') && $('filter_events')) init.classes.toggleEventList = new ToggleEventList({ els : $('filter_events').getElements('a') });

		
	}	
	
	
});