1503: Permettre aux évaluateurs d'entrer des notes/commentaires sur les candidatures
[auf_rh_dae.git] / project / recrutement / views.py
index b5919be..f9a1d5e 100755 (executable)
@@ -1,8 +1,51 @@
 # -*- encoding: utf-8 -*-
 from django.shortcuts import redirect, render_to_response, get_object_or_404
+from django.http import HttpResponse
+from django.contrib import messages
+from django.template import Context, RequestContext
+from django.shortcuts import render_to_response, redirect
 from django.template import RequestContext
 
+from forms import *
+from models import *
 from project.recrutement import models as recr
 
 def index(request):
-    return render_to_response('recrutement/index.html', {}, RequestContext(request))
+    return render_to_response('recrutement/index.html', {}, 
+                                RequestContext(request))
+
+def evaluer_candidat(request):
+    candidat = get_object_or_404(Candidat, id__in=request.GET.get('id'))
+
+    if request.method == "POST":
+        candidat_evaluation = CandidatEvaluation()
+        candidat_evaluation.candidat = candidat
+        form = CandidatEvaluationForm(request.POST, instance=candidat_evaluation, candidat=candidat) 
+        if form.is_valid():       
+            form.save()    
+            messages.add_message(request, messages.SUCCESS, 
+                            "Le commentaire et la note ont été affectés \
+                                au candidat.")
+            return redirect("admin:recrutement_candidat_changelist")
+    else:      
+        form = CandidatEvaluationForm(candidat=candidat)
+
+    c = {'form' : form}   
+    return render_to_response("recrutement/evaluer_candidat.html", Context(c), \
+                context_instance = RequestContext(request))
+
+def affecter_evaluateurs_candidats(request):
+    candidat_ids = request.GET.get('ids').split(',')
+    candidats = get_object_or_404(Candidat, id__in=candidat_ids)
+    if request.method == "POST":
+        form = EvaluateurForm(request.POST, candidats=candidats)
+        if form.is_valid():
+            form.save()
+            messages.add_message(request, messages.SUCCESS, 
+                            "Les évaluateurs ont été affectés aux candidats.")
+            return redirect("admin:recrutement_candidat_changelist")
+    else:
+        form = EvaluateurForm(candidats=candidats)
+
+    c = {'form' : form}   
+    return render_to_response("recrutement/affecter_evaluateurs.html", Context(c), context_instance = RequestContext(request))