rename render_env -> template_env
[myslice.git] / engine / views.py
index b67197d..7758ac6 100644 (file)
@@ -6,59 +6,41 @@ from django.template.loader import render_to_string
 from django.shortcuts import render_to_response
 
 from plugins.verticallayout import VerticalLayout
+from plugins.tabs import Tabs
 from plugins.simplelist import SimpleList
 from plugins.slicelist import SliceList
+from plugins.raw import Raw
 
-from myslice.viewutils import topmenu_items, the_user, hard_wired_slice_names
+from myslice.viewutils import topmenu_items, the_user
+from myslice.viewutils import hard_wired_slice_names, hard_wired_list, lorem_p, lorem
 
 def test_plugin_view (request):
     
     # variables that will get passed to this template
     template_env = {}
     
-    # having html tags right here is not a real use case
-    hard_wired_list=[]
-    hard_wired_list.append("this hard-wired list")
-    hard_wired_list.append("is defined")
-    hard_wired_list.append("in plugins.simplelist.py")
-    hard_wired_list.append("which in turn relies on")
-    hard_wired_list.append("template widget-template.html")
-    hard_wired_list.append("while it should of course")
-    hard_wired_list.append("instead issue a query")
-    hard_wired_list.append("and fill the DOM in js from there")
-    hard_wired_list.append("it would however maybe make sense")
-    hard_wired_list.append("to offer the option to 'datatablify'")
-    hard_wired_list.append("the list from the python code")
-    hard_wired_list.append("just like a standard plugin can be set as visible or not")
-    hard_wired_list.append("")    
-    hard_wired_list.append("OTOH and IMHO, there should be two separate and explicit subclasses of SimpleList for slices or testbeds")
-
-    plugin_main1 = SimpleList (list=hard_wired_list, 
-                               header='Hard wired', 
-                               foo='the value for foo',
-                               with_datatables=True)
-    plugin_main2 = SimpleList (hidable=True, 
-                               list=hard_wired_slice_names,
-                               headers='Slices in main content')
-    layout = VerticalLayout (hidable=True, visible=True,
-                             sons=[plugin_main1, plugin_main2]
-                             )
-#    layout.inspect_request (request,"before first render")
-    content_main = layout.render (request)
-#    layout.inspect_request (request,"after first render")
-    # this will be rendered as the main content - as per view-plugin.html and thus layout-myslice.html
-    template_env [ 'content_main' ] = content_main
+    main_plugin = \
+        VerticalLayout ( sons = [ SimpleList (list=hard_wired_list, 
+                                              header='Hard wired', 
+                                              foo='the value for foo',
+                                              with_datatables=True),
+                                  Tabs (sons = [ Raw (html= 3*lorem_p),
+                                                 SliceList(list=hard_wired_slice_names),
+                                                 Raw (html=lorem) ]),
+                                  SimpleList (list=hard_wired_slice_names,
+                                              headers='Slices in main content') ] )
+    # define 'content_main' to the template engine
+    template_env [ 'content_main' ] = main_plugin.render(request)
 
     ##########
     # lacks a/href to /slice/%s
-    plugin_related = SliceList (visible=True, 
+    related_plugin = SliceList (visible=True, 
                                 hidable=True,
                                 with_datatables='yes', 
                                 list=hard_wired_slice_names, 
                                 header='Slices' )
-    content_related = plugin_related.render (request)
     # likewise but on the side view
-    template_env [ 'content_related' ] = content_related
+    template_env [ 'content_related' ] = related_plugin.render (request)
 
     # more general variables expected in the template
     template_env [ 'title' ] = 'Test Plugin View' 
@@ -67,7 +49,7 @@ def test_plugin_view (request):
 
     # request.plugin_prelude holds a summary of the requirements() for all plugins
     # define {js,css}_{files,chunks}
-    prelude_env = request.plugin_prelude.render_env()
+    prelude_env = request.plugin_prelude.template_env()
     print 'prelude_env',prelude_env
     template_env.update(prelude_env)