Added code from Philippe Mingo on June 1, 2001
[squirrelmail.git] / config / conf.pl
index ab645573a43065ed97dee59508d78dd84101af34..2295f560300bf3527247d460938b83034e0907d7 100755 (executable)
@@ -6,7 +6,7 @@
 #
 # $Id$
 ############################################################              
-$conf_pl_version = "x62";
+$conf_pl_version = "x63";
 
 ############################################################              
 # Some people try to run this as a CGI. That's wrong!
@@ -245,6 +245,9 @@ if (!$optional_delimiter) {
 if (!$use_authenticated_smtp) {
     $use_authenticated_smtp = "false";
 }
+if (!$auto_create_special) {
+       $auto_create_special = "false";
+}
 
 #####################################################################################
 if ($config_use_color == 1) {
@@ -282,6 +285,8 @@ while (($command ne "q") && ($command ne "Q")) {
       print "1.  Organization Name    : $WHT$org_name$NRM\n";
       print "2.  Organization Logo    : $WHT$org_logo$NRM\n";
       print "3.  Organization Title   : $WHT$org_title$NRM\n";
+      print "4.  Signout Page         : $WHT$signout_page$NRM\n";
+      print "5.  Default Language     : $WHT$squirrelmail_default_language$NRM\n";
       print "\n";
       print "R   Return to Main Menu\n";
    } elsif ($menu == 2) {
@@ -323,6 +328,7 @@ while (($command ne "q") && ($command ne "Q")) {
       print "11. Show 'Contain Sub.' Option : $WHT$show_contain_subfolders_option$NRM\n";
       print "12. Default Unseen Notify      : $WHT$default_unseen_notify$NRM\n";
       print "13. Default Unseen Type        : $WHT$default_unseen_type$NRM\n";
+         print "14. Auto create Sent and Trash : $WHT$auto_create_special$NRM\n";
       print "\n";
       print "R   Return to Main Menu\n";
    } elsif ($menu == 4) {
@@ -450,6 +456,8 @@ while (($command ne "q") && ($command ne "Q")) {
          if    ($command == 1) { $org_name   = command1 (); }
          elsif ($command == 2) { $org_logo   = command2 (); }
          elsif ($command == 3) { $org_title  = command3 (); }
+         elsif ($command == 4) { $signout_page  = command4 (); }
+        elsif ($command == 5) { $squirrelmail_default_language = command5(); }
       } elsif ($menu == 2) {
          if    ($command == 1)  { $domain             = command11 (); }
          elsif ($command == 2)  { $imapServerAddress  = command12 (); }
@@ -476,6 +484,7 @@ while (($command ne "q") && ($command ne "Q")) {
          elsif ($command == 11){ $show_contain_subfolders_option = command211(); }
          elsif ($command == 12){ $default_unseen_notify          = command212(); }
          elsif ($command == 13){ $default_unseen_type            = command213(); }
+         elsif ($command == 14){ $auto_create_special            = command214(); }
       } elsif ($menu == 4) {
          if    ($command == 1) { $default_charset          = command31 (); }
          elsif ($command == 2) { $data_dir                 = command33 (); }
@@ -548,6 +557,41 @@ sub command3 {
    return $new_org_title;
 }
 
+# signout_page
+sub command4 {
+   print "When users click the Sign Out button they will be logged out and\n";
+   print "then sent to signout_page.  If signout_page is left empty,\n";
+   print "(hit space and then return) they will be taken, as normal,\n";
+   print "to the default and rather sparse SquirrelMail signout page.\n";
+   print "\n";
+   print "[$WHT$signout_page$NRM]: $WHT";
+   $new_signout_page = <STDIN>;
+   if ($new_signout_page eq "\n") {
+      $new_signout_page = $signout_page;
+   } else {
+      $new_signout_page =~ s/[\r|\n]//g;
+      $new_signout_page =~ s/^\s+$//g;
+   }
+   return $new_signout_page;
+}
+
+# Default language
+sub command5 {
+   print "SquirrelMail attempts to set the language in many ways.  If it\n";
+   print "can not figure it out in another way, it will default to this\n";
+   print "language.  Please use the two-letter code for the desired language.\n";
+   print "\n";
+   print "[$WHT$squirrelmail_default_language$NRM]: $WHT";
+   $new_signout_page = <STDIN>;
+   if ($new_signout_page eq "\n") {
+      $new_signout_page = $squirrelmail_default_language;
+   } else {
+      $new_signout_page =~ s/[\r|\n]//g;
+      $new_signout_page =~ s/^\s+$//g;
+   }
+   return $new_signout_page;
+}
+
 ####################################################################################
 
 # domain
@@ -687,6 +731,7 @@ sub command19 {
    print "    uw         = University of Washington's IMAP server\n";
    print "    exchange   = Microsoft Exchange IMAP server\n";
    print "    courier    = Courier IMAP server\n";
+   print "    other      = Not one of the above servers\n";
    print "[$WHT$imap_server_type$NRM]: $WHT";
    $new_imap_server_type = <STDIN>;
    if ($new_imap_server_type eq "\n") {
@@ -1101,6 +1146,28 @@ sub command213 {
    return $default_unseen_type;
 }
 
+# Auto create special folders
+sub command214 {
+   print "Would you like the Sent and Trash folders to be created automatically for\n";
+   print "you when a user loggs in?  If the user accidentally deletes their special\n";
+   print "folders, this option will automatically create it again for them.\n";
+   print "\n";
+   
+   if ($auto_create_special eq "true") {
+      $default_value = "y";
+   } else {
+      $default_value = "n";
+   }
+   print "Auto create special folders? (y/n) [$WHT$default_value$NRM]: $WHT";
+   $new_show = <STDIN>;
+   if (($new_show =~ /^y\n/i) || (($new_show =~ /^\n/) && ($default_value eq "y"))) {
+      $auto_create_special = "true";
+   } else {
+      $auto_create_special = "false";
+   }
+   return $auto_create_special;
+}
+
 
 ############# GENERAL OPTIONS #####################
 
@@ -1547,19 +1614,30 @@ sub save_data {
 
    print FILE "<?php\n\t/** SquirrelMail configuration\n";
    print FILE "\t ** Created using the configure script, conf.pl\n\t **/\n\n";
+   
+   print FILE "if (defined('config_php'))\n   return;\n";
+   print FILE "define('config_php', true);\n\n";
+
+   print FILE "\tglobal \$print_config_version, \$config_version, \$config_use_color;\n";
 
    if ($print_config_version) {
       print FILE "\t\$config_version = \"$print_config_version\";\n";
    }
    print FILE "\t\$config_use_color = $config_use_color;\n"; 
    print FILE "\n";
-   
+
+   print FILE "\tglobal \$org_name, \$org_logo, \$org_title, \$signout_page;\n";
    print FILE "\t\$org_name   = \"$org_name\";\n";
    print FILE "\t\$org_logo   = \"$org_logo\";\n";
    print FILE "\t\$org_title  = \"$org_title\";\n";
+   print FILE "\t\$signout_page  = \"$signout_page\";\n";
 
    print FILE "\n";
 
+   print FILE "\tglobal \$domain, \$imapServerAddress, \$imapPort;\n";
+   print FILE "\tglobal \$useSendmail, \$smtpServerAddress, \$smtpPort;\n";
+   print FILE "\tglobal \$sendmail_path, \$use_authenticated_smtp, \$imap_server_type;\n";
+   print FILE "\tglobal \$invert_time, \$optional_delimiter;\n";
    print FILE "\t\$domain                 = \"$domain\";\n";
    print FILE "\t\$imapServerAddress      = \"$imapServerAddress\";\n";
    print FILE "\t\$imapPort               =  $imapPort;\n";
@@ -1574,6 +1652,12 @@ sub save_data {
    
    print FILE "\n";
 
+   print FILE "\tglobal \$default_folder_prefix, \$trash_folder, \$sent_folder;\n";
+   print FILE "\tglobal \$default_move_to_trash, \$default_move_to_sent;\n";
+   print FILE "\tglobal \$show_prefix_option, \$list_special_folders_first;\n";
+   print FILE "\tglobal \$use_special_folder_color, \$auto_expunge, \$default_sub_of_inbox;\n";
+   print FILE "\tglobal \$show_contain_subfolders_option, \$default_unseen_notify;\n";
+   print FILE "\tglobal \$default_unseen_type, \$auto_create_special;\n";
    print FILE "\t\$default_folder_prefix            = \"$default_folder_prefix\";\n";
    print FILE "\t\$trash_folder                     = \"$trash_folder\";\n";
    print FILE "\t\$sent_folder                      = \"$sent_folder\";\n";
@@ -1587,8 +1671,11 @@ sub save_data {
    print FILE "\t\$show_contain_subfolders_option   =  $show_contain_subfolders_option;\n";
    print FILE "\t\$default_unseen_notify            =  $default_unseen_notify;\n";
    print FILE "\t\$default_unseen_type              =  $default_unseen_type;\n";
+   print FILE "\t\$auto_create_special              =  $auto_create_special;\n";
    print FILE "\n";
 
+   print FILE "\tglobal \$default_charset, \$data_dir, \$attachment_dir;\n";
+   print FILE "\tglobal \$default_left_size, \$force_username_lowercase;\n";
    print FILE "\t\$default_charset          = \"$default_charset\";\n";
    print FILE "\t\$data_dir                 = \"$data_dir\";\n";
    print FILE "\t\$attachment_dir           = \"$attachment_dir\";\n";
@@ -1597,12 +1684,14 @@ sub save_data {
 
    print FILE "\n";
 
+   print FILE "\tglobal \$plugins;\n";
    for ($ct=0; $ct <= $#plugins; $ct++) {
       print FILE "\t\$plugins[$ct] = \"$plugins[$ct]\";\n";
    }
    
    print FILE "\n";
 
+   print FILE "\tglobal \$theme_css, \$theme;\n";
    print FILE "\t\$theme_css = \"$theme_css\";\n";
    for ($count=0; $count <= $#theme_name; $count++) {
       print FILE "\t\$theme[$count][\"PATH\"] = \"$theme_path[$count]\";\n";
@@ -1614,6 +1703,7 @@ sub save_data {
    if ($default_use_javascript_addr_book ne "true") {
       $default_use_javascript_addr_book = "false";
    }   
+   print FILE "\tglobal \$default_use_javascript_addr_book, \$ldap_server;\n";
    print FILE "\t\$default_use_javascript_addr_book = $default_use_javascript_addr_book;\n";
    for ($count=0; $count <= $#ldap_host; $count++) {
       print FILE "\t\$ldap_server[$count] = Array(\n";
@@ -1634,9 +1724,12 @@ sub save_data {
       print FILE ");\n\n";
    }
 
+   print FILE "\tglobal \$motd;\n";
    print FILE "\t\$motd = \"$motd\";\n";
+   
+   print FILE "\tglobal \$squirrelmail_default_language;\n";
+   print FILE "\t\$squirrelmail_default_language = \"$squirrelmail_default_language\";\n";
 
-   print FILE "?>\n";
    close FILE;
 }