
function render_slidebar()
{ 
	var el = document.getElementById("search_engine_slidebar") 	
	
	var h = ""; 
	h +="<div class=slidebar_block>"; 
	h +="<div id="+el.id+"_track  class=slidebar_track></div>"; 
	h +="<div id="+el.id+"_between  class=slidebar_between></div>"; 
	h +="<div id="+el.id+"_stick  class=slidebar_stick></div>";
	h +="<div id="+el.id+"_sticktwo  class=slidebar_sticktwo></div>";

	h +="</div>" ; 
	
	el.innerHTML = h;
	el.stick = document.getElementById(el.id + "_stick");
	el.sticktwo = document.getElementById(el.id + "_sticktwo");
	el.between = document.getElementById(el.id + "_between");
	el.between.style.background="gray";

	el.barwidth=288;
	el.stickwidth=9;

	el.stick.onmousedown = startmove_slidebar;
	el.sticktwo.onmousedown = startmove_slidebar;
	startmove_slidebar.target = el;
	
	resetparameters.target=el;
	switchSearch.target=el;
	savedParameters.target=el;
	changeparameters.target = el;
	writeSlideType.target = el;
}


function startmove_slidebar(e)
{   
	var el = startmove_slidebar.target;
	var knob = this;
	e = e || window.event;
	move_slidebar.target = el;
	move_slidebar.knobtarget = knob;
	addEvent(document,"mousemove",move_slidebar);
	addEvent(document,"mouseup",endmove_slidebar);
	move_slidebar(e);
}

function addEvent(obj, evType, fn){ 
	if (obj.addEventListener) {  
		obj.addEventListener(evType, fn, false);  
		return true; 
	}
	else if (obj.attachEvent) {   
		var r = obj.attachEvent("on"+evType, fn);    
		return r; 
	}
	else { 
		return false; 
	} 
}

function move_slidebar(e)
{ 
	var el = move_slidebar.target;
	var knob = move_slidebar.knobtarget;
	
	var range = el.range;
	var width = el.barwidth - el.stickwidth;
	var ex = e.clientX - realPosition(el).x - el.stickwidth/2;

	if (knob.className == "slidebar_stick") {
		ex = Math.max(0,ex);
		ex = Math.min( parseInt(el.right)-10 ,ex);
		el.left = ex;
		knob.style.left = el.left +"px";
		el.between.style.width= (el.right-el.left) + "px";
		el.between.style.left= (parseInt(ex) + 4) + "px";
		
		var v = ex / width * range;
		el.leftvalue = Math.round(v);

		document.getElementById("p").innerHTML = el.leftvalue;

	}
	else if (knob.className == "slidebar_sticktwo"){
		ex = Math.max(parseInt(el.left)+10,ex);
		ex = Math.min( width ,ex);	
		el.right = ex;
		knob.style.left = el.right +"px";
		el.between.style.width= (el.right-el.left) + "px";
		el.between.style.right= (parseInt(ex) + 4) + "px";
		
		var v = ex / width  *range;
		el.rightvalue = Math.round(v);
		
		document.getElementById("z").innerHTML = el.rightvalue;
	}
	
	writeSlideType.target = el;
}

function endmove_slidebar(e)
{ 
	if (move_slidebar.target.releaseCapture){
		move_slidebar.target.releaseCapture();
	}
	move_slidebar.target = null ;
	removeEvent(document,"mousemove",move_slidebar);
	removeEvent(document,"mouseup",endmove_slidebar);
	writeQueryStringUseGlobals(0,0,0);
}

function removeEvent(obj, evType, fn) { 
	if (obj.removeEventListener ) {  
		obj.removeEventListener(evType, fn, false);  return true; 
	}
	else if (obj.detachEvent) {   
		var r = obj.detachEvent("on"+evType, fn);    
		return r; 
	}
	else { 
		return false; 
	} 
}

function realPosition(el)
{
 var d = new Object();
 if(el.getBoundingClientRect)
	{       
	   //d.x = el.getBoundingClientRect().left + Math.max(document.body.scrollTop, document.documentElement.scrollTop);
	   d.x = el.getBoundingClientRect().left;
	   d.y = el.getBoundingClientRect().top + Math.max(document.body.scrollLeft, document.documentElement.scrollLeft);
	   d.w = el.getBoundingClientRect().right - el.getBoundingClientRect().left;
	   d.h =  el.getBoundingClientRect().bottom - el.getBoundingClientRect().top;

	}
	else if(document.getBoxObjectFor)
	{
       d.x = document.getBoxObjectFor(el).x;
	   d.y =  document.getBoxObjectFor(el).y;
	   d.w = document.getBoxObjectFor(el).width;
	   d.h = document.getBoxObjectFor(el).height;
	}
	else
	{
       d.x = offsetBy.call(el, null, 'Left');
	   d.y = offsetBy.call(el, null, 'Top');
	   d.w = el.barwidth;
	   d.h = el.offsetHeight;
	}
	return d;
}

