var speed=-100;
var defaultSpeed=-25;
var framesPerSec=25;
var slideShowPause=15000;
var slideShowFade=2000;
var tourFade=1000;

var centerx = 101;
var range=85;
var viewerWidth=720;

var renLoading=0;
var loadImage = new Image;
var loadImage2 = new Image;
var slideInt;
var renInt;
var renCount;
var imageGroup;
var renIndex=0;
var renX=0;
var renW=0;
var renSpeed=0;

$(document).ready(function(){
	var leftNav=$("#leftNav").get(0);
	$("a[@href='/spa_and_salon/']", leftNav).click(function () { 
		window.open("http://www.spaandsalonatmedallion.com/",'');
		return false;
	});
	$("a.ison", leftNav).parent().children("ul").show();
	$("a.ison", leftNav).parent().parent("ul").show();
	$("a.ison", leftNav).parent().parent().parent().parent("ul").show();
	$("a.nonav", leftNav).parent().hide();

	imageGroup = $("a[@rel=galleryPics]").get();
	renCount = imageGroup.length;

	if ( renCount > 0 ) {
		$('#fisheye').Fisheye(
			{
				maxWidth:20,
				items: 'a',
				itemsText: 'span',
				container: '.fisheyeContainter',
				itemWidth: 30,
				proximity: 20,
				valign : 'center',
				halign : 'center'
			}
		)
		$("a.fisheyeItem").click(function(){
			var newI = $(this).attr("href");
			var oldI =  $("#ren").attr("src");
			if ( !oldI.match(newI)  ) {
				for (var i = 0; i < imageGroup.length; i++) {
					var image = imageGroup[i];
					// look for ourself
					if ( image.href.match(newI) ) {
						loadRen(i);
						break;
					}
				}
			}
			this.blur();
			return false;
		});
		renInt=setInterval("autoRen()",slideShowPause);
		$(".thumbViewer").mouseover(function(){
			clearInterval(renInt);
		});
		$(".thumbViewer").mouseout(function(){
			clearInterval(renInt);
			renInt=setInterval("autoRen()",slideShowPause);
		});
	}
	loadImage.onload=function(){
		renW=loadImage.width;
		if ( renW > viewerWidth ) {
			$("#renSlide").attr({"src":$("#ren").attr("src"), "title":$("#ren").attr("title")});
			loadVr();
		}
	}
	loadImage.src = $("#ren").attr("src");
});

function autoRen (){
	if ( renIndex == renCount -1 ) loadRen(0);
	else loadRen(renIndex+1);
}

function loadRen (ind){
	if ( renLoading==1 ) return;
	renLoading=1;
	if ( renW > viewerWidth ) closeVr();
	oldImage = imageGroup[renIndex];
	newImage = imageGroup[ind];
	loadImage.onload=function(){return;}
	loadImage.src = "";
	loadImage.onload=function(){
		$("#renOld").attr("src",oldImage.href);
		$("#renOld").show();
		if ( renW > viewerWidth ) {
			$("#renSlideOld").attr("src",oldImage.href);
			$("#renSlideOld").show();
		}
		loadImage2.onload=function(){
			renX=0;
			$("#ren").hide();
			$("#ren").css('left', '0px');
			if ( renW > viewerWidth ) {
				$("#renSlide").hide();
				$("#renSlide").css('left', viewerWidth+'px');
			}

			$("#ren").attr({"src":newImage.href, "title":newImage.title});

			if ( renW > viewerWidth ) $("#renSlideOld").fadeOut(slideShowFade,function(){
				$("#renSlideOld").attr("src","/_/clear.gif");
				$("#renSlideOld").css('left', viewerWidth+'px');
			});

			$("#renOld").fadeOut(slideShowFade,function(){
				$("#renOld").attr("src","/_/clear.gif");
				$("#renOld").css('left', '0px');
			});

			renW=loadImage2.width;

			$("#ren").fadeIn(slideShowFade,function(){
				if ( renW > viewerWidth ) {
					$("#renSlide").attr({"src":$("#ren").attr("src"), "title":$("#ren").attr("title")});
					loadVr();
				} else {
					renLoading=0;
				}
			});

			if ( renW > viewerWidth ) $("#renSlide").fadeIn(slideShowFade);
		}
		loadImage2.src =newImage.href;
	}
	loadImage.src = oldImage.href;
	renIndex = ind;
}

function closeVr (){
	renSpeed=0;
	clearInterval(slideInt);
	$('#indicator').DraggableDestroy();
	$("#controlCont").fadeOut(tourFade,function(){
		$('#indicator').css('left', centerx+'px');
	});
}
function loadVr (){
	$("#controlCont").fadeIn(tourFade,function(){
		$('#indicator').animate({'left':parseInt(defaultSpeed/speed*range+centerx)+'px'},tourFade,null,function(){
			slideInt=setInterval("slideRen()",parseInt(1000/framesPerSec));
			renSpeed=defaultSpeed/1000/framesPerSec*renW;
			$('#indicator').Draggable(
				{
					axis : "horizontally",
					onDragModifier : function(x,y)
					{
						clearInterval(renInt);
						var xx=x;
						if ( x > centerx+range ) xx=centerx+range;
						if ( x < centerx-range ) xx=centerx-range;
						renSpeed = (xx-centerx)/range*renW/framesPerSec/1000*speed;
						return {
							x: xx
						}
					}
				}
			);
			renLoading=0;
		});
	});
}

function slideRen(){
	renX=renX+renSpeed;
	if ( renX <= -renW ) renX=renX+renW; 
	if ( renX > 0 ) renX=renX-renW;
	$('#ren,#renOld').css('left', parseInt(renX) + 'px');
	$('#renSlide,#renSlideOld').css('left', parseInt(renX+renW) + 'px');
}