$(function(){
			$.extend($.fn.disableTextSelect = function() {
				return this.each(function(){
					if($.browser.mozilla){//Firefox
						$(this).css('MozUserSelect','none');
					}else if($.browser.msie){//IE
						$(this).bind('selectstart',function(){return false;});
					}else{//Opera, etc.
						$(this).mousedown(function(){return false;});
					}
				});
			});
		});	

		$(function(){
			$.extend($.fn.enableTextSelect = function() {
				return this.each(function(){
					if($.browser.mozilla){//Firefox
						$(this).css('MozUserSelect','auto');
					}else if($.browser.msie){//IE
						$(this).unbind('selectstart');
					}else{//Opera, etc.
						$(this).mousedown(function(){return true;});
					}
				});
			});
		});


		var scroll_total;
		var scroll_h;
		var scroll_pos=false;
		var scroll_posmin=40;
		var scroll_pospad;
		var scroll_ratio;
	
		
		
		function InitScroll() 
		{
			//$("*").scroll(function() { alert($(this).html()); });
			
			scroll_total=$("div#scroll_content").outerHeight();
			scroll_h=$("div#scroll_bg").outerHeight();
			//alert(scroll_total);
			if(scroll_total>scroll_h)
			{
				$("div#scrollbar").show();
				$("div#scrollbar_top").click(function() { ScrollUp(); });
				$("div#scrollbar_bot").click(function() { ScrollBot(); });
				$("div#scrollbar_pos").mousedown(function(ev) { ScrollBegin(ev); });
				$(document).mouseup(function() { ScrollStop(); });
				
				posh=Math.ceil(scroll_h*$("div#scrollbar_bg").height()/scroll_total);
				posh2=posh;
				if(posh<scroll_posmin) { posh2=scroll_posmin; }
				//suwak wysokosci
				$("div#scrollbar_pos").css("height",posh2);
				$("div#scrollbar_posbot").css("top",posh2-$("div#scrollbar_posbot").height());
				$("div#scrollbar_posbg").css("height",posh2-$("div#scrollbar_posbot").height()-$("div#scrollbar_postop").height());
				$("div#scrollbar_posstripes").css("height",posh2-$("div#scrollbar_posbot").height()-$("div#scrollbar_postop").height());
				
				//koniec suwaka
				scroll_ratio=posh/scroll_h;
				
				
				$("div#scroll_bg").scroll(function() {
					newtop=Math.floor($(this).scrollTop()*scroll_ratio);
					$("div#scrollbar_pos").css("top",newtop);
				});
				//init scroll position
				newtop=Math.floor($("div#scroll_bg").scrollTop()*scroll_ratio);
				$("div#scrollbar_pos").css("top",newtop);
				
				$(document).mousemove(function(ev) {
					
					if(scroll_pos)
					{
						o=$("div#scrollbar_bg").offset();
						newtop=ev.pageY-o.top-scroll_pospad;
						if(newtop<0) { newtop=0; }
						if(newtop>$("div#scrollbar_bg").height()-$("div#scrollbar_pos").height()) { newtop=$("div#scrollbar_bg").height()-$("div#scrollbar_pos").height(); }
						$("div#scrollbar_pos").css("top",newtop);
						
						scr=newtop*1/scroll_ratio;
						$("div#scroll_bg").scrollTop(scr);
					}
				});

			}
		}


		function ScrollUp() 
		{
			scroll_top=$("div#scroll_bg").scrollTop();
			if(scroll_top>0)
			{
				newscroll_top=scroll_top-20;
				if(newscroll_top<0) { newscroll_top=0; }
				$("div#scroll_bg").scrollTop(newscroll_top);
			}
		}
		function ScrollBot() 
		{
			scroll_top=$("div#scroll_bg").scrollTop();
			if(scroll_top<scroll_total-scroll_h)
			{
				newscroll_top=scroll_top+20;
				if(newscroll_top>scroll_total-scroll_h) { newscroll_top=scroll_total-scroll_h; }
				$("div#scroll_bg").scrollTop(newscroll_top);
			}
		}
		function ScrollBegin(ev)
		{
			scroll_pospad=ev.pageY-$("div#scrollbar_pos").offset().top;
			scroll_pos=true;
			$("body").disableTextSelect();

		}
		function ScrollStop()
		{
			scroll_pos=false;
			$("body").enableTextSelect();

		}
$(window).load(InitScroll);
