Skip to content

Refactor to have only one pagination.html template

Chris Lemaire requested to merge 233-multiple-pagination-templates into development

Three different instances of pagination could be found throughout the project. This only needs to be a single instance as all pagination elements do exactly the same thing: provide buttons to change the query parameter of page and fetch the current page with the changed query parameters.

The location of /templates/pagination.html was chosen because it is the most generic place for such a generic template. Most, if not all, of the implementation of pagination was copied from /templates/request/list/pagination.html because the existing implementation there was most complete and most recently worked on. The 'new' pagination.html template/fragment was given explicit parameters for a Page object to figure out the current page and total page count etc. Additionally, the size (width) of the pagination element is passed explicitle. The value used by default before was 3.

The CourseController based function to fetch a list of students was adjusted to output a Page object into the model, as required for the pagination to work similarly to that of all other paginated pages.

Closes #233 (closed)

Edited by Otto Visser

Merge request reports