var next,prev,index,newimage;
function init() {
	firstLoad = true;
	//data = ['1.gif','2.gif','3.gif','4.gif','5.gif','6.gif','7.gif']; //TEST DATA
	indexEnd = data.length-1;
	
	glDiv = $('polaroid_about_us');
	pager = $(glDiv).getElementById('photo_numbers');
	next = $(glDiv).getElement('a[title=next]');
	prev = $(glDiv).getElement('a[title=previous]');
	nextDiv = next.getParent();
	prevDiv = prev.getParent();
	
    if (data.length == 0) {
        disableButtons();
        return;
    }
	
	img = $(glDiv).getElement('img[alt=photo]');
	img.setStyle('margin-top','-32px');
	updateGallery();
	firstLoad = false;
}


function disableButtons() {
    $(next).removeProperty('href');
    $(prev).removeProperty('href');
	next.removeEvents('click');
	prev.removeEvents('click');
}

function enableButtons() {
	next.addEvent('click', nextImage);
	prev.addEvent('click', previousImage);
}

function updateGallery() {
	updateIndex();
	updatePager();
	updateImage();
    checkNextPrevButtons(index);
}

function updateIndex() {
	endReached = false;
	startReached = false;
	if (index==undefined || index <= 0) {
		index = 0;
		endReached = false;
		startReached = true;
	}
	
	if (index >= indexEnd) {
		index = indexEnd;
		endReached = true;
		startReached = false;
	}
	
    if (index >= indexEnd && (index==undefined || index <= 0)) {
        index = indexEnd;
        endReached = true;
        startReached = true;
    }
}

function checkNextPrevButtons() {
	$(next).removeProperty('href');
	$(prev).removeProperty('href');
	$(nextDiv).setProperty('id','next_arrow');
	$(prevDiv).setProperty('id','previous_arrow');
	
	if (endReached) {
		$(nextDiv).setProperty('id','next_arrow_inactive');
		next.removeEvents('click');
	}
	if (startReached) {
		$(prevDiv).setProperty('id','previous_arrow_inactive');
		prev.removeEvents('click');
	}
}

function updatePager() {
	text = (index+1)+"/"+data.length;
	$(pager).setHTML(text);
}

function updateImage() {
	$('image-loader').setStyle('visibility','hidden');
	
    var myFxNext = new Fx.Style($(img), 'opacity',{
        duration:200,
        onComplete: function() {   
		      enableButtons(); 
              checkNextPrevButtons();
        }
    });
	if (!firstLoad) {
        myFxNext.start(0,1);
	} else {
		enableButtons();
	}
}

function nextImage() {
	disableButtons();
	newIndex = index + 1;
	index++;
	fadeOutCurrent();
}

function previousImage() {
	disableButtons();
	newIndex = index - 1;
	index--;
	fadeOutCurrent();
}

function fadeOutCurrent() {
	var myFxCurrent = new Fx.Style($(img), 'opacity',{
		onComplete: function() {
			$('image-loader').setStyle('visibility','visible');
			src = 'photos/'+data[index][0];
			$('lightbox_link').setProperty('href','photos/big/'+data[index][1]);
			$('bottom_link').setProperty('href','photos/big/'+data[index][1]);
			$(img).setProperty('src',src);
			loadNextImage();
			$(img).setOpacity('0');
		},
		duration:1100}
	);
	myFxCurrent.start(1,0);
}

function loadNextImage() {
if (newIndex < 0 || newIndex > indexEnd) {
	return;
}

image = 'photos/'+data[newIndex][0];

new Asset.image(image, 
	{id: 'myImage', title:'myImage', 
		onload: function() { 
			updateGallery();
		}
	});
}

window.addEvent('load', function(){
	init();
});
