// johnny cison
// www.ans.org

var shift_speed=32, shift_max=200, shift_time, shift_abort=0;
var panels=Array(null, null);
var day_last, day_close;

function panel(s,n)
{
	if (document.getElementById)
	{
		if (document.getElementById('d_panel_'+s+'_'+n).style.display != 'block')
		{
			var i=0;
			while (temp=document.getElementById('d_panel_'+s+'_'+i))
			{
				if (temp.style.display == 'block') { panels[0]=Array(3); panels[0][0]=s+'_'+i; break; }
				i++;
			}

			panels[1]=Array(3); panels[1][0]=s+'_'+n;
			req_send('/home/req/panel.php?s='+s+'&n='+n);

			panel_init();
		}
	}
}

function panel_init()
{
	if (panels[0])
	{
		pptr=document.getElementById('d_panel_'+panels[0][0]);
		if ((! shift_abort) && pptr.offsetHeight) { pptr.style.visibility='hidden'; panels[0][1]=pptr.offsetHeight; } else { pptr.style.display='none'; panels[0]=null; }
	}
	if (panels[1])
	{
		pptr=document.getElementById('d_panel_'+panels[1][0]); pptr.style.display='block';
		if ((! shift_abort) && pptr.offsetHeight) { pptr.style.visibility='hidden'; panels[1][1]=0; panels[1][2]=pptr.offsetHeight; } else { panels[1]=null; }
	}
	if (panels[0] || panels[1]) { shift_time=null; panel_shift(); }
}

function panel_shift()
{
	var now=new Date();
	if (shift_time)
	{
		if ((now.getTime() - shift_time) > shift_max) { shift_abort=1; }
		else { shift_time=now.getTime(); }
	}
	else { shift_time=now.getTime(); }

	if (panels[0])
	{
		pptr=document.getElementById('d_panel_'+panels[0][0]); panels[0][1] -= shift_speed;
		if (shift_abort || (panels[0][1] <= 0)) { pptr.style.height='auto'; pptr.style.display='none'; pptr.style.visibility='visible'; panels[0]=null; } else { pptr.style.height=panels[0][1]+'px'; }
	}
	if (panels[1])
	{
		pptr=document.getElementById('d_panel_'+panels[1][0]); panels[1][1] += shift_speed;
		if (shift_abort || (panels[1][1] >= panels[1][2])) { pptr.style.height='auto'; pptr.style.visibility='visible'; panels[1]=null; } else { pptr.style.height=panels[1][1]+'px'; }
	}
	if (panels[0] || panels[1]) { setTimeout("panel_shift()", 20); }
}

function day(d)
{
	if (document.getElementById)
	{
		if (day_close) { clearTimeout(day_close); day_h(); }

		var cptr=document.getElementById('d_calendar');

		var left=0, top=0;
		var optr=document.getElementById('day_'+d);
		while (optr != cptr) { top += optr.offsetTop; optr=optr.offsetParent; }

		top -= 28;

		pptr=document.getElementById('preview_'+d);
		pptr.style.top=top.toString()+'px';
		pptr.style.display='block';

		day_last=d;
	}
}

function day_dn() { day_close=setTimeout('day_h()', 500); }

function day_ka() { clearTimeout(day_close); }

function day_h()
{
	if (document.getElementById) { document.getElementById('preview_'+day_last).style.display='none'; }
}

function day_c(d) { document.location='/meetings/calendar/d_'+d; }
