window.Marquees = new Array();

if (window.MarqueeInitialise == null)
{
	window.MarqueeInitialise = function()
	{
		var numMarquees = window.Marquees.length;
		for (var i = 0; i < numMarquees; i++)
		{
			var marquee = window.Marquees[i];
			marquee.MarqueeItems = new Array();
			marquee.IsPaused = false;
	
			var numChildNodes = marquee.childNodes.length;
			for (var j = 0; j < numChildNodes; j++)
			{
				var marqueeItem = marquee.childNodes[j];
				if (marqueeItem.tagName == "SPAN")
				{
					marquee.MarqueeItems[marquee.MarqueeItems.length] = marqueeItem;
				}
			}
		}
	};
}

if (window.MarqueeScrollTick == null)
{
	window.MarqueeScrollTick = function()
	{
		var numMarquees = window.Marquees.length;
		for (var i = 0; i < numMarquees; i++)
		{
			var marquee = window.Marquees[i];
			if (marquee.IsPaused != true)
			{
				var marginLeft = parseInt(marquee.style.marginLeft);
				if (isNaN(marginLeft))
				{
					marginLeft = 200;
				}
				if (marquee.MarqueeItems.length > 0)
				{
					if (-1 * marginLeft < parseInt(marquee.MarqueeItems[0].offsetWidth) - 1)
					{
						marquee.style.marginLeft = (marginLeft - 1) + "px";
					}
					else
					{
						//move the leftmost item to the end and reset the margin
						var marqueeItem = marquee.MarqueeItems.shift();
						marquee.MarqueeItems.push(marqueeItem);
	
						marquee.appendChild(marqueeItem);
						marquee.style.marginLeft = "200px";
					}
				}
			}
		}
	
		window.setTimeout(window.MarqueeScrollTick, 50);
	};
}

var oldWindowOnLoadMarquee = window.onload ? window.onload : function() {};
window.onload = function() { oldWindowOnLoadMarquee(); window.MarqueeInitialise(); window.MarqueeScrollTick(); };

function Marquee_SearchBarGo(link)
{
	try
	{
		var parentNode = link.parentNode;
		while (parentNode != null)
		{
			if (parentNode.className == "Marquee_SearchBar")
			{
				break;
			}
			parentNode = parentNode.parentNode;
		}
		if (parentNode != null)
		{
			//get the query string value
			var queryStringValue = "";
			var searchBarInputBox = Marquee_GetElementByClassNames(parentNode, ["Marquee_SearchBar_Input_Box"], 0);
			if (searchBarInputBox != null && searchBarInputBox.value != null)
			{
				queryStringValue = escape(searchBarInputBox.value);
			}
			window.location.href = link.href + "?q=" + queryStringValue;
			return false;
		}
	}
	catch (ex)
	{
	}

	return true;
}

function Marquee_GetElementByClassNames(container, classNames, index)
{
	var elements = Marquee_GetElementsByClassNamesRecursive(container, classNames);
	var element = null;
	if (index >= 0 && index < elements.length)
	{
		element = elements[index];
	}
	return element;
}

function Marquee_GetElementsByClassNamesRecursive(container, classNames)
{
	var elements = new Array();
	if (container != null)
	{
		for (var i = 0; i < classNames.length; i++)
		{
			if (container.className == classNames[i])
			{
				elements[elements.length] = container;
				break;
			}
		}

		var numChildNodes = container.childNodes.length;
		for (var i = 0; i < numChildNodes; i++)
		{
			elements = elements.concat(Marquee_GetElementsByClassNamesRecursive(container.childNodes[i], classNames));
		}
	}
	return elements;
}

jQuery(document).ready(function()
{

	jQuery("div.Marquee").keypress(function(e)
	{
		//var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
		var textBoxValue = jQuery("div.Marquee input.Marquee_SearchBar_Input_Box").val();

		if (e.which == 13)
		{
			jQuery("div.Marquee a.Marquee_SearchBar_GoLink").click();
			/*
			e.preventDefault();

			if (jQuery("div.Marquee a.Marquee_SearchBar_GoLink").get(0).click)
			{
			alert("click");
			jQuery("div.Marquee a.Marquee_SearchBar_GoLink").get(0).click();
			}
			else
			{
			alert(textBoxValue);
			var search = jQuery("div.Marquee a.Marquee_SearchBar_GoLink").get(0).href + "?q=" + escape(textBoxValue);
			window.location.href = search;
			}
			*/

		}
	});
});
