You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kompass/jdav_web/members/models/emergency_contact.py

28 lines
1.1 KiB
Python

from django.db import models
from django.utils.translation import gettext_lazy as _
from contrib.models import CommonModel
from members.rules import may_view, may_change, may_delete
from contrib.rules import has_global_perm
from .base import ContactWithPhoneNumber
from .member import Member
class EmergencyContact(ContactWithPhoneNumber):
"""
Emergency contact of a member
"""
member = models.ForeignKey(Member, verbose_name=_('Member'), on_delete=models.CASCADE)
email = models.EmailField(max_length=100, default='', blank=True)
def __str__(self):
return str(self.member)
class Meta(CommonModel.Meta):
verbose_name = _('Emergency contact')
verbose_name_plural = _('Emergency contacts')
rules_permissions = {
'add_obj': may_change | has_global_perm('members.change_global_member'),
'view_obj': may_view | has_global_perm('members.view_global_member'),
'change_obj': may_change | has_global_perm('members.change_global_member'),
'delete_obj': may_delete | has_global_perm('members.delete_global_member'),
}