from django.utils import timezone
from django.db import models


class TimeStamped(models.Model):
    created_at = models.DateTimeField(default=timezone.now, null=True)
    updated_at = models.DateTimeField(auto_now=True, null=True)
    is_deleted = models.BooleanField(default=False, null=True)

    class Meta:
        abstract = True


class Category(TimeStamped):
    name = models.TextField()


class NewsEvent(TimeStamped):
    title = models.CharField(max_length=150, null=False)
    description = models.TextField(null=False)
    file_path = models.CharField(max_length=150, null=True, blank=True)
    event_date = models.DateField(null=True)


class Album(TimeStamped):
    name = models.CharField(max_length=150)


class PhotoGallery(TimeStamped):
    title = models.CharField(max_length=150)
    description = models.TextField(null=True, blank=True)
    image_path = models.CharField(max_length=150, null=True, blank=True)

    album = models.ForeignKey(Album, on_delete=models.PROTECT, null=True, blank=True, related_name='PhotoGallery')


class VideoGallery(TimeStamped):
    title = models.CharField(max_length=150)
    description = models.TextField(null=True, blank=True)
    video_path = models.CharField(max_length=150, null=True, blank=True)



class Contact(TimeStamped):
    name = models.CharField(max_length=150, null=True, blank=True)
    designation = models.CharField(max_length=150, null=True, blank=True)
    contact_type = models.CharField(max_length=150, null=True, blank=True)
    fax_no = models.CharField(max_length=150, null=True, blank=True)
    std_code = models.CharField(max_length=150, null=True, blank=True)
    contact_no = models.CharField(max_length=150, null=True, blank=True)
    email = models.CharField(max_length=150, null=True, blank=True)
    address = models.CharField(max_length=250, null=True, blank=True)


class About(TimeStamped):
    title = models.TextField()
    content = models.TextField()


class WelfareSchemeProject(TimeStamped):
    title = models.TextField()
    content = models.TextField()
    file_path = models.CharField(max_length=150, null=True, blank=True)

