/**
 * 
 * @param {Object} local_conf
 */
AlbumsImagesTopListShort = function (local_conf) {
    if (typeof jQuery === 'undefined') {
         throw 'AlbumsImagesTopListShort exception: jQuery not found.';
    }

	//
    var conf = {};
    
    var place = 0;
    
	conf.boxId = null;
	
	conf.ajaxUrl = '/ajax/album-images-toplist-short/{limit}/{sort}';

	/**
	 * 
	 */
    var init = function (local_conf) {
		conf = jQuery.extend(conf, local_conf);
		//
		new List({
		    boxId: conf.boxId,
		    listAjaxUrl: conf.ajaxUrl,
		    params: {
				limit: ['ever'],
				sort: ['visits', 'votes', 'comments']},
		    get: function(liJQ, params){							
		        return {
		            imageSrc: liJQ.find('.thumbnail .image img').attr('src'),
		            imageLink: liJQ.find('.thumbnail .image a').attr('href'),
		            place: liJQ.find('.thumbnail .place .value').text(),
		            visits: liJQ.find('.stats .views .value').text(),
		            rate: liJQ.find('.stats .rate .value').text(),
		            comments: liJQ.find('.stats .comments').text(),
		            authorLink: liJQ.find('.author .user a').attr('href'),
		            authorName: liJQ.find('.author .user a').text()};
		    },
		    set: function(liJQ, data, params){		    		    	
		        liJQ.find('.thumbnail .image img').attr('src', data.imageSrc);
		        liJQ.find('.thumbnail .image a').attr('href', data.imageLink);
		        liJQ.find('.thumbnail .place .value').text(++place);		        
		        if( data.comments != null ) {
		        	liJQ.find('.stats span').eq(0).attr('class','').addClass('comments');
		        	liJQ.find('.stats .comments .label').text('Komentarzy:');
		        }		        
		        if( data.rate != '0%' ) {
		        	liJQ.find('.stats span').eq(0).attr('class','').addClass('rate');
		        	liJQ.find('.stats .rate .label').text('Ocena:');
		        }	
		        if( data.visits != null ) {
		        	liJQ.find('.stats span').eq(0).attr('class','').addClass('views');
		        	liJQ.find('.stats .views .label').text('Odsłon:');
		        }	
		        liJQ.find('.stats .views .value').text(data.visits);
		        liJQ.find('.stats .rate .value').text(data.rate);
		        liJQ.find('.stats .comments .value').text(data.comments);		        
		        liJQ.find('.author .user a').attr('href', data.authorLink);
		        liJQ.find('.author .user a').text(data.authorName);
		    },
			after: function(params) {
				place = 0;		    	
				jQuery('#' + conf.boxId + ' .seeMore a')
					.attr('href', jQuery('#' + conf.boxId + ' .listFunctions .sort .' + params['sort'] + ' a').attr('href'));
			},
			fadeSpeed: 200});
        //
        init = function () {};
    };

	//
    jQuery(document).ready(
        function () {
            init(local_conf);
        });
};
