var navCurrent = null;
var navCurrentIndex = -1;
var navWidth = 155;
var productCount = 7;
var navWidthFull = navWidth*productCount;
var navQueue = null;
var navCurrentLeft = 0;
var navScrollSpeed = 0.2;
var navContainer = null;
var navTimer = null;
var navMouseOffset = -1;

var navTimerTimeout = 50;
var navSlowDist = 3;
//var navSlowDist = navWidthFull;
//var navSlowDuration = 7;
var navSlowDuration = 1;

var navDirection = -1;
var navAnimationDuration = 0.5;
var navItems = new Array(0);
var navSlowScroll = -20;

var navMouseOver = function(index,obj) {
	document.onmousemove = navMouseMove;
	navMouseOffset = -1;
	navCurrent = obj;
	navCurrentIndex = index;
	if(navTimer){
		clearInterval(navTimer);
		navTimer = null;
	}
	//$('product_title_'+index).style.background = "#aaaaaa";
}

var navMouseOut = function(index, obj) {
	document.onmousemove = null;	
	navSlowScroll();
	navCurrentIndex = -1;
	//$('product_title_'+index).style.background = "#ffffff";
}

var navInit = function(){
	navItems = new Array(productCount);
	for(var i =0; i<productCount; i++){
		navItems[i] = $('product_'+i);
	}
	navContainer = $('pnav');
	navSlowScroll();
}

var navSlowScroll = function(){
	navTimer = setInterval(function(){navTweenCallback(navSlowDist);}, navTimerTimeout);
}

window.onload = navInit;

var wrapInteger = function(val, low, high){
	var ret = val % high;
	if(ret<0)
		ret += high;
	return ret;
}
	
var navTweenCallback = function(dist){
	navCurrentLeft = wrapInteger(navCurrentLeft+dist, 0, navWidthFull);	
	for(var i=0; i<productCount; i++){
		var actualLeft = navCurrentLeft + (i * navWidth) + navWidth;
		actualLeft = wrapInteger(actualLeft, 0, navWidthFull);
		actualLeft -= (i * navWidth) + navWidth;
		navItems[i].style.left = actualLeft+'px';
	}
}
	
var leftOffset = function(e) {
	return parseInt(e.style.left);
}

var totalLeftOffset = function(e) {
	if(e){
		return e.offsetLeft + totalLeftOffset(e.offsetParent);
	} else{
		return 0;
	} 
}

var myflag = false;
function myMouseX(evt) {
  if(!evt){
    evt = event;
  }
  if (evt.pageX) {
  	 return evt.pageX;
  } else if (evt.clientX) {
	 return evt.clientX + (document.documentElement.scrollLeft ?  document.documentElement.scrollLeft : document.body.scrollLeft);
  } else {

/*

  if (evt.pageX) {
  	 return evt.pageX;
  } else if (evt.clientX) {
	 return evt.clientX + (document.documentElement.scrollLeft ?  document.documentElement.scrollLeft : document.body.scrollLeft);
  } else {
*/






//ERROR Condition
return 0;
}}


var navMouseMove = function(evt){
if(myflag){
myflag=true;
alert('debug');
alert(evt);
alert(typeof(evt));
alert(event);
alert(typeof(event));
alert(evt.clientX);
alert(typeof(evt.clientX));
alert(evt.pageX);
alert(typeof(evt.pageX));
}
var x = myMouseX(evt);
if(navMouseOffset == -1){
	navMouseOffset = x;
}
//var parentLeft = totalLeftOffset(navContainer);

navTweenCallback(x-navMouseOffset);





//var mousePos = x - parentLeft;
//var baseLeft = navCurrentIndex * navWidth + (navWidth/2);
//var target = mousePos - baseLeft;
//var diff = target - navCurrentLeft
//var left = totalLeftOffset(navCurrent) + (navWidth/2);
//var diff = x - left;
navMouseOffset = x;
//navTweenCallback(diff);
//alert(target - navCurrent);
}

                    


//setTimeout( function(){navScroll(-1);}, 1000);


