← Back to team overview

launchpad-dev team mailing list archive

Javascript frustrations

 

Hi All,

Everything started out wonderfully... then it all went to crap.

https://code.edge.launchpad.net/~thumper/launchpad/popup-diff/+merge/14770

Works - mostly.

I noticed that the diff rendered in the popup is weird for some reason.  
Exactly the same code is used to render the diff on the merge proposal page, 
but on the popup view, the diff table ends up outside the 
<div class="boardComment attachment diff"> for some very obscure reason.

I even managed to change the way it worked with very few changes to make the 
JS and UI reviews happy.

Next I went to integrate the same view on to the bug page, and here it blew up 
differently.  I was just using Y.io to load a page fragment and dump that into 
the pretty overlay.  However can't do that from bugs.launchpad.net when the 
view is registered against code.launchpad.net.

This led to the realisation that I should probably use the API.  That leads to 
another problem.  The preview_diff is an attribute of the merge proposal and is 
exported through the API.

Now there is yet another problem - how to get the API address of the merge 
proposals.  Ideally in HTML5 we could use a data-mp attribute, but we can't in 
HTML4 to stay valid - so probably need some revolting javascript hacks.

The *big* issue as far as I'm concerned right now, is how to get the 
preview_diff attribute of the merge proposal formatted as HTML in order to dump 
it into the pretty overlay?

Suggestions and comments welcome.

Tim



Follow ups