/** * TEMA TABANAN - Pagination */ function initPagination(paginationSelector, itemsSelector, perPage) { perPage = perPage || 10; var $pagination = $(paginationSelector); var $items = $(itemsSelector); var totalItems = $items.length; var totalPages = Math.ceil(totalItems / perPage); var currentPage = 1; function showPage(page) { currentPage = page; $items.hide(); $items.slice((page - 1) * perPage, page * perPage).show(); renderPagination(); } function renderPagination() { $pagination.empty(); if (totalPages <= 1) return; var html = ''; $pagination.html(html); } // Events $pagination.on('click', 'a[data-page]', function(e) { e.preventDefault(); var page = parseInt($(this).data('page')); if (page >= 1 && page <= totalPages && page !== currentPage) { showPage(page); } }); if (totalItems > 0) { showPage(1); } }