kers/events/models.py

36 lines
1 KiB
Python
Raw Normal View History

2020-07-21 20:24:45 +00:00
from django.db import models
2020-07-21 22:51:40 +00:00
from users.models import CustomUser
2020-07-21 20:24:45 +00:00
class Event(models.Model):
2020-07-22 02:08:30 +00:00
MORNING, AFTERNOON, EVENING = range(3)
TIME_SLOTS = {
MORNING: "Voormiddag",
AFTERNOON: "Namiddag",
EVENING: "Avond",
}
date = models.DateField()
time = models.IntegerField(choices=TIME_SLOTS.items(), default=MORNING)
capacity = models.IntegerField(default=6)
def __str__(self):
return f"{self.date} {self.TIME_SLOTS[self.time]}"
2020-07-21 20:24:45 +00:00
class EventRegistration(models.Model):
2020-07-22 02:08:30 +00:00
INTERESTED = "I"
ADMITTED = "A"
DENIED = "D"
2020-07-21 20:24:45 +00:00
REGISTRATION_STATE = (
2020-07-22 02:08:30 +00:00
(INTERESTED, "Interested"),
(ADMITTED, "Admitted"),
(DENIED, "Denied"),
2020-07-21 20:24:45 +00:00
)
2020-07-22 02:02:13 +00:00
event = models.ForeignKey(Event, on_delete=models.CASCADE)
user = models.ForeignKey(CustomUser, on_delete=models.CASCADE)
2020-07-21 23:44:14 +00:00
state = models.CharField(max_length=1, choices=REGISTRATION_STATE)
2020-07-22 02:02:13 +00:00
def __str__(self):
2020-07-22 02:13:20 +00:00
return f"Reservation[{self.user.username}:{self.event.date}:{self.state}]"