from django.db import models

from apps.core.models import TimeStampedModel


class Event(TimeStampedModel):
    """Exhibition or event."""

    name_en = models.CharField(max_length=200)
    name_ar = models.CharField(max_length=200, blank=True)
    description_en = models.TextField(blank=True)
    description_ar = models.TextField(blank=True)
    cover = models.ImageField(upload_to="events/covers/", null=True, blank=True)
    logo = models.ImageField(upload_to="events/logos/", null=True, blank=True)
    start_date = models.DateTimeField()
    end_date = models.DateTimeField()
    venue_name = models.CharField(max_length=200, blank=True)
    address = models.TextField(blank=True)
    latitude = models.DecimalField(max_digits=9, decimal_places=6, null=True, blank=True)
    longitude = models.DecimalField(max_digits=9, decimal_places=6, null=True, blank=True)

    # M2M stores participating
    stores = models.ManyToManyField("stores.Store", related_name="events", blank=True)

    class Meta:
        db_table = "events"

    def __str__(self):
        return self.name_en
