X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=trash%2Fpluginview.py;h=f2003127b213e36949c09841ce434b4f8db4ecc2;hb=83f238a32f62a34370f24d69e85823c709d95627;hp=e75c82e73178602e527667d55ec59157ce6eae33;hpb=d8f20800f3709f4958493d2e1e1f8a8a98b0e29a;p=myslice.git diff --git a/trash/pluginview.py b/trash/pluginview.py index e75c82e7..f2003127 100644 --- a/trash/pluginview.py +++ b/trash/pluginview.py @@ -1,68 +1,91 @@ # Create your views here. -from django.core.context_processors import csrf -from django.template import RequestContext -from django.template.loader import render_to_string -from django.shortcuts import render_to_response +from django.core.context_processors import csrf +from django.template import RequestContext +from django.template.loader import render_to_string +from django.shortcuts import render_to_response -from django.contrib.auth.decorators import login_required +from django.contrib.auth.decorators import login_required -from unfold.page import Page -from manifold.manifoldquery import ManifoldQuery +from unfold.page import Page +from manifold.core.query import Query -from plugins.stack.stack import Stack -from plugins.tabs.tabs import Tabs -from plugins.lists.staticlist import StaticList -from plugins.quickfilter.quickfilter import QuickFilter -from plugins.raw.raw import Raw -from plugins.messages.messages import Messages -from plugins.hazelnut.hazelnut import Hazelnut -from plugins.updater.updater import Updater +from plugins.stack import Stack +from plugins.tabs import Tabs +from plugins.lists.staticlist import StaticList +from plugins.quickfilter import QuickFilter +from plugins.querycode import QueryCode +from plugins.raw import Raw +from plugins.messages import Messages +from plugins.querytable import QueryTable -from myslice.viewutils import topmenu_items, the_user -from myslice.viewutils import hard_wired_slice_names, hard_wired_list, lorem_p, lorem, quickfilter_criterias +from ui.topmenu import topmenu_items, the_user +from trash.trashutils import hard_wired_slice_names, hard_wired_list, lorem_p, lorem, quickfilter_criterias -@login_required +#might be useful or not depending on the context +#@login_required def test_plugin_view (request): page = Page(request) + page.expose_js_metadata() + # variables that will get passed to this template template_env = {} - slicename='ple.inria.omftest' - main_query = ManifoldQuery (action='get', - subject='resource', - timestamp='latest', - fields=['network','type','hrn','hostname'], - filters= [ [ 'slice_hrn', '=', slicename, ] ], - ) - # don't run this one as nothing listens to this - page.enqueue_query (main_query, run_it=False) + slicename='ple.inria.heartbeat' + main_query = Query.get('resource').filter_by('slice_hrn', '=', slicename).select(['network','type','hrn','hostname','sliver']) + # without an querytable, this would use use : run_it=False as nothing would listen to the results + page.enqueue_query (main_query, # run_it=False + ) main_plugin = \ Stack ( page=page, title='thestack', - togglable=False, + togglable=True, + domid='stack', sons=[ \ - Updater ( + # make sure the 2 things work together + Messages ( page=page, - title="Update me", + title="Transient Runtime messages", + domid="messages-transient", + levels='ALL', + ), + QueryTable ( + page=page, + title="Slice %s - checkboxes"%slicename, query=main_query, - label="Update me", - domid="the-updater", + domid="querytable", + checkboxes=True, + togglable=True, ), Messages ( - page=page, - title="Runtime messages", - domid="msgs-pre", - levels='ALL', - ), + page=page, + title="Inline Runtime messages", + domid="messages", + levels='ALL', + togglable=True, + transient=False, + ), + Raw ( + page=page, + title="issue messages", + togglable=True, + html=""" + +""", + ), ]) - # define 'unfold1_main' to the template engine - template_env [ 'unfold1_main' ] = main_plugin.render(request) + page.add_js_chunks ( """ +function issue_debug() {console.log("issue_debug");messages.debug("issue_debug");}; +$(function(){$("#bouton").click(issue_debug);}); +""") + + # define 'unfold_main' to the template engine + template_env [ 'unfold_main' ] = main_plugin.render(request) # more general variables expected in the template template_env [ 'title' ] = 'Single Plugin View'