+import json
+
from django.template import RequestContext
from django.shortcuts import render_to_response
+from django.views.generic.base import TemplateView
+from django.http import HttpResponse
+from django.shortcuts import render
from manifold.core.query import Query, AnalyzedQuery
from manifoldapi.manifoldapi import execute_query
-import json
-from django.views.generic.base import TemplateView
from unfold.loginrequired import LoginRequiredView
-from django.http import HttpResponse
-from django.shortcuts import render
-
from unfold.page import Page
from myslice.configengine import ConfigEngine
from plugins.univbrisfvf import UnivbrisFvf
from plugins.univbrisfvfo import UnivbrisFvfo
from plugins.univbristopo import UnivbrisTopo
-from plugins.univbrisvtam import UnivbrisVtam as UnivbrisVtamPlugin
+from plugins.univbrisvtam import UnivbrisVtam as UnivbrisVtamPlugin
from plugins.univbrisvtamform import UnivbrisVtamForm
from plugins.columns_editor import ColumnsEditor
from plugins.lists.simplelist import SimpleList
from myslice.theme import ThemeView
+from myslice.settings import logger
class SliceResourceView (LoginRequiredView, ThemeView):
template_name = "slice-resource-view.html"
user_fields = ['user_hrn'] # [column['name'] for column in user_md['column']]
query_resource_all = Query.get('resource').select(resource_fields)
- page.enqueue_query(query_resource_all)
+ #page.enqueue_query(query_resource_all)
# leases query
#lease_md = metadata.details_by_object('lease')
slice_md = metadata.details_by_object('slice')
slice_fields = [column['name'] for column in slice_md['column']]
- print "SLICE RES VIEW fields = %s" % slice_fields
+ logger.debug("SLICE RES VIEW fields = {}".format(slice_fields))
# TODO The query to run is embedded in the URL
# Example: select slice_hrn, resource.urn, lease.resource, lease.start_time, lease.end_time from slice where slice_hrn == "ple.upmc.myslicedemo"
main_query = Query.get('slice').filter_by('slice_hrn', '=', slicename)
main_query.select(slice_fields)
+
+ # Columns shown by default in Query_table plugin
+ page.expose_js_var("QUERYTABLE_MAP","{'Resource name': 'hostname', 'Type': 'type', 'Facility': 'facility_name','Testbed': 'testbed_name', 'Status':'boot_state'}")
+
+ # Columns checked by default in Columns_selector plugin
+ query_default_fields = ['hostname', 'type', 'facility_name', 'testbed_name', 'boot_state']
+
+ QUERYTABLE_MAP = {
+ 'hostname' : 'Resource name',
+ 'type' : 'Type',
+ 'facility_name' : 'Facility',
+ 'testbed_name' : 'Testbed',
+ 'boot_state' : 'Status',
+ }
+
+
# # SLICE
# 'slice_hrn',
# # - The record key is needed otherwise the storage of records
# ALL RESOURCES LIST
# resources as a list using datatable plugin
- list_resources = QueryTable(
- page = page,
- domid = 'resources-list',
- title = 'List view',
- query = sq_resource,
- query_all = query_resource_all,
- init_key = "urn",
- checkboxes = True,
+ list_resources = QueryTable(
+ page = page,
+ domid = 'resources-list',
+ title = 'List view',
+ query = sq_resource,
+ query_all = query_resource_all,
+ mapping = QUERYTABLE_MAP,
+ default_fields = query_default_fields,
+ init_key = "urn",
+ checkboxes = True,
datatables_options = {
'iDisplayLength': 25,
'bLengthChange' : True,
page = page,
query = sq_resource,
query_all = query_resource_all,
+ default_fields = query_default_fields,
title = "Select Columns",
domid = 'select-columns',
)
page = page,
domid = "filter-status",
query = sq_resource,
+ query_lease = sq_lease,
)
apply = ApplyPlugin(
page = page,