if (typeof MDBS_lio == "undefined") {
    var MDBS_lio = {};
}

MDBS_lio.setDebugInfo = function(divname,info)
{
	var obj = document.getElementById(divname);
	if( obj != null )
	{
		obj.innerHTML = info;
	}
}
MDBS_lio.addDebugInfo = function(divname,info)
{
	var obj = document.getElementById(divname);
	if( obj != null )
	{
		obj.innerHTML += info +"<BR/>";
	}
}
MDBS_lio.insertDebugInfo = function(divname,info)
{
	var obj = document.getElementById(divname);
	if( obj != null )
	{
		obj.innerHTML = info +"<BR/>" + obj.innerHTML;
	}
}
MDBS_lio.getWidth = function(element)
{
  var display = element.style.display;
  if (display != 'none' && display != null)
    return element.offsetWidth;
  var els = element.style;
  var originalVisibility = els.visibility;
  var originalPosition = els.position;
  var originalDisplay = els.display;
  els.visibility = 'hidden';
  els.position = 'absolute';
  els.display = 'block';
  var originalWidth = element.clientWidth;
  els.display = originalDisplay;
  els.position = originalPosition;
  els.visibility = originalVisibility;
  return originalWidth;
}
MDBS_lio.getHeight = function(element)
{
  var display = element.style.display;
  if (display != 'none' && display != null)
    return element.offsetHeight;
  var els = element.style;
  var originalVisibility = els.visibility;
  var originalPosition = els.position;
  var originalDisplay = els.display;
  els.visibility = 'hidden';
  els.position = 'absolute';
  els.display = 'block';
  var originalHeight = element.clientHeight;
  els.display = originalDisplay;
  els.position = originalPosition;
  els.visibility = originalVisibility;
  return originalHeight;
}
MDBS_lio.getSubElementByName = function(itemobj, tagname, elementname)
{
	var elementobj = itemobj.getElementsByTagName(tagname);
	if( elementobj != null )
	{
		for( var i = 0 ; i < elementobj.length ; i++ )
		{
			if( elementobj[i].getAttribute("name") == elementname )
				return elementobj[i];
		}
	}
	return null;
}
MDBS_lio.stopEvent = function(ievent)
{
	event.returnValue = false;
	if( typeof event.preventDefault != "undefined" )
	{
		event.preventDefault();
	}
}
MDBS_lio.setEventListener = function(target, eventType, functionRef, capture) 
{ 
	if (typeof target.addEventListener!= 'undefined')
	{
		target.removeEventListener(eventType, functionRef, capture);
		target.addEventListener(eventType, functionRef, capture);
	}
	else if (typeof target.attachEvent!= 'undefined')
	{
		target.detachEvent('on' + eventType, functionRef);
		target.attachEvent('on' + eventType, functionRef);
	}
	else
	{
		eventType = 'on' + eventType;
		if (typeof target[eventType] == 'function')
		{
			target[eventType] = function()
			{
				return functionRef();
			}
		}
		else
		{
			target[eventType] = functionRef;
		}
	}
	return true;
}
MDBS_lio.addEventListener = function(target, eventType, functionRef, capture) 
{ 
	if (typeof target.addEventListener!= 'undefined')
	{
		target.addEventListener(eventType, functionRef, capture);
	}
	else if (typeof target.attachEvent!= 'undefined')
	{
		target.attachEvent('on' + eventType, functionRef);
	}
	else
	{
		eventType = 'on' + eventType;
		if (typeof target[eventType] == 'function')
		{
			var oldListener = target[eventType];
			target[eventType] = function()
			{
				oldListener();
				return functionRef();
			}
		}
		else
		{
			target[eventType] = functionRef;
		}
	}
	return true;
}

MDBS_lio.DivScroll = new Object();

