window.addEvent('domready',function(){
	
	if($('piexhlist-container')){
		//tabs
		var container = $('piexhlist-container');
		container.getElements('ul.efTabs li').each(function(liEl){
			liEl.addEvent('click',function(){
				var rel = this.getProperty('rel');
				var thisTab = container.getElement('div.efTabs-content[rel='+rel+']');
				if(thisTab.getStyle('display','none')){
					thisTab.setStyle('display','block');
					container.getElement('div.efTabs-content[rel='+(rel==1?2:1)+']').setStyle('display','none');
				}
				container.getElements('ul.efTabs li[rel='+rel+']').addClass('active');
				container.getElements('ul.efTabs li[rel='+(rel==1?2:1)+']').removeClass('active');
				Cookie.write('ef_piexhlist_tab',rel,{duration:900});
			});
		});
		
		//what tab to show first ?
		var tabToShowFirst = 1;
		var tabCookie = Cookie.read('ef_piexhlist_tab');
		if(tabCookie==1 || tabCookie==2){
			tabToShowFirst = tabCookie;
		}
		if($get('tx_ef_piexhlist%5BlistingMode%5D')=='taxo'){
			tabToShowFirst = 2;
		}
		container.getElement('div.efTabs-content[rel='+tabToShowFirst+']').setStyle('display','block');
		container.getElements('ul.efTabs li[rel='+tabToShowFirst+']').addClass('active');
		//tabs end
		
		
		// ALPHA GROUPS
		//prepare accords
		container.getElements('li.group-alpha div.accord').each(function(groupEl){
			groupEl.store('accord',new Fx.Slide(groupEl,{duration:200}));
		});
		//events
		container.getElements('.list_alpha_controls a').each(function(linkEl){
			if(linkEl.getProperty('class')=='disabled') return false;
			var rel = linkEl.getProperty('rel');
			
			if(rel!='all'){
				linkEl.addEvent('click',function(e){
					e.stop();
					container.getElements('.list_alpha_controls a').removeClass('active');
					this.addClass('active');
					container.getElements('li.group-alpha[rel!='+rel+'] div.accord').each(function(groupEl){
						groupEl.retrieve('accord').slideOut();
					});
					container.getElement('li.group-alpha[rel='+rel+'] div.accord').retrieve('accord').slideIn();
					//new Fx.Scroll(window).toElement(container.getElement('li.group-alpha[rel='+rel+'] div.accord'));
				});
			}else{
				linkEl.addClass('active');
				linkEl.addEvent('click',function(e){
					e.stop();
					container.getElements('.list_alpha_controls a').removeClass('active');
					this.addClass('active');
					container.getElements('li.group-alpha div.accord').each(function(groupEl){
						groupEl.retrieve('accord').slideIn();
					});
				});
			}
		});
		//in_taxo
		container.getElements('li.group-alpha p.in_taxo a').each(function(inTaxoEl){
			var rel = inTaxoEl.getProperty('rel');
			inTaxoEl.addEvent('click',function(e){
				e.stop();
				container.getElements('ul.efTabs li[rel=2]').fireEvent('click');
				container.getElements('li.group-taxo[rel!='+rel+']').each(function(groupEl){
					groupEl.retrieve('accord').slideOut();
				});
				container.getElement('li.group-taxo[rel='+rel+']').retrieve('accord').slideIn();
				new Fx.Scroll(window).toElement(container.getElement('li.group-taxo[rel='+rel+']'));
			});
		});
		
		
		
		// TAXO GROUPS
		container.getElements('li.group-taxo').each(function(groupEl){
			var accord = new Fx.Slide(groupEl.getElement('ul'),{duration:200});
			accord.hide();
			groupEl.getElement('h3').addEvent('click',function(){accord.toggle()});
			accord.addEvent('complete',function(el){
				if(el.getStyle('margin-top').toInt()==0){
					el.getParent().getParent().getElement('h3').addClass('open');
				}else{
					el.getParent().getParent().getElement('h3').removeClass('open');
				}
			})
			groupEl.store('accord',accord);
		});
		container.getElements('.list_taxo_controls a').each(function(linkEl){
			var rel = linkEl.getProperty('rel');
			linkEl.addEvent('click',function(e){
				e.stop();
				container.getElements('li.group-taxo[rel!='+rel+']').each(function(groupEl){
					groupEl.retrieve('accord').slideOut();
				});
				container.getElement('li.group-taxo[rel='+rel+']').retrieve('accord').slideIn();
				new Fx.Scroll(window).toElement(container.getElement('li.group-taxo[rel='+rel+']'));
			});
		});
		
		var default_taxo_group = $get('tx_ef_piexhlist%5Bdef_taxo%5D');
		if(default_taxo_group!=''){
			rel = default_taxo_group;
			container.getElements('li.group-taxo[rel!='+rel+']').each(function(groupEl){
				groupEl.retrieve('accord').slideOut();
			});
			container.getElement('li.group-taxo[rel='+rel+']').retrieve('accord').slideIn();
			new Fx.Scroll(window).toElement(container.getElement('li.group-taxo[rel='+rel+']'));
		}
		
	}
});