from django.db import models
import uuid
from django.contrib.auth import get_user_model

Users = get_user_model()


# Create your models here.
class ActivityLogs(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    created_at = models.DateTimeField(auto_now_add=True)
    user = models.ForeignKey(
        Users,
        on_delete=models.SET_NULL,
        related_name="user_activity_logs",
        null=True,
        blank=True,
    )
    action = models.CharField(max_length=525)

    def __str__(self):
        if self.user:
            return f"{self.user.email} - {self.action}"

        return self.action

    @classmethod
    def record_activity(cls, action, user=None):
        return cls.objects.create(user=user, action=action)
