Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision d59ca2b3

Von Wulf Coulmann vor fast 14 Jahren hinzugefügt

  • ID d59ca2b3ff5c4772ec86ac14e5867cce3f64326e
  • Vorgänger 915e943a
  • Nachfolger 9c477cc8

add number calculation in number form fields

Unterschiede anzeigen:

SL/Form.pm
if ( ($myconfig->{numberformat} eq '1.000,00')
|| ($myconfig->{numberformat} eq '1000,00')) {
$amount =~ s/\.//g;
$amount =~ s/,/\./;
$amount =~ s/,/\./g;
}
if ($myconfig->{numberformat} eq "1'000.00") {
......
}
$amount =~ s/,//g;
# make shure no code wich is not a math expression ends in eval()
$amount =~ s/\s//g;
unless($amount =~ /^[-\+]?\d+\.?\d*([-\+\*\/][-\+]?\d+\.?\d*)*$/){
return 0;
}
$main::lxdebug->leave_sub(2);
return ($amount * 1);
return (eval $amount) * 1 ;
}
sub round_amount {
js/common.js
if(decpoint == thpoint) {
return show_alert_and_focus(input_name, wrongNumberFormat);
}
if(decpoint == ',') {
var decnumbers = input_name.value.split(',');
var test_val = input_name.value;
if(thpoint && thpoint == ','){
test_val = test_val.replace(/,/g, '');
}
else {
var decnumbers = input_name.value.split('.');
}
if(decnumbers.length == 2) {
if(decnumbers[1].length > 2) {
/* return show_alert_and_focus(input_name, wrongNumberFormat); */
}
if(thpoint && thpoint == '.'){
test_val = test_val.replace(/\./g, '');
}
else {
if(decnumbers.length > 2) {
return show_alert_and_focus(input_name, wrongNumberFormat);
}
if(!thpoint) {
if(decnumbers[0].match(/\D/)) {
return show_alert_and_focus(input_name, wrongNumberFormat);
}
}
if(thpoint && decpoint == ','){
test_val = test_val.replace(/,/g, '.');
}
var forbidden = test_val.match(/[^-\+\/\*\.0-9\ ]/g );
if (forbidden && forbidden.length > 0 ){
return show_alert_and_focus(input_name, wrongNumberFormat);
}
try{
eval(test_val);
}catch(err){
return show_alert_and_focus(input_name, wrongNumberFormat);
}
}
function check_right_date_format(input_name) {

Auch abrufbar als: Unified diff