X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fsliceresourceview.py;h=9db52c0961e3c2f7ba168704c741bced44aef1ff;hb=5c5d6689dc9c7d0fda4fae3ceb14a8c738a7cfa2;hp=4f11e5d81ab813bbbd2ea78914f873f0c8bf83c2;hpb=3a4d4c9c68d6e4fcf6cac26a9d7a78b2bddb89c5;p=unfold.git diff --git a/portal/sliceresourceview.py b/portal/sliceresourceview.py index 4f11e5d8..9db52c09 100644 --- a/portal/sliceresourceview.py +++ b/portal/sliceresourceview.py @@ -22,6 +22,12 @@ from plugins.googlemap import GoogleMap from plugins.filter_status import FilterStatusPlugin from plugins.testbeds import TestbedsPlugin from plugins.scheduler2 import Scheduler2 + +# Bristol plugin +from plugins.univbrisfoam import UnivbrisFoam +from plugins.univbrisfv import UnivbrisFv +from plugins.univbrisfvf import UnivbrisFvf + from plugins.columns_editor import ColumnsEditor from plugins.sladialog import SlaDialog from plugins.lists.simplelist import SimpleList @@ -42,6 +48,11 @@ class SliceResourceView (LoginRequiredView, ThemeView): metadata = page.get_metadata() page.expose_js_metadata() + # Bristol + univbrisfoam_query=Query().get('ofelia-bristol-of:resource').select('urn') + page.enqueue_query(univbrisfoam_query) + + resource_md = metadata.details_by_object('resource') resource_fields = [column['name'] for column in resource_md['column']] @@ -60,6 +71,7 @@ class SliceResourceView (LoginRequiredView, ThemeView): 'lease.resource', 'lease.start_time', 'lease.end_time', + 'lease.lease_id', # Important for NITOS identify already existing leases #'user.user_hrn', #'application.measurement_point.counter' ) @@ -75,11 +87,11 @@ class SliceResourceView (LoginRequiredView, ThemeView): #page.enqueue_query(query_resource_all) # leases query - lease_md = metadata.details_by_object('lease') - lease_fields = [column['name'] for column in lease_md['column']] + #lease_md = metadata.details_by_object('lease') + #lease_fields = [column['name'] for column in lease_md['column']] - query_lease_all = Query.get('lease').select(lease_fields) - page.enqueue_query(query_lease_all) + #query_lease_all = Query.get('lease').select(lease_fields) + #page.enqueue_query(query_lease_all) # -------------------------------------------------------------------------- # ALL RESOURCES LIST @@ -230,8 +242,53 @@ class SliceResourceView (LoginRequiredView, ThemeView): apply = ApplyPlugin( page = page, domid = "apply", - query = main_query #sq_resource, + query = main_query, + username = request.user, + ) + + # Bristol plugin + univbrisfoamlist = UnivbrisFoam( + page = page, + title = 'univbris_foam_ports_selection', + domid = 'univbris_foam_ports_selection', + query = univbrisfoam_query, + query_all = univbrisfoam_query, + checkboxes = False, + datatables_options = { + 'iDisplayLength': 10, + 'bLengthChange' : True, + 'bAutoWidth' : True, + }, ) + + #plugin which manages the different flowspaces that the user creates, and also sends flowspaces to manifold + univbrisfvlist = UnivbrisFv( + page = page, + title = 'univbris_flowspace_selection', + domid = 'univbris_flowspace_selection', + query = None, + query_all = None, + datatables_options = { + 'iDisplayLength': 5, + 'bLengthChange' : True, + 'bAutoWidth' : True, + }, + ) + + #plugin which allows the definition of a single flowspace + univbrisfvform = UnivbrisFvf( + page = page, + title = 'univbris_flowspace_form', + domid = 'univbris_flowspace_form', + query = None, + query_all = None, + datatables_options = { + 'iDisplayLength': 3, + 'bLengthChange' : True, + 'bAutoWidth' : True, + }, + ) + # -------------------------------------------------------------------------- @@ -254,6 +311,8 @@ class SliceResourceView (LoginRequiredView, ThemeView): account_query = Query().get('local:account').select('user_id','platform_id','auth_type','config') platform_details = execute_query(self.request, platform_query) account_details = execute_query(self.request, account_query) + + # XXX When session has expired, this is None and thus not iterable for platform_detail in platform_details: for account_detail in account_details: if platform_detail['platform_id'] == account_detail['platform_id']: @@ -280,6 +339,13 @@ class SliceResourceView (LoginRequiredView, ThemeView): template_env['map_resources'] = map_resources.render(self.request) template_env['scheduler'] = resources_as_scheduler2.render(self.request) + + # Bristol plugin + template_env['resources'] = univbrisfoamlist.render(self.request) + template_env['flowspaces']= univbrisfvlist.render(self.request) + template_env['flowspaces_form']= univbrisfvform.render(self.request) + + # template_env['pending_resources'] = pending_resources.render(self.request) template_env['sla_dialog'] = '' # sla_dialog.render(self.request) template_env["theme"] = self.theme