MDBS_lio.DivScroll.setH = function (itemid, Speed)
{
	function getWidth2()
	{
		viewwidth = MDBS_lio.getWidth(contentobj);
		divwidth = MDBS_lio.getWidth(pic1obj);
		if( divwidth > viewwidth )
		{
			leftobj.style.display="";
			rightobj.style.display="";
			
			pic2obj.innerHTML= pic1obj.innerHTML;
			var picMarquee = function ()
			{
				if( stopscroll != false )
				{
					if( stopscroll == -1 )
					{
						picMarqueeLeft();
					}
					else
					{
						picMarqueeRight();
					}
					MDBS_lio.setDebugInfo("infoH2","scroll:content.scrollLeft="+contentobj.scrollLeft+"&stopscroll="+stopscroll);
				}
			};
			var picMarqueeRight = function ()
			{
				if( contentobj.scrollLeft >= divwidth )
				{
					contentobj.scrollLeft = 0;
				}
				else
				{
					contentobj.scrollLeft++;
				}
			};
			var picMarqueeLeft = function ()
			{
				if( contentobj.scrollLeft == 0 )
				{
					contentobj.scrollLeft = divwidth;
				}
				else
				{
					contentobj.scrollLeft--;
				}
			};
			
			var leftevent= function(event)
			{
				timer = setInterval(picMarquee,Speed);
				stopscroll = 1;
			};
			var rightevent= function(event)
			{
				timer = setInterval(picMarquee,Speed);
				stopscroll = -1;
			};
			var clearevent= function(event)
			{
				stopscroll = false;
				clearInterval(timer);
			};
			var clickleftevent= function(event)
			{
				stopscroll = false;
				try
				{
					var _left = contentobj.scrollLeft;
					var pos = _left + viewwidth;
					MDBS_lio.insertDebugInfo("infoH","click left:pos="+pos+"&left="+_left);
					if( pos > divwidth )
					{
						pos = divwidth - _left;
					}
					contentobj.scrollLeft = pos;
				}
				catch(ex)
				{
					//alert(ex);
				}
				stopscroll = 1;
				//MDBS_lio.stopEvent(event);
			};
			var clickrightevent= function(event)
			{
				stopscroll = false;
				try
				{
					var _left = contentobj.scrollLeft;
					var pos = _left - viewwidth;
					MDBS_lio.insertDebugInfo("infoH","click right:pos="+pos+"&left="+_left);
					if( pos < 0 )
					{
						pos = divwidth + _left;
					}
					contentobj.scrollLeft = pos;
				}
				catch(ex)
				{
					//alert(ex);
				}
				stopscroll = -1;
				//MDBS_lio.stopEvent(event);
			};
			MDBS_lio.setEventListener(leftobj,'mouseover',leftevent);
			MDBS_lio.setEventListener(leftobj,'mouseout',clearevent);
			MDBS_lio.setEventListener(leftobj,'click',clickleftevent);
			MDBS_lio.setEventListener(rightobj,'mouseover',rightevent);
			MDBS_lio.setEventListener(rightobj,'mouseout',clearevent);
			MDBS_lio.setEventListener(rightobj,'click',clickrightevent);
		}
		else
		{
			leftobj.style.display="none";
			rightobj.style.display="none";
		}
		if( divwidth <= 0 )
			setTimeout(getWidth2,600);
	};
	if( !(parseInt(Speed) > 0) )
		Speed=1;
	var stopscroll = false;
	var myDiv = document.getElementById(itemid);
	var contentobj = MDBS_lio.getSubElementByName(myDiv,"div","content");
	var pic1obj = MDBS_lio.getSubElementByName(myDiv,"div","pic1");
	var pic2obj = MDBS_lio.getSubElementByName(myDiv,"div","pic2");
	var leftobj = MDBS_lio.getSubElementByName(myDiv,"div","left");
	var rightobj = MDBS_lio.getSubElementByName(myDiv,"div","right");
	var viewwidth = 0;
	var divwidth = 0;
	var timer = -1;
	getWidth2();
};
MDBS_lio.DivScroll.setV = function (itemid, Speed,scrollHeight)
{
	var getHeight2 = function()
	{
		viewheight = MDBS_lio.getHeight(contentobj);
		divheight = MDBS_lio.getHeight(pic1obj);
		if( divheight > viewheight )
		{
			upobj.style.display="";
			downobj.style.display="";
			
			pic2obj.innerHTML= pic1obj.innerHTML;
			var picMarquee = function ()
			{
				if( stopscroll != false )
				{
					if( stopscroll == -1 )
					{
						picMarqueeDown();
					}
					else
					{
						picMarqueeUp();
					}
					MDBS_lio.setDebugInfo("infoV2","scroll:content.scrollTop="+contentobj.scrollTop+"&stopscroll="+stopscroll);
				}
			};
			var picMarqueeUp = function ()
			{
				if( contentobj.scrollTop >= divheight )
				{
					contentobj.scrollTop = 0;
				}
				else
				{
					contentobj.scrollTop++;
				}
			};
			var picMarqueeDown = function ()
			{
				if( contentobj.scrollTop == 0 )
				{
					contentobj.scrollTop = divheight;
				}
				else
				{
					contentobj.scrollTop--;
				}
			};
			
			var upevent= function(event)
			{
				stopscroll = true;
				timer = setInterval(picMarquee,Speed);
				stopscroll = 1;
			};
			var downevent= function(event)
			{
				stopscroll = true;
				timer = setInterval(picMarquee,Speed);
				stopscroll = -1;
			};
			var clearevent= function(event)
			{
				alert(0);
				stopscroll = false;
				clearInterval(timer);
			};
			var clickupevent= function(event)
			{
				if( stopscroll != false )
				{
					stopscroll = false;
					try
					{
						var _top = contentobj.scrollTop;
						var pos = _top + scrollHeight;
						if( pos > divheight )
						{
							pos = scrollHeight;//divheight - _top;
						}
						MDBS_lio.insertDebugInfo("infoV","click up:pos="+pos+"&top="+_top);
						contentobj.scrollTop = pos;
					}
					catch(ex)
					{
						//alert(ex);
					}
					stopscroll = 1;
				}
				//MDBS_lio.stopEvent(event);
			};
			var clickdownevent= function(event)
			{
				if( stopscroll != false )
				{
					stopscroll = false;
					try
					{
						var _top = contentobj.scrollTop;
						var pos = _top - scrollHeight;
						if( pos < 0 )
						{
							pos = divheight - scrollHeight;
						}
						MDBS_lio.insertDebugInfo("infoV","click down:pos="+pos+"&top="+_top);
						contentobj.scrollTop = pos;
					}
					catch(ex)
					{
						//alert(ex);
					}
					stopscroll = -1;
				}
				//MDBS_lio.stopEvent(event);
			};
			//MDBS_lio.setEventListener(upobj,'mouseover',upevent);
			//MDBS_lio.setEventListener(upobj,'mouseout',clearevent);
			MDBS_lio.setEventListener(upobj,'click',clickupevent);
			//MDBS_lio.setEventListener(downobj,'mouseover',downevent);
			//MDBS_lio.setEventListener(downobj,'mouseout',clearevent);
			MDBS_lio.setEventListener(downobj,'click',clickdownevent);
		}
		else
		{
			upobj.style.display="none";
			downobj.style.display="none";
		}
		if( divheight <= 0 )
			setTimeout(getHeight2,500);
	};
	if( !(parseInt(Speed) > 0) )
		Speed=1;
	var stopscroll = true;
	var myDiv = document.getElementById(itemid);
	var contentobj = MDBS_lio.getSubElementByName(myDiv,"div","content");
	var pic1obj = MDBS_lio.getSubElementByName(myDiv,"div","pic1");
	var pic2obj = MDBS_lio.getSubElementByName(myDiv,"div","pic2");
	var upobj = MDBS_lio.getSubElementByName(myDiv,"a","up");
	var downobj = MDBS_lio.getSubElementByName(myDiv,"a","down");
	var viewheight = 0;
	var divheight = 0;
	var timer = -1;
	getHeight2();
};