/*
	ScrollMenu
	
	Example usage:
		Call OnLoad: smOnLoad();
	
		<script type="text/javascript"><!--
		var smCurrentPos = 1;
		var smItemsPerPage = 2;
		var smTotalItems = 5;
		//--></script>
		<div class="smItemContainer">
			<div class="smUpArrow" onmouseover="this.className='smUpArrow_Hover';" onmouseout="this.className='smUpArrow';" onmousedown="smAutoLoop=true;smGoUp();" onmouseup="smAutoLoop=false;clearTimeout(smTimer);" ></div>
			<script type="text/javascript"><!--
				smWriteItem("page1.php","Item1");
				smWriteItem("page2.php","Item2");
				smWriteItem("page3.php","Item3");
				smWriteItem("page4.php","Item4");
				smWriteItem("page5.php","Item5");
			//--></script>
			<div class="smDownArrow" onmouseover="this.className='smDownArrow_Hover';" onmouseout="this.className='smDownArrow';" onmousedown="smAutoLoop=true;smGoDown();" onmouseup="smAutoLoop=false;clearTimeout(smTimer);" ></div>
		</div>

*/

var smTimer;
var smAutoLoop = false;

function smOnLoad()
{
	var s = smGetUrlParam("scroll");
	var e = smGetItem(s);
	
	if (s && e)
	{
			smSetPos(
					 Math.min(
						 Math.max(1,s-Math.floor(smItemsPerPage/2)),
						 (smTotalItems - smItemsPerPage))
					 );
			e.style.fontWeight="bold";
			e.style.color="Black";
	}
	else
	{
		smSetPos(1);
	}
}

function smGetUrlParam(name) /* http://www.netlobo.com/url_query_string_javascript.html */
{
	name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
	var regexS = "[\\?&]"+name+"=([^&#]*)";
	var regex = new RegExp( regexS );
	var results = regex.exec( window.location.href );
	if (results == null)
		return "";
	else
		return results[1];
}

function smSetPos(Pos)
{
	smCurrentPos=Pos;
	for (var x=1;x<=smTotalItems;x++)
	{
		//console.log(x+","+(x >= CurrentPos && x <= CurrentPos+ItemsPerPage));
		if (x >= smCurrentPos && x <= smCurrentPos+smItemsPerPage)
		{
			smShowItem(x);
		}
		else
		{
			smHideItem(x);
		}
	}
}

function smGetItem(x)
{
	return document.getElementById("smItem"+x);
}
function smShowItem(x)
{
	smGetItem(x).style.display="";
	smGetItem(x).style.visibility="";
}
function smHideItem(x)
{
	smGetItem(x).style.display="none";
	smGetItem(x).style.visibility="hidden";
}

function smGoDown()
{
	if (smCurrentPos == smTotalItems - smItemsPerPage) return;
	smHideItem(smCurrentPos);
	smCurrentPos++;
	smShowItem(smCurrentPos+smItemsPerPage);
	
	if (smAutoLoop) smTimer=setTimeout(smGoDown,100);
}
function smGoUp()
{
	if (smCurrentPos==1) return;
	smHideItem(smCurrentPos+smItemsPerPage);
	smCurrentPos--;
	smShowItem(smCurrentPos);
	
	if (smAutoLoop) smTimer=setTimeout(smGoUp,100);
}

var smAddedCount = 0;
function smWriteItem(url,text)
{
	smAddedCount++;
	document.write("<span style='display:none;visibility:hidden' id='smItem"+smAddedCount+"'><a href='"+url+"?scroll="+smAddedCount+"'>"+text+"</a><br /></span>\n");
}

