/**
 * Скрипт галереи
 *
 * Author: Setteros, 2009
 */
var GalleryScreens =
{
	folder: 		"http://www.bsfg.ru/Gallery/screens/", 		// Папка к картинкам
	filename:  		"bsfg", 									// Название картинок
	images:  		67, 										// Количество картинок
	showtimeout:  	10000,										// Время показа изображения в миллисекундах
	imagestoshow:  	3,											// По сколько выводить
	curimage:  		1, 											// Идентификатор текущего верхнего изображения!

	showHandler:  	null,

	LoadRandomImage:  function()
	{
		var self = this;
		var images = this.GetImages();

		if( $( '#random-image' ).html() == '' )
		{
			this.InitImages( images );
		}
		else
		{
			$( '#random-image' )
				.find( 'img:visible:last' )
				.fadeTo(
					'slow', 0,
					function()
					{
						self.InitImages( images );
					} );
		}

		if( this.showHandler != null )
		{
			clearTimeout( this.showHandler );
			this.showHandler = null;
		}

		this.showHandler = setTimeout( function() { self.LoadRandomImage(); }, this.showtimeout );
	},

	GetImages: function()
	{
		var html = new Array();

		for( var i = this.curimage; i < this.images + this.curimage; i++ )
		{
			var ii = ( i > this.images ) ? i - this.images : i;

			var path = this.folder + this.filename + ii;
			var url = { preview: path + "s.jpg", normal: path + ".jpg" };
			var hide = 'style="display: none;"';

			if( i >= this.curimage && i < this.curimage + this.imagestoshow )
			{
				hide = '';
			}

			html.push('<a rel="group" ' + hide + ' class="pimage" href="' + url.normal + '"><img src="' + url.preview + '" /></a>');
		}

		/*for( var i = this.imagestoshow - 1; i >= 0; i-- )
		{
			var file = i + this.curimage;
			if( file > this.images )
			{
				file = file - this.images;
			}

			var path = this.folder + this.filename + file;
			var url = { preview: path + "s.jpg", normal: path + ".jpg" };

			html += '<a rel="group" class="pimage" href="' + url.normal + '"><img src="' + url.preview + '" /></a>';
		}*/

		this.curimage = ( this.curimage == this.images ) ? 1 : this.curimage + 1;

		return html.reverse().join('');
	},

	InitImages: function( html )
	{
		var self = this;

		$( "#random-image" )
			.html( html );

		$( "#random-image a.pimage" ).fancybox(
		{
			'overlayOpacity': 0.9,
			'overlayColor': '#000000',
			'cyclic': true,
			'opacity': true,
			'padding': 1,
			'margin': 2,
			'centerOnScroll': true,
			'transitionIn' : 'elastic',
			'transitionOut' : 'elastic',
			'onStart': function(){
				if( self.showHandler != null )
				{
					clearTimeout( self.showHandler );
					self.showHandler = null;
				}
			},
			'onClosed': function(){
				self.showHandler = setTimeout( function() { self.LoadRandomImage(); }, self.showtimeout );
			}
		});
	}
}