1 /*******************************************************************************
3 *******************************************************************************/
4 function 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
));
11 chargement_devise
.error(function(data
) {
12 alert(data
.responseText
);
16 function activateDossierDropDowns() {
17 $
('#id_classement, #id_devise').change(loadSalaire
);
20 function loadSalaire() {
21 $
.getJSON('/dae/salaire/' + $
('#implantation').val() + '/' +
22 $
('#id_devise').val() + '/' + $
('#id_classement').val(),
24 $
('#id_salaire').val(clean_float(data
.salaire_devise
));
25 $
('#id_salaire').trigger('change');
30 return Math
.round(n
* 100) / 100;
33 function remun_line(input
) {
34 var idParts
= input
.attr('id').split('-'),
38 var montant_mensuel
= $
('#montant_mois-' + id
);
39 var montant_annuel
= $
('#montant-' + id
);
41 if (input
.attr('id') == montant_mensuel
.attr('id')) value
= (montant_mensuel
.val() * 12);
42 if (input
.attr('id') == montant_annuel
.attr('id')) value
= (montant_annuel
.val());
44 montant_mensuel
.val(round2(value
/ 12));
45 montant_annuel
.val(round2(value
));
47 var taux
= $
('#taux_devise-' + id
).val();
48 $
('#montant_euro_mois-' + id
).text(clean_float(round2(value
/ 12 * taux
)));
49 $
('#montant_euro-' + id
).text(clean_float(round2(value
* taux
)));
52 function remun_totaux() {
53 $
('#global-cost input[id^="montant"]').each(function() {
58 $
("tr.cout td.cumulable").each(function() {
59 total_cout
+= clean_float($
(this).html());
61 $
("#sous-total-cout").html(total_cout
);
64 $
("tr.aide td.cumulable").each(function() {
65 total_aide
+= clean_float($
(this).html());
67 $
("#sous-total-aide").html(total_aide
);
69 var total
= total_cout
+ total_aide
;
70 $
("#remun-total").html(total
);
75 activateDossierDropDowns();
77 /* Ajout des datespickers sur les inputs loadés via AJAX.
78 On s'assure qu'on est pas dans le cas initial où ils sont déjà ajoutés.
79 (La façon dont c'est fait requiert que les inputs soient uniquement dans la partie AJAX).*/
80 function datepicker() {
81 var date_pickers
= $
(".datetimeshortcuts");
82 if (date_pickers
.length
== 0)
83 DateTimeShortcuts
.init();
86 function activateEmployeDropDown() {
87 $
('#id_employe').change(loadEmploye
);
90 function loadEmploye() {
91 var employeUrl
= '/dae/employe/' + $
(this).val();
92 $
('#form-employe').html('<tr><td>Chargement...</td></tr>')
93 .load(employeUrl
, activateEmployeDropDown
);
94 var dossierUrl
= '/dae/dossier/' + $
('#poste').val() +
96 $
('#form-dossier').html('<tr><td>Chargement...</td></tr>')
97 .load(dossierUrl
, function() {
99 activateDossierDropDowns();
100 $
("#id_contrat_date_debut, #id_contrat_date_fin").focusout(function() {contrat_mois();});
104 $
(document
).ready(function() {
106 /* Lorsqu'on choisit un poste dans la liste on recharge la page avec le
107 poste chargé dans la view (grâce à son id dans l'URL).*/
108 $
('#id_poste').change(function() {
109 window
.location
= '/dae/embauche/' + $
(this).val();
112 /* on lance le JS au chargement de la page, la toute première fois,
113 puis on cable le change au select pour le rechargement. */
115 activateEmployeDropDown();
117 /* calcul de la différence en mois */
118 $
("#id_contrat_date_debut, #id_contrat_date_fin").focusout(function() {
124 $
('#global-cost input').change(function() {
129 /* Ajouter une ligne aux couts globals */
130 $
('#type-remun').change(function() {
131 if ($
(this).val() != '') {
132 $
('#global-cost').html('<tr><td>Chargement...</td></tr>')
133 .load('/dae/add-remun/' +
134 $
('#dossier').val() + '/' +
135 $
(this).val(), function() {
136 $
('#type-remun').val('');