You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The template tag seeker.templatetags.seeker.seeker_pager does not check the upper boundary on parameter page. If page is greater than paginator.num_pages, an EmptyPage exception is raised.
This can be replicated with a search page where user is on last page of pagination. Somehow the result set decreases such that last page is no longer in given current criterion (for instance other users of system are updating attributes of records at the same time). The user then does an F5 on current page - EmptyPage exception.
Maybe something like the following is the correct implementation:
if results_count <= offset:
page = max([1, int(results_count / self.page_size)])
offset = (page - 1) * self.page_size
If you don't like that, maybe expose the ability to overrride - as is done with AdvancedSeekerView.calculate_page_and_offset
The text was updated successfully, but these errors were encountered:
The template tag
seeker.templatetags.seeker.seeker_pager
does not check the upper boundary on parameterpage
. Ifpage
is greater thanpaginator.num_pages
, an EmptyPage exception is raised.This can be replicated with a search page where user is on last page of pagination. Somehow the result set decreases such that last page is no longer in given current criterion (for instance other users of system are updating attributes of records at the same time). The user then does an F5 on current page - EmptyPage exception.
I guess there is an argument that the code to check the offset against result_count is wrong here:
https://github.com/imsweb/django-seeker/blob/6.0/seeker/views.py#L822
Maybe something like the following is the correct implementation:
if results_count <= offset:
page = max([1, int(results_count / self.page_size)])
offset = (page - 1) * self.page_size
If you don't like that, maybe expose the ability to overrride - as is done with
AdvancedSeekerView.calculate_page_and_offset
The text was updated successfully, but these errors were encountered: