hide dashboard views that are disabled from customize tab
[plstackapi.git] / planetstack / core / dashboard / views / view_common.py
index 1c74f73..e2b28a4 100644 (file)
@@ -4,7 +4,7 @@ from django.views.generic import TemplateView, View
 import datetime
 from pprint import pprint
 import json
-from syndicate.models import *
+from syndicate_storage.models import *
 from core.models import *
 from hpc.models import ContentProvider
 from operator import attrgetter
@@ -50,6 +50,9 @@ def getDashboards(user):
 
     unused_dashboard_names = []
     for dashboardView in DashboardView.objects.all():
+        # do not show disabled dashboard views
+        if not dashboardView.enabled:
+            continue
         if not dashboardView.name in dashboard_names:
             unused_dashboard_names.append(dashboardView.name)
 
@@ -61,21 +64,26 @@ def getSliceInfo(user):
     userSliceInfo = []
     for entry in slicePrivs:
 
-        slicename = Slice.objects.get(id=entry.slice.id).name
-        slice = Slice.objects.get(name=Slice.objects.get(id=entry.slice.id).name)
+        slice = Slice.objects.filter(id=entry.slice.id)
+        if not slice:
+            # the privilege is to a slice that doesn't exist
+            print "data model consistency problem, slice %s doesn't exist" % entry.slice.id
+            continue
+        slice = slice[0]
+        slicename = slice.name
         sliverList=Sliver.objects.all()
         sites_used = {}
         for sliver in slice.slivers.all():
              #sites_used['deploymentSites'] = sliver.node.deployment.name
              # sites_used[sliver.image.name] = sliver.image.name
-             sites_used[sliver.node.site.name] = sliver.numberCores
+             sites_used[sliver.node.site_deployment.site] = 1 #sliver.numberCores
         sliceid = Slice.objects.get(id=entry.slice.id).id
         try:
             sliverList = Sliver.objects.filter(slice=entry.slice.id)
             siteList = {}
             for x in sliverList:
-               if x.node.site not in siteList:
-                  siteList[x.node.site] = 1
+               if x.node.site_deployment.site not in siteList:
+                  siteList[x.node.site_deployment.site] = 1
             slivercount = len(sliverList)
             sitecount = len(siteList)
         except:
@@ -152,7 +160,7 @@ def getCDNOperatorData(randomizeData = False, wait=True):
         new_row = {"lat": lat,
                "long": long,
                "health": 0,
-               "numNodes": int(site.nodes.count()),
+               #"numNodes": int(site.nodes.count()),
                "activeHPCSlivers": int(stats_row.get("count_hostname", 0)),     # measured number of slivers, from bigquery statistics
                "numHPCSlivers": allocated_slivers,                              # allocated number of slivers, from data model
                "siteUrl": str(site.site_url),
@@ -175,7 +183,7 @@ def getCDNOperatorData(randomizeData = False, wait=True):
 
     return new_rows
 
-def slice_increase_slivers(user, user_ip, siteList, slice, count, noAct=False):
+def slice_increase_slivers(user, user_ip, siteList, slice, image, count, noAct=False):
     sitesChanged = {}
 
     # let's compute how many slivers are in use in each node of each site
@@ -202,10 +210,9 @@ def slice_increase_slivers(user, user_ip, siteList, slice, count, noAct=False):
             sliver = Sliver(name=node.name,
                         slice=slice,
                         node=node,
-                        image = Image.objects.all()[0],
+                        image = image,
                         creator = User.objects.get(email=user),
-                        deploymentNetwork=node.deployment,
-                        numberCores =1 )
+                        deploymentNetwork=node.deployment)
             sliver.save()
 
         node.sliverCount = node.sliverCount + 1