//******************************************accordion control*********************************************
var accordion=function(){
	var tm=10; var sp=10;
	function slider(n)
	{
		this.nm=n; 
		this.arr=[]; 
	}
	
	slider.prototype.init = function(t,c)
	{
		var a,h,s,l,i; 
		a=document.getElementById(t);
		h=getElementsByClassName(a,'header');// ' a.getElementsByTagName('dt'); 
		s=getElementsByClassName(a,'body');// a.getElementsByTagName('dd');
		l=h.length;

		for(i=0;i<l;i++)
		{ // header
			var d = h[i]; 
			this.arr[i] = d;
			d.opened = false;
			d.className = 'header'; 
			if (c == i )
			{
			    d.className = 'header-open';
			    d.opened = true;
			}

			d.onclick = new Function(this.nm+".process(this)");
			d.onmouseover = new Function(this.nm+".doMouseenter(this)");
			d.onmouseover = new Function(this.nm+".doMouseover(this)");
			d.onmouseout = new Function(this.nm+".doMouseout(this)");
			d.onmouseleave = new Function(this.nm+".doMouseleave(this)");
		}
		l = s.length;
		for(i=0;i<l;i++) 
		{ // body
			var d = s[i]; 
			d.maxh = d.offsetHeight;
			if(c != i)
			{
			    d.style.height='0'; 
			    d.style.display='none'
			}
			else
			{
			    d.style.height = d.maxh + 'px';
			    d.style.display = '';
			}
			
		}
	}
	slider.prototype.doMouseover = function(d)
	{
	    if (d.opened == true)
	        d.className = 'header-open-hover';
	    else
	        d.className = 'header-hover';
	}
	
	slider.prototype.doMouseenter = function(d)
	{
	    if (d.opened == true)
	        d.className = 'header-open-hover';
	    else
	        d.className = 'header-hover';
	}

	slider.prototype.doMouseout = function(d)
	{
	    if (d.opened == true)
	        d.className = 'header-open';
	    else
	        d.className = 'header';
	}
	
	slider.prototype.doMouseleave = function(d)
	{
	    if (d.opened == true)
	        d.className = 'header-open';
	    else
	        d.className = 'header';
	}	
	
	slider.prototype.process = function(d){
		var i,l; l=this.arr.length;
//		if (d.opened == true)
//            d.opened = false;
		for(i=0;i<l;i++)
		{
			var h = this.arr[i]; 
                
			var s = h.nextSibling;
			if(s.nodeType != 1)
			{
			    s = s.nextSibling
			}
			clearInterval(s.timer);
			//s.style.height = 'auto';
			if(h == d && s.style.display=='none')
			{
				s.style.display=''; 
				setup(s,1); 
				h.className= 'header-open';//this.sel;
				h.opened = true;
			}
			else if(s.style.display == '')
			{
			    h.className='header';
			    setup(s,-1); 
			//s.style.height = '';
			    h.opened = false;
			}
		}
		
	}
	
	function setup(c,f)
	{
	    c.timer=setInterval(function(){slide(c,f)},tm)
	}
	function slide(c,f){
		var h,m,d; 
		h=c.offsetHeight; 
		m=c.maxh; 
		d=(f==1)?Math.ceil((m-h)/sp):Math.ceil(h/sp);
		c.style.height = h+(d*f)+'px';
		c.style.height = h+(d*f)+'px'; 
		c.style.opacity = h/m; 
		c.style.filter = 'alpha(opacity='+h*100/m+')';
		if(f==1 && h>=m)
		{
		    clearInterval(c.timer)
		}
		else if(f!=1 && h==1)
		{
		    c.style.display='none'; 
		    clearInterval(c.timer)
		}
	}
	return {slider:slider}
}();

function getElementsByClassName(elm, cl) 
{
    var retnode = [];
    var myclass = new RegExp('\\b'+cl+'\\b');
    var elem = elm.getElementsByTagName('*');
    for (var i = 0; i < elem.length; i++) 
    {
        var classes = elem[i].className;
        //alert(classes);
        if (myclass.test(classes)) 
        retnode.push(elem[i]);
    }
    return retnode;
}; 

//********************************** end accordion control*******************************