function offsetBy(el, type) {
	if (this===el) return 0;
	var v=999, owner=this, border='client'+type;
	type = 'offset'+type;
	do {
	v += owner[type];
	} while ((owner=owner.offsetParent) && owner!==el && (v+=owner[border]))
	return v-999;
}

function changeparameters(color) {
	document.getElementById("searchResultContainer").innerHTML=globalLoadingTag;
	var size;
	var maxSlideBarValues = synchronousAjax(slidebarFileName);
	var pieces=maxSlideBarValues.split(" ");
	if (color == "green") {size = pieces[0];}
	else if (color == "yellow") {size = pieces[1];}
	else if (color == "red") {size = pieces[2];}
	else if (color == "blue") {size = pieces[3];}
	
	var el = changeparameters.target;
	el.between.style.background=color;
	el.range = size;
		
	var width = el.barwidth-el.stickwidth;
	var left = (el.left / width) * el.range;
	var x = Math.round(left);
	var right = (el.right / width) * el.range;
	var y = Math.round(right);

	if (color == "green") {document.getElementById("moneySignMin").innerHTML="$"; document.getElementById("moneySignMax").innerHTML="$";}
	else {document.getElementById("moneySignMin").innerHTML=""; document.getElementById("moneySignMax").innerHTML="";}
	document.getElementById("p").innerHTML = x;
	document.getElementById("z").innerHTML = y;	
	el.leftvalue=x;
	el.rightvalue=y;
	writeQueryStringUseGlobals(0,0,0);
}

function resetparameters(color) {	
	document.getElementById("searchResultContainer").innerHTML=globalLoadingTag;
	var maxSlideBarValues = synchronousAjax(slidebarFileName);
	var pieces=maxSlideBarValues.split(" ");
	var size = pieces[0];
	
	var el = resetparameters.target;
	el.between.style.background=color;
	el.range = size;
	var width = el.barwidth-el.stickwidth;

	if (color == "green") {document.getElementById("moneySignMin").innerHTML="$"; document.getElementById("moneySignMax").innerHTML="$";}
	else {document.getElementById("moneySignMin").innerHTML=""; document.getElementById("moneySignMax").innerHTML="";}
	document.getElementById("p").innerHTML = 0;
	document.getElementById("z").innerHTML = size;
	
	el.left=0;
	el.right=width;
	el.leftvalue=0;
	el.rightvalue=size;
	el.stick.style.left='0px';
	el.sticktwo.style.left=width + 'px';
	el.between.style.width=width + 'px';
	el.between.style.left='4px';
}
function switchSearch() {	
	var maxSlideBarValues = synchronousAjax(slidebarFileName);
	var pieces=maxSlideBarValues.split(" ");
	var x=document.getElementsByName("slide_type");
	for (var i=0; i < x.length; i++) {
		if (x[i].checked) {
			var size = pieces[i];
		}
	}
	
	var el = switchSearch.target;
	el.range = size;
		
	var width = el.barwidth-el.stickwidth;
	var left = (el.left / width) * el.range;
	var x = Math.round(left);
	var right = (el.right / width) * el.range;
	var y = Math.round(right);

	document.getElementById("p").innerHTML = x;
	document.getElementById("z").innerHTML = y;	
	el.leftvalue=x;
	el.rightvalue=y;
}

function savedParameters(type, leftVal, rightVal) {	
	var maxSlideBarValues = synchronousAjax(slidebarFileName);
	var pieces=maxSlideBarValues.split(" ");
	var size = pieces[type-1];
	
	var color = "";
	if (type == 1) {color = "green";}
	else if (type == 2) {color = "yellow";}
	else if (type == 3) {color = "red";}
	else if (type == 4) {color = "blue";}
	
	var el = savedParameters.target;
	el.between.style.background=color;
	el.range = size;
	var width = el.barwidth-el.stickwidth;
	
	el.left=leftVal;
	el.right=rightVal;
	el.leftvalue=(el.left/width)*size;
	el.rightvalue=(el.right/width)*size;
	el.stick.style.left=el.left + 'px';
	el.sticktwo.style.left=el.right + 'px';
	el.between.style.width=(el.right-el.left) + 'px';
	el.between.style.left=(parseInt(el.left) + 4) + 'px';

	if (color == "green") {document.getElementById("moneySignMin").innerHTML="$"; document.getElementById("moneySignMax").innerHTML="$";}
	else {document.getElementById("moneySignMin").innerHTML=""; document.getElementById("moneySignMax").innerHTML="";}
	document.getElementById("p").innerHTML = Math.round(el.leftvalue);
	document.getElementById("z").innerHTML = Math.round(el.rightvalue);
}





