@@ -151,15 +151,24 @@ <h2 class="post-card-title">
151151
152152 paginationContainer . style . display = 'flex' ;
153153
154+ // Calculate page range (10 pages per group)
155+ const pagesPerGroup = 10 ;
156+ const currentGroup = Math . ceil ( currentPage / pagesPerGroup ) ;
157+ const startPage = ( currentGroup - 1 ) * pagesPerGroup + 1 ;
158+ const endPage = Math . min ( currentGroup * pagesPerGroup , totalPages ) ;
159+
154160 // Update prev/next buttons
155- prevBtn . disabled = currentPage === 1 ;
156- nextBtn . disabled = currentPage === totalPages ;
157- prevBtn . style . display = currentPage === 1 ? 'none' : 'block' ;
158- nextBtn . style . display = currentPage === totalPages ? 'none' : 'block' ;
161+ const hasPrevGroup = currentGroup > 1 ;
162+ const hasNextGroup = currentGroup < Math . ceil ( totalPages / pagesPerGroup ) ;
163+
164+ prevBtn . disabled = ! hasPrevGroup ;
165+ nextBtn . disabled = ! hasNextGroup ;
166+ prevBtn . style . display = hasPrevGroup ? 'block' : 'none' ;
167+ nextBtn . style . display = hasNextGroup ? 'block' : 'none' ;
159168
160- // Update page numbers
169+ // Update page numbers (only show current group)
161170 paginationNumbers . innerHTML = '' ;
162- for ( let i = 1 ; i <= totalPages ; i ++ ) {
171+ for ( let i = startPage ; i <= endPage ; i ++ ) {
163172 if ( i === currentPage ) {
164173 paginationNumbers . innerHTML += `<span class="pagination-current">${ i } </span>` ;
165174 } else {
@@ -177,8 +186,18 @@ <h2 class="post-card-title">
177186 }
178187
179188 // Event listeners
180- prevBtn . addEventListener ( 'click' , ( ) => goToPage ( currentPage - 1 ) ) ;
181- nextBtn . addEventListener ( 'click' , ( ) => goToPage ( currentPage + 1 ) ) ;
189+ prevBtn . addEventListener ( 'click' , ( ) => {
190+ const pagesPerGroup = 10 ;
191+ const currentGroup = Math . ceil ( currentPage / pagesPerGroup ) ;
192+ const prevGroupStartPage = ( currentGroup - 2 ) * pagesPerGroup + 1 ;
193+ goToPage ( prevGroupStartPage ) ;
194+ } ) ;
195+ nextBtn . addEventListener ( 'click' , ( ) => {
196+ const pagesPerGroup = 10 ;
197+ const currentGroup = Math . ceil ( currentPage / pagesPerGroup ) ;
198+ const nextGroupStartPage = currentGroup * pagesPerGroup + 1 ;
199+ goToPage ( nextGroupStartPage ) ;
200+ } ) ;
182201
183202 // Make goToPage globally available
184203 window . goToPage = goToPage ;
0 commit comments