//Global Variables
var workCount = 0;
var autoTimer = "";
var mousex = 0;
var mousey = 0;
var click_mousex = 0;
var click_mousey = 0;
var store_newxpos = new Array();
var current_xpos = 0;
var max_xpos = 0;
var isdrag = false;
var elementx = 0;
var newpos_elementx = 0;
var element = "display_slides";
var t1;

function moveSlide(new_xpos) {
	//alert("current_xpos: "+current_xpos+" new_xpos: "+new_xpos);
	if(current_xpos != new_xpos) {
		if(current_xpos < new_xpos) { //move left
			//alert("move left");
			t1 = new Tween(document.getElementById(element).style,'left',Tween.strongEaseOut,current_xpos,new_xpos,1,'px');
		} else if(current_xpos > new_xpos) { //move right
			t1 = new Tween(document.getElementById(element).style,'left',Tween.strongEaseOut,current_xpos,new_xpos,1,'px');
		}
		t1.start();	
		t1.onMotionFinished = function() {
			current_xpos = new_xpos;
		}
	} else {
		//t1.stop();
	}
}

function dragDisplay_on(event, el) {
	isdrag = true;	
	elementx = document.getElementById(element).offsetLeft;	
	click_mousex = event.offsetX?(event.offsetX):event.pageX-el.offsetLeft;
	click_mousey = event.offsetY?(event.offsetY):event.pageY-el.offsetTop;
	document.getElementById(element).style.cursor = 'move';
}

function dragDisplay_off() {
	isdrag = false;	
	mousex = 0;
	mousey = 0;
	click_mousex = 0;
	click_mousey = 0;
	elementx = 0;
	newpos_elementx = 0;
}

function storeClickPos(event, el) {
	click_mousex = event.offsetX?(event.offsetX):event.pageX-el.offsetLeft;
	click_mousey = event.offsetY?(event.offsetY):event.pageY-el.offsetTop;
	//alert("click_mousex: "+click_mousex);
}

function mouser(event) {
	if(event.offsetX || event.offsetY) {
		mousex = event.offsetX;
		mousey = event.offsetY;
	} else {
		mousex = event.pageX;
		mousey = event.pageY;
	}	
	document.getElementById('trace').innerHTML = 'isdrag: '+isdrag+'<br/>Clicked x: '+click_mousex+'<br/>elementx: '+elementx+'px<br/>mousex: '+mousex +'px<br/>';
	
	if(isdrag == true) {
		t1.stop();
		if(click_mousex < mousex && newpos_elementx > 0) {
			//dragging to right
			newpos_elementx = (elementx+(mousex-click_mousex))-15;
		} else {
			//dragging to left			
			newpos_elementx = (elementx-(click_mousex-mousex))-15;			
		}
		
		if(newpos_elementx < 15 && newpos_elementx > ((-max_xpos)+390)) {
			document.getElementById(element).style.left =  newpos_elementx+'px';
			current_xpos = newpos_elementx;
			//alert("newpos_elementx: "+newpos_elementx);
			//Select new nodes on scroll
			node_select(Math.ceil((newpos_elementx/530)* -1),workCount);
			document.getElementById('trace').innerHTML += 'new node: '+(Math.ceil((newpos_elementx/330)* -1));
			//document.getElementById('trace').innerHTML += 'max pos: '+max_xpos;
		}
	} else {		
		//document.getElementById('trace').innerHTML += 'newpos_elementx: '+newpos_elementx+'px';		
	}
}

var newSlide_index = 0;
function autoMove() {
	clearTimeout(autoTimer);
	//alert("automove executed, \nnewSlide_index: "+newSlide_index+", \nstore_newxpos length: "+store_newxpos.length);
	//Automatically moves slides
	//New xpos positions for each node, were already stored in an array.
	//Use a timer and loop through this array, call moveSlide(new_xpos) function
	if (newSlide_index<=store_newxpos.length) {
		//alert("automove executed, \nexecuting moveSlide("+parseInt(store_newxpos[newSlide_index])+"), \ncurrent_xpos: "+current_xpos+", \nnewSlide_index: "+newSlide_index+", \nstore_newxpos length: "+store_newxpos.length);
		moveSlide(parseInt(store_newxpos[newSlide_index]));
		if (newSlide_index==store_newxpos.length) {
			//alert("slidescroll.js: newSlide_index is at 0");
			node_select(0,workCount,'-0');
			moveSlide(-0);
			newSlide_index = 0;
		} else {
			//Auto select node			
			if(newSlide_index != 0) {
				//alert("node select: "+(newSlide_index*2)+", \nworkCount: "+workCount+"\nxpos: "+parseInt(store_newxpos[newSlide_index]));
				node_select(newSlide_index*2,workCount,parseInt(store_newxpos[newSlide_index]));
			}			
			//alert("not working?");
		}
		newSlide_index++;
	}
	autoTimer = setTimeout("autoMove()", 7000);
}