X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fsliceresourceview.py;h=64a151b2ebe1be9fb5e38e276ff0df0a6b117fdd;hb=c99f1bd98ff355bd3f63b4929739ea5bd92cd6a3;hp=7d4ab089ba3d6b36420a9cedb2cdcb69fb781c8d;hpb=c6e7d96ca337b7227840b574027b10a00580cb0e;p=unfold.git diff --git a/portal/sliceresourceview.py b/portal/sliceresourceview.py index 7d4ab089..64a151b2 100644 --- a/portal/sliceresourceview.py +++ b/portal/sliceresourceview.py @@ -18,6 +18,8 @@ from plugins.googlemap import GoogleMap from plugins.queryupdater import QueryUpdater from plugins.testbeds import TestbedsPlugin from plugins.scheduler2 import Scheduler2 +from plugins.columns_editor import ColumnsEditor +from plugins.sladialog import SlaDialog from myslice.theme import ThemeView @@ -49,7 +51,7 @@ class SliceResourceView (LoginRequiredView, ThemeView): 'resource.hostname', 'resource.type', 'resource.network_hrn', 'lease.urn', - 'user.user_hrn', + #'user.user_hrn', #'application.measurement_point.counter' ) # for internal use in the querytable plugin; @@ -67,13 +69,11 @@ class SliceResourceView (LoginRequiredView, ThemeView): lease_md = metadata.details_by_object('lease') lease_fields = [column['name'] for column in lease_md['column']] - query_all_lease = Query.get('lease').select(lease_fields) - page.enqueue_query(query_all_lease) - - print "!!!!!!!!!! query leases = ",query_all_lease + query_lease_all = Query.get('lease').select(lease_fields) + page.enqueue_query(query_lease_all) # -------------------------------------------------------------------------- - # RESOURCES LIST + # ALL RESOURCES LIST # resources as a list using datatable plugin list_resources = QueryTable( @@ -91,6 +91,39 @@ class SliceResourceView (LoginRequiredView, ThemeView): }, ) + + # -------------------------------------------------------------------------- + # RESERVED RESOURCES LIST + # resources as a list using datatable plugin + + list_reserved_resources = QueryTable( + page = page, + domid = 'resources-reserved-list', + title = 'List view', + query = sq_resource, + query_all = sq_resource, + init_key = "urn", + checkboxes = True, + datatables_options = { + 'iDisplayLength': 25, + 'bLengthChange' : True, + 'bAutoWidth' : True, + }, + ) + + # -------------------------------------------------------------------------- + # COLUMNS EDITOR + # list of fields to be applied on the query + # this will add/remove columns in QueryTable plugin + + filter_column_editor = ColumnsEditor( + page = page, + query = sq_resource, + query_all = query_resource_all, + title = "Select Columns", + domid = 'select-columns', + ) + # -------------------------------------------------------------------------- # RESOURCES MAP # the resources part is made of a Tabs (Geographic, List), @@ -111,7 +144,7 @@ class SliceResourceView (LoginRequiredView, ThemeView): # center on Paris latitude = 49., longitude = 9, - zoom = 4, + zoom = 8, ) # -------------------------------------------------------------------------- @@ -124,8 +157,9 @@ class SliceResourceView (LoginRequiredView, ThemeView): title = 'Scheduler', # this is the query at the core of the slice list query = sq_resource, + query_lease = sq_lease, query_all_resources = query_resource_all, - query_lease = query_all_lease, + query_all_leases = query_lease_all, ) # -------------------------------------------------------------------------- @@ -135,11 +169,12 @@ class SliceResourceView (LoginRequiredView, ThemeView): page = page, title = 'Pending operations', query = main_query, - togglable = True, + togglable = False, # start turned off, it will open up itself when stuff comes in toggled = False, domid = 'pending', outline_complete = True, + username = request.user, ) # -------------------------------------------------------------------------- @@ -168,12 +203,32 @@ class SliceResourceView (LoginRequiredView, ThemeView): }, ) + # -------------------------------------------------------------------------- + # SLA View and accept dialog + + sla_dialog = SlaDialog( + page = page, + title = 'sla dialog', + query = main_query, + togglable = False, + # start turned off, it will open up itself when stuff comes in + toggled = True, + domid = 'sla_dialog', + outline_complete = True, + username = request.user, + ) + template_env = {} template_env['list_resources'] = list_resources.render(self.request) +# template_env['list_reserved_resources'] = list_reserved_resources.render(self.request) + + template_env['columns_editor'] = filter_column_editor.render(self.request) + template_env['filter_testbeds'] = filter_testbeds.render(self.request) template_env['map_resources'] = map_resources.render(self.request) template_env['scheduler'] = resources_as_scheduler2.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 template_env["username"] = request.user template_env["slice"] = slicename