release emploi 0.6
[auf_django_emploi.git] / auf / django / emploi / models.py
index 8fa2e92..9b97cc6 100755 (executable)
@@ -4,24 +4,24 @@ import datetime
 from django.core.files.storage import FileSystemStorage
 from tinymce import models as tinymce_models
 from django.db import models
-import settings
-
 import datamaster_modeles.models as ref
+import settings
 
 ### CONSTANTES ###
 # HELP_TEXT
 HELP_TEXT_NB_DEPENDANT = "Le nombre de personnes à charge"
-HELP_TEXT_FORMAT_DATE = "Le format de la date est AAAA-MM-JJ"
 HELP_TEXT_TAGS_ACCEPTES = "Pour le texte, les variables disponibles sont : \
                             {{ nom_candidat }} {{ prenom_candidat }} \
                             {{ offre_emploi }}. Ces champs seront \
                             automatiquement remplacés par les informations de \
                             chaque candidat."
-
+HELP_TEXT_EN_AFFICHAGE = "En cochant cette case, l'offre d'emploi sera affichée\
+                         sur le site institutionnel dès qu'elle aura le statut \
+                        'En diffusion' et ce, jusqu'à la date limite."
 
 STATUT_OFFRE_EMPLOI_CHOICES = (
     ('NOUV', 'Nouveau'),
-    ('AFFI', 'Offre d\'emploi en affichage'),
+    ('AFFI', 'En diffusion'),
     ('EVAL', 'En évaluation des candidatures'),
     ('ENTR', 'En entrevue'),
     ('TERM', 'Terminé'),
@@ -32,12 +32,14 @@ GENRE_CHOICES = (
     ('M', 'Homme'),
     ('F', 'Femme'),
 )
+
 SITUATION_CHOICES = (
     ('C', 'Célibataire'),
-    ('F', 'Conjoint de fait'),
     ('M', 'Marié'),
-    ('D', 'Divorcé'),
+    ('F', 'Conjoint de fait'),
+    ('P', 'Pacsé'),
 )
+
 STATUT_CHOICES = (
     ('NOUV', 'Nouveau'),
     ('REC', 'Recevable'),
@@ -61,24 +63,23 @@ class Metadata(models.Model):
     actif == False : objet réputé supprimé.
     """
     actif = models.BooleanField(default=True)
-    date_creation = models.DateField(auto_now_add=True,
-                        help_text=HELP_TEXT_FORMAT_DATE, )
+    date_creation = models.DateField(auto_now_add=True, )
     
     class Meta:
         abstract = True
 
 class OffreEmploi(Metadata):
     est_affiche = models.BooleanField(default=False, 
-                                    verbose_name="En affichage sur le site")
+                        verbose_name="À afficher sur le site institutionnel",
+                        help_text=HELP_TEXT_EN_AFFICHAGE)
     statut = models.CharField(max_length=4, choices=STATUT_OFFRE_EMPLOI_CHOICES,
                                 default='NOUV')
+    date_limite = models.DateField(verbose_name="Date limite",)
     nom = models.CharField(max_length=255)
-    resume = models.TextField(verbose_name="Résumé")
+    resume = models.TextField(verbose_name="Résumé", blank=True)
     description = models.TextField()
     poste = models.CharField(max_length=255)
     poste_nom = models.CharField(max_length=255)
-    date_limite = models.DateField(verbose_name="Date limite",
-                        help_text=HELP_TEXT_FORMAT_DATE,)  
     region = models.ForeignKey(ref.Region, db_column='region', 
                 verbose_name="Région")
     bureau = models.ForeignKey(ref.Bureau, db_column='bureau', )
@@ -86,8 +87,7 @@ class OffreEmploi(Metadata):
                         verbose_name="Durée de l'affectation")
     renumeration = models.CharField(max_length=255,
                     verbose_name='Rénumération')
-    debut_affectation = models.DateField(verbose_name="Début de l'affectation",
-                        help_text=HELP_TEXT_FORMAT_DATE,)
+    debut_affectation = models.DateField(verbose_name="Début de l'affectation",)
     lieu_affectation = models.ForeignKey(ref.Implantation,  
                         db_column='implantation', 
                         verbose_name="Lieu d'affectation")
@@ -127,7 +127,7 @@ class Candidat(Metadata):
     adresse = models.CharField(max_length=255)
     ville = models.CharField(max_length=255)
     etat_province = models.CharField(max_length=255, 
-                    verbose_name="État/Province")
+                    verbose_name="État/Province", blank=True)
     code_postal = models.CharField(max_length=255, blank=True)
     pays = models.ForeignKey(ref.Pays, db_column='pays',
             related_name='+')
@@ -144,13 +144,11 @@ class Candidat(Metadata):
 
 
 # Upload de fichiers
-storage_prive = FileSystemStorage(settings.PRIVE_MEDIA_ROOT, 
-                            base_url=settings.PRIVE_MEDIA_URL)
+storage_prive = FileSystemStorage(settings.OE_PRIVE_MEDIA_ROOT, 
+                            base_url=settings.OE_PRIVE_MEDIA_URL)
 
 def candidat_piece_dispatch(instance, filename):
-    path = u'%s/%s/%s_%s_%s/%s/%s' % ('emplois', instance.candidat.offre_emploi.id,
-            instance.candidat.nom, instance.candidat.prenom, instance.candidat.id, 
-            instance.nom, filename)
+    path = u'%s/%s/%s' % ('emplois', instance.candidat.id, filename)
     return path
 
 class CandidatPiece(models.Model):