#121: Asynchronous loading of content views

Contents
  1. Motivation
  2. Assumptions
  3. Proposal
  4. Risks
  5. Progress log
by Alexander Limi last modified Jan 21, 2010 07:26 AM

The Edit/Properties/Sharing tabs are used a lot when editing content, unfortunately they are a bit slow to use in practice. We can speed this up and reduce CPU usage by doing it with AJAX.

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.

Giving up bookmarkability?

Posted by Rocky Burt at Mar 13, 2006 01:02 PM
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.

URLs will still work

Posted by Alexander Limi at Mar 16, 2006 10:20 PM
Yes, the /edit URLs will still work, of course - it's just that clicking it won't update the URL bar, which is just a minor annoyance. It was more a "this is one of the locations where I don't think it matters" statement. :)

modding the url bar

Posted by Justin Ryan at Jul 20, 2006 12:58 AM
Doesn't the Google AJAX lib have a means of modding the url bar? I think so.

Bookmarks and history can work to

Posted by Filip Kalinski at Aug 18, 2006 09:08 AM
Check out the article http://www.onjava.com/[…]/ajax-handling-bookmarks-and-back-button.html and see demo of dhtml application with proper support for history and bookmarks http://www.onjava.com/[…]/oreillymail.html

PloneAzax has support for PLIP 121

Posted by Godefroid Chapelle at Aug 27, 2006 01:18 PM
support built with KSS