from django.db import models

# Create your models here.

class ArduinoPrueba(models.Model):
    """Model definition for ArduinoPrueba."""

    # TODO: Define fields here
    fecha = models.DateTimeField(auto_now=False, auto_now_add=False)
    temp = models.FloatField()
    hum = models.FloatField()
    obs = models.TextField()

    class Meta:
        """Meta definition for ArduinoPrueba."""

        verbose_name = 'Arduino Prueba'
        verbose_name_plural = 'Arduino Pruebas'
        get_latest_by = 'fecha'
        ordering = ['-fecha']

    def __str__(self):
        """Unicode representation of ArduinoPrueba."""
        return "Arduino dato {}".format(self.id)

catedras = (('Informática', 'Informática'),
('Bioestadística y Diseño Experimental', 'Bioestadística y Diseño Experimental'),
            ('Estudiante', 'Estudiante'),
            ('Agroclimatología', 'Agroclimatología'))

class Integrante(models.Model):
    """Model definition for Integrante."""

    orden = models.IntegerField()
    nombres = models.CharField(max_length=50)
    apellidos = models.CharField(max_length=50)
    foto = models.ImageField(upload_to='integrantes', height_field=None,
                        width_field=None, max_length=None, default='404.jpg')
    funcion = models.CharField(max_length=50)
    catedra = models.CharField(max_length=50, choices=catedras)
    campo1 = models.CharField(max_length=50, blank=True)
    campo2 = models.CharField(max_length=50, blank=True)
    campo3 = models.CharField(max_length=50, blank=True)
    correo = models.EmailField(max_length=254)

    class Meta:
        """Meta definition for Integrante."""

        verbose_name = 'Integrante'
        verbose_name_plural = 'Integrantes'
        ordering = ['orden']

    def __str__(self):
        """Unicode representation of Integrante."""
        return "Integrante {} {}".format(self.apellidos, self.nombres)


class Publicacion(models.Model):
    """Model definition for Publicacion."""

    autores = models.CharField(max_length=100)
    titulo = models.CharField(max_length=100)
    lugar = models.CharField(max_length=200)
    archivo = models.FileField(upload_to='publicaciones', max_length=100)

    class Meta:
        """Meta definition for Publicacion."""

        verbose_name = 'Publicacion'
        verbose_name_plural = 'Publicacions'

    def __str__(self):
        """Unicode representation of Publicacion."""
        return "Publicacion de {}".format(self.autores)


class Archivo(models.Model):
    nombre = models.CharField(max_length=50, help_text="Nombre orientativo de que es el archivo")
    archivo = models.FileField(upload_to='archivos', max_length=100)

    class Meta:
        verbose_name = "Archivo"
        verbose_name_plural = "Archivos"

    def __str__(self):
        return "Archivo de {}".format(self.nombre)
