Update pot file
[squirrelmail.git] / config / conf.pl
index d98b9aff126ffd6a6b115963f918863175c952f1..8b6ddd983bc96cb1ffb11099a0a3a3c0a1236659 100755 (executable)
@@ -724,7 +724,12 @@ while ( ( $command ne "q" ) && ( $command ne "Q" ) && ( $command ne ":q" ) ) {
         $num = 0;
         for ( $count = 0 ; $count <= $#plugins ; $count++ ) {
             $num = $count + 1;
-            print "    $num. $plugins[$count]" . get_plugin_version($plugins[$count]) . "\n";
+            $english_name = get_plugin_english_name($plugins[$count]);
+            if ( $english_name eq "" ) {
+                print "    $num. $plugins[$count]" . get_plugin_version($plugins[$count]) . "\n";
+            } else {
+                print "    $num. $english_name ($plugins[$count])" . get_plugin_version($plugins[$count]) . "\n";
+            }
         }
         print "\n  Available Plugins:\n";
         opendir( DIR, "../plugins" );
@@ -732,7 +737,7 @@ while ( ( $command ne "q" ) && ( $command ne "Q" ) && ( $command ne ":q" ) ) {
         $pos            = 0;
         @unused_plugins = ();
         for ( $i = 0 ; $i <= $#files ; $i++ ) {
-            if ( -d "../plugins/" . $files[$i] && $files[$i] !~ /^\./ && $files[$i] ne "CVS" ) {
+            if ( -d "../plugins/" . $files[$i] && $files[$i] !~ /^\./ && $files[$i] ne ".svn" ) {
                 $match = 0;
                 for ( $k = 0 ; $k <= $#plugins ; $k++ ) {
                     if ( $plugins[$k] eq $files[$i] ) {
@@ -748,7 +753,12 @@ while ( ( $command ne "q" ) && ( $command ne "Q" ) && ( $command ne ":q" ) ) {
 
         for ( $i = 0 ; $i <= $#unused_plugins ; $i++ ) {
             $num = $num + 1;
-            print "    $num. $unused_plugins[$i]" . get_plugin_version($unused_plugins[$i]) . "\n";
+            $english_name = get_plugin_english_name($unused_plugins[$i]);
+            if ( $english_name eq "" ) {
+                print "    $num. $unused_plugins[$i]" . get_plugin_version($unused_plugins[$i]) . "\n";
+            } else {
+                print "    $num. $english_name ($unused_plugins[$i])" . get_plugin_version($unused_plugins[$i]) . "\n";
+            }
         }
         closedir DIR;
 
@@ -2770,11 +2780,11 @@ sub command_userThemes {
             print "\nStarting detection...\n\n";
 
             opendir( DIR, "../css" );
-            @files = readdir(DIR);
+            @files = sort(readdir(DIR));
             $cnt = 0;
             while ( $cnt <= $#files ) {
                 $filename = "../css/" . $files[$cnt] .'/';
-                if ( $filename ne "../css/rtl.css" && -e $filename . "default.css" ) {
+                if ( $files[$cnt] !~ /^\./ && $filename ne "../css/rtl.css" && -e $filename . "default.css" ) {
                     $found = 0;
                     for ( $x = 0 ; $x <= $#user_theme_path ; $x++ ) {
                         if ( $user_theme_path[$x] eq $filename ) {
@@ -2783,9 +2793,16 @@ sub command_userThemes {
                     }
                     if ( $found != 1 ) {
                         print "** Found user theme: $filename\n";
-                        print "   What is its name? ";
+                        $def = $files[$cnt];
+                        $def =~ s/_/ /g;
+                        $def = lc($def);
+                        #$def =~ s/(^\w+)/ucfirst $1/eg;
+                        #$def =~ s/(\s+)(\w+)/$1 . ucfirst $2/eg;
+                        $def =~ s/(^\w+)|(\s+)(\w+)/ucfirst $1 . $2 . ucfirst $3/eg;
+                        print "   What is its name? [$def]: ";
                         $nm = <STDIN>;
-                        $nm =~ s/[\n\r]//g;
+                        $nm =~ s/^\s+|\s+$|[\n\r]//g;
+                        if ( $nm eq '' ) { $nm = $def; }
                         $user_theme_name[ $#user_theme_name + 1 ] = $nm;
                         $user_theme_path[ $#user_theme_path + 1 ] = $filename;
                     }
@@ -2975,11 +2992,11 @@ sub command_iconSets {
             print "\nStarting detection...\n\n";
 
             opendir( DIR, "../images/themes/" );
-            @files = readdir(DIR);
+            @files = sort(readdir(DIR));
             $cnt = 0;
             while ( $cnt <= $#files ) {
                 $filename = "../images/themes/" . $files[$cnt] .'/';
-                if ( -d "../images/themes/" . $files[$cnt] && $files[$cnt] !~ /^\./ && $files[$cnt] ne "CVS" ) {
+                if ( -d "../images/themes/" . $files[$cnt] && $files[$cnt] !~ /^\./ && $files[$cnt] ne ".svn" ) {
                     $found = 0;
                     for ( $x = 0 ; $x <= $#icon_theme_path ; $x++ ) {
                         if ( $icon_theme_path[$x] eq $filename ) {
@@ -2988,9 +3005,16 @@ sub command_iconSets {
                     }
                     if ( $found != 1 ) {
                         print "** Found icon theme: $filename\n";
-                        print "   What is its name? ";
+                        $def = $files[$cnt];
+                        $def =~ s/_/ /g;
+                        $def = lc($def);
+                        #$def =~ s/(^\w+)/ucfirst $1/eg;
+                        #$def =~ s/(\s+)(\w+)/$1 . ucfirst $2/eg;
+                        $def =~ s/(^\w+)|(\s+)(\w+)/ucfirst $1 . $2 . ucfirst $3/eg;
+                        print "   What is its name? [$def]: ";
                         $nm = <STDIN>;
-                        $nm =~ s/[\n\r]//g;
+                        $nm =~ s/^\s+|\s+$|[\n\r]//g;
+                        if ( $nm eq '' ) { $nm = $def; }
                         $icon_theme_name[ $#icon_theme_name + 1 ] = $nm;
                         $icon_theme_path[ $#icon_theme_path + 1 ] = $filename;
                     }
@@ -3171,10 +3195,10 @@ sub command_templates {
         } elsif ( $input =~ /^\s*t\s*/i ) {
             print "\nStarting detection...\n\n";
             opendir( DIR, "../templates" );
-            @files = readdir(DIR);
+            @files = sort(readdir(DIR));
             $cnt = 0;
             while ( $cnt <= $#files ) {
-                if ( -d "../templates/" . $files[$cnt] && $files[$cnt] !~ /^\./ && $files[$cnt] ne "CVS" ) {
+                if ( -d "../templates/" . $files[$cnt] && $files[$cnt] !~ /^\./ && $files[$cnt] ne ".svn" ) {
                     $filename = $files[$cnt];
                     $found = 0;
                     for ( $x = 0 ; $x <= $#templateset_id ; $x++ ) {
@@ -3185,9 +3209,16 @@ sub command_templates {
                     }
                     if ( $found != 1) {
                         print "** Found template set: $filename\n";
-                        print "   What is it's name (as shown to your users)? ";
+                        $def = $files[$cnt];
+                        $def =~ s/_/ /g;
+                        $def = lc($def);
+                        #$def =~ s/(^\w+)/ucfirst $1/eg;
+                        #$def =~ s/(\s+)(\w+)/$1 . ucfirst $2/eg;
+                        $def =~ s/(^\w+)|(\s+)(\w+)/ucfirst $1 . $2 . ucfirst $3/eg;
+                        print "   What is it's name (as shown to your users)? [$def]: ";
                         $nm = <STDIN>;
-                        $nm =~ s/[\n\r]//g;
+                        $nm =~ s/^\s+|\s+$|[\n\r]//g;
+                        if ( $nm eq '' ) { $nm = $def; }
                         $templateset_id[ $#templateset_id + 1 ] = $filename;
                         $templateset_name[ $#templateset_name + 1 ] = $nm;
                     }
@@ -5190,6 +5221,61 @@ sub get_plugin_version() {
 
 }
 
+# determine a plugin's English name
+#
+# parses the setup.php file, looking for the
+# English name in the <plugin>_info() function.
+#
+sub get_plugin_english_name() {
+
+    my $plugin_name = shift(@_);
+
+    $setup_file = '../plugins/' . $plugin_name . '/setup.php';
+    if ( -e "$setup_file" ) {
+        # Make sure that file is readable
+        if (! -r "$setup_file") {
+            print "\n";
+            print "WARNING:\n";
+            print "The file \"$setup_file\" was found, but you don't\n";
+            print "have rights to read it.  The plugin \"";
+            print $plugin_name . "\" may not work correctly until you fix this.\n";
+            print "\nPress enter to continue";
+            $ctu = <STDIN>;
+            print "\n";
+            next;
+        }
+
+        $english_name = '';
+# FIXME: grep the file instead of reading it into memory?
+        $whole_file = '';
+        open( FILE, "$setup_file" );
+        while ( $line = <FILE> ) {
+            $whole_file .= $line;
+        }
+        close(FILE);
+
+        # the English name is in the <plugin>_info function or nothing...
+        #
+        if ($whole_file =~ /('english_name'\s*=>\s*['"](.*?)['"])/) {
+            $english_name .= $2;
+        }
+
+        return $english_name;
+
+        } else {
+            print "\n";
+            print "WARNING:\n";
+            print "The file \"$setup_file\" was not found.\n";
+            print "The plugin \"" . $plugin_name;
+            print "\" may not work correctly until you fix this.\n";
+            print "\nPress enter to continue";
+            $ctu = <STDIN>;
+            print "\n";
+            next;
+        }
+
+}
+
 # parses the setup.php files for all activated plugins and
 # builds static plugin hooks array so we don't have to load
 # ALL plugins are runtime and build the hook array on every