Bugfix in SL/Menu und weitere stricts.
authorSven Schöling <s.schoeling@linet-services.de>
Tue, 20 Oct 2009 09:11:56 +0000 (11:11 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Tue, 20 Oct 2009 09:11:56 +0000 (11:11 +0200)
SL/AP.pm
SL/DBUtils.pm
SL/DN.pm
SL/GenericTranslations.pm
SL/LXDebug.pm
SL/Menu.pm

index ed0fe98..d4fe484 100644 (file)
--- a/SL/AP.pm
+++ b/SL/AP.pm
@@ -37,6 +37,8 @@ package AP;
 use SL::DBUtils;
 use SL::MoreCommon;
 
+use strict;
+
 sub post_transaction {
   $main::lxdebug->enter_sub();
 
index f2e99a8..000bc1b 100644 (file)
@@ -1,9 +1,9 @@
 package SL::DBUtils;
 
 require Exporter;
-@ISA = qw(Exporter);
+our @ISA = qw(Exporter);
 
-@EXPORT = qw(conv_i conv_date conv_dateq do_query selectrow_query do_statement
+our @EXPORT = qw(conv_i conv_date conv_dateq do_query selectrow_query do_statement
              dump_query quote_db_date
              selectfirst_hashref_query selectfirst_array_query
              selectall_hashref_query selectall_array_query
@@ -36,7 +36,7 @@ sub do_query {
 
   my ($form, $dbh, $query) = splice(@_, 0, 3);
 
-  dump_query(LXDebug::QUERY, '', $query, @_);
+  dump_query(LXDebug->QUERY(), '', $query, @_);
 
   my $result;
   if (0 == scalar(@_)) {
@@ -57,7 +57,7 @@ sub do_statement {
 
   my ($form, $sth, $query) = splice(@_, 0, 3);
 
-  dump_query(LXDebug::QUERY, '', $query, @_);
+  dump_query(LXDebug->QUERY(), '', $query, @_);
 
   my $result;
   if (0 == scalar(@_)) {
@@ -74,8 +74,9 @@ sub do_statement {
 sub dump_query {
   my ($level, $msg, $query) = splice(@_, 0, 3);
 
-  my $filename = $self_filename = 'SL/DBUtils.pm';
-  my $caller_level;
+  my $self_filename = 'SL/DBUtils.pm';
+  my $filename      = $self_filename;
+  my ($caller_level, $line, $subroutine);
   while ($filename eq $self_filename) {
     (undef, $filename, $line, $subroutine) = caller $caller_level++;
   }
@@ -111,7 +112,7 @@ sub prepare_query {
 
   my ($form, $dbh, $query) = splice(@_, 0, 3);
 
-  dump_query(LXDebug::QUERY, '', $query, @_);
+  dump_query(LXDebug->QUERY(), '', $query, @_);
 
   my $sth = $dbh->prepare($query) || $form->dberror($query);
 
@@ -125,7 +126,7 @@ sub prepare_execute_query {
 
   my ($form, $dbh, $query) = splice(@_, 0, 3);
 
-  dump_query(LXDebug::QUERY, '', $query, @_);
+  dump_query(LXDebug->QUERY(), '', $query, @_);
 
   my $sth = $dbh->prepare($query) || $form->dberror($query);
   if (scalar(@_) != 0) {
index a325766..e1a6342 100644 (file)
--- a/SL/DN.pm
+++ b/SL/DN.pm
@@ -41,6 +41,8 @@ use SL::Mailer;
 use SL::MoreCommon;
 use SL::Template;
 
+use strict;
+
 sub get_config {
   $main::lxdebug->enter_sub();
 
index 5592af2..a509212 100644 (file)
@@ -2,6 +2,8 @@ package GenericTranslations;
 
 use SL::DBUtils;
 
+use strict;
+
 sub get {
   $main::lxdebug->enter_sub();
 
index 047d2b0..3dbd14f 100644 (file)
@@ -17,6 +17,8 @@ use POSIX qw(strftime);
 
 use YAML;
 
+use strict;
+
 my $data_dumper_available;
 
 our $global_level;
index adac1b0..9fcf153 100644 (file)
@@ -400,7 +400,10 @@ sub set_access {
 
   $self->{ORDER} = [ grep { $self->{$_}->{VISIBLE} } @{ $self->{ORDER} } ];
 
+  { no strict 'refs';
+  # ToDO: fix this. nuke and pave algorithm without type checking screams for problems.
   map { delete @{$self->{$_}}{qw(GRANTED IS_MENU NUM_VISIBLE_CHILDREN VISIBLE ACCESS)} if ($_ ne 'ORDER') } keys %{ $self };
+  }
 }
 
 sub dump_visible {