var offSteMoveY=135;
var offSteMoveX=135;
var overButBar=false;
var mouseMod;
var BarToMove;

var nrRow; //numero de objectos por row;
function makeGal()
{
	var gal = document.createElement('div');
	gal.setAttribute('class', "Gal");

	var mask = document.createElement('div');
	mask.setAttribute('class', "maskGal");
	
	var cont = document.createElement('div');
	cont.setAttribute('class', "contGal");
	
	mask.appendChild(cont);
	
	var butUp = document.createElement('div');
	butUp.setAttribute('class', "butGal upGal links");
	butUp.setAttribute('onmouseover', "barOver(this, 1)");
	butUp.setAttribute('onmouseout', "barOut()");
	
	var imgBarUp = document.createElement('img');
	imgBarUp.setAttribute('src', "imgBase/bt_up.png");
	imgBarUp.setAttribute('alt', "bar up");
	imgBarUp.setAttribute('class', "links");
	
	butUp.appendChild(imgBarUp);
	
	var butDown = document.createElement('div');
	butDown.setAttribute('class', "butGal downGal links");
	butDown.setAttribute('onmouseover', "barOver(this, 2)");
	butDown.setAttribute('onmouseout', "barOut()");
	
	
	var imgBarDown = document.createElement('img');
	imgBarDown.setAttribute('src', "imgBase/bt_down.png");
	imgBarDown.setAttribute('alt', "bar Down");
	imgBarDown.setAttribute('class', "links");
	
	butDown.appendChild(imgBarDown);
	
	gal.appendChild(butUp);
	gal.appendChild(mask);
	gal.appendChild(butDown);
	
	return gal;
}

function barOver(that, mode)
{
	if(mode==1 || mode== 2)
	{
		BarToMove=$(that).parent(".Gal");
	}
	else if(mode==3 || mode== 4)
	{
		BarToMove=$(that).parent(".BarH");
	}
	
	overButBar=true;
	mouseMod=mode;
	barMove();
}
function barOut()
{
	overButBar=false;
	mouseMod=0;
}

function checkGalButs(gal, obj)
{
	if($(gal).find(".contGal").height()>$(gal).find(".maskGal").height())
	{
		$(gal).find(".butGal").css("display","block");
		
		var contH=$(gal).height()-$(".butGal").height()*2;
		var objH=parseInt($(obj).css("margin-bottom"))+$(obj).height();
		var nrObj=Math.floor(contH/objH);
		
		var displayH=nrObj*objH;
		var marginH=(contH-displayH)*0.5;
		
		$(gal).find(".maskGal").css("margin-top", marginH)
		$(gal).find(".maskGal").css("height", displayH);
	}
	else
	{
		$(gal).find(".maskGal").css("margin-top", "0px")
		$(gal).find(".butGal").css("display","none");
		$(gal).find(".contGal").css("left", "0px");
	}
}

