Clean-up code; 1696: Assigner des évaluateurs par offre d'emploi.
[auf_rh_dae.git] / project / recrutement / views.py
... / ...
CommitLineData
1# -*- encoding: utf-8 -*-
2
3from django.contrib import messages
4from django.contrib.auth.models import User
5from django.core.mail import send_mail
6from django.http import HttpResponse
7from django.shortcuts import render_to_response, redirect, get_object_or_404
8from django.template import Context, RequestContext
9
10from forms import *
11from models import *
12from project.recrutement import models as recr
13from recrutement.workflow import grp_evaluateurs_recrutement
14
15def index(request):
16 return render_to_response('recrutement/index.html', {},
17 RequestContext(request))
18
19def afficher_candidat(request):
20 candidat = get_object_or_404(Candidat, id=request.GET.get('id'))
21 var = {'candidat': candidat,}
22 return render_to_response("recrutement/afficher_candidat.html", var,
23 RequestContext(request))
24
25def affecter_evaluateurs_candidats(request):
26 candidat_ids = request.GET.get('ids').split(',')
27 candidats = Candidat.objects.filter(id__in=candidat_ids)
28 if request.method == "POST":
29 form = EvaluateurForm(request.POST, candidats=candidats)
30 if form.is_valid():
31 form.save()
32 messages.add_message(request, messages.SUCCESS,
33 "Les évaluateurs ont été affectés aux candidats.")
34 return redirect("admin:recrutement_candidat_changelist")
35 else:
36 form = EvaluateurForm(candidats=candidats)
37
38 c = {'form' : form}
39 return render_to_response("recrutement/affecter_evaluateurs.html",
40 Context(c), context_instance = RequestContext(request))
41
42def envoyer_courriel_candidats(request):
43 candidat_ids = request.GET.get('ids').split(',')
44 candidats = Candidat.objects.filter(id__in=candidat_ids)
45
46 if request.method == "POST":
47 form = CandidatCourrielForm(request.POST, candidats=candidats)
48 if form.is_valid():
49 form.save()
50 messages.add_message(request, messages.SUCCESS,
51 "Les évaluateurs ont été affectés aux candidats.")
52 return redirect("admin:recrutement_candidat_changelist")
53 else:
54 form = CandidatCourrielForm(candidats=candidats)
55
56 c = {'form' : form}
57 return render_to_response("recrutement/envoyer_courriel_candidats.html",
58 Context(c), context_instance = RequestContext(request))
59
60def postuler_appel_offre(request):
61
62 vars = dict()
63 offre_emploi = get_object_or_404(OffreEmploi, id=request.GET.get('id'))
64 candidat = Candidat()
65 candidat.offre_emploi = offre_emploi
66
67 if request.method == "POST":
68 form = PostulerOffreEmploiForm(request.POST,
69 instance=candidat, offre_emploi=offre_emploi)
70 piecesForm = CandidatPieceForm(request.POST, request.FILES,
71 instance=candidat)
72 print form.errors
73 if form.is_valid() and piecesForm.is_valid():
74 offre = form.save()
75 piecesForm.instance = offre
76 piecesForm.save()
77 messages.add_message(request, messages.SUCCESS,
78 "Votre application à l'appel d'offre d'emploi a \
79 été effectuée.")
80
81 # Envoi d'un email de confirmation
82 send_mail(u"Confirmation de postulation pour le poste \
83 de " + offre_emploi.nom,
84 u"Bonjour " + candidat.prenom + " " + candidat.nom +
85 u", \nceci est un email pour vous confirmer que votre \
86 postulation pour l'offre d'emploi: " +
87 offre_emploi.nom + u" a été effectuée avec succès. Vous\
88 devriez être contacté sous peu par l'AUF. \n\n Merci \
89 pour votre intérêt envers l'AUF.",
90 'test@auf.org',
91 [candidat.email], fail_silently=False)
92
93 return redirect("admin:recrutement_offreemploi_changelist")
94 else:
95 messages.add_message(request, messages.ERROR,
96 'Il y a des erreurs dans le formulaire.')
97 else:
98 form = PostulerOffreEmploiForm(instance=candidat,
99 offre_emploi=offre_emploi)
100 piecesForm = CandidatPieceForm(instance=candidat)
101
102 vars.update(dict(form=form, candidat=candidat, piecesForm=piecesForm, ))
103
104 return render_to_response('recrutement/postuler_appel_offre.html', vars,
105 RequestContext(request))
106
107def assigner_evaluateurs(request):
108 pass