﻿//***********************************************************************//
// ImageScroller - Author:iLawton - PureNet Solutions Ltd
//***********************************************************************//

var IsScrolling = false;
var Element;

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

function DetectBrowser()
{
	// Detects browser version and sets a higher scroll speed if the browser is IE 8.0 and above
	var browser=navigator.appName;
	var b_version=navigator.appVersion;
	var version=parseFloat(b_version);
	var speed = 3;
	var ie8 = b_version.indexOf("MSIE 8.0");	
	
	if ((browser=="Microsoft Internet Explorer") && (ie8 != -1))
	{
	  speed = 7;	  
	}
	else if((browser=="Netscape"||browser=="Microsoft Internet Explorer") && (version>=4))
	{
	  speed = 3;	  
	}
	else
	{
	  speed = 3;
	}
	
	return speed;
}



	function ScrollLeft(ElementID)
	{
		Scroll(ElementID,-(DetectBrowser()));
	}


	function ScrollRight(ElementID)
	{
		Scroll(ElementID,DetectBrowser());
	}

	function Scroll(ElementID,Value)
	{
		if (!IsScrolling)
		{
			Element = document.getElementById(ElementID);
			if (Element != null)
			{
				IsScrolling = true;               
				MoveImages(Value);				
			}
		}
	}

	function StopScrolling()
	{
		IsScrolling = false;
		if(Element != null)
			Element.onMouseout = null;
	}

	function MoveImages(Value)
	{
		if((Element.childNodes.length * 170) > Element.offsetWidth) {
			if (IsScrolling)
			{
				var MaxLeft = 0;
				var MaxRight = Element.offsetWidth;	        
		        
		        
				for(var i = 0; i < Element.childNodes.length; i++)
				{
					var Image = Element.childNodes[i];
					if (Image.style != null)
					{
						Image.style.left = (Image.offsetLeft + Value) + "px";
						if (Image.offsetLeft < MaxLeft) MaxLeft = Image.offsetLeft;
						if ((Image.offsetLeft + 170) > MaxRight) MaxRight = (Image.offsetLeft + 170);
					}
				}
		        
				for(var i = 0; i < Element.childNodes.length; i++)
				{
					var Image = Element.childNodes[i];
					if (Image.style != null)
					{
					    if ((Image.offsetLeft + 170) < 0 && Value < 0)
						{
							Image.style.left = MaxRight + "px";
							MaxRight = MaxRight + 170;
						}
						else if((Image.offsetLeft) > Element.offsetWidth && Value > 0)
						{
						    Image.style.left = (MaxLeft - 170) + "px";
							MaxLeft = MaxLeft - 170;
						}
					}
				}
		        
				setTimeout("MoveImages(" + Value + ");",0);
			}
		} else {
		}
	}
