#121: Asynchronous loading of content views
- Contents
- Proposed by
- Alexander Limi
- Seconded by
- Martin Aspeli
- Proposal type
- User interface
- State
- completed
Motivation
By loading the content of the Edit/Properties/Sharing screens using AJAX, we can minimize the time it takes to switch between them, and also reduce the server load Plone causes when navigating the editing interface.
Assumptions
- It's very easy that this gets out of hand, which is why this PLIP is so specific. We need to attack specific quick wins with as little overhead as possible, and not involve any JS frameworks that do more than the absolute minimum.
Proposal
We propose to make it possible to click on any of the content view tabs while only reloading the content part of the page.
The tab should be selected, and everything should look and work as it normally does - but with faster access to the views since only the content pane is loaded.
Risks
- We need to make sure it works perfectly even with JS turned off (shouldn't be too hard, though - just overload the links)
- It needs to be tested with any sort of view template from third-party products
- This will destroy bookmarkability for specific editing views, which something we're prepared to give up. You shouldn't bookmark an editing view anyway. :]
Progress log
Bling currently has an implementation of this.
URLs will still work
modding the url bar
Doesn't the Google AJAX lib have a means of modding the url bar? I think so.
Bookmarks and history can work to
Check out the article http://www.onjava.com/pub/a/onjava/2005/10/26/ajax-handling-bookmarks-and-back-button.html and see demo of dhtml application with proper support for history and bookmarks http://www.onjava.com/onjava/2005/10/26/examples/examples/oreillymail/oreillymail.html
Giving up bookmarkability?
Why would this mean we'd have to give up bookmarkability? I mean if we keep previous behaviour as well going directly to /edit or whatever would just make it do the right thing. Personally I never bookmark content tabss but I do often give people I'm working with copied and pasted links to these things in a hurry.