self.request = request
def offre_emploi_liste(self):
- url = "http://127.0.0.1:8080/api/offre_emploi_liste/"
+ url = "http://127.0.0.1:8000/api/offre_emploi_liste/"
r = req(url)
liste_json = r.body_string()
liste_offres = simplejson.loads(liste_json)
return obj_offres_emploi
def offre_emploi(self, offre_id):
- url = "http://127.0.0.1:8080/api/offre_emploi/?id=%s"
+ url = "http://127.0.0.1:8000/api/offre_emploi/?id=%s"
r = req(url % (offre_id))
offre_json = r.body_string()
offre_dict = simplejson.loads(offre_json)
return obj_offres_emploi
def candidat_add(self, offre_id):
- url = "http://127.0.0.1:8080/api/candidat_add/?id=%s" % (offre_id)
+ url = "http://127.0.0.1:8000/api/candidat_add/?id=%s" % (offre_id)
return redirect(url)
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
+++ /dev/null
-# -*- encoding: utf-8 -*-
-
-from django.contrib import messages
-from django.shortcuts import render_to_response, redirect, get_object_or_404
-from django.template import Context, RequestContext, Template
-from django.core.mail import EmailMultiAlternatives
-
-from auf.django.emploi import models
-from auf.django.emploi import forms
-
-def postuler_appel_offre(request):
- vars = dict()
- offre_emploi = get_object_or_404(OffreEmploi, id=request.GET.get('id'))
- candidat = Candidat()
- candidat.offre_emploi = offre_emploi
-
- if request.method == "POST":
- form = PostulerOffreEmploiForm(request.POST,
- instance=candidat, offre_emploi=offre_emploi)
- piecesForm = CandidatPieceForm(request.POST, request.FILES,
- instance=candidat)
- if form.is_valid() and piecesForm.is_valid():
- offre = form.save()
- piecesForm.instance = offre
- piecesForm.save()
-
- courriel_template = CourrielTemplate.objects.\
- get(nom_modele='Confirmation postulation (automatique)')
- send_templated_email(candidat, courriel_template)
-
- messages.add_message(request, messages.SUCCESS,
- "Votre application à l'appel d'offre d'emploi a \
- été effectuée.")
- return redirect("admin:recrutement_offreemploi_changelist")
- else:
- messages.add_message(request, messages.ERROR,
- 'Il y a des erreurs dans le formulaire.')
- else:
- form = PostulerOffreEmploiForm(instance=candidat,
- offre_emploi=offre_emploi)
- piecesForm = CandidatPieceForm(instance=candidat)
-
- vars.update(dict(form=form, candidat=candidat, piecesForm=piecesForm, ))
-
- return render_to_response('recrutement/postuler_appel_offre.html', vars,
- RequestContext(request))
-
-def send_templated_email(candidat, template):
- # Sujet
- sujet_template = Template(template.sujet)
- dict_sujet = {"offre_emploi": candidat.offre_emploi.nom,}
- sujet = Context(dict_sujet)
- # Plain text
- texte_template = Template(template.plain_text)
- dict_texte = {"nom_candidat": candidat.nom,
- "prenom_candidat": candidat.prenom,
- "offre_emploi": candidat.offre_emploi.nom,
- "genre_candidat": "Monsieur" if candidat.genre == "M" \
- else "Madame",
- }
- texte = Context(dict_texte)
- # HTML text
- html_template = Template(template.html)
- texte_html = Context(dict_texte)
- msg = EmailMultiAlternatives(sujet_template.render(sujet),
- texte_template.render(texte),
- 'recrutement@auf.org',
- [candidat.email])
- msg.attach_alternative(texte_template.render(texte_html), "text/html")
- msg.send()