PicturePaginator = {
	'idDiv'     :'id_article_details_image_paginagor',
	'idDivLabel':'id_article_details_label_paginagor'
};

PicturePaginator.init = function() {
	/* alert('PicturePaginator.init()') ; */	
	this.div = $('#' + this.idDiv);
	this.divLabel = $('#' + this.idDivLabel);
	this._hide();
}

PicturePaginator._hide = function() 
{
	this.div.hide();	
	this.divLabel.hide();	
}

PicturePaginator._show = function() 
{
	this.div.show();	
	this.divLabel.show();	
}

PicturePaginator.setRecordsPictures = function(json) 
{
	//alert('PicturePaginator.setRecordsPictures(' + json + ')');
	this.div.empty();	
	ArticleDetails.showPicture('');
	this._hide();
	if ( json.length < 1 ) {
		return 0;
	}
	
	var arrSrc = new Array(); 

	PicturePaginator.div.append(PicturePaginator.__createLinkPrev()).append(' ');	
		
	$(json).each(function(i, item) {
		// alert(item.src); 		
		arrSrc.push(item.src);
		var delimiter = (i<json.length-1)?PicturePaginator.__createSeparator():' ';
		PicturePaginator.div.append(PicturePaginator.__createLinkItem(i, item.src)).append(delimiter);
	});
	
	PicturePaginator.div.append(PicturePaginator.__createLinkNext()).append(' ');	
	
	this.arrSrc = arrSrc;
	
	PicturePaginator._showPicture(0);
	
	if (this.arrSrc.length > 1) {
		this._show();		
	} else {
		this._hide();
	}
	

}

PicturePaginator.__createSeparator = function()
{
	var span = $(document.createElement('span'));
	span.attr({		
		'class' : 'paginatorseparator'
	}).
	css({
		'padding-left':'2px',
		'padding-right':'3px'
	});
	
	var img = $(document.createElement('img'));
	img.attr({
		'alt':'|',
		'src':'media/css/navigation/images/paginator/separator.gif'
	});
	
	span.append(img);
	
	return span;
}


PicturePaginator.__createLinkPrev = function()
{
	//alert(i+': ' + src);
	var a = $(document.createElement('a'));
	a.attr({		
		'class' : 'paginator_prev'
	})
	.css({'cursor':'pointer'})
	.append('&nbsp;&nbsp;&nbsp;');
	
	a.click(function() {
		if ( PicturePaginator.indexSelected > 0 ) {
			PicturePaginator.indexSelected--;
			PicturePaginator._showPicture(PicturePaginator.indexSelected);
		}
	});
	
	return a;
}


PicturePaginator.__createLinkItem = function(i, src)
{
	//alert(i+': ' + src);
	var a = $(document.createElement('a'));
	a.attr({		
		'class' : 'paginator'
	})
	.css({'cursor':'pointer'})
	.append((i+1));
	
	a.click(function() {
		PicturePaginator._showPicture(i);
	});
	
	return a;
}

PicturePaginator.__createLinkNext = function()
{
	//alert(i+': ' + src);
	var a = $(document.createElement('a'));
	a.attr({		
		'class' : 'paginator_next'
	})
	.css({'cursor':'pointer'})
	.append('&nbsp;&nbsp;&nbsp;');
	
	a.click(function() {
		if ( PicturePaginator.indexSelected < PicturePaginator.arrSrc.length-1 ) {
			PicturePaginator.indexSelected++;
			PicturePaginator._showPicture(PicturePaginator.indexSelected);
		}
	});
	
	return a;
}

PicturePaginator._showPicture = function(i) 
{
	this.indexSelected = i;
	ArticleDetails.showPicture(this.arrSrc[i]);
	this.__xableLinks();
}

PicturePaginator.__xableLinks = function() 
{
	var aIndex = -1;
		$('#' + this.idDiv + ' a').each(function(i, item) {
			var aClass = $(item).attr('class');
			
			switch (aClass) {
				case 'paginatoractive':
				case 'paginator':
					aIndex++;				
					if (PicturePaginator.indexSelected == aIndex) {
						$(item).attr('class', 'paginatoractive');
					}
					else {
						$(item).attr('class', 'paginator');
					}
				break;
				
				case 'paginator_next':
				case 'paginator_next_current':
					if (PicturePaginator.indexSelected == PicturePaginator.arrSrc.length-1) {
						$(item).attr('class', 'paginator_next_current');
					}
					else {
						$(item).attr('class', 'paginator_next');
					}
				break;
				
				case 'paginator_prev':
				case 'paginator_prev_current':
					if (PicturePaginator.indexSelected == 0) {
						$(item).attr('class', 'paginator_prev_current');
					}
					else {
						$(item).attr('class', 'paginator_prev');
					}
				break;				
			}
			

		});
}
