
var urls;
var url;

function initValues(_urls){
	urls = _urls;
	url = urls[0];
	n = urls.length;
	tW = n * iW;
	gW = nI * iW;
	minX = - Math.floor(n/nI) * gW;
	if(minX == - tW){
		minX += gW;
	}
}

var img;
var iW = 101;/* 5.6 2 86 2 5.6*/
var nI = 5;
var n;
var tW;
var gW;

var x=0;
var minX;

var lEnable = false;
var rEnable = false;
var motionFlag = false;

var slideSpeed = 500;
var fadeSpeed = 300;
var minAlpha=0;
var isIE = false;

var id_nextImg = "#next-img";
var id_prevImg = "#prev-img";
var id_aLeft = "#a-left";
var id_aRight = "#a-right";
var id_prevBtn = "#prev-btn";
var id_nextBtn = "#next-btn";
var id_gallery = "#gallery";
var id_viewer = "#viewer";
var class_selected = "selected";

$(document).ready(function() {
	$(id_nextBtn).click(nextClickHandler);
	$(id_prevBtn).click(prevClickHandler);
	//var _w = n * 102;
	$(id_gallery).css("width",tW+"px");
	$(id_gallery+" li:first-child").addClass(class_selected);
	if(isIE){
		enableButton($(id_prevImg),false,0);
	}
	else{
		enableButton($(id_aLeft),false,0);
	}
	$(id_viewer).fadeTo(0,0);
	if(gW < tW)rEnable = true;
	else enableButton($(id_aRight),false,0);
	$(id_gallery + " > li").click(function(e){
		var myClass = $(this).attr("class");
		if(myClass && myClass == class_selected) return;
		$(id_gallery + " > li." + class_selected).removeClass(class_selected);
		$(this).addClass(class_selected);
		var index = $(this).index();
		url = urls[index];
		hideImage();
	});
	showImage();
});
function enableButton(target,value,speed){
	var a = value ? 1:minAlpha;
	if(speed == null)speed = slideSpeed;
	target.fadeTo(speed, a);
}
function hideImage(){
	$(id_viewer).fadeTo(fadeSpeed,0,showImage);
}
function showImage(){
	img = new Image();
	$(img).load(function () {
	   $(id_viewer).fadeTo(fadeSpeed,1);
	   $(id_viewer).css("background-image","url("+url+")");
	  });
	$(img).attr('src', url);
}
function checkButtons(){
	if(x == 0) lEnable = false;
	else lEnable = true;
	if(x == minX) rEnable = false;
	else rEnable = true;
	motionFlag = false;
	if(isIE){
		enableButton($(id_nextImg),rEnable);
		enableButton($(id_prevImg),lEnable);
	}
	else{
		enableButton($(id_aLeft),lEnable);
		enableButton($(id_aRight),rEnable);
	}
}
function enableButton(target,value,speed){
	var a = value ? 1:minAlpha;
	if(speed == null)speed = slideSpeed;
	target.fadeTo(speed, a);
}
function motionFinishHandler(){
	motionFlag = false;
	
}
function prevClickHandler(e){
	if (e.preventDefault) {
	  e.preventDefault();
	}
	e.returnValue = false;
	if(motionFlag)return;
	if(lEnable == false)return;
	motionFlag = true;
	x += gW;
	checkButtons();
	$(id_gallery).animate({left:x},slideSpeed,motionFinishHandler);
}
function nextClickHandler(e){
	if (e.preventDefault) {
	  e.preventDefault();
	}
	e.returnValue = false;
	if(motionFlag)return;
	if(rEnable == false)return;
	motionFlag = true;
	x -= gW;
	checkButtons();
	$(id_gallery).animate({left:x},slideSpeed,motionFinishHandler);
}
