Lors de l'ajout d'un candidat, créer automatiquement une EvaluationCandidat, si l...
authorNilovna Bascunan-Vasquez <contact@nilovna.com>
Fri, 29 Jul 2011 19:59:01 +0000 (15:59 -0400)
committerNilovna Bascunan-Vasquez <contact@nilovna.com>
Fri, 29 Jul 2011 19:59:01 +0000 (15:59 -0400)
project/recrutement/forms.py
src/auf.django.emploi/auf/django/emploi/models.py

index 1c45df4..2392045 100644 (file)
@@ -73,7 +73,7 @@ class OffreEmploiForm(ModelForm):
 
         if date_limite and debut_affectation:
             if date_limite > debut_affectation:
-                raise forms.ValidationError("La date limite ne peut être \
+                raise forms.ValidationError("La date limite ne peut pas être \
                         supérieure à la date d'affection.")
 
         return cleaned_data
index ebf2237..ffda33d 100755 (executable)
@@ -133,15 +133,31 @@ class Candidat(Metadata):
     pays = models.ForeignKey(ref.Pays, db_column='pays',
             related_name='+')
 
-    def __unicode__(self):
-        return '%s %s [%s]' % (self.nom, self.prenom, self.id)
+    class Meta:
+        db_table = 'emploi_candidat'
+
+    def save(self, *args, **kwargs):
+        """
+        Créer automatiquement des CandidatEvaluation, si des évaluateurs sont
+        déjà assignés à des offres d'emploi
+        """
+        evaluateurs = OffreEmploi.objects.filter(id=self.offre_emploi.id)
+  
+        for evaluateur in evaluateurs:                
+            candidat_evaluation = CandidatEvaluation()
+            candidat_evaluation.candidat = self
+            candidat_evaluation.evaluateur = evaluateur
+            candidat_evaluation.save()
+        super(Candidat, self).save(*args, **kwargs)
+
 
     def pieces_jointes(self):
         return CandidatPiece.objects.filter(candidat=self) 
     pieces_jointes.allow_tags = True    
 
-    class Meta:
-        db_table = 'emploi_candidat'
+    def __unicode__(self):
+        return '%s %s [%s]' % (self.nom, self.prenom, self.id)
+
 
 # Upload de fichiers
 storage_prive = FileSystemStorage(settings.PRIVE_MEDIA_ROOT,