function Slider()
{
	var knob;
	var Btns = new Array();
	var Txts = new Array();
	var slider;
	var offsX,sliderOffset,tmp;
	var isIE = document.all || window.opera;
	var last_nBtn = -1;
	var a;
	var isUp = true;
	
	function fnTxtColor()
	{
		a = a + 5;
		if (a > 255){ a = 255; }
		
		var c;
		
		if (last_nBtn != 1) { c = 'rgb(255,' + (a) + ',' + (a) + ')'; }
		else { c = 'rgb(' + (a) + ',255,' + (a) + ')'; }
		
		Txts[last_nBtn].style.backgroundColor = c;
		
		if (a < 255){ setTimeout(function() { fnTxtColor(); },33); }
	}
	function fnKnobDown(e)
	{
		a = 255;
		for (var i = 0; i < 3; i++){ Txts[i].style.backgroundColor = '#ffffff';}
		
		isUp = false;
		for (var i = 0; i < 3; i++){ Txts[i].style.color = '#5e5e5f';}
		Txts[1].style.color = '#945c01';
		//---
		if(isIE) 
		{
			offsX = event.clientX - parseInt(knob.style.left);
			slider.onmousemove = fnKnobMov;
		}
		else 
		{ slider.addEventListener('mousemove', fnKnobMov, true); }
	}
	function fnKnobUp(e)
	{
		if (isUp){ return; }
		isUp = true;
		if (last_nBtn == 1){ Txts[last_nBtn].style.color = '#00aa00'; }
		else{ Txts[last_nBtn].style.color = '#ff0000'; }
		a = 100; fnTxtColor();
		//---
		if(isIE) { slider.onmousemove = null; }
		else { slider.removeEventListener('mousemove', fnKnobMov, true); }
	}
	function fnKnobMov(e)
	{
		var x; if(isIE) { x = event.clientX-offsX; } else { x = e.pageX-sliderOffset - 10; }
		if (x < 0){x = 0;}
		if (x > 545){x = 545;}
		knob.style.left = x+'px';
		//--strelki
		var nBtn = 1;
		if (x < 188){nBtn = 0;}
		if (x > 376){nBtn = 2;}
		if (last_nBtn != nBtn)
		{
			last_nBtn = nBtn;
			for (var i = 0; i < 3; i++){ Btns[i].className = '';}
			Btns[nBtn].className = 'active';
		}
	}
	function fnSliderInit()
	{
		//elements
		knob = document.getElementById('sl_knob');
		knob.style.left = 20+'px';
		
		slider = document.getElementById('sl_slider');
		
		for (var i = 0; i < 3; i++){ Btns[i] = document.getElementById('sl_btn'+(i+1));}
		for (var i = 0; i < 3; i++){ Txts[i] = document.getElementById('sl_txt'+(i+1));}
		
		//events
		fnAddEvent(knob, 'mousedown', fnKnobDown);
		fnAddEvent(slider, 'mouseup', fnKnobUp);
		
		//sliderOffset
		sliderOffset = slider.offsetLeft;
		tmp = slider.offsetParent;
		while(tmp.tagName != 'BODY') { sliderOffset += tmp.offsetLeft; tmp = tmp.offsetParent; }
	}
	function fnAddEvent(obj, type, fn)
	{
		if (obj.addEventListener) {obj.addEventListener(type, fn, true);}
		else { if (obj.attachEvent) { obj.attachEvent( "on"+type, fn ); } }
	}

	this.fnTxtColor = fnTxtColor;
	fnAddEvent(window,'load',fnSliderInit);
}

