Closed (won't fix)
Project:
Outline Designer
Version:
5.x-1.5
Component:
Code
Priority:
Critical
Category:
Bug report
Assigned:
Reporter:
Created:
8 Aug 2008 at 13:16 UTC
Updated:
12 Feb 2009 at 04:31 UTC
Outline Designer seems to be updating the weight of every node in the outline and passing that URI within the post, consequently exceeding apache's URI length limit in large book structures. As a result, Outline Designer changes the order in the GUI but fails on post to update the weights - refreshing the outline shows that no changes have been made.
Comments
Comment #1
looplog commentedFYI, with a book structure of around 200 nodes, the URI is over 10000 characters.
Comment #2
btopro commentedOdd... I've used 1.5 w/o issues like this on pretty massive books. The reason for all the reweighting is that on a drag and drop command there are lots of nodes that will need to be reweighted in order to display content in the correct order. If someone can come up with a way of intelligently doing that so that it doesn't have to send as much information I'd be willing to upgrade it to account for this. OD needs a performance overhaul anyway as I'm getting annoyed with having to wait for the ajax functions to load properly :). Any takers on cleaning up the efficiency of the project (esp. for issues like this to clear up)? I've got a lot on my plate at work lately to be able to invest too much time in other things but I'll see if I can get to the root of any performance improvements.
Comment #3
looplog commentedok. I rechecked and this outline has 270+ nodes, which could be stretching the design intentions of both the book.module and your module. I suppose a workaround is to break the book up and operate within smaller books.
nonetheless, it does seem that the process could be made more efficient. I understand that the weights need to be adjusted for the siblings of the node but why adjust weights for the entire tree? Is it not possible to limit the weight adjustment to operate only within the current/new parent and, if necessary, the old parent? Sorry I can't offer much in terms of code advice...
Comment #4
btopro commentedThat could be one way of handling it. An update I plan on making in the next week or so has the ability to load up the "book" at any point within the structure instead of just the book roots. If that's working then that'll help out a lot with this kind of an issue. Two things i'd like to see go into the outline designer to get around what you're talking about:
* Reweight the current node and anything w/ the same parent as where it is going to be placed. Currently I do everything cause I didnt think about it much but there's no real need to reweight the children (1st gen) of the old parent, everything will still be in order there weight wise, it's just the new parent we need to worry about. All nodes underneith it will be fine because it's only on a parent to 1st gen. siblings that we need to worry about. This can help solve your current issue
* Longer term though I'd like to see ajax'ed loading of children dynamically (similar to the ExtJS 2.0 way folder tree works; it was actually what was used for the initial mock ups of od)
I'll put this weighting issue on my list for the next release. I'm also looking to add in mirror functionality for OD to write to books and menus at the same time so that both can be leveraged if you want to. The weighting will make a good performance improvement, thanks for the issue.
Comment #5
looplog commentedyou actually covered two other feature requests I had in mind - being able to open OD at any parent and mirroring to menu...
look forward to the release and appreciate your work on a very useful module.
Comment #6
btopro commentedMoving on to D6, it's a total rewrite and I can't back-port anything. Doesn't matter though because this is no longer an issue in the 6 version.