blob: d0fda115290a27df8895515698483858c8a68386 [file] [log] [blame]
Tony Mack336e0f92014-11-30 15:53:08 -05001import os
2import datetime
3from collections import defaultdict
4from django.db import models
5from django.db.models import F, Q
6from core.models import PlCoreBase,User,Controller
7from core.models import Controller,ControllerLinkManager,ControllerLinkDeletionManager
8
Tony Macka7dbd422015-01-05 22:48:11 -05009class ControllerUser(PlCoreBase):
Tony Mack336e0f92014-11-30 15:53:08 -050010 objects = ControllerLinkManager()
11 deleted_objects = ControllerLinkDeletionManager()
12
13 user = models.ForeignKey(User,related_name='controllerusers')
14 controller = models.ForeignKey(Controller,related_name='controllersusers')
15 kuser_id = models.CharField(null=True, blank=True, max_length=200, help_text="Keystone user id")
16
17 def __unicode__(self): return u'%s %s' % (self.controller, self.user)
18
19 @staticmethod
20 def select_by_user(user):
21 if user.is_admin:
Tony Macka7dbd422015-01-05 22:48:11 -050022 qs = ControllerUser.objects.all()
Tony Mack336e0f92014-11-30 15:53:08 -050023 else:
24 users = Users.select_by_user(user)
Tony Macka7dbd422015-01-05 22:48:11 -050025 qs = ControllerUser.objects.filter(user__in=users)
Tony Mack336e0f92014-11-30 15:53:08 -050026 return qs