30 if treeid is None: |
30 if treeid is None: |
31 treeid = self.req.form.pop('treeid', None) |
31 treeid = self.req.form.pop('treeid', None) |
32 if treeid is None: |
32 if treeid is None: |
33 self.warning('Tree state won\'t be properly restored after next reload') |
33 self.warning('Tree state won\'t be properly restored after next reload') |
34 treeid = make_uid('throw away uid') |
34 treeid = make_uid('throw away uid') |
35 self.w(u'<ul id="tree-%s" class="%s">' % (treeid, self.css_classes)) |
35 toplevel_thru_ajax = self.req.form.pop('treeview_top', False) |
|
36 toplevel = toplevel_thru_ajax or (initial_load and not self.req.form.get('fname')) |
|
37 ulid = ' ' |
|
38 if toplevel: |
|
39 ulid = ' id="tree-%s"' % treeid |
|
40 self.w(u'<ul%s class="%s">' % (ulid, self.css_classes)) |
36 for rowidx in xrange(len(self.rset)): |
41 for rowidx in xrange(len(self.rset)): |
37 self.wview(self.itemvid, self.rset, row=rowidx, col=0, |
42 self.wview(self.itemvid, self.rset, row=rowidx, col=0, |
38 vid=subvid, parentvid=self.id, treeid=treeid) |
43 vid=subvid, parentvid=self.id, treeid=treeid) |
39 self.w(u'</ul>') |
44 self.w(u'</ul>') |
40 toplevel_thru_ajax = self.req.form.pop('treeview_top', False) |
45 if toplevel: |
41 if (initial_load and not self.req.form.get('fname')) or toplevel_thru_ajax: |
|
42 self.req.add_css('jquery.treeview.css') |
46 self.req.add_css('jquery.treeview.css') |
43 self.req.add_js(('cubicweb.ajax.js', 'cubicweb.widgets.js', 'jquery.treeview.js')) |
47 self.req.add_js(('cubicweb.ajax.js', 'cubicweb.widgets.js', 'jquery.treeview.js')) |
44 self.req.html_headers.add_onload(u""" |
48 self.req.html_headers.add_onload(u""" |
45 jQuery("#tree-%s").treeview({toggle: toggleTree, prerendered: true});""" % treeid, |
49 jQuery("#tree-%s").treeview({toggle: toggleTree, prerendered: true});""" % treeid, |
46 jsoncall=toplevel_thru_ajax) |
50 jsoncall=toplevel_thru_ajax) |