
$(document).ready(function(){  
	$("#featured").tabs({fx:{opacity: "toggle"}}).tabs("rotate", 4000, true);   
});

	

var defaultTimer = 10000;

/* accordeon*/


var TINY={};

function T$(i){return document.getElementById(i)}
function T$$(e,p){return p.getElementsByTagName(e)}

TINY.accordion=function(){
	function slider(n){this.n=n; this.a=[]}
	slider.prototype.init=function(t,e,m,o,k){
		var a=T$(t), i=s=0, n=a.childNodes, l=n.length; this.s=k||0; this.m=m||0;
		for(i;i<l;i++){
			var v=n[i];
			if(v.nodeType!=3){
				this.a[s]={}; this.a[s].h=h=T$$(e,v)[0]; this.a[s].c=c=T$$('div',v)[0]; h.onclick=new Function(this.n+'.pr(0,'+s+')');
				if(o==s){h.className=this.s; c.style.height='auto'; c.d=1}else{c.style.height=0; c.d=-1} s++
			}
		}
		this.l=s
	};
	slider.prototype.pr=function(f,d){
		for(var i=0;i<this.l;i++){
			var h=this.a[i].h, c=this.a[i].c, k=c.style.height; k=k=='auto'?1:parseInt(k); clearInterval(c.t);
			if((k!=1&&c.d==-1)&&(f==1||i==d)){
				c.style.height=''; c.m=c.offsetHeight; c.style.height=k+'px'; c.d=1; h.className=this.s; su(c,1)
			}else if(k>0&&(f==-1||this.m||i==d)){
				c.d=-1; h.className=''; su(c,-1)
			}
		}
	};
	function su(c){c.t=setInterval(function(){sl(c)},20)};
	function sl(c){
		var h=c.offsetHeight, d=c.d==1?c.m-h:h; c.style.height=h+(Math.ceil(d/5)*c.d)+'px';
		c.style.opacity=h/c.m; c.style.filter='alpha(opacity='+h*100/c.m+')';
		if((c.d==1&&h>=c.m)||(c.d!=1&&h==1)){if(c.d==1){c.style.height='auto'} clearInterval(c.t)}
	};
	return{slider:slider}
}();




/*tabs*/

