Skip to content
Snippets Groups Projects
Commit 9b66aa6e authored by Tiago Botelho's avatar Tiago Botelho
Browse files

Prevent empty pagination when list is not empty

parent c7ee5742
No related branches found
No related tags found
No related merge requests found
module KaminariPagination
extend ActiveSupport::Concern
def bounded_pagination(items, page_number)
items = items.page(page_number)
items.to_a.empty? ? items.page(items.total_pages) : items
end
end
class Dashboard::TodosController < Dashboard::ApplicationController
include KaminariPagination
before_action :find_todos, only: [:index, :destroy_all]
 
def index
@sort = params[:sort]
@todos = @todos.page(params[:page])
@todos = bounded_pagination(@todos, params[:page])
end
 
def destroy
Loading
Loading
Loading
Loading
@@ -5,6 +5,7 @@ class Projects::IssuesController < Projects::ApplicationController
include ToggleAwardEmoji
include IssuableCollections
include SpammableActions
include KaminariPagination
 
before_action :redirect_to_external_issue_tracker, only: [:index, :new]
before_action :module_enabled
Loading
Loading
@@ -24,7 +25,7 @@ class Projects::IssuesController < Projects::ApplicationController
 
def index
@issues = issues_collection
@issues = @issues.page(params[:page])
@issues = bounded_pagination(@issues, params[:page])
 
if params[:label_name].present?
@labels = LabelsFinder.new(current_user, project_id: @project.id, title: params[:label_name]).execute
Loading
Loading
Loading
Loading
@@ -6,6 +6,7 @@ class Projects::MergeRequestsController < Projects::ApplicationController
include NotesHelper
include ToggleAwardEmoji
include IssuableCollections
include KaminariPagination
 
before_action :module_enabled
before_action :merge_request, only: [
Loading
Loading
@@ -37,7 +38,7 @@ class Projects::MergeRequestsController < Projects::ApplicationController
 
def index
@merge_requests = merge_requests_collection
@merge_requests = @merge_requests.page(params[:page])
@merge_requests = bounded_pagination(@merge_requests, params[:page])
 
if params[:label_name].present?
labels_params = { project_id: @project.id, title: params[:label_name] }
Loading
Loading
class Projects::SnippetsController < Projects::ApplicationController
include ToggleAwardEmoji
include KaminariPagination
 
before_action :module_enabled
before_action :snippet, only: [:show, :edit, :destroy, :update, :raw, :toggle_award_emoji]
Loading
Loading
@@ -25,7 +26,7 @@ class Projects::SnippetsController < Projects::ApplicationController
project: @project,
scope: params[:scope]
)
@snippets = @snippets.page(params[:page])
@snippets = bounded_pagination(@snippets, params[:page])
end
 
def new
Loading
Loading
---
title: Prevent empty pagination when list is not empty
merge_request: 8172
author:
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment