390472516a4185b05f56967314cbe8be4313bcc4
1 # -*- encoding: utf-8 -*-
2 from django
.shortcuts
import redirect
, render_to_response
, get_object_or_404
3 from django
.template
import RequestContext
5 from project
.dae
.forms
import PosteForm
6 from project
.dae
import models
as dae
7 from project
.rh_v1
import models
as rh
11 return render_to_response('dae/index.html', {}, RequestContext(request
))
14 def poste(request
, id=None):
15 """ Formulaire pour un poste.
17 Permet de créer ou modifier un poste. Si le poste n'existe que dans rh_v1
18 il est automatiquement copié dans dae.
21 poste
, data
, vars = None, dict(), dict()
24 data
.update(dict(request
.POST
.items()))
29 type, id = id.split('-')
32 poste
= get_object_or_404(dae
.Poste
, pk
=id)
34 p
= get_object_or_404(rh
.Poste
, id=id)
35 # Initialisation avec les valeurs du poste de rh_v1
36 poste
= dae
.Poste(id_rh
=p
, nom
=p
.type_poste
.nom
)
37 for field
in ('implantation', 'type_poste', 'actif'):
38 setattr(poste
, field
, getattr(p
, field
))
41 form
= PosteForm(data
, instance
=poste
)
44 return redirect('poste', id='dae-%s' % poste
.id)
46 # 'initial' évite la validation prémature lors d'une copie de poste de
48 form
= PosteForm(initial
=data
, instance
=poste
)
52 return render_to_response('dae/poste.html', vars, RequestContext(request
))