﻿
// ----------------------------------------------------------------
// Jquery methods for AllArticleWebPart.
// ----------------------------------------------------------------
adecco.allarticles = {
    pageSize : {},
    numItems : {},
    prevItems : {},
    //paginationContainerClass : {},
    
    handlePaginationClick : function(new_page_index, pagination_container)
    {
        var me = adecco.allarticles;
        
        var id = $(pagination_container).attr('id');
        var widget = $(pagination_container).parents('.content-widget');
        
        var prevItems = me.prevItems[id];
        prevItems.hide();
        
        var newItems = $('li:has(span[id="' + new_page_index + '"])', widget);
        me.prevItems[id] = newItems;
        newItems.show();
        $(newItems[0]).removeClass('first'); // to make sure we are not adding duplicate classes
        $(newItems[0]).addClass('first');
    },
    
    init : function()
    {
        // allArticlesInit is a function that exists only if the WebPart is present on the page.
        if (typeof(allArticlesInit) === 'function') {
            allArticlesInit();
        
            var me = adecco.allarticles;
            
            $(".pagination").each(function(i) {
                var id  = $(this).attr('id'); 
                var pageSize = me.pageSize[id];
                var numItems = me.numItems[id];
                
                var widget = $(this).parents('.content-widget');
                me.prevItems[id] = itemsToHide = $('li:has(span[id="0"])', widget).hide();
                
                $(this).pagination(numItems, {
                    num_edge_entries: 2,
                    num_display_entries: 8,
		            items_per_page : pageSize, 
		            callback : me.handlePaginationClick });		        
		    });
		}
    }
}; // end of adecco.allarticles


$(document).ready(adecco.allarticles.init);
