from django.contrib.auth.models import AbstractUser
from django.db import models

class CustomUser(AbstractUser):
    prefix = models.CharField(max_length=100, blank=True, null=True, help_text="Prefijo como Dr., Inspector, etc.")    
    def __int__(self):
        return self.id

    # def __str__(self):
    #     #return self.email
    #     return self.last_name + ' ' + self.first_name
    # def apellido_y_nombre(self):
    #     return self.last_name + ', ' + self.first_name
    # apellido_y_nombre.short_description = "Apellido y Nombre"

    # nombre_completo = property(apellido_y_nombre)
    def __str__(self):
        # Si el prefijo está definido, se incluye en el nombre completo
        full_name = f"{self.prefix} {self.last_name} {self.first_name}" if self.prefix else f"{self.last_name} {self.first_name}"
        return full_name
    
    def apellido_y_nombre(self):
        return f"{self.prefix} {self.last_name}, {self.first_name}" if self.prefix else f"{self.last_name}, {self.first_name}"
    apellido_y_nombre.short_description = "Apellido y Nombre"

    nombre_completo = property(apellido_y_nombre)

    class Meta:
        ordering = ('last_name',)