fix remun
[auf_rh_dae.git] / project / media / js / dae-embauche.js
CommitLineData
dfc31755
OL
1/*******************************************************************************
2* EMBAUCHE
3*******************************************************************************/
66796c1f
OL
4function proposition_comparaison(devise_id) {
5 var chargement_devise = $.getJSON("/dae/devise/code", {'devise': devise_id});
6 chargement_devise.success(function(data) {
7 var salaire = $("#id_salaire").val();
8 var montant = parseFloat(data.taux_euro) * parseFloat(salaire);
9 $("#salaire-propose-euros").html(clean_float(montant));
10 });
11 chargement_devise.error(function(data) {
12 alert(data.responseText);
13 });
14}
dfc31755 15
179f6b49
OL
16function activateDossierDropDowns() {
17 $('#id_classement, #id_devise').change(loadSalaire);
18}
19
20function loadSalaire() {
66796c1f 21 $.getJSON('/dae/salaire/' + $('#implantation').val() + '/' +
179f6b49
OL
22 $('#id_devise').val() + '/' + $('#id_classement').val(),
23 function(data) {
66796c1f
OL
24 $('#id_salaire').val(clean_float(data.salaire_devise));
25 $('#id_salaire').trigger('change');
179f6b49
OL
26 });
27}
28
29function round2(n) {
30 return Math.round(n * 100) / 100;
31}
32
33$('#global-cost input[id^="montant"]').live('keyup', function() {
34 var value = $(this).val(),
35 idParts = $(this).attr('id').split('-'),
36 name = idParts[0],
37 id = idParts[1];
38 if (name == 'montant') {
39 $('#montant_mois-' + id).val(round2(value / 12));
40 } else {
41 value = value * 12;
42 $('#montant-' + id).val(round2(value));
43 }
44 var taux = $('#taux_devise-' + id).val();
057763bc
OL
45 $('#montant_euro_mois-' + id).text(clean_float(round2(value / taux / 12)));
46 $('#montant_euro-' + id).text(clean_float(round2(value / taux)));
179f6b49
OL
47});
48
49activateDossierDropDowns();
50
179f6b49
OL
51/* Ajout des datespickers sur les inputs loadés via AJAX.
52On s'assure qu'on est pas dans le cas initial où ils sont déjà ajoutés.
53(La façon dont c'est fait requiert que les inputs soient uniquement dans la partie AJAX).*/
54function datepicker() {
55 var date_pickers = $(".datetimeshortcuts");
56 if (date_pickers.length == 0)
57 DateTimeShortcuts.init();
58}
59
60function activateEmployeDropDown() {
61 $('#id_employe').change(loadEmploye);
62}
63
64function loadEmploye() {
65 var employeUrl = '/dae/employe/' + $(this).val();
66 $('#form-employe').html('<tr><td>Chargement...</td></tr>')
67 .load(employeUrl, activateEmployeDropDown);
68 var dossierUrl = '/dae/dossier/' + $('#poste').val() +
69 '/' + $(this).val();
70 $('#form-dossier').html('<tr><td>Chargement...</td></tr>')
71 .load(dossierUrl, function() {
72 datepicker();
73 activateDossierDropDowns();
72db8238 74 $("#id_contrat_date_debut, #id_contrat_date_fin").focusout(function() {contrat_mois();});
179f6b49
OL
75 });
76}
77
dfc31755 78$(document).ready(function() {
179f6b49
OL
79
80 /* Lorsqu'on choisit un poste dans la liste on recharge la page avec le
81 poste chargé dans la view (grâce à son id dans l'URL).*/
82 $('#id_poste').change(function() {
83 window.location = '/dae/embauche/' + $(this).val();
84 });
85
86 /* on lance le JS au chargement de la page, la toute première fois,
87 puis on cable le change au select pour le rechargement. */
72db8238 88 //loadEmploye();
179f6b49
OL
89 activateEmployeDropDown();
90
72db8238
OL
91 /* calcul de la différence en mois */
92 $("#id_contrat_date_debut, #id_contrat_date_fin").focusout(function() {
93 contrat_mois();
94 });
95 contrat_mois();
96
057763bc
OL
97 /* Ajouter une ligne aux couts globals */
98 $('#type-remun').change(function() {
99 if ($(this).val() != '') {
100 $('#global-cost').html('<tr><td>Chargement...</td></tr>')
101 .load('/dae/add-remun/' +
102 $('#dossier').val() + '/' +
103 $(this).val(), function() {
104 $('#type-remun').val('');
105 });
106 }
107 });
108
109
dfc31755 110});