var slider1 = new Control.Slider('handle1', 'track1', {
		axis: 'vertical',
		range: $R(0,60),
		alignY: -5,
		onSlide: function(v) { scrollVertical(v, $('scrollable1'), slider1);  },
		onChange: function(v) { scrollVertical(v, $('scrollable1'), slider1); }
	}
);

function scrollVertical(value, element, slider)
{
	element.scrollTop = Math.round(value/slider.maximum*(element.scrollHeight-element.offsetHeight));
}

if ($('scrollable1').scrollHeight <= $('scrollable1').offsetHeight)
{
	slider1.setDisabled();
	$('track1').hide();
}

/** Obsluga kolka myszy **/
function handle(delta)
{
	slider1.setValueBy(-delta);
}

function wheel(event)
{
	var delta = 0;
	if (!event)
		event = window.event;

	if (event.wheelDelta)
	{
		delta = event.wheelDelta/120;
		if (window.opera)
			delta = -delta;
	}
	else if (event.detail)
	{
		delta = -event.detail/3;
	}

	if (delta)
		handle(delta);

	if (event.preventDefault)
		event.preventDefault();

	event.returnValue = false;
}

function handle2(delta)
{
	$('list').scrollTop-=(delta * 20);
}

function wheel2(event)
{
	var delta = 0;
	if (!event)
		event = window.event;

	if (event.wheelDelta)
	{
		delta = event.wheelDelta/120;
		if (window.opera)
			delta = -delta;
	}
	else if (event.detail)
	{
		delta = -event.detail/3;
	}

	if (delta)
		handle2(delta);

	if (event.preventDefault)
		event.preventDefault();

	event.returnValue = false;
}


function handle3(delta)
{
	$('pl-list').scrollTop-=(delta * 20);
}

function wheel3(event)
{
	var delta = 0;
	if (!event)
		event = window.event;

	if (event.wheelDelta)
	{
		delta = event.wheelDelta/120;
		if (window.opera)
			delta = -delta;
	}
	else if (event.detail)
	{
		delta = -event.detail/3;
	}

	if (delta)
		handle3(delta);

	if (event.preventDefault)
		event.preventDefault();

	event.returnValue = false;
}

Event.observe('scrollable1', 'DOMMouseScroll', wheel);
Event.observe('scrollable1', 'mousewheel', wheel);

if ($('list'))
{
	Event.observe('list', 'DOMMouseScroll', wheel2);
	Event.observe('list', 'mousewheel', wheel2);
}

if ($('pl-list'))
{
	Event.observe('pl-list', 'DOMMouseScroll', wheel3);
	Event.observe('pl-list', 'mousewheel', wheel3);
}


/* LIST ITEMS*/
$A($('topmenu').getElementsByClassName('top-item')).each(function(item) {
	Event.observe(item,'mouseover',function() {
		if (!Element.hasClassName(this, 'active'))
		{
			var li = this;
			$A($('topmenu').getElementsByClassName('active')).each(function(elem) {
				if (li.getElementsByTagName('ul')[0])
				{
					var ul = elem.getElementsByTagName('ul')[0];
					if (ul)
					{
						ul.style.visibility = 'hidden';
						Element.hide(ul);
					}
					$A($('topmenu').getElementsByClassName('link')).each(function(elem2) {
						elem2.style.visibility = 'hidden';
						Element.hide(elem2);
					});
				}
			});
		}
	});
	Event.observe(item,'mouseout',function() {
		if (!Element.hasClassName(this, 'active'))
		{
			var li = this;
			$A($('topmenu').getElementsByClassName('active')).each(function(elem) {
				if (li.getElementsByTagName('ul')[0])
				{
					var ul = elem.getElementsByTagName('ul')[0];
					if (ul)
					{
						ul.style.visibility = 'visible';
						Element.show(ul);
					}
					$A($('topmenu').getElementsByClassName('link')).each(function(elem2) {
						elem2.style.visibility = 'visible';
						Element.show(elem2);
					});
				}
			});
		}
	});
});


/* LIST ITEMS*/
$A($('left').getElementsByClassName('top-item')).each(function(item) {
	Event.observe(item,'mouseover',function() {
		if (!Element.hasClassName(this, 'active'))
		{
			var li = this;
			$A($('left').getElementsByClassName('active')).each(function(elem) {
				if (li.getElementsByTagName('ul')[0])
				{
					var ul = elem.getElementsByTagName('ul')[0];
					if (ul)
					{
						ul.style.visibility = 'hidden';
						Element.hide(ul);
					}
				}
			});
		}
	});
	Event.observe(item,'mouseout',function() {
		if (!Element.hasClassName(this, 'active'))
		{
			var li = this;
			$A($('left').getElementsByClassName('active')).each(function(elem) {
				if (li.getElementsByTagName('ul')[0])
				{
					var ul = elem.getElementsByTagName('ul')[0];
					if (ul)
					{
						ul.style.visibility = 'visible';
						Element.show(ul);
					}
				}
			});
		}
	});
});


