updater now has the logic to turn itself off and back on (although for now only in...
[myslice.git] / trash / pluginview.py
index a7269b9..922096e 100644 (file)
@@ -8,12 +8,17 @@ from django.shortcuts import render_to_response
 from django.contrib.auth.decorators import login_required
 
 from unfold.page import Page
 from django.contrib.auth.decorators import login_required
 
 from unfold.page import Page
+from manifold.manifoldquery import ManifoldQuery
 
 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.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.raw.raw import Raw
+from plugins.messages.messages import Messages
+from plugins.hazelnut.hazelnut import Hazelnut
+from plugins.updater.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 myslice.viewutils import hard_wired_slice_names, hard_wired_list, lorem_p, lorem, quickfilter_criterias
@@ -26,64 +31,52 @@ def test_plugin_view (request):
     # variables that will get passed to this template
     template_env = {}
     
     # variables that will get passed to this template
     template_env = {}
     
+    slicename='ple.inria.omftest'
+    main_query = ManifoldQuery (action='get',
+                                subject='slice',
+                                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)
+
     main_plugin = \
     main_plugin = \
-        Stack ( page=page,
-                title='title for the vertical layout',
-                sons = [ StaticList (page=page,
-                                     title='StaticList - with datatables - starts toggled off',
-                                     list=hard_wired_list, 
-                                     header='Hard wired header', 
-                                     foo='the value for foo',
-                                     with_datatables=True,
-                                     toggled=False),
-                         Tabs (page=page,
-                               title='Sample Tabs',
-                               # *** we select this one to be the active tab ***
-                               active='raw2',
-                               sons = [ Raw (page=page,
-                                             title='a raw plugin',domid='raw1',
-                                             togglable=False,
-                                             html= 3*lorem_p),
-                                        StaticList(page=page,
-                                                   title='a slice list',
-                                                   togglable=False,
-                                                   header="static list but not togglable",
-                                                   list=hard_wired_slice_names),
-                                        Raw (page=page,
-                                             title='raw title',domid='raw2',
-                                             togglable=False,html=lorem) ]),
-                         StaticList (page=page,
-                                     title='SimpleList with slice names', 
-                                     list=hard_wired_slice_names,
-                                     ),
-                         QuickFilter (page=page,
-                                      title='QuickFilter in main content',
-                                      criterias=quickfilter_criterias,
-                                      ) ] )
+        Stack (
+        page=page,
+        title='thestack',
+        togglable=False,
+        sons=[ \
+            Updater (
+                    page=page,
+                    title="Update me",
+                    query=main_query,
+                    label="Update me",
+                    domid="the-updater",
+                    ),
+            Messages (
+                page=page,
+                title="Runtime messages",
+                domid="msgs-pre",
+                levels='ALL',
+                ),
+            ])
+
     # define 'unfold1_main' to the template engine
     template_env [ 'unfold1_main' ] = main_plugin.render(request)
 
     # define 'unfold1_main' to the template engine
     template_env [ 'unfold1_main' ] = main_plugin.render(request)
 
-    ##########
-    related_plugin = StaticList (page=page,
-                                 title='SliceList plugin',domid='slicelist1',
-                                 with_datatables='yes', 
-                                 list=hard_wired_slice_names, 
-                                 header='Slices')
-    # likewise but on the side view
-    template_env [ 'unfold1_margin' ] = related_plugin.render (request)
-
     # more general variables expected in the template
     # 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) 
 
     template_env [ 'topmenu_items' ] = topmenu_items('plugin', request) 
     template_env [ 'username' ] = the_user (request) 
 
-    # we don't have anythong asynchroneous, and manifold.js is not loaded
-#    page.exec_queue_asynchroneously ()
+    # run queries when we have any
+    page.expose_queries ()
 
     # 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)
 
     # 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)
-    return render_to_response ('view-plugin.html',template_env,
+    return render_to_response ('view-unfold1.html',template_env,
                                context_instance=RequestContext(request))
                                
                                context_instance=RequestContext(request))