function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function popFlash(g, l)
{
	window.open('flashgallery.php?g='+ g +'&l='+ l, '', 'width=1000,height=444');
}

function addScrollArea(target, width, height)
{
	
	var b = $(target).innerHTML;
	var c = '\n		<div id="scrollContent"></div>\n'
		+	'		<div id="scroller">\n'
		+	'			<div class="butUp"><a onMouseDown="scrollUp(true);" onMouseUp="scrollUp(false);"><img src="/images/scroll_up.png"></a></div>\n'
		+	'			<div id="track" style="margin-top: -4px; width: 10px;">\n'
		+	'				<div id="slider" style="cursor: n-resize; width: 10px;">\n'
		+	'					<div style="width: 7px; height: 100%; margin-left: 1px; margin-right: 4px;"></div>\n'
		+	'				</div>\n'
		+	'			</div>\n'
		+	'			<div class="butDown"><a onMouseDown="scrollDown(true);" onMouseUp="scrollDown(false);"><img src="/images/scroll_down.png"></a></div>\n'
		+	'		</div>\n';
	
	
	//alert($(target).innerHTML);
	
	$(target).innerHTML = c;
	
	
	$('scrollContent').innerHTML = b;
	$('scrollContent').style.width = width+'px';
	$('scroller').style.marginLeft = width+'px';
	
	//TRACK HEIGHT
	var th = (height - 18);
	$('track').style.height = th +'px';
	
	//CONTENT TARGET UPDATEN NAAR DIE VAN DE SCROLLER
	ct = 'scrollContent';
	hasScroll = true;


	//SCROLL TOTAL HEIGHT
	var scrollTH = $('scrollContent').offsetHeight;
	//SCROLL HEIGHT
	var scrollH = (scrollTH - height);
	scrollRatio = (height/scrollTH);
	var r = (10-(scrollRatio*scrollRatio));
	//alert('ratio: '+scrollRatio+'\nr: '+ r);
	scrollRatio /= r;
	//alert(scrollRatio);
				
				
	//GEBRUIK GEEN SCROLLBAR WANNEER DEZE NIET NODIG IS!!!
	if(scrollH <= 0)
	{
		$(target).innerHTML = b;
	}
	else
	{
		// mozilla
		Event.observe('scrollContent', 'DOMMouseScroll', scrollWheel);
		// IE/Opera
		Event.observe('scrollContent', 'mousewheel', scrollWheel);
		
//		$('scrollContent').style.height = (System.Browser.isMSIE()) ? height +'px' : (height - 20) +'px';
//		$('slider').style.height = (th / (scrollTH / height)) +'px';
		$('slider').style.height = '2px';
	
		slideControl = new Control.Slider('slider', 'track',
		{
			axis: 'vertical',
			
			onSlide: function(v)
			{
				$('scrollContent').scrollTop = (v * scrollH);
			},
			
			onChange: function(v)
			{
				$('scrollContent').scrollTop = (v * scrollH);
			}
		});
		
		Element.setOpacity('scroller', 1);
	}
}



function _scrollWheel(delta)
{
	s = (delta < 1)
		? scrollRatio
		: -scrollRatio;
	
	slideControl.setValueBy(s*2);
}

/** Event handler for mouse wheel event. */
function scrollWheel(event)
{
	var delta = 0;
	
	/* For IE. */
	if (!event) event = window.event;
	if (event.wheelDelta)
	{ /* IE/Opera. */
		delta = event.wheelDelta/120;
		/** In Opera 9, delta differs in sign as compared to IE. */
		if (window.opera) delta = -delta;
	}
	else if (event.detail)
	{ /** Mozilla case. */
		/** In Mozilla, sign of delta is different than in IE.
		* Also, delta is multiple of 3.
		*/
		delta = -event.detail/3;
	}

	/** If delta is nonzero, handle it.
	* Basically, delta is now positive if wheel was scrolled up,
	* and negative, if wheel was scrolled down.
	*/
	if(delta) _scrollWheel(delta);

	/** Prevent default actions caused by mouse wheel.
	* That might be ugly, but we handle scrolls somehow
	* anyway, so don't bother here..
	*/
	if (event.preventDefault) event.preventDefault();
	
	event.returnValue = false;
}

/********************************/

function scrollUp(activate)
{
	if(activate != true)
	{
		clearTimeout(scrollUpInterval);
		doScrollUp = false;
	}
	else if(doScrollUp != true)
	{
		doScrollUp = true;
		scrollUpInterval = setTimeout('_scrollUp()', 10);
	}
}

function _scrollUp()
{
	slideControl.setValueBy(-scrollRatio);
	scrollUpInterval = setTimeout('_scrollUp()', 10);
}

function scrollDown(activate)
{
	if(activate != true)
	{
		clearTimeout(scrollDownInterval);
		doScrollDown = false;
	}
	else if(doScrollDown != true)
	{
		doScrollDown = true;
		scrollUpInterval = setTimeout('_scrollDown()', 10);
	}
}

function _scrollDown()
{
	slideControl.setValueBy(scrollRatio);
	scrollDownInterval = setTimeout('_scrollDown()', 10);
}


if(document.layers)
	document.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT);