blob: 5228381e6232a214b0a3f13e6c961593a1e2c77f [file] [log] [blame]
Scott Baker2c3cb642014-05-19 17:55:56 -07001import os
2from django.db import models
Scott Bakerecc55ac2015-02-17 13:34:32 -08003from core.models import PlCoreBase, Controller, Deployment
Tony Mackd84b1ff2015-03-09 13:03:56 -04004from core.models.plcorebase import StrippedCharField
Scott Bakereef5a6b2014-12-19 16:41:12 -08005from core.models.site import ControllerLinkManager, ControllerLinkDeletionManager
Scott Baker2c3cb642014-05-19 17:55:56 -07006from django.contrib.contenttypes import generic
7
8class DashboardView(PlCoreBase):
Tony Mackd84b1ff2015-03-09 13:03:56 -04009 name = StrippedCharField(max_length=200, unique=True, help_text="Name of the View")
10 url = StrippedCharField(max_length=1024, help_text="URL of Dashboard")
Scott Baker75930d82014-12-22 17:43:25 -080011 controllers = models.ManyToManyField(Controller, blank=True, related_name="dashboardviews", through='ControllerDashboardView')
Scott Bakerb8f3cab2015-01-18 16:33:30 -080012 enabled = models.BooleanField(default=True)
Scott Bakerecc55ac2015-02-17 13:34:32 -080013 deployments = models.ManyToManyField(Deployment, blank=True, null=True, related_name="dashboardviews", help_text="Deployments that should be included in this view")
Scott Baker2c3cb642014-05-19 17:55:56 -070014
15 def __unicode__(self): return u'%s' % (self.name)
16
Scott Bakera6a0c772014-12-22 17:35:34 -080017class ControllerDashboardView(PlCoreBase):
Scott Bakereef5a6b2014-12-19 16:41:12 -080018 objects = ControllerLinkManager()
19 deleted_objects = ControllerLinkDeletionManager()
Scott Bakerf0f50732014-12-23 09:39:06 -080020 controller = models.ForeignKey(Controller, related_name='controllerdashboardviews')
21 dashboardView = models.ForeignKey(DashboardView, related_name='controllerdashboardviews')
Scott Bakerb8f3cab2015-01-18 16:33:30 -080022 enabled = models.BooleanField(default=True)
Scott Bakereef5a6b2014-12-19 16:41:12 -080023
Tony Mackd84b1ff2015-03-09 13:03:56 -040024 url = StrippedCharField(max_length=1024, help_text="URL of Dashboard")
Scott Bakereef5a6b2014-12-19 16:41:12 -080025
26
27