function getXYpos(elem) {
   if (!elem) {
      return {"x":0,"y":0};
   }
   var xy={"x":elem.offsetLeft,"y":elem.offsetTop}
   var par=getXYpos(elem.offsetParent);
   for (var key in par) {
      xy[key]+=par[key];
   }
   return xy;
}
scrollStep=1
document.onmousemove = getMouseXY;

mouseX = 0
mouseY = 0
timerLeft=""
timerRight=""
timerStatic=""

var IE = document.all?true:false;
function getMouseXY(e) {
 if (IE) { // grab the x-y pos.s if browser is IE
	if(document.body)
	  {
		mouseX = event.clientX + document.body.scrollLeft
		mouseY = event.clientY + document.body.scrollTop
	  }
  } else {  // grab the x-y pos.s if browser is NS
    mouseX = e.pageX
    mouseY = e.pageY
  }  
  // catch possible negative values in NS4
  if (mouseX < 0){mouseX = 0}
  if (mouseY < 0){mouseY = 0}  
  return true
}


var lastscrollID = '';
function scrollDivStatic(id){
  clearTimeout(timerStatic)
	lastscrollID = id;
	var e = window.event;
	elementXY = getXYpos(document.getElementById(id));
	var left = elementXY["x"];
	var top = elementXY["y"];
	var right = left + document.getElementById(id).offsetWidth;
	var bottom = top + document.getElementById(id).offsetHeight;
	var width = (right - left);
	var center = left + ((right - left)*.5);

	
	scrollStep = Math.abs((center - mouseX)*.015);

	if(center-(width/10) > mouseX)
		document.getElementById(id).scrollLeft-=scrollStep;
	if(center+(width/10) < mouseX)
		document.getElementById(id).scrollLeft+=scrollStep;
	thumb_cur_pos = document.getElementById(id).scrollLeft;
  timerStatic=setTimeout("scrollDivStatic('"+id+"')",10)
}

function PadDigits(n, totalDigits) 
{ 
	n = n.toString(); 
	var pd = ''; 
	if (totalDigits > n.length) 
	{ 
		for (i=0; i < (totalDigits-n.length); i++) 
		{ 
			pd += '0'; 
		} 
	} 
	return pd + n.toString();
} 


function d2h(d) {return PadDigits(d.toString(16),2);}
function h2d(h) {return parseInt(h,16);} 
function SetBGColor(red,green,blue,alpha)
{	
	var string = "#" + d2h(red) + d2h(green) + d2h(blue);
	document.getElementById("fade-background").style.backgroundColor = string;
}

var timerFader = ""
homepage = true;
if(!homepage)
{
	var final_red = 100
	var final_green = 100
	var final_blue = 100
	var final_alpha = 0
	var cur_red = 100
	var cur_green = 100
	var cur_blue = 100
	var cur_alpha = 0
}
else
{
	var final_red = 20
	var final_green = 20
	var final_blue = 20
	var final_alpha = 0
	var cur_red = 20
	var cur_green = 20
	var cur_blue = 20
	var cur_alpha = 0
}
var cur_step = 0;
var steps = 5;
var final_pos = 0;
var cur_pos=0;
var thumb_final_pos = 0;
var thumb_cur_pos=0;
var fade_finished_id = 0;
function fader(id, parent_id, thumb_id, thumb_parent_id) {


	clearTimeout(timerFader);
	clearTimeout(timerStatic);

	if(fade_finished_id == id)
		return;
	//if(lastscrollID)
	//	scrollDivStatic(lastscrollID);

	cur_red   += Math.round((final_red   - cur_red  ) / steps,2);
	cur_green += Math.round((final_green - cur_green) / steps,2);
	cur_blue  += Math.round((final_blue  - cur_blue ) / steps,2);
	cur_alpha += Math.round((final_alpha - cur_alpha) / steps,2);

	cur_pos += Math.round((final_pos - cur_pos) / steps,2);
	
	thumb_cur_pos += Math.round((thumb_final_pos - thumb_cur_pos) / steps,2);

	if((steps*(steps)) < cur_step++ || MobileBrowser) { // final step
		cur_step = 0;
		clearTimeout(timerFader);

		cur_red   = final_red;
		cur_green = final_green;
		cur_blue  = final_blue;
		cur_alpha = final_alpha;
		
		SetBGColor(cur_red,cur_green,cur_blue,cur_alpha);
		document.getElementById(parent_id).scrollLeft = final_pos;
		fade_finished_id = id;
		document.getElementById(thumb_parent_id).scrollLeft = thumb_final_pos;
	}
	else { //continue
		SetBGColor(cur_red,cur_green,cur_blue,cur_alpha);
		timerFader=setTimeout("fader('"+id+"','"+ parent_id+"','"+ thumb_id+"','"+ thumb_parent_id+"')",10);

		document.getElementById(parent_id).scrollLeft = cur_pos;

		document.getElementById(thumb_parent_id).scrollLeft = thumb_cur_pos;
		fade_finished_id = null;
	}	
}


