X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fsliceview.py;h=db25e64de2302b6c3e7977b2b028649b5daf2ff7;hb=558ebc92df5b77d9ca546de531a36efb90ae1569;hp=315658c390577c9f6c778253c1430d88ed841461;hpb=facfe416a9c1b9e1dd0e34785275779bdcdafe35;p=myslice.git diff --git a/portal/sliceview.py b/portal/sliceview.py index 315658c3..db25e64d 100644 --- a/portal/sliceview.py +++ b/portal/sliceview.py @@ -8,9 +8,8 @@ from unfold.page import Page from manifold.core.query import Query, AnalyzedQuery from manifold.manifoldapi import execute_query -from ui.topmenu import topmenu_items, the_user +from ui.topmenu import topmenu_items_live, the_user -from plugins.topmenuvalidation import TopmenuValidation from plugins.raw import Raw from plugins.stack import Stack from plugins.tabs import Tabs @@ -60,8 +59,6 @@ class SliceView (LoginRequiredAutoLogoutView): config=Config() page.add_js_chunks ('$(function() { messages.debug("manifold URL %s"); });'%(config.manifold_url())) - page.expose_js_metadata() - metadata = page.get_metadata() resource_md = metadata.details_by_object('resource') resource_fields = [column['name'] for column in resource_md['column']] @@ -421,24 +418,6 @@ class SliceView (LoginRequiredAutoLogoutView): outline_complete = True, )) -# topmenu animation -# xxx all this should go into a plugin if its own with the topmenu and all... - query_pi_auths = Query.get('ple:user').filter_by('user_hrn', '==', '$user_hrn' ).select('pi_authorities') - page.enqueue_query(query_pi_auths) - # even though this plugin does not have any html materialization, the corresponding domid - # must exist because it is searched at init-time to create the JS plugin - # so we simply piggy-back the target button here - topmenuvalidation = TopmenuValidation ( - page=page, - # see above - domid='topmenu-validation', - query=query_pi_auths, - # this one is the target for a $.show() when the query comes back - button_domid="topmenu-validation") - # although the result does not matter, rendering is required for the JS init code to make it in the page - topmenuvalidation.render(request) -# end topmenu addition - # variables that will get passed to the view-unfold1.html template template_env = {} @@ -448,20 +427,15 @@ class SliceView (LoginRequiredAutoLogoutView): # more general variables expected in the template template_env [ 'title' ] = '%(slicename)s'%locals() # the menu items on the top - template_env [ 'topmenu_items' ] = topmenu_items('Slice', request) + template_env [ 'topmenu_items' ] = topmenu_items_live('Slice', page) # so we can sho who is logged template_env [ 'username' ] = the_user (request) # don't forget to run the requests - page.expose_queries () - - # xxx create another plugin with the same query and a different layout (with_datatables) - # show that it worls as expected, one single api call to backend and 2 refreshed views - + page.expose_js_metadata() # the prelude object in page contains a summary of the requirements() for all plugins # define {js,css}_{files,chunks} - prelude_env = page.prelude_env() - template_env.update(prelude_env) - result=render_to_response ('view-unfold1.html',template_env, + template_env.update(page.prelude_env()) + + return render_to_response ('view-unfold1.html',template_env, context_instance=RequestContext(request)) - return result