var restarea=10;
var maxspeed=5;


var iedom=document.all||document.getElementById;
var scrollspeed=0;
var movestate="";

if (iedom)
document.write('<span id="thumbBuffer" style="visibility:hidden;position:absolute;top:-100;left:-10000;"></span>');

var actualwidth='';
var c_scroll, ns_scroll;
var loadedyes=0;

function ietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function getposOffset(what, offsettype){
var totaloffset=(offsettype=="left")? what.offsetLeft: what.offsetTop;
var parentEl=what.offsetParent;
while (parentEl!=null){
totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
parentEl=parentEl.offsetParent;
}
return totaloffset;
}


function moveleft(){
if (loadedyes){
movestate="left";
if (iedom&&parseInt(c_scroll.style.left)>(menuwidth-actualwidth))
c_scroll.style.left=parseInt(c_scroll.style.left)-scrollspeed+"px";
}
lefttime=setTimeout("moveleft()",10);
}

function moveright(){
if (loadedyes){
movestate="right";
if (iedom&&parseInt(c_scroll.style.left)<0)
c_scroll.style.left=parseInt(c_scroll.style.left)+scrollspeed+"px";
}
righttime=setTimeout("moveright()",10);
}

function motionengine(e){
var dsocx=(window.pageXOffset)? pageXOffset: ietruebody().scrollLeft;
var dsocy=(window.pageYOffset)? pageYOffset : ietruebody().scrollTop;
var curposy=window.event? event.clientX : e.clientX? e.clientX: "";
curposy-=mainobjoffset-dsocx;
var leftbound=(menuwidth-restarea)/2;
var rightbound=(menuwidth+restarea)/2;
if (curposy>rightbound){
scrollspeed=(curposy-rightbound)/((menuwidth-restarea)/2) * maxspeed;
if (window.righttime) clearTimeout(righttime);
if (movestate!="left") moveleft();
}
else if (curposy<leftbound){
scrollspeed=(leftbound-curposy)/((menuwidth-restarea)/2) * maxspeed;
if (window.lefttime) clearTimeout(lefttime);
if (movestate!="right") moveright();
}
else
scrollspeed=0;
}

function contains_ns6(a, b) {
while (b.parentNode)
if ((b = b.parentNode) == a)
return true;
return false;
}

function stopmotion(e){
if ((window.event&&!crossmain.contains(event.toElement)) || (e && e.currentTarget && e.currentTarget!= e.relatedTarget && !contains_ns6(e.currentTarget, e.relatedTarget))){
if (window.lefttime) clearTimeout(lefttime);
if (window.righttime) clearTimeout(righttime);
movestate="";
}
}

function fillup(){
if (iedom){
crossmain=document.getElementById? document.getElementById("thumbContainer") : document.all.thumbContainer;
menuwidth=parseInt(crossmain.style.width);
mainobjoffset=getposOffset(crossmain, "left");
c_scroll=document.getElementById? document.getElementById("thumbPhotos") : document.all.thumbPhotos;
document.getElementById("thumbBuffer").innerHTML=c_scroll.innerHTML; //NEW stuff
actualwidth=document.all? c_scroll.offsetWidth : document.getElementById("thumbBuffer").offsetWidth;
if (!window.opera) document.getElementById("thumbBuffer").style.display="none";

crossmain.onmousemove=function(e){
motionengine(e);
}

crossmain.onmouseout=function(e){
stopmotion(e);
}
}
loadedyes=1;

}

function StopAll()
{
	if (lefttime) clearTimeout(lefttime);
	if (righttime) clearTimeout(righttime);
	movestate="";
}

//window.onload=fillup;

var nrestarea=10;
var nmaxspeed=5;


var iedom=document.all||document.getElementById;
var nscrollspeed=0;
var nmovestate="";

if (iedom)
document.write('<span id="thumbBuffer" style="visibility:hidden;position:absolute;top:-100;left:-10000;"></span>');

var nactualwidth='';
var nc_scroll, nns_scroll;
var loadedyes=0;

function nietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

function ngetposOffset(what, offsettype){
var totaloffset=(offsettype=="left")? what.offsetLeft: what.offsetTop;
var parentEl=what.offsetParent;
while (parentEl!=null){
totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
parentEl=parentEl.offsetParent;
}
return totaloffset;
}


function nmoveleft(){
if (loadedyes){
nmovestate="left";
if (iedom&&parseInt(nc_scroll.style.left)>(menuwidth-nactualwidth))
nc_scroll.style.left=parseInt(nc_scroll.style.left)-nscrollspeed+"px";
}
lefttime=setTimeout("moveleft()",10);
}

function nmoveright(){
if (loadedyes){
nmovestate="right";
if (iedom&&parseInt(nc_scroll.style.left)<0)
nc_scroll.style.left=parseInt(nc_scroll.style.left)+nscrollspeed+"px";
}
righttime=setTimeout("moveright()",10);
}

function nmotionengine(e){
var dsocx=(window.pageXOffset)? pageXOffset: nietruebody().scrollLeft;
var dsocy=(window.pageYOffset)? pageYOffset : nietruebody().scrollTop;
var curposy=window.event? event.clientX : e.clientX? e.clientX: "";
curposy-=mainobjoffset-dsocx;
var leftbound=(menuwidth-nrestarea)/2;
var rightbound=(menuwidth+nrestarea)/2;
if (curposy>rightbound){
nscrollspeed=(curposy-rightbound)/((menuwidth-nrestarea)/2) * nmaxspeed;
if (window.righttime) clearTimeout(righttime);
if (nmovestate!="left") moveleft();
}
else if (curposy<leftbound){
nscrollspeed=(leftbound-curposy)/((menuwidth-nrestarea)/2) * nmaxspeed;
if (window.lefttime) clearTimeout(lefttime);
if (nmovestate!="right") moveright();
}
else
nscrollspeed=0;
}

function ncontains_ns6(a, b) {
while (b.parentNode)
if ((b = b.parentNode) == a)
return true;
return false;
}

function nstopmotion(e){
if ((window.event&&!crossmain.contains(event.toElement)) || (e && e.currentTarget && e.currentTarget!= e.relatedTarget && !ncontains_ns6(e.currentTarget, e.relatedTarget))){
if (window.lefttime) clearTimeout(lefttime);
if (window.righttime) clearTimeout(righttime);
nmovestate="";
}
}

function nfillup(){
if (iedom){
crossmain=document.getElementById? document.getElementById("thumbContainer") : document.all.thumbContainer;
menuwidth=parseInt(crossmain.style.width);
mainobjoffset=ngetposOffset(crossmain, "left");
nc_scroll=document.getElementById? document.getElementById("thumbPhotos") : document.all.thumbPhotos;
document.getElementById("thumbBuffer").innerHTML=nc_scroll.innerHTML; //NEW stuff
nactualwidth=document.all? nc_scroll.offsetWidth : document.getElementById("thumbBuffer").offsetWidth;
if (!window.opera) document.getElementById("thumbBuffer").style.display="none";

crossmain.onmousemove=function(e){
nmotionengine(e);
}

crossmain.onmouseout=function(e){
nstopmotion(e);
}
}
loadedyes=1;

}

function nStopAll()
{
	if (lefttime) clearTimeout(lefttime);
	if (righttime) clearTimeout(righttime);
	nmovestate="";
}

//window.onload=nfillup;
