X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=trash%2Fpluginview.py;h=236744f0cd81dbb3d500108e9132c2e6aec71f52;hb=908a927353b1fd6f933bfc9e12846f78c179968f;hp=e0bc218357517722e73d46278274eaa89d209e60;hpb=f9cdd5524f3b0ed94df660fab8a2dffd99a3f557;p=myslice.git diff --git a/trash/pluginview.py b/trash/pluginview.py index e0bc2183..236744f0 100644 --- a/trash/pluginview.py +++ b/trash/pluginview.py @@ -1,88 +1,87 @@ # 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 engine.pluginset import PluginSet +from unfold.page import Page +from manifold.core.query import Query -from plugins.verticallayout import VerticalLayout -from plugins.tabs import Tabs -from plugins.simplelist import SimpleList -from plugins.slicelist import SliceList -from plugins.quickfilter import QuickFilter -from plugins.raw import Raw +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.querycode.querycode import QueryCode +from plugins.raw.raw import Raw +from plugins.messages.messages import Messages +from plugins.hazelnut import Hazelnut +from plugins.updater import Updater -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 myslice.viewutils import topmenu_items, the_user +from trash.trashutils import hard_wired_slice_names, hard_wired_list, lorem_p, lorem, quickfilter_criterias @login_required def test_plugin_view (request): - pluginset = PluginSet(request) + page = Page(request) # variables that will get passed to this template template_env = {} + slicename='ple.inria.heartbeat' + main_query = Query.get('resource').filter_by('slice_hrn', '=', slicename).select(['network','type','hrn','hostname','sliver']) + # without an hazelnut, this would use use : run_it=False as nothing would listen to the results + page.enqueue_query (main_query, # run_it=False + ) + main_plugin = \ - VerticalLayout ( pluginset=pluginset, - title='title for the vertical layout', - sons = [ SimpleList (pluginset=pluginset, - title='SimpleList and dataTables', - list=hard_wired_list, - header='Hard wired', - foo='the value for foo', - with_datatables=True, - toggled=False), - Tabs (pluginset=pluginset, - title='Sample Tabs', - # *** we select this one to be the active tab *** - active='raw2', - sons = [ Raw (pluginset=pluginset, - title='a raw plugin',domid='raw1', - togglable=False, - html= 3*lorem_p), - SliceList(pluginset=pluginset, - title='a slice list', - togglable=False, - list=hard_wired_slice_names), - Raw (pluginset=pluginset, - title='raw title',domid='raw2', - togglable=False,html=lorem) ]), - SimpleList (pluginset=pluginset, - title='SimpleList with slice names', - list=hard_wired_slice_names, - ), - QuickFilter (list=quickfilter_criterias, - pluginset=pluginset, - title='QuickFilter in main content') ] ) - # define 'content_main' to the template engine - template_env [ 'content_main' ] = main_plugin.render(request) + Stack ( + page=page, + title='thestack', + togglable=False, + domid='stack', + sons=[ \ + Updater ( + page=page, + title="wont show up as non togglable by default", + query=main_query, + label="Update me", + domid="the-updater", + ), + # make sure the 2 things work together + Hazelnut ( + page=page, + title="Slice %s - checkboxes interacting w/ updater"%slicename, + query=main_query, + domid="hazelnut", + checkboxes=True, + ), + Messages ( + page=page, + title="Runtime messages", + domid="msgs-pre", + levels='ALL', + ), + ]) - ########## - # lacks a/href to /slice/%s - related_plugin = SliceList (pluginset=pluginset, - title='SliceList plugin',domid='slicelist1', - with_datatables='yes', - list=hard_wired_slice_names, - header='Slices') - # likewise but on the side view - template_env [ 'content_related' ] = related_plugin.render (request) + # define 'unfold1_main' to the template engine + template_env [ 'unfold1_main' ] = main_plugin.render(request) # more general variables expected in the template - template_env [ 'title' ] = 'Test Plugin View' + template_env [ 'title' ] = 'Single Plugin View' template_env [ 'topmenu_items' ] = topmenu_items('plugin', request) template_env [ 'username' ] = the_user (request) - pluginset.exec_queue_asynchroneously () + # run queries when we have any + page.expose_queries () - # the prelude object in pluginset contains a summary of the requirements() for all plugins + # the prelude object in page contains a summary of the requirements() for all plugins # define {js,css}_{files,chunks} - prelude_env = pluginset.template_env() + prelude_env = page.prelude_env() template_env.update(prelude_env) - return render_to_response ('view-plugin.html',template_env, + return render_to_response ('view-unfold1.html',template_env, context_instance=RequestContext(request))