from django.db import models
from django.utils import timezone

from ...conf import settings


class Subscription(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    thread = models.ForeignKey("Thread", on_delete=models.CASCADE)
    category = models.ForeignKey("misago_categories.Category", on_delete=models.CASCADE)

    last_read_on = models.DateTimeField(default=timezone.now)
    send_email = models.BooleanField(default=False)

    class Meta:
        indexes = [
            models.Index(fields=["send_email", "last_read_on"]),
        ]
