fix errors!!
This commit is contained in:
parent
20bd959c69
commit
a164dccc94
3 changed files with 13 additions and 8 deletions
|
@ -99,19 +99,24 @@ module Api
|
||||||
end
|
end
|
||||||
|
|
||||||
def pagination(collection)
|
def pagination(collection)
|
||||||
@pagination_data ||= {
|
return @pagination_data unless @pagination_data.nil?
|
||||||
current_page: (params[:page] || 1).to_i,
|
|
||||||
|
current_page = (params[:page] || 1).to_i
|
||||||
|
per = (params[:per] || 25).to_i
|
||||||
|
total_pages = (collection.total_count.to_f / per).ceil
|
||||||
|
@pagination_data = {
|
||||||
|
current_page: current_page,
|
||||||
next_page: current_page < total_pages ? current_page + 1 : 0,
|
next_page: current_page < total_pages ? current_page + 1 : 0,
|
||||||
prev_page: current_page > 1 ? current_page - 1 : 0,
|
prev_page: current_page > 1 ? current_page - 1 : 0,
|
||||||
total_pages: (collection.total_count.to_f / per).ceil,
|
total_pages: total_pages,
|
||||||
total_count: collection.total_count,
|
total_count: collection.total_count,
|
||||||
per: (params[:per] || 25).to_i
|
per: per
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
def pagination_link_headers!(data)
|
def pagination_link_headers!(data)
|
||||||
base_url = request.base_url + request.path
|
base_url = request.base_url + request.path
|
||||||
old_query = request_query_parameters
|
old_query = request.query_parameters
|
||||||
nxt = old_query.merge(page: data[:next_page]).map { |x| x.join('=') }.join('&')
|
nxt = old_query.merge(page: data[:next_page]).map { |x| x.join('=') }.join('&')
|
||||||
prev = old_query.merge(page: data[:prev_page]).map { |x| x.join('=') }.join('&')
|
prev = old_query.merge(page: data[:prev_page]).map { |x| x.join('=') }.join('&')
|
||||||
last = old_query.merge(page: data[:total_pages]).map { |x| x.join('=') }.join('&')
|
last = old_query.merge(page: data[:total_pages]).map { |x| x.join('=') }.join('&')
|
||||||
|
@ -123,7 +128,7 @@ module Api
|
||||||
].join(',')
|
].join(',')
|
||||||
response.headers['X-Total-Pages'] = data[:total_pages].to_s
|
response.headers['X-Total-Pages'] = data[:total_pages].to_s
|
||||||
response.headers['X-Total-Count'] = data[:total_count].to_s
|
response.headers['X-Total-Count'] = data[:total_count].to_s
|
||||||
response.headers['X-Per-Page'] = per.to_s
|
response.headers['X-Per-Page'] = data[:per].to_s
|
||||||
end
|
end
|
||||||
|
|
||||||
def instantiate_collection
|
def instantiate_collection
|
||||||
|
|
|
@ -16,7 +16,7 @@ class MapPolicy < ApplicationPolicy
|
||||||
end
|
end
|
||||||
|
|
||||||
def show?
|
def show?
|
||||||
record.permission.in?('commons', 'public') ||
|
record.permission.in?(['commons', 'public']) ||
|
||||||
record.collaborators.include?(user) ||
|
record.collaborators.include?(user) ||
|
||||||
record.user == user
|
record.user == user
|
||||||
end
|
end
|
||||||
|
|
|
@ -23,7 +23,7 @@ class TopicPolicy < ApplicationPolicy
|
||||||
if record.defer_to_map.present?
|
if record.defer_to_map.present?
|
||||||
map_policy.show?
|
map_policy.show?
|
||||||
else
|
else
|
||||||
record.permission.in?('commons', 'public') || record.user == user
|
record.permission.in?(['commons', 'public']) || record.user == user
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue