Poste classement max calculs terminé
authordavin baragiotta <davin.baragiotta@u-db.(none)>
Thu, 7 Apr 2011 09:14:03 +0000 (05:14 -0400)
committerDavin BARAGIOTTA <davin.baragiotta@auf.org>
Thu, 7 Apr 2011 09:14:03 +0000 (05:14 -0400)
project/dae/templates/dae/poste.html

index 8f9a01f..e26f272 100644 (file)
@@ -417,11 +417,101 @@ Demande d'autorisation d'embauche
         });
         
         /* CLASSEMENT MAX */
         });
         
         /* CLASSEMENT MAX */
+        $(document).ready(function() {
+            valeur_max = '<input type="hidden" id="valeur_max" name="valeur_max" value="0" disabled="disabled">'
+            devise_max_code = '<input type="hidden" id="devise_max_code" name="devise_max_code" value="5" disabled="disabled">'
+            taux_max_euro = '<input type="hidden" id="taux_max_euro" name="taux_max_euro" value="1" disabled="disabled">'
+            $('#id_valeur_point_max').after(valeur_max)
+            $('#id_devise_max').after(devise_max_code)
+            $('#total_max_euro').after(taux_max_euro)
+        });
+        /* bindings */
+        $('#id_coefficient_max').bind('coeff_max_modified', function(){
+            $('#id_salaire_max').trigger('update_salaire_max');
+        });
+        $('.devise_max_code').bind('update_devise_max_code', function(){
+            devise_code = $('#devise_max_code').val();
+            $('.devise_max_code').empty();
+            $('.devise_max_code').text(devise_code);
+        });
+        $('#id_salaire_max').bind('update_salaire_max', function(){
+            valeur = $('#valeur_max').val();
+            coeff = $('#id_coefficient_max').val();
+            salaire = coeff * valeur;
+            salaire = clean_float(salaire);
+            $(this).val(salaire);
+            $('#total_max').trigger('update_total_max');
+        });
+        $('#total_max').bind('update_total_max', function(){
+            total = 0;
+            salaire = $('#id_salaire_max').val();
+            indemn = $('#id_indemn_max').val();
+            autre = $('#id_autre_max').val();
+            salaire = clean_float(salaire);
+            indemn = clean_float(indemn);
+            autre = clean_float(autre);
+            total = salaire + indemn + autre;
+            $(this).empty();
+            $(this).text(total.toFixed(2));
+            $('#total_max_euro').trigger('update_total_max_euro');
+        });
+        $('#total_max_euro').bind('update_total_max_euro', function(){
+            total = $('#total_max').text();
+            taux_euro = $('#taux_max_euro').val();
+            total = clean_float(total);
+            taux_euro = clean_float(taux_euro);
+            total_euro = total * taux_euro;
+            $(this).empty();
+            $(this).text(total_euro.toFixed(2));
+        });
+        /* change */
+        $('#id_coefficient_max').change(function(){
+            $(this).trigger('coeff_max_modified');
+        });
         $('#id_classement_max').change(function() {
             url = "{% url dae_coefficient %}";
             $.post(url, {'classement':$(this).val()}, function(data){
                     $('#id_coefficient_max').val(data["coefficient"]);
         $('#id_classement_max').change(function() {
             url = "{% url dae_coefficient %}";
             $.post(url, {'classement':$(this).val()}, function(data){
                     $('#id_coefficient_max').val(data["coefficient"]);
+                    $('#id_coefficient_max').trigger('coeff_max_modified');
+                }, 'json');
+        });
+        $('#id_valeur_point_max').change(function() {
+            url_valeur = "{% url dae_valeur %}";
+            url_devise = "{% url dae_devise %}";
+            $.post(url_valeur, {'valeur_point':$(this).val()}, function(data){
+                    $('#valeur_max').val(data["valeur"]);
+                    $('#id_salaire_max').trigger('update_salaire_max');
+                    $('#total_max_euro').trigger('update_total_max_euro');
                 }, 'json');
                 }, 'json');
+            $.post(url_devise, {'valeur_point':$(this).val()}, function(data){
+                    $('#id_devise_max').val(data["devise"]);
+                    $('#devise_max_code').val(data["devise_code"]);
+                    $('#taux_max_euro').val(data["taux_euro"]);
+                    $('#taux_max_euro_display').empty();
+                    $('#taux_max_euro_display').text(data["taux_euro"]);
+                    $('.devise_max_code').trigger('update_devise_max_code');
+                    $('#total_max_euro').trigger('update_total_max_euro');
+                }, 'json');
+        });
+        $('#id_devise_max').change(function(){
+            url_devise_code = "{% url dae_devise_code %}";
+            $.post(url_devise_code, {'devise':$(this).val()}, function(data){
+                    $('#devise_max_code').val(data["devise_code"]);
+                    $('#taux_max_euro').val(data["taux_euro"]);
+                    $('#taux_max_euro_display').empty();
+                    $('#taux_max_euro_display').text(data["taux_euro"]);
+                    $('.devise_max_code').trigger('update_devise_max_code');
+                    $('#total_max_euro').trigger('update_total_max_euro');
+                }, 'json');
+        });
+        $('#id_salaire_max').change(function(){
+            $('#total_max').trigger('update_total_max');
+        });
+        $('#id_indemn_max').change(function(){
+            $('#total_max').trigger('update_total_max');
+        });
+        $('#id_autre_max').change(function(){
+            $('#total_max').trigger('update_total_max');
         });
         
         /* helpers */
         });
         
         /* helpers */