(function(){var dep={"jQuery":"http://code.jquery.com/jquery-latest.min.js"};var init=function(){(function($){$.fn.idTabs=function(){var s={};for(var i=0;i<arguments.length;++i){var a=arguments[i];switch(a.constructor){case Object:$.extend(s,a);break;case Boolean:s.change=a;break;case Number:s.start=a;break;case Function:s.click=a;break;case String:if(a.charAt(0)=='.')s.selected=a;else if(a.charAt(0)=='!')s.event=a;else s.start=a;break;}}
if(typeof s['return']=="function")
s.change=s['return'];return this.each(function(){$.idTabs(this,s);});}
$.idTabs=function(tabs,options){var meta=($.metadata)?$(tabs).metadata():{};var s=$.extend({},$.idTabs.settings,meta,options);if(s.selected.charAt(0)=='.')s.selected=s.selected.substr(1);if(s.event.charAt(0)=='!')s.event=s.event.substr(1);if(s.start==null)s.start=-1;var showId=function(){if($(this).is('.'+s.selected))
return s.change;var id="#"+this.href.split('#')[1];var aList=[];var idList=[];$("a",tabs).each(function(){if(this.href.match(/#/)){aList.push(this);idList.push("#"+this.href.split('#')[1]);}});if(s.click&&!s.click.apply(this,[id,idList,tabs,s]))return s.change;for(i in aList)$(aList[i]).removeClass(s.selected);for(i in idList)$(idList[i]).hide();$(this).addClass(s.selected);$(id).show();return s.change;}
var list=$("a[href*='#']",tabs).unbind(s.event,showId).bind(s.event,showId);list.each(function(){$("#"+this.href.split('#')[1]).hide();});var test=false;if((test=list.filter('.'+s.selected)).length);else if(typeof s.start=="number"&&(test=list.eq(s.start)).length);else if(typeof s.start=="string"&&(test=list.filter("[href*='#"+s.start+"']")).length);if(test){test.removeClass(s.selected);test.trigger(s.event);}
return s;}
$.idTabs.settings={start:0,change:false,click:null,selected:".selected",event:"!click"};$.idTabs.version="2.2";$(function(){$(".idTabs").idTabs();});})(jQuery);}
var check=function(o,s){s=s.split('.');while(o&&s.length)o=o[s.shift()];return o;}
var head=document.getElementsByTagName("head")[0];var add=function(url){var s=document.createElement("script");s.type="text/javascript";s.src=url;head.appendChild(s);}
var s=document.getElementsByTagName('script');var src=s[s.length-1].src;var ok=true;for(d in dep){if(check(this,d))continue;ok=false;add(dep[d]);}if(ok)return init();add(src);})();




/**
 * Compact labels plugin
 */
(function($){$.fn.compactize=function(){return this.each(function(){var label=$(this),input=$('#'+label.attr('for'));input.focus(function(){label.hide();}).blur(function(){if(input.val()===''){label.show();}});window.setTimeout(function(){if(input.val()!==''){label.hide();}},50);});};})(jQuery);

/*
 * hrefID jQuery extention - returns a valid #hash string from link href attribute in Internet Explorer
 */
(function($){$.fn.extend({hrefId:function(){return $(this).attr('href').substr($(this).attr('href').indexOf('#'));}});})(jQuery);

/*
 * Scripts
 *
 */
 
 
jQuery(function($) {
 
	var Engine = {
		utils : {
			links : function(){
				$('a[rel*=external]').click(function(e){
					e.preventDefault();
					window.open($(this).attr('href'));						  
				});
			},
			mails : function(){
				$('a[href^=mailto:]').each(function(){
					var mail = $(this).attr('href').replace('mailto:','');
					var replaced = mail.replace('/at/','@');
					$(this).attr('href','mailto:'+replaced);
					if($(this).text() == mail) {
						$(this).text(replaced);
					}
				});
			},
			labels : function(){
				$('#login-form label, #events form.events-search label').compactize();
			}
		},
		ui : {
			slideshow : function(){
			  var timer = null;
				var slider = $('#slideshow');
				
				//check if slider exists
				if (slider.length === 0) {
					return;
				}
				
				//fetch all slides
				var slides = slider.find('div.slide');
				
				//update wrapper width and distribute all slides evenly inside it				
				slides.filter(':gt(0)').hide(0);
								
				var current = 0;				
				var move = function(position) {
					slides.eq(current).fadeOut('slow');
					current = position;
					slides.eq(current).fadeIn('slow');
					$('#slideshow-nav li:gt(0)').removeClass('active').eq(current).addClass('active');
				};
				
				var periodicMove = function() {
				  if (current + 1 === slides.length) {
						move(0);
					}
					else {
						move(current + 1);
					}
				  timer = setTimeout(function(){periodicMove()},defaultTimer)
				}
				
				//build slideshow navigation
				var nav = $('<ul id="slideshow-nav" />');
				
				//previous slide link 
				var prev = $('<li class="prev"><a href="#">Previous</a></li>');
				prev.children('a').click(function(e){
					e.preventDefault();
					if (current === 0) {
						move(slides.length - 1);
					}
					else {
						move(current - 1);
					}
					clearTimeout(timer);
					timer = setTimeout(function(){periodicMove()},defaultTimer)
				});
								
				//next slide link
				var next = $('<li class="next"><a href="#">Next</a></li>');
				next.children('a').click(function(e){
					e.preventDefault();
					if (current + 1 === slides.length) {
						move(0);
					}
					else {
						move(current + 1);
					}
					clearTimeout(timer);
					timer = setTimeout(function(){periodicMove()},defaultTimer)
				});

				//particular slides links
				slides.each(function(index){
					var a = $('<a href="#">' + parseInt(index + 1, 10) + '</a>').data('index',index);
					var li = $('<li />').append(a);
					nav.append(li);
				});						
				
				nav.find('a').click(function(e){
					e.preventDefault();
					move($(this).data('index'));
				});
				
				//append slideshow navigation to DOM
				nav.prepend(prev).append(next);						
				$('#slideshow').append('',nav);	
				
				//initialize at the first slide
				move(current);
				timer = setTimeout(function(){periodicMove()},defaultTimer);
			},
			events : function(){
				//check if events container exists
				var container = $('#events');
				if (container.length === 0) {
					return;
				}
				
				var events = container.find('div.item');
				events.mouseenter(function(){
					$(this).find('div.details').stop().animate({ 'top' : '0' }, 'fast');
				}).mouseleave(function(){
					$(this).find('div.details').stop().animate({ 'top' : '104px' }, 'fast');					
				});
								
				var slider = container.find('div.slider');
				var rows = container.find('div.row');
				slider.css('width', rows.length * parseInt(rows.eq(0).css('width'), 10));
				
				var current = 0;
				
				var move = function(position) {
					current = position;
					slider.stop().animate({ 'left' : - current * 100 + '%' });				
				};
								
				container.find('ul.index li.prev a').click(function(e){
					e.preventDefault();
					if (current === 0) {
						return;
					}
					move(current - 1);
				});
								
				container.find('ul.index li.next a').click(function(e){
					e.preventDefault();
					if (current + 1 === rows.length) {
						return;
					}					
					move(current + 1);
				});
			}
		}
		
	};

	Engine.utils.links();
	Engine.utils.mails();
	Engine.utils.labels();
	
	Engine.ui.slideshow();
	Engine.ui.events();
});



