Added resources to the platform description, fixed link in querytable for the init_ke...
[myslice.git] / portal / platformsview.py
index 7c83d94..8c7640b 100644 (file)
@@ -1,61 +1,53 @@
-from django.views.generic.base   import TemplateView
-
 from manifold.core.query         import Query
 from unfold.page                 import Page
 
-from myslice.viewutils           import topmenu_items, the_user
+from unfold.loginrequired       import FreeAccessView
+from ui.topmenu                  import topmenu_items_live, the_user
 
-from plugins.hazelnut            import Hazelnut
+from plugins.querytable          import QueryTable
 
 # View for platforms
-class PlatformsView(TemplateView):
+class PlatformsView(FreeAccessView):
     template_name = "platforms.html"
 
     def get_context_data(self, **kwargs):
         page = Page(self.request)
-
-        #network_query  = Query().get('local:platform').filter_by('disabled', '==', '0').select('platform','platform_longname','gateway_type')
-        network_query  = Query().get('local:platform').select('platform','platform_longname','gateway_type')
-        page.enqueue_query(network_query)
+        page.add_js_files  ( [ "js/common.functions.js" ] )
+        platform_query  = Query().get('local:platform').filter_by('disabled', '==', '0').select('platform','platform_longname','gateway_type')
+        #platform_query  = Query().get('local:platform').select('platform','platform_longname','gateway_type')
+        page.enqueue_query(platform_query)
 
         page.expose_js_metadata()
-        page.expose_queries()
-        networklist = Hazelnut(
+        platformlist = QueryTable(
             page  = page,
             title = 'List',
             domid = 'checkboxes',
             # this is the query at the core of the slice list
-            query = network_query,
-            query_all = network_query,
+            query = platform_query,
+            query_all = platform_query,
             checkboxes = False,
-            datatables_options = {
-            # for now we turn off sorting on the checkboxes columns this way
-            # this of course should be automatic in hazelnut
-            'aoColumns'      : [None, None, None, None, {'bSortable': False}],
-            'iDisplayLength' : 25,
-            'bLengthChange'  : True,
-            },
+            init_key   = 'platform',
+            datatables_options = { 
+                'iDisplayLength': 10,
+                'bLengthChange' : True,
+                'bAutoWidth'    : True,
+                },
         )
-#
-#        networklist = SimpleList(
-#            title = None,
-#            page  = page,
-#            key   = 'platform',
-#            query = network_query,
-#        )
 
         context = super(PlatformsView, self).get_context_data(**kwargs)
         context['person']   = self.request.user
-        context['networks'] = networklist.render(self.request)
+        context['platforms'] = platformlist.render(self.request)
 
         # XXX This is repeated in all pages
         # more general variables expected in the template
         context['title'] = 'Platforms connected to MySlice'
         # the menu items on the top
-        context['topmenu_items'] = topmenu_items('Platforms', self.request)
+        context['topmenu_items'] = topmenu_items_live('Platforms', page)
         # so we can sho who is logged
         context['username'] = the_user(self.request)
 
         context.update(page.prelude_env())
 
+        context['layout_1_or_2']="layout-unfold2.html" if not context['username'] else "layout-unfold1.html"
+
         return context