# -*- coding: utf-8 -*- # # ITerativ GmbH # http://www.iterativ.ch/ # # Copyright (c) 2019 ITerativ GmbH. All rights reserved. # # Created on 2019-10-08 # @author: chrigu from django.utils.translation import ugettext_lazy as _ from django.db import models from users.managers import RoleManager from users.models import Role, User class LicenseType(models.Model): name = models.CharField(_('License name'), max_length=255, blank=False, null=False) for_role = models.ForeignKey(Role, blank=False, null=False, on_delete=models.CASCADE) key = models.CharField(max_length=128, blank=False, null=False) active = models.BooleanField(_('License active'), default=False) description = models.TextField(_('Description'), default="") def is_teacher_license(self): return self.for_role.key == RoleManager.TEACHER_KEY class License(models.Model): license_type = models.ForeignKey(LicenseType, blank=False, null=False, on_delete=models.CASCADE) licensee = models.ForeignKey(User, blank=False, null=True, on_delete=models.CASCADE)