Defect #5138

Don't use Ajax for pagination

Added by Kenn Wilson over 7 years ago. Updated over 6 years ago.

Status:ClosedStart date:2010-03-20
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:UI
Target version:1.2.0
Resolution:Fixed Affected version:

Description

Redmine currently uses Ajax to load pages in the forums. While the pagination links have URLs like boards/1?page=2, clicks are actually intercepted by JavaScript which loads the next page of results without changing the URL.

While it's true that there's little value to bookmarking individual pages of forums posts, as they change frequently, the real problem is that it breaks browser behavior when using the back button after reading a particular thread. The browser will reload the URL without the ?page=N query string, resulting in the first page of posts being displayed, regardless of what page the reader was on initially.

Browser behavior noted in Safari and Firefox on Mac OS X.


Related issues

Related to Redmine - Defect #7736: Going back to search results after examining a find goes ... Closed 2011-02-28
Related to Redmine - Defect #1965: Redmine is not Tab Safe Closed 2008-09-29
Duplicated by Redmine - Defect #657: Back button - loses current page after viewing an issue -... Closed 2008-02-13
Duplicated by Redmine - Patch #7594: Proper pagination Closed 2011-02-09

Associated revisions

Revision 5301
Added by Jean-Philippe Lang over 6 years ago

Makes all pagination-like links use #link_to_content_update (#5138).

Revision 5302
Added by Jean-Philippe Lang over 6 years ago

Changes pagination links to non-AJAX requests (#5138).

History

#1 Updated by Kenn Wilson over 7 years ago

I've just realized this applies to issue lists as well. Thanks.

#2 Updated by Henrik Ammer over 7 years ago

I say leave the AJAX in but add a history manager of some sorts. Maybe ReallySimpleHistory could be a start?

Then no back-/forwardbuttons will break.

#3 Updated by Andy Bolstridge almost 7 years ago

+1 to this - its really annoying to read the redmin.org forum, get to page 20 of forum questions, read one, click back and find you have to click all the way through to get back to page 20! REALLY annoying.

If there was a 'return to forum list' link, that'd be ok, but there is nothing except the back button. The back button appears to work correctly on the issues list, so somewhere this was fixed (or un-ajaxed). Either way, it really is broken functionality at present.

#4 Updated by Ian Medland almost 7 years ago

+1

I'm surprised this is not seen as a major problem (a Rails app that works horribly on a Mac!). I am trying to get this introduced at work instead of Jira but can't in any honesty recommend it you can't reliably navigate through multipage issues lists.

I notice the same problem occurs on the plugins list - go explore a plugin's details and when you hit the back button you go back to page 1.

This is on Safari but I too have seen it on Firefox on Mac.

#5 Updated by Brian Lindahl almost 7 years ago

Same problem exists for browsing the issue list. See #3494 and #3494.

This appears to be a major fundamental problem in several areas of Redmine that shows the original developer's lack of experience in some areas of web development. Paged browsing should be implemented very carefully via Ajax. Either don't use it, or use a strategy such as modifying the URL with the hash mark ('#') to capture the page number.

See http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps

#6 Updated by Brian Lindahl almost 7 years ago

Er, also related to #1965.

#7 Updated by Brian Lindahl almost 7 years ago

related to #657

#8 Updated by Brian Lindahl almost 7 years ago

In #7594, I've created a patch to temporarily solve this problem until a real solution exists. It disables Ajax updates and uses direct linking for pagination.

#9 Updated by Jean-Philippe Lang over 6 years ago

  • Subject changed from Don't use Ajax for forum pages to Don't use Ajax for pagination
  • Category changed from Forums to UI
  • Status changed from New to Closed
  • Target version set to 1.2.0
  • Resolution set to Fixed

Ajax pagination removed in r5302.

#10 Updated by Go MAEDA over 2 years ago

  • Duplicated by Defect #657: Back button - loses current page after viewing an issue - IE only added

#11 Updated by Go MAEDA over 2 years ago

Also available in: Atom PDF