function makeHorBar()
{
	var bar = document.createElement('div');
	bar.setAttribute('class', "BarH");

	var mask = document.createElement('div');
	mask.setAttribute('class', "maskBarH");
	
	var cont = document.createElement('div');
	cont.setAttribute('class', "contBarH");
	
	mask.appendChild(cont);
	
	var butL = document.createElement('div');
	butL.setAttribute('class', "butGal barL links");
	butL.setAttribute('onmouseover', "barOver(this, 3)");
	butL.setAttribute('onmouseout', " barOut()");
	
	var imgBarLeft = document.createElement('img');
	imgBarLeft.setAttribute('src', "imgBase/bt_leftt.png");
	imgBarLeft.setAttribute('alt', "bar Left");
	imgBarLeft.setAttribute('class', "links");
	
	butL.appendChild(imgBarLeft);
	
	var butR = document.createElement('div');
	butR.setAttribute('class', "butGal barR links");
	butR.setAttribute('onmouseover', "barOver(this, 4)");
	butR.setAttribute('onmouseout', "barOut()");
	
	var imgBarRight = document.createElement('img');
	imgBarRight.setAttribute('src', "imgBase/bt_right.png");
	imgBarRight.setAttribute('alt', "bar Right");
	imgBarRight.setAttribute('class', "links");
	
	butR.appendChild(imgBarRight);
	
	bar.appendChild(butL);
	bar.appendChild(mask);
	bar.appendChild(butR);
	
	return bar;
}
function checkBarButsH(gal, obj)
{

	if($(gal).find(".contBarH").width()>$(gal).find(".maskBarH").width())
	{
		$(gal).find(".butGal").css("display","block");
		
		var contH=$(gal).width()-$(".barL").width()*2-parseInt($(".butGal").css("margin-right"))*2;
		var objH=parseInt($(obj).css("margin-right"))+$(obj).width();

		var nrObj=Math.floor(contH/objH);

		var displayH=nrObj*objH;
		var marginH=(contH-displayH)*0.5+$(".barL").width();

		marginH+=parseInt($(".butGal").css("margin-right"));

		$(gal).find(".maskBarH").css("left", marginH);
		$(gal).find(".maskBarH").css("width", displayH);
	}
	else
	{
		$(gal).find(".maskBarH").css("left", "0px");
		$(gal).find(".butGal").css("display","none");	
		$(gal).find(".contBarH").css("left", "0px");
	}
}


function barMove()
{
	if(overButBar)
	{
		switch(mouseMod)
		{
			case 1:
				var newT=parseInt($(BarToMove).find(".contGal").css("top"));
	
				offSteMoveY=$(BarToMove).find(".contGal").children().height();
				offSteMoveY+=parseInt($(BarToMove).find(".contGal").children().css("margin-bottom"));
			
				newT=newT+offSteMoveY;
				newT=(newT>0)?0:newT;
			
				
				$(BarToMove).find(".contGal").stop();
				$(BarToMove).find(".contGal").animate( {"top": newT}, 500);
			break;
			case 2:
				var contH=$(BarToMove).find(".contGal").height();
				var maskH=$(BarToMove).find(".maskGal").height();
				if(contH>maskH)
				{
					offSteMoveY=$(BarToMove).find(".contGal").children().height();
					offSteMoveY+=parseInt($(BarToMove).find(".contGal").children().css("margin-bottom"));
					
					var maxD= maskH-contH;
					var newT=parseInt($(BarToMove).find(".contGal").css("top"));
					
					newT-=offSteMoveY;
			
					newT=(newT<maxD)?maxD:newT;
			
			
					$(BarToMove).find(".contGal").stop();
					$(BarToMove).find(".contGal").animate( {"top": newT}, 500);
				}
			break;
			case 3:

				var newL=parseInt($(BarToMove).find(".contBarH").css("left"));
	
				offSteMoveX=$(BarToMove).find(".contBarH").children().width();
				offSteMoveX+=parseInt($(BarToMove).find(".contBarH").children().css("margin-right"));
			
				newL=newL+offSteMoveX;
				newL=(newL>0)?0:newL;
				
				$(BarToMove).find(".contBarH").stop();
				$(BarToMove).find(".contBarH").animate( {"left": newL}, 500);

			break;
			case 4:
				var contHh=$(BarToMove).find(".contBarH").width();
				var maskHh=$(BarToMove).find(".maskBarH").width();
				
				if(contHh>maskHh)
				{

					offSteMoveX=$(BarToMove).find(".contBarH").children().width();
					offSteMoveX+=parseInt($(BarToMove).find(".contBarH").children().css("margin-right"));
			
					var maxD= maskHh-contHh;
					var newL=parseInt($(BarToMove).find(".contBarH").css("left"));
			
					newL-=offSteMoveX;
					newL=(newL<maxD)?maxD:newL;

					$(BarToMove).find(".contBarH").stop();
					$(BarToMove).find(".contBarH").animate( {"left": newL}, 500);
				}
			break;
		}
		setTimeout("barMove()",500);
	}
}
