3 # This Script can be used to provide a list of ALL external modules ***used*** (uncommented) in Koha.
4 # It provides you not only the list of modules BUT ALSO the files that uses those modules.
5 # utf8 or warnings or other lib use are not taken into account at the moment.
10 my $dir=C4
::Context
->config('intranetdir');
11 qx(grep -r
"^ *use" $dir | grep -v
"C4\|strict\|vars" >/tmp/modulesKoha
.log);
12 $dir=C4
::Context
->config('opacdir');
13 qx(grep -r
"^ *use" $dir | grep -v
"C4\|strict\|vars" >>/tmp/modulesKoha
.log);
15 open my $fh, '<', '/tmp/modulesKoha.log' ||die "unable to open file /tmp/modulesKoha.log";
17 while (my $line=<$fh>){
18 if ( $line=~m
#(.*)\:\s*use\s+([A-Z][^\s;]+)# ){
19 my ($file,$module)=($1,$2);
20 my @filename = split /\//, $file;
21 push @
{$modulehash{$module}},$filename[scalar(@filename) - 1];
24 print "external modules used in Koha ARE :\n";
25 map {print "* $_ \t in files ",join (",",@
{$modulehash{$_}}),"\n" } sort keys %modulehash;
27 unlink "/tmp/modulesKoha.log";