MediaWiki:Lékařská kalkulačka/Cardiac-axis.js: Porovnání verzí

Z WikiSkript
(výpočet)
m (zaokrouhlení)
Řádek 51: Řádek 51:
   var result = "";
   var result = "";
   if (amp_I != 0 && amp_aVF != 0) {
   if (amp_I != 0 && amp_aVF != 0) {
result = (Math.atan2(amp_aVF * 2, amp_I * Math.sqrt(3)) * 180) / Math.PI;
result = Math.round( (Math.atan2(amp_aVF * 2, amp_I * Math.sqrt(3)) * 180) / Math.PI );
   }
   }
   $( '#lekarska_kalkulacka_Cardiac-axis-vysledek' ).html( result );
   $( '#lekarska_kalkulacka_Cardiac-axis-vysledek' ).html( result + "°");
});
});

Verze z 31. 1. 2024, 19:58

/**
 * ReplaceAll by Fagner Brack (MIT Licensed)
 * Replaces all occurrences of a substring in a string
 */
String.prototype.replaceAll = function(token, newToken, ignoreCase) {
    var str, i = -1, _token;
    if((str = this.toString()) && typeof token === "string") {
        _token = ignoreCase === true? token.toLowerCase() : undefined;
        while((i = (
            _token !== undefined? 
                str.toLowerCase().indexOf(
                            _token, 
                            i >= 0? i + newToken.length : 0
                ) : str.indexOf(
                            token,
                            i >= 0? i + newToken.length : 0
                )
        )) !== -1 ) {
            str = str.substring(0, i)
                    .concat(newToken)
                    .concat(str.substring(i + token.length));
        }
    }
return str;
};

/**************** Převod do html podoby ****************/
var content = $( '#lekarska_kalkulacka_Cardiac-axis-content' ).text();
$( '#lekarska_kalkulacka_Cardiac-axis' ).html( content.replaceAll('paragraph', 'p' ).replaceAll( 'resValue', 'span' ).replaceAll('breakline', 'br' ).replaceAll('division', 'div').replaceAll('orderedlist', 'ol') );

/**************** Propojeni input field: range a number *************/
$( '#lekarska_kalkulacka_Cardiac-axis-amp-I-range' ).change( function() {
        $( '#lekarska_kalkulacka_Cardiac-axis-amp-I-number').val( $( '#lekarska_kalkulacka_Cardiac-axis-amp-I-range' ).val() );
});
$( '#lekarska_kalkulacka_Cardiac-axis-amp-I-number' ).change( function() {
        $( '#lekarska_kalkulacka_Cardiac-axis-amp-I-range').val( $( '#lekarska_kalkulacka_Cardiac-axis-amp-I-number' ).val() );
});
$( '#lekarska_kalkulacka_Cardiac-axis-amp-aVF-range' ).change( function() {
        $( '#lekarska_kalkulacka_Cardiac-axis-amp-aVF-number').val( $( '#lekarska_kalkulacka_Cardiac-axis-amp-aVF-range' ).val() );
});
$( '#lekarska_kalkulacka_Cardiac-axis-amp-aVF-number' ).change( function() {
        $( '#lekarska_kalkulacka_Cardiac-axis-amp-aVF-range').val( $( '#lekarska_kalkulacka_Cardiac-axis-amp-aVF-number' ).val() );
});

/**************** Vlastní výpočet ****************/
$( 'input' ).change( function() {
  var alkoholemie = parseFloat( $( '#lekarska_kalkulacka_Ethanol-alkoholemie-vstupni-number').val() );
  var amp_I = parseFloat($( '#lekarska_kalkulacka_Cardiac-axis-amp-I-number').val());
  var amp_aVF = parseFloat($( '#lekarska_kalkulacka_Cardiac-axis-amp-aVF-number').val());
  
  var result = "";
  if (amp_I != 0 && amp_aVF != 0) {
	result = Math.round( (Math.atan2(amp_aVF * 2, amp_I * Math.sqrt(3)) * 180) / Math.PI );
  }
  $( '#lekarska_kalkulacka_Cardiac-axis-vysledek' ).html( result + "°");
});