/***********************************************
* CMotion Image Gallery- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* Visit http://www.dynamicDrive.com for source code
* Last updated Mar 15th, 04'. Added "End of Gallery" message.
* This copyright notice must stay intact for legal use
***********************************************/

var restarea=500 //1) width of the "neutral" area in the center of the gallery in px
var maxspeed=3 //2) top scroll speed in pixels. Script auto creates a range from 0 to top speed.
var endofgallerymsg="" //3) message to show at end of gallery. Enter "" to disable message.
//var endofgallerymsg="end" //3) message to show at end of gallery. Enter "" to disable message.
//4) Set to 1 for left start, 0 for right, 2 for center.
var startpos=1;
 //3) Set to maximum width for gallery - must be less than the actual length of the image train.
var maxwidth=500;

function enlargeimage(path, optWidth, optHeight)
{ //function to enlarge image. Change as desired.
var actualWidth=typeof optWidth!="undefined" ? optWidth : "600px" //set 600px to default width
var actualHeight=typeof optHeight!="undefined" ? optHeight : "500px" //set 500px to  default height
var winattributes="width="+actualWidth+",height="+actualHeight+",resizable=yes"
window.open(path,"", winattributes)
}

////NO NEED TO EDIT BELOW THIS LINE////////////

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

var actualwidth=''
var cross_scroll, ns_scroll
var loadedyes=0

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

function creatediv(){
statusdiv=document.createElement("div")
statusdiv.setAttribute("id","statusdiv")
document.body.appendChild(statusdiv)
statusdiv=document.getElementById("statusdiv")
statusdiv.innerHTML=endofgallerymsg
}

function positiondiv(){
menuheight=parseInt(crossmain.offsetHeight)
mainobjoffsetH=getposOffset(crossmain, "top")
statusdiv.style.left="20px";//mainobjoffset+(menuwidth/2)-(statusdiv.offsetWidth/2)+"px"
statusdiv.style.top=menuheight+mainobjoffsetH+"px"
}

function showhidediv(what){
if (endofgallerymsg!="")
statusdiv.style.visibility=what
}

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(cross_scroll.style.left)>(menuwidth-actualwidth))
		{
			cross_scroll.style.left=parseInt(cross_scroll.style.left)-scrollspeed+"px"
			showhidediv("hidden")
		}else 	showhidediv("visible")
	}
	lefttime=setTimeout("moveleft()",10)
	if(window.opera) fillup.setCookie();
}

function moveright()
{
	if (loadedyes)
	{
		movestate="right"
		if (iedom&&parseInt(cross_scroll.style.left)<0)
		{
			cross_scroll.style.left=parseInt(cross_scroll.style.left)+scrollspeed+"px"
			showhidediv("hidden")
		}
		else showhidediv("visible")
	}
	righttime=setTimeout("moveright()",10)
	if(window.opera) fillup.setCookie();
}

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)
{
	var obj = document.getElementById("motiongallery");
		obj.style.visibility= "visible";
crossmain=document.getElementById? document.getElementById("motioncontainer") : document.all.motioncontainer
menuwidth=parseInt(crossmain.style.width)
mainobjoffset=getposOffset(crossmain, "left")
cross_scroll=document.getElementById? document.getElementById("motiongallery") : document.all.motiongallery
actualwidth=document.all? cross_scroll.offsetWidth : document.getElementById("trueContainer").offsetWidth

if(fillup.cook.get(document.location.pathname))
{
	cross_scroll.style.left=fillup.cook.get(document.location.pathname);
}
else if (startpos) cross_scroll.style.left=(menuwidth-actualwidth)/startpos+'px';


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



crossmain.onmouseout=function(e){
stopmotion(e)
showhidediv("hidden")
}

}
loadedyes=1
if (endofgallerymsg!=""){
	
creatediv()
positiondiv()

}
}

if (window.addEventListener){
	window.addEventListener('load', fillup, false);
	window.addEventListener('unload', function(){fillup.setCookie();}, false);
}
else if (window.attachEvent){
	window.attachEvent('onload', fillup);
	window.attachEvent('onunload', function(){fillup.setCookie();});
}
fillup.setCookie = function(){
	fillup.cook.set(document.location.pathname, cross_scroll.style.left)
};

fillup.cook = {
	set: function(n, v, d){ // cook.set takes (name, value, optional_persist_days) - defaults to session if no days specified
		if(d){var dt = new Date(); 
			dt.setDate(dt.getDate() + d);
		d = '; expires=' + dt.toGMTString();}
		document.cookie = n + '=' + escape(v) + (d || '') + '; path=/';
	},
	get: function(n){ // cook.get takes (name)
		var c = document.cookie.match('(^|;)\x20*' + n + '=([^;]*)');
		return c? unescape(c[2]) : null;
	},
	kill: function(n){ // cook.kill takes (name)
		fillup.cook.set(n, '', -1);
	},
	killall: function(){ // cook.killall takes no parameters
		var cookies = document.cookie.split(';'), i = cookies.length - 1;
		for (i; i > -1; --i){
			fillup.cook.kill(cookies[i].split('=')[0]);
		}
	}
};



function  movedown2(){
if (loadedyes){
	scrollspeed=500;
movestate="right"
if (iedom&&parseInt(cross_scroll.style.left)<0){
cross_scroll.style.left=parseInt(cross_scroll.style.left)+scrollspeed+"px"
showhidediv("hidden")
}
else
showhidediv("visible")
}
}



function moveup2()
{
	if (loadedyes)
	{
		scrollspeed=500;
		movestate="left"
		if (iedom&&parseInt(cross_scroll.style.left)>(menuwidth-actualwidth))
		{
			cross_scroll.style.left=parseInt(cross_scroll.style.left)-scrollspeed+"px"
			showhidediv("hidden")
		}
		else 	showhidediv("visible")
		}
	}



function fijar_posicion2(posi)
{
	
		
	
	
	if (loadedyes)
	{
		

		cross_scroll.style.left=posi+"px";//-posi;
		//var obj = document.getElementById("motiongallery");
		//obj.style.visibility= "visible";
		
		
		
	}
	else//mas peligroso que una caja de bombas
	{
		fillup();
		fijar_posicion2(posi);
		//setTimeout("fijar_posicion2()",10) 
		
	}

}
function setPos(position)
{
	if (loadedyes)
	{
		cross_scroll.style.left= position + "px";
	} 
	else 
	{
		setTimeout("setPos()",position) 
	}
}
function stopmotion2 (){
scrollspeed=0;
if (window.lefttime) clearTimeout(lefttime)
if (window.righttime) clearTimeout(righttime)
movestate=""
}
