1 {% extends 'base.html' %}
3 {% block title %}RH - DAE{% endblock %}
4 {% block titre %}Ressources humaines{% endblock %}
6 Demande d'autorisation d'embauche
10 <script src=
"{{ MEDIA_URL }}js/jquery-1.5.1.min.js"
11 type=
"text/javascript"></script>
12 <script src=
"{{ MEDIA_URL }}js/jquery-ui-1.8.11.custom.min.js"
13 type=
"text/javascript"></script>
14 <link href=
"{{ MEDIA_URL }}/css/redmond/jquery-ui-1.8.11.custom.css"
18 h1.section {background-color: #D0E8F8; text-align: center; color: #
5F5F5F; margin:
50px
0px
26px
0px; border-bottom:
3px solid #BBD8EC; padding:
4px;}
19 .row {padding:
10px
0px; clear: both; display:block;}
20 .row * {float: left; margin:
0px; padding:
0px; margin-right:
4px;}
21 .row li {list-style-type: none;}
22 .underline {text-decoration: underline;}
23 .clear {display: block; clear: both;}
24 .note {text-decoration: underline; font-style: italic; margin-left:
12px;}
25 .info {font-size:
13px; font-style: italic;}
26 .noborder {border:none; margin:
0; padding;
0}
27 tr.noborder td {border:none; padding-left:
0;}
32 <h1>Demande d'autorisation de création de poste
</h1>
34 <form action=
"" method=
"post">
40 Poste existant : {{ poste.nom }} ({{ poste.implantation.nom }})
46 <th>{{ form.poste.label_tag }} :
<br />{{ form.poste.errors }}
</th>
47 <td>{{ form.poste }}
</td>
50 <th>{{ form.nom.label_tag }} :
<br />{{ form.nom.errors }}
</th>
51 <td>{{ form.nom }}
</td>
54 <th>{{ form.type_poste.label_tag }} :
<br />{{ form.type_poste.errors }}
</th>
55 <td>{{ form.type_poste }}
</td>
58 <th>{{ form.implantation.label_tag }} :
<br />{{ form.implantation.errors }}
</th>
59 <td>{{ form.implantation }}
</td>
62 <th>{{ form.service.label_tag }} :
<br />{{ form.service.errors }}
</th>
63 <td>{{ form.service }}
</td>
66 <th>{{ form.responsable.label_tag }} :
<br />{{ form.responsable.errors }}
</th>
67 <td>{{ form.responsable }}
</td>
78 <th>{{ form.statut_residence.label_tag }} :
<br />{{ form.statut_residence.errors }}
</th>
81 {{ form.statut_residence }}
82 {{ form.mise_a_disposition.label_tag }}
83 {{ form.mise_a_disposition.errors }}
84 {{ form.mise_a_disposition }}
89 <th>{{ form.appel.label_tag }} :
<br />{{ form.appel.errors }}
</th>
101 <h2>Durée prévue du poste
</h2>
102 <span class=
"info">Indépendamment du titulaire du poste
</span>
106 <th rowspan=
"2">Durée :
</th>
109 {{ form.date_debut }}
<br />
110 <span class=
"info">({{form.date_debut.help_text }})
</span><br />
111 {{ form.date_debut.errors }}
115 {{ form.date_fin }}
<br />
116 <span class=
"info">({{form.date_fin.help_text }})
</span><br />
117 {{ form.date_fin.errors }}
121 <td colspan=
"4" class=
"info">Pour une durée indéterminée, spécifier uniquement la date de début.
</td>
124 <th>{{ form.regime_travail.label_tag }} :
<br />{{ form.regime_travail.errors }}
</th>
126 {{ form.regime_travail }}
127 <span class=
"info">{{ form.regime_travail.help_text }}
</span>
132 {{ form.regime_travail_nb_heure_semaine.label_tag }} :
<br />
133 {{ form.regime_travail_nb_heure_semaine.errors }}
135 <td colspan=
"4">{{ form.regime_travail_nb_heure_semaine }}
</td>
142 <h2>Classement du poste
</h2>
149 <th>Valeur du point
</th>
150 <th>Salaire de base
</th>
151 <th>Indemnité, responsabilité (le cas échéant)
</th>
154 <th>Conversion EUR
</th>
158 <td>{{ form.classement_min }}
</td>
159 <td>{{ form.coefficient_min }}
</td>
161 {{ form.valeur_point_min }}
162 {{ form.valeur_point_min.errors }}
164 <td>{{ form.salaire_min }}
</td>
165 <td>{{ form.indemn_min }}
</td>
166 <td>{{ form.autre_min }}
</td>
167 <td id=
"total_min"></td>
168 <td id=
"total_min_eur">??
</td>
172 <td>{{ form.classement_max }}
</td>
173 <td>{{ form.coefficient_max }}
</td>
175 {{ form.valeur_point_max }}
176 {{ form.valeur_point_max.errors }}
178 <td>{{ form.salaire_max }}
</td>
179 <td>{{ form.indemn_max }}
</td>
180 <td>{{ form.autre_max }}
</td>
181 <td id=
"total_max"></td>
182 <td id=
"total_max_eur">??
</td>
187 <p class=
"info">N.B Conversion en EUROS au taux de change budgétaire
</p>
192 <h2>Éléments de comparaison
</h2>
193 <p class=
"info">Compléter uniquement lors de la création d'un poste
</p>
200 <th>Fonction publique
</th>
206 <td>{{ form.comp_locale_min }}
</td>
207 <td>{{ form.comp_universite_min }}
</td>
208 <td>{{ form.comp_fonctionpub_min }}
</td>
209 <td>{{ form.comp_ong_min }}
</td>
210 <td>{{ form.comp_autre_min }}
</td>
214 <td>{{ form.comp_locale_max }}
</td>
215 <td>{{ form.comp_universite_max }}
</td>
216 <td>{{ form.comp_fonctionpub_max }}
</td>
217 <td>{{ form.comp_ong_max }}
</td>
218 <td>{{ form.comp_autre_max }}
</td>
222 <p class=
"info">N.B Conversion en EUROS au taux de change budgétaire
</p>
227 <h1 class=
"section clear">SECTION
2 - PERSONNEL ENGAGÉ
</h1>
228 <div class=
"row"></div>
230 <h1 class=
"section">SECTION
3 - COÛT GLOBAL
</h1>
231 <div class=
"row"></div>
233 <h1 class=
"section">SECTION
4 - JUSTIFICATION DE LA DEMANDE (OBLIGATOIRE)
</h1>
234 <div class=
"row"></div>
236 <input type=
"submit" name=
"save" value=
"Sauvegarder" />
242 <table cellspacing=
"0" id=
"financing">
251 {% for fin in poste.financements.all %}
253 <td>{{ fin.get_type_display }}
</td>
254 <td>{{ fin.montant }}
</td>
260 <td>{{ fin.pourcentage }}
</td>
261 <td>{{ fin.commentaire }}
</td>
262 <td><a href=
"{% url financement poste_key fin.id %}">Modifier
</a></td>
268 Vous devez enregister ce nouveau poste avant de pouvoir spécifier
269 la ou les sources de financement.
271 Aucun financement au registre
278 <a href=
"{% url financement poste_key %}" class=
"new">
279 Ajouter une source de financement
283 <div id=
"financing-form"></div>
286 <script type=
"text/javascript">
287 $('#id_poste').change(function() {
288 window.location = '{% url poste %}/' + $(this).val();
290 $('#financing a, a.new').click(function() {
291 $('#financing-form').load($(this).attr('href') + '?ajax=
1')
300 $(document).ready(function() {
301 valeur_min = '
<input type=
"hidden" id=
"valeur_min" name=
"valeur_min" value=
"0">'
302 $('#id_valeur_point_min').after(valeur_min)
305 $('#id_coefficient_min').bind('coeff_min_modified', function(){
306 $('#id_salaire_min').trigger('update_salaire_min');
308 $('#id_salaire_min').bind('update_salaire_min', function(){
309 valeur = $('#valeur_min').val();
310 coeff = $('#id_coefficient_min').val();
311 salaire = coeff * valeur;
312 salaire = clean_float(salaire);
313 $('#id_salaire_min').val(salaire);
314 $('#total_min').trigger('update_total_min');
316 $('#total_min').bind('update_total_min', function(){
318 salaire = $('#id_salaire_min').val();
319 indemn = $('#id_indemn_min').val();
320 autre = $('#id_autre_min').val();
321 salaire = clean_float(salaire);
322 indemn = clean_float(indemn);
323 autre = clean_float(autre);
324 total = salaire + indemn + autre;
325 $('#total_min').empty();
326 $('#total_min').text(total);
329 $('#id_coefficient_min').change(function(){
330 $('#id_coefficient_min').trigger('coeff_min_modified');
332 $('#id_classement_min').change(function() {
333 classement = $(this).val();
334 url =
"{% url dae_coefficient %}";
335 $.post(url, {'classement':classement}, function(data){
336 $('#id_coefficient_min').attr('value', data[
"coefficient"]);
337 $('#id_coefficient_min').val(data[
"coefficient"]);
338 $('#id_coefficient_min').trigger('coeff_min_modified');
341 $('#id_valeur_point_min').change(function() {
342 valeur_point = $(this).val();
343 url =
"{% url dae_valeur %}";
344 $.post(url, {'valeur_point':valeur_point}, function(data){
345 $('#valeur_min').attr('value', data[
"valeur"]);
346 $('#valeur_min').val(data[
"valeur"]);
347 $('#id_salaire_min').trigger('update_salaire_min');
349 $('#id_salaire_min').trigger('update_salaire_min');
351 $('#id_salaire_min').change(function(){
352 $('#total_min').trigger('update_total_min');
354 $('#id_indemn_min').change(function(){
355 $('#total_min').trigger('update_total_min');
357 $('#id_autre_min').change(function(){
358 $('#total_min').trigger('update_total_min');
361 $('#id_classement_max').change(function() {
362 classement = $(this).val();
363 url =
"{% url dae_coefficient %}";
364 $.post(url, {'classement':classement}, function(data){
365 $('#id_coefficient_max').attr('value', data[
"coefficient"]);
366 $('#id_coefficient_max').val(data[
"coefficient"]);
370 function clean_float(value){
371 if (value == undefined)
374 output = parseFloat(value);
375 output = Math.round(output*
100)/
100;