151
151
<a class="expander"
152
152
tal:attributes="id string:pub${pubid}-expander;
153
153
href string:${archive/fmt:url}/+sourcepub/${pubid}/+listing-archive-extra">
154
<img style="padding-right:0.5em;" src="/@@/treeCollapsed"
155
alt="Show details" title="Show details"
156
tal:attributes="id string:pub${pubid}-arrow"/>
158
156
<a tal:attributes="href row/version">
159
157
<img src="/@@/package-source" />
174
172
content="string:(not published)"/>
177
<tr tal:attributes="id string:pub${pubid}" style="display: none">
175
<tr tal:attributes="id string:pub${pubid}">
179
177
<div class="package-details"
180
178
tal:attributes="id string:pub${pubid}-container"></div>
242
238
<script type="text/javascript">
243
LPS.use('node', 'event', 'lazr.effects', function(Y) {
239
LPS.use('node', 'event', 'lp.app.widgets.expander', function(Y) {
245
241
// XXX Michael Nelson 20090702 bug=340497 This slider
246
242
// needs an integration test.
247
// Collapse the body of the slider widget initially.
248
Y.one('#related-ppa-versions .widget-bd').addClass('lazr-closed');
250
// Ensure that the widget header uses the correct sprite icon
251
// and gets the styling for javascript actions applied.
252
var widget_header = Y.one('#related-ppa-versions .widget-hd');
253
widget_header.addClass('sprite');
254
widget_header.addClass('treeCollapsed');
255
widget_header.addClass('js-action');
258
Y.on('click', function(e) {
260
slide = Y.lazr.effects.slide_out('#related-ppa-versions .widget-bd');
261
widget_header.replaceClass('treeCollapsed', 'treeExpanded');
263
slide.set('reverse', !slide.get('reverse'));
264
widget_header.toggleClass('treeExpanded');
265
widget_header.toggleClass('treeCollapsed');
270
}, '#slide-trigger');
244
var related_ppas = Y.one('#related-ppa-versions');
245
var widget_header = related_ppas.one('.widget-hd');
246
var widget_body = related_ppas.one('.widget-bd');
247
var expander = new Y.lp.app.widgets.expander.Expander(
248
widget_header, widget_body);
249
expander.setUp(true);