Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 8c6efb2a

Von Moritz Bunkus vor mehr als 18 Jahren hinzugefügt

  • ID 8c6efb2a9d807818596d7bee4fa9693ab833274c
  • Vorgänger 4c2287d7
  • Nachfolger ff7976ff

Trace Levels Hack. Wenn es koennen jetzt in den lxdebug->enter_sub und leave_sub Aufrufen Tracelevels uebergeben werden. Ist das global_trace_subs geringer, werden diese in den Traceausgaben ignoriert. Standardmaessig ist das jetzt bei Menu::access_control und Form::unescape der Fall.

Um (derzeit) alle Traceausgaben zu bekommen in der lx-erp.conf $global_trabce_subs = 2; setzen.

Debugausgaben entfernt.

parse_amount, format_amount und round_amount auf tracelevel 2 gesetzt. Trace breaker in parse_amount gefixt.

[Merge der Revisionen 943:945 957 aus dem LINET prog Repo]

Unterschiede anzeigen:

SL/Form.pm
40 40
use HTML::Template;
41 41

  
42 42
sub _input_to_hash {
43
  $main::lxdebug->enter_sub();
43
  $main::lxdebug->enter_sub(2);
44 44

  
45 45
  my $input = $_[0];
46 46
  my %in    = ();
......
51 51
    $in{$name} = unescape(undef, $value);
52 52
  }
53 53

  
54
  $main::lxdebug->leave_sub();
54
  $main::lxdebug->leave_sub(2);
55 55

  
56 56
  return %in;
57 57
}
58 58

  
59 59
sub _request_to_hash {
60
  $main::lxdebug->enter_sub();
60
  $main::lxdebug->enter_sub(2);
61 61

  
62 62
  my ($input) = @_;
63 63
  my ($i,        $loc,  $key,    $val);
......
108 108
      }
109 109
    }
110 110

  
111
    $main::lxdebug->leave_sub();
111
    $main::lxdebug->leave_sub(2);
112 112
    return %ATTACH;
113 113

  
114 114
      } else {
115
    $main::lxdebug->leave_sub();
115
    $main::lxdebug->leave_sub(2);
116 116
    return _input_to_hash($input);
117 117
  }
118 118
}
......
162 162
}
163 163

  
164 164
sub escape {
165
  $main::lxdebug->enter_sub();
165
  $main::lxdebug->enter_sub(2);
166 166

  
167 167
  my ($self, $str, $beenthere) = @_;
168 168

  
......
173 173

  
174 174
  $str =~ s/([^a-zA-Z0-9_.-])/sprintf("%%%02x", ord($1))/ge;
175 175

  
176
  $main::lxdebug->leave_sub();
176
  $main::lxdebug->leave_sub(2);
177 177

  
178 178
  return $str;
179 179
}
180 180

  
181 181
sub unescape {
182
  $main::lxdebug->enter_sub();
182
  $main::lxdebug->enter_sub(2);
183 183

  
184 184
  my ($self, $str) = @_;
185 185

  
......
188 188

  
189 189
  $str =~ s/%([0-9a-fA-Z]{2})/pack("c",hex($1))/eg;
190 190

  
191
  $main::lxdebug->leave_sub();
191
  $main::lxdebug->leave_sub(2);
192 192

  
193 193
  return $str;
194 194
}
......
578 578
}
579 579

  
580 580
sub format_amount {
581
  $main::lxdebug->enter_sub();
581
  $main::lxdebug->enter_sub(2);
582 582

  
583 583
  my ($self, $myconfig, $amount, $places, $dash) = @_;
584 584

  
......
643 643
    }
644 644
  }
645 645

  
646
  $main::lxdebug->leave_sub();
646
  $main::lxdebug->leave_sub(2);
647 647

  
648 648
  return $amount;
649 649
}
650 650

  
651 651
sub parse_amount {
652
  $main::lxdebug->enter_sub();
652
  $main::lxdebug->enter_sub(2);
653 653

  
654 654
  my ($self, $myconfig, $amount) = @_;
655
  $main::lxdebug->message(LXDebug::DEBUG2, "Start amount: $amount");
656 655

  
657 656
  if ($myconfig->{in_numberformat} == 1) {
658

  
659 657
    # Extra input number format 1000.00 or 1000,00
660
    $main::lxdebug->message(LXDebug::DEBUG2,
661
              "in_numberformat: " . $main::locale->text('1000,00 or 1000.00'));
662 658
    $amount =~ s/,/\./g;
663

  
664
    #$main::lxdebug->message(LXDebug::DEBUG2, "1.Parsed Number: $amount") if ($amount);
665 659
    $amount = scalar reverse $amount;
666

  
667
    #$main::lxdebug->message(LXDebug::DEBUG2, "2.Parsed Number: $amount") if ($amount);
668 660
    $amount =~ s/\./DOT/;
669

  
670
    #$main::lxdebug->message(LXDebug::DEBUG2, "3.Parsed Number: $amount") if ($amount);
671 661
    $amount =~ s/\.//g;
672

  
673
    #$main::lxdebug->message(LXDebug::DEBUG2, "4.Parsed Number: $amount") if ($amount);
674 662
    $amount =~ s/DOT/\./;
675

  
676
    #$main::lxdebug->message(LXDebug::DEBUG2, "5.Parsed Number:" . $amount) if ($amount);
677 663
    $amount = scalar reverse $amount;
678
    $main::lxdebug->message(LXDebug::DEBUG2,
679
                            "Parsed amount:" . $amount . "\n");
680

  
664
    $main::lxdebug->leave_sub(2);
681 665
    return ($amount * 1);
682

  
683 666
  }
684
  $main::lxdebug->message(LXDebug::DEBUG2,
685
              "in_numberformat: " . $main::locale->text('equal Outputformat'));
686
  $main::lxdebug->message(LXDebug::DEBUG2,
687
                          " = numberformat: $myconfig->{numberformat}");
667

  
688 668
  if (   ($myconfig->{numberformat} eq '1.000,00')
689 669
      || ($myconfig->{numberformat} eq '1000,00')) {
690 670
    $amount =~ s/\.//g;
......
697 677

  
698 678
  $amount =~ s/,//g;
699 679

  
700
  $main::lxdebug->message(LXDebug::DEBUG2, "Parsed amount:" . $amount . "\n")
701
    if ($amount);
702
  $main::lxdebug->leave_sub();
680
  $main::lxdebug->leave_sub(2);
703 681

  
704 682
  return ($amount * 1);
705 683
}
706 684

  
707 685
sub round_amount {
708
  $main::lxdebug->enter_sub();
686
  $main::lxdebug->enter_sub(2);
709 687

  
710 688
  my ($self, $amount, $places) = @_;
711 689
  my $round_amount;
......
719 697
  $amount = $amount * (10**($places));
720 698
  $round_amount = int($amount + .5 * ($amount <=> 0)) / (10**($places));
721 699

  
722
  $main::lxdebug->leave_sub();
700
  $main::lxdebug->leave_sub(2);
723 701

  
724 702
  return $round_amount;
725 703

  
SL/LXDebug.pm
53 53
}
54 54

  
55 55
sub enter_sub {
56
  my ($self) = @_;
56
  my ($self, $level) = @_;
57

  
58
  return if $global_trace_subs < $level;
57 59

  
58 60
  if (!$self->{"trace_subs"} && !$global_trace_subs) {
59 61
    return;
......
77 79
}
78 80

  
79 81
sub leave_sub {
80
  my ($self) = @_;
82
  my ($self, $level) = @_;
83

  
84
  return if $global_trace_subs < $level;
81 85

  
82 86
  if (!$self->{"trace_subs"} && !$global_trace_subs) {
83 87
    return;
SL/Menu.pm
138 138
}
139 139

  
140 140
sub access_control {
141
  $main::lxdebug->enter_sub();
141
  $main::lxdebug->enter_sub(2);
142 142

  
143 143
  my ($self, $myconfig, $menulevel) = @_;
144 144

  
......
161 161
  @a = ();
162 162
  map { push @a, $_ unless $excl{$_} } (@menu);
163 163

  
164
  $main::lxdebug->leave_sub();
164
  $main::lxdebug->leave_sub(2);
165 165

  
166 166
  return @a;
167 167
}
SL/User.pm
612 612

  
613 613
## LINET
614 614
sub calc_version {
615
  $main::lxdebug->enter_sub();
615
  $main::lxdebug->enter_sub(2);
616 616

  
617 617
  my (@v, $version, $i);
618 618

  
......
626 626
    $version += $v[$i];
627 627
  }
628 628

  
629
  $main::lxdebug->leave_sub();
629
  $main::lxdebug->leave_sub(2);
630 630
  return $version;
631 631
}
632 632

  
......
733 733
      last if ($version < $mindb);
734 734

  
735 735
      # apply upgrade
736
      $main::lxdebug->message(DEBUG2, "Appliying Update $upgradescript");
736 737
      $self->process_query($form, $dbh, "sql/" . $form->{"dbdriver"} . "-upgrade/$upgradescript", $str_maxdb);
737 738

  
738 739
      $version = $maxdb;

Auch abrufbar als: Unified diff