var nbaGallery = {
	slides: [],
	currSlide: 1,
	galleryPath: '',
	goToPhoto: function()
	{
		window.location.assign(this.galleryPath+'content.'+this.currSlide+'.html');
	},
	updateNavButtons: function()
	{
		if( this.currSlide == 1 )
		{
			//Disable previous button
			$('nbaGalleryPrev').innerHTML = '<div class="previous_button_disabled"></div>';
		}
		else {
			//Enable prev button
			$('nbaGalleryPrev').innerHTML = '<div class="previous_button" onclick="nbaGallery.loadPrevSlide();"></div>';
		}
		if( this.currSlide == this.slides.length )
		{
			//Disable next button
			$('nbaGalleryNext').innerHTML = '<div class="next_button_disabled"></div>';
		}
		else {
			//Enable next button
			$('nbaGalleryNext').innerHTML = '<div class="next_button" onclick="nbaGallery.loadNextSlide();"></div>';
		}
	},
	loadSlide: function(num)
	{
		this.currSlide = num;
		this.updateNavButtons();
		document.getElementById('nbaGalleryImg').src = this.slides[num-1].image.url;
		fadeIn('nbaGalleryImg',0);
		document.getElementById('nbaGalleryMeta').innerHTML = num + ' of ' + this.slides.length + ' |';
	},
	loadNextSlide: function()
	{
		var num = this.currSlide+1;
		if( this.slides[ num-1 ] )
		{
			this.loadSlide(num);
		}
		else { this.loadSlide(1); }
	},
	loadPrevSlide: function()
	{
		var num = this.currSlide-1;
		if( this.slides[ num-1 ] )
		{
			this.loadSlide(num);
		}
		else { this.loadSlide( this.slides.length ); }
	}
};

function csiLoadGallery(obj)
{
	var html = [];
	if( obj && obj.slides && obj.slides.length )
	{
		nbaGallery.slides = obj.slides;
		nbaGallery.galleryPath = obj.url.replace(/content\.1\.html/,'');
		html.push('<div class="nbaHPodContent"><div class="nbaPhotoGall">',
			'<div id="horizontal_carousel2">',
			'<div id="nbaGalleryPrev"><div class="previous_button_disabled"></div></div>',
			'<div class="container" id="nbaHPPhoto"><ul><li>',
			'<div class="nbaPhotoItem"><div class="nbaPhotoImg" ',
			'onmouseover="$(\'nbaPhotoOverlayDiv\').addClassName(\'nbaPhotoOverlay\');" onmouseout="$(\'nbaPhotoOverlayDiv\').removeClassName(\'nbaPhotoOverlay\');">',
			'<img id="nbaGalleryImg" src="'+obj.slides[0].image.url+'"/>',
			'<div id="nbaPhotoOverlayDiv" onclick="nbaGallery.goToPhoto();">',
			'</div>',
			'</div>',
			'<div id="nbaGalleryMeta" class="nbaPhotoNum">1 of ',
			obj.slides.length+' |</div>',
			'<div class="nbaPhotoTease"><p><a target="new" href="',
			obj.url+'">'+obj.title+'</a></p>',
			'</div>',
			'</div>',
			'</li></ul></div>',
			'<div id="nbaGalleryNext"><div class="next_button" onclick="nbaGallery.loadNextSlide();"></div></div>',
			'<div class="nbaHPPodsMore"><a href="/photos/">More NBA Galleries</a></div>',
			'</div></div></div>'
		);
	}
	return html.join('');
}

function nbaLoadGallery(jsonFile)
{
	CSIManager.getInstance().call(
		jsonFile,
		'',
		'nbaPhotoGallery',
		csiLoadGallery
	);
}

function setOpacity(strFade,intOpacity) {
	objFade = document.getElementById(strFade);
	intOpacity = (intOpacity == 100)?99.999:intOpacity;

	// Newer Mozilla, Safari and Firefox
	objFade.style.opacity = intOpacity/100;

	// Internet Explorer
	objFade.style.filter = "alpha(opacity:"+intOpacity+")";
 
	// Konqueror and Old Safari
	objFade.style.KHTMLOpacity = intOpacity/100;
 
	// Old Firefox/Mozilla
	objFade.style.MozOpacity = intOpacity/100;
}

function fadeIn(strFade,intStart) {
	if (intStart <= 100) {
		setOpacity(strFade,intStart);
		intStart += 10;
		window.setTimeout("fadeIn('"+strFade+"',"+intStart+")",50);
	}
}

