from django.db import models


class Suggester(models.Model):
    name = models.CharField(max_length=254)
    email = models.EmailField(max_length=254, unique=True)

    def __str__(self):
        return self.email


class Author(models.Model):
    name = models.CharField(max_length=254)
    slug = models.CharField(max_length=24, unique=True)

    def __str__(self):
        return self.name


class Quote(models.Model):
    text = models.TextField()
    author = models.ForeignKey(
        Author, on_delete=models.CASCADE)
    suggester = models.ForeignKey(
        Suggester, on_delete=models.SET_NULL, null=True, blank=True)

    def __str__(self):
        return self.text


class Suggestion(models.Model):
    text = models.TextField()
    context = models.TextField(null=True, blank=True)
    author_name = models.CharField(max_length=254)
    suggester = models.ForeignKey(
        Suggester, on_delete=models.CASCADE)

    def __str__(self):
        return self.text