#encoding:utf-8 from django.db import models from django.contrib.auth.models import User import datetime from django.utils import timezone def asigna_icono(extension): r = None if extension != '': r = extension if r == 'BMP' or r == 'GIF': r = '%s icol-image-1' % (extension) elif r == 'JPG' or r == 'JPEG' : r = '%s icol-images' % (extension) elif r == 'PDF': r = '%s icol-doc-pdf' % (extension) elif r == 'XLS' or r == 'XLSX' or r == 'CSV' : r = '%s icol-page-white-excel' % (extension) elif r == 'DOC' or r == 'DOCX' : r = '%s icol-page-white-word' % (extension) elif r == 'PPT' or r == 'PPTX' : r = '%s icol-page-white-powerpoint' % (extension) elif r == 'ZIP' or r == 'RAR' : r = '%s icol-compress' % (extension) elif r == 'TXT': r = '%s icol-doc-text-image' % (extension) else: r = '%s icol-stop' % (extension) return r class CatCarpetas(models.Model): nombre_carpeta = models.CharField("Nombre de la Carpeta",max_length=150) def __unicode__(self): return unicode(self.nombre_carpeta) class CatDireccion(models.Model): nombre_direccion = models.CharField("Nombre de la Direccion",max_length=250) def __unicode__(self): return unicode(self.nombre_direccion) class CatDepartamentos(models.Model): nombre_departamento = models.CharField("Nombre del Departamento", max_length=250) direccion = models.ForeignKey(CatDireccion,verbose_name="Direccion") def __unicode__(self): return unicode(self.nombre_departamento) class CatTipoUsuario(models.Model): nombre_tipo = models.CharField("Nombre del Tipo", max_length=250) def __unicode__(self): return unicode(self.nombre_tipo) class Perfiles(models.Model): usuario = models.ForeignKey(User,verbose_name="Usuario") direccion = models.ForeignKey(CatDireccion,verbose_name="Direccion") departamento = models.ForeignKey(CatDepartamentos,verbose_name="Departamento") tipo = models.ForeignKey(CatTipoUsuario, verbose_name="Tipo de Usuario") def __unicode__(self): return unicode(self.usuario) class Meta: unique_together = ['usuario'] class Documento(models.Model): archivo = models.FileField("Archivo", upload_to = 'documentos') nombre_archivo = models.CharField("Descripcion del archivo",max_length=250) #nombre_archivo = models.TextField("Descripcion del archivo") subido = models.DateTimeField(editable=False, default=timezone.now()) usuario = models.ForeignKey(User,verbose_name="Usuario") direccion = models.ForeignKey(CatDireccion,verbose_name="Direccion") departamento = models.ForeignKey(CatDepartamentos,verbose_name="Departamento") carpeta = models.ForeignKey(CatCarpetas,verbose_name="Carpeta") def __unicode__(self): return unicode(self.nombre_archivo) class Meta: ordering = ['id'] def archivo_tipo(self): r = None if self.archivo != '': r = u'%s' % (self.archivo) r = r.split('.')[1].upper() r = asigna_icono(r) return u'%s' % (r) def archivo_extension(self): r = None if self.archivo != '': r = u'%s' % (self.archivo) r = r.split('.')[1].upper() return u'%s' % (r) def reciente(self): return ((self.subido.date()) >= datetime.date.today() - datetime.timedelta(days=3))