var curid='cur';
var comingid='coming';
var moving=false;
var actualNum=0;
var direction;

function movemodels(g) {
	if(!moving) {
		moving=true;
		direction=g;
		actualNum=(actualNum+1)%maxNum;
		new Ajax.Request('modellist.php',{method:'get',parameters:'num='+actualNum, onComplete:modelsloaded})	
	}
}

function modelsloaded(doc) {
	var coming=$(comingid);
	if(!coming) {
		coming=document.createElement('ul');
		coming.setAttribute('id', comingid);
		coming.style.display='none';
		$('models').appendChild(coming);
	}
	coming.innerHTML=doc.responseText;
	var w=$(curid).offsetWidth;
	coming.style.left=(-direction*w)+'px';
	coming.style.display='block';
	new Effect.Parallel(
	[new Effect.MoveBy(coming, 0, direction*w, {sync:true}),
	 new Effect.MoveBy($(curid), 0, direction*w, {sync:true})],
	{afterFinish:endtrans});	
}

function endtrans() {
	$(curid).style.display='none';
	var t=curid;
	curid=comingid;
	comingid=t;
	moving=false;
}

function prevmodels() {
	movemodels(1);
}

function nextmodels() {
	movemodels(-1);
}