Bug 10403: (follow-up) fix test to use vendor created earlier during test
[koha.git] / misc / check_sysprefs.pl
index 6823808..91d0075 100755 (executable)
@@ -5,38 +5,41 @@
 # export PERL5LIB
 # then ./check_sysprefs.pl path  (if path is blank it will use .)
 
-#use strict;
-#use warnings; FIXME - Bug 2505
+use strict;
+use warnings;
 
 use File::Find;
+
 use C4::Context;
 
 @ARGV = qw(.) unless @ARGV;
 
 sub check_sys_pref {
-       my $dbh = C4::Context->dbh();
-       my $query = "SELECT * FROM systempreferences WHERE variable = ?";
-       my $sth = $dbh->prepare($query);        
-       if (! -d _ ){
-               my $name=$File::Find::name;
-               if ($name =~ /(\.pl|\.pm)$/){
-                       open (FILE,"$_") || die "cant open $name";
-                       while (my $inp = <FILE>){
-                               if ($inp =~ /C4::Context->preference\((.*?)\)/){
-                                       my $variable = $1;
-                                       $variable =~s /\'|\"//g;
-                                       $sth->execute($variable);
-                                       if (my $data=$sth->fetchrow_hashref()){
-                                       }
-                                       else {
-                                               print "$name has a reference to $variable, this does not exist in the database\n";
-                                       }
-                               }
-                       }
-                       close FILE;
-               }
-       }
-       $sth->finish();
+    my $dbh   = C4::Context->dbh();
+    my $query = "SELECT * FROM systempreferences WHERE variable = ?";
+    my $sth   = $dbh->prepare($query);
+    if ( !-d _ ) {
+        my $name = $File::Find::name;
+        if ( $name =~ /(\.pl|\.pm)$/ ) {
+            open( FILE, "$_" ) || die "cant open $name";
+            while ( my $inp = <FILE> ) {
+                if ( $inp =~ /C4::Context->preference\((.*?)\)/ ) {
+                    my $variable = $1;
+                    $variable =~ s /\'|\"//g;
+                    $sth->execute($variable);
+                    if ( my $data = $sth->fetchrow_hashref() ) {
+                        if ( $data->{variable} eq $variable ) {
+                            next;
+                        }
+                    }
+                    print
+"$name has a reference to $variable, this does not exist in the database\n";
+                }
+            }
+            close FILE;
+        }
+    }
+    $sth->finish();
 }
-       
-find(\&check_sys_pref,@ARGV);
+
+find( \&check_sys_pref, @ARGV );