my $basedir = "../..";
my $locales_dir = ".";
my $bindir = "$basedir/bin/mozilla";
+my @progdirs = ( "$basedir/SL/Controller", "$basedir/SL/Template/Plugin" );
my $dbupdir = "$basedir/sql/Pg-upgrade";
my $dbupdir2 = "$basedir/sql/Pg-upgrade2";
my $menufile = "menu.ini";
init();
opendir DIR, "$bindir" or die "$!";
-my @progfiles = grep { /\.pl$/ && !/(_custom|^\.)/ } readdir DIR;
+my @progfiles = map { [ $_, $bindir ] } grep { /\.pl$/ && !/(_custom|^\.)/ } readdir DIR;
seekdir DIR, 0;
my @customfiles = grep /_custom/, readdir DIR;
closedir DIR;
+foreach my $dir (@progdirs) {
+ opendir DIR, $dir or die "$!";
+ push @progfiles, map { [ $_, $dir ] } grep { /\.pm$/ } readdir DIR;
+ closedir DIR;
+}
+
# put customized files into @customfiles
my @menufiles;
my %old_texts = %{ $self->{texts} || {} };
-map({ handle_file($_, $bindir); } @progfiles);
+map({ handle_file(@{ $_ }); } @progfiles);
map({ handle_file($_, $dbupdir); } @dbplfiles);
map({ handle_file($_, $dbupdir2); } @dbplfiles2);
} else {
if ($quote_next) {
+ $text .= '\\' unless $cur_char eq "'";
$text .= $cur_char;
$quote_next = 0;
} elsif ($cur_char eq '\\') {
- $text .= $cur_char;
$quote_next = 1;
} elsif ($cur_char eq $inside_string) {
my ($is_submit, $line_no, $sub_line_no) = (0, 0, 0);
while (<$fh>) {
+ last if /^\s*__END__/;
+
$line_no++;
# is this another file
}
# is this a template call?
- if (/parse_html_template2?\s*\(\s*[\"\']([\w\/]+)\s*[\"\']/) {
+ if (/(?:parse_html_template2?|render)\s*\(\s*[\"\']([\w\/]+)\s*[\"\']/) {
my $newfile = "$basedir/templates/webpages/$1.html";
if (/parse_html_template2/) {
print "E: " . strip_base($file) . " is still using 'parse_html_template2' for " . strip_base($newfile) . ".\n";
my $data_name = $params{data_name};
my @delim = split //, ($params{delim} || '{}');
- open my $fh, '>', $file or die "$! : $file";
+ open my $fh, '>:encoding(utf8)', $file or die "$! : $file";
$charset =~ s/\r?\n//g;
my $emacs_charset = lc $charset;
- print $fh "#!/usr/bin/perl\n# -*- coding: $emacs_charset; -*-\n# vim: fenc=$charset\n\n";
+ print $fh "#!/usr/bin/perl\n# -*- coding: $emacs_charset; -*-\n# vim: fenc=$charset\n\nuse utf8;\n\n";
print $fh $header, "\n" if $header;
print $fh "$data_name = $delim[0]\n" if $data_name;