MDN Support. First approach.
[squirrelmail.git] / config / conf.pl
index 86d8662da982bc666fe22046826de1fea9639ebb..a9238792304407fa4baf10f39b131d99d4d5cab8 100755 (executable)
@@ -267,6 +267,9 @@ if(!$default_use_priority) {
 if(!$hide_sm_attributions) {
     $hide_sm_attributions = "false";
 }
+if(!$default_use_mdn) {
+    $default_use_mdn = "true";
+}
 
 if ($ARGV[0] eq '--install-plugin') {
     print "Activating plugin " . $ARGV[1]
@@ -357,22 +360,23 @@ while (($command ne "q") && ($command ne "Q")) {
       print "R   Return to Main Menu\n";
    } elsif ($menu == 3) {
       print $WHT."Folder Defaults\n".$NRM;
-      print "1.  Default Folder Prefix       : $WHT$default_folder_prefix$NRM\n";
-      print "2.  Show Folder Prefix Option   : $WHT$show_prefix_option$NRM\n";
-      print "3.  Trash Folder                : $WHT$trash_folder$NRM\n";
-      print "4.  Sent Folder                 : $WHT$sent_folder$NRM\n";
-      print "5.  Drafts Folder               : $WHT$draft_folder$NRM\n";
-      print "6.  By default, move to trash   : $WHT$default_move_to_trash$NRM\n";
-      print "7.  By default, move to sent    : $WHT$default_move_to_sent$NRM\n";
-      print "8.  By default, save as draft   : $WHT$default_save_as_draft$NRM\n";
-      print "9.  List Special Folders First  : $WHT$list_special_folders_first$NRM\n";
-      print "10. Show Special Folders Color  : $WHT$use_special_folder_color$NRM\n";
-      print "11. Auto Expunge                : $WHT$auto_expunge$NRM\n";
-      print "12. Default Sub. of INBOX       : $WHT$default_sub_of_inbox$NRM\n";
-      print "13. Show 'Contain Sub.' Option  : $WHT$show_contain_subfolders_option$NRM\n";
-      print "14. Default Unseen Notify       : $WHT$default_unseen_notify$NRM\n";
-      print "15. Default Unseen Type         : $WHT$default_unseen_type$NRM\n";
-      print "16. Auto Create Special Folders : $WHT$auto_create_special$NRM\n";
+      print "1.  Default Folder Prefix         : $WHT$default_folder_prefix$NRM\n";
+      print "2.  Show Folder Prefix Option     : $WHT$show_prefix_option$NRM\n";
+      print "3.  Trash Folder                  : $WHT$trash_folder$NRM\n";
+      print "4.  Sent Folder                   : $WHT$sent_folder$NRM\n";
+      print "5.  Drafts Folder                 : $WHT$draft_folder$NRM\n";
+      print "6.  By default, move to trash     : $WHT$default_move_to_trash$NRM\n";
+      print "7.  By default, move to sent      : $WHT$default_move_to_sent$NRM\n";
+      print "8.  By default, save as draft     : $WHT$default_save_as_draft$NRM\n";
+      print "9.  List Special Folders First    : $WHT$list_special_folders_first$NRM\n";
+      print "10. Show Special Folders Color    : $WHT$use_special_folder_color$NRM\n";
+      print "11. Auto Expunge                  : $WHT$auto_expunge$NRM\n";
+      print "12. Default Sub. of INBOX         : $WHT$default_sub_of_inbox$NRM\n";
+      print "13. Show 'Contain Sub.' Option    : $WHT$show_contain_subfolders_option$NRM\n";
+      print "14. Default Unseen Notify         : $WHT$default_unseen_notify$NRM\n";
+      print "15. Default Unseen Type           : $WHT$default_unseen_type$NRM\n";
+      print "16. Auto Create Special Folders   : $WHT$auto_create_special$NRM\n";
+      print "17. Don't move folders into Trash : $WHT$delete_folder$NRM\n";
       print "\n";
       print "R   Return to Main Menu\n";
    } elsif ($menu == 4) {
@@ -385,6 +389,7 @@ while (($command ne "q") && ($command ne "Q")) {
       print "6.  Usernames in Lowercase : $WHT$force_username_lowercase$NRM\n";
       print "7.  Allow use of priority  : $WHT$default_use_priority$NRM\n";
       print "8.  Hide SM attributions   : $WHT$hide_sm_attributions$NRM\n";
+      print "9.  Allow use of MDN       : $WHT$default_use_mdn$NRM\n";      
       print "\n";
       print "R   Return to Main Menu\n";
    } elsif ($menu == 5) {
@@ -545,6 +550,7 @@ while (($command ne "q") && ($command ne "Q")) {
          elsif ($command == 14) { $default_unseen_notify          = command212(); }
          elsif ($command == 15) { $default_unseen_type            = command213(); }
          elsif ($command == 16) { $auto_create_special            = command214(); }
+         elsif ($command == 17) { $delete_folder                  = command215(); }
       } elsif ($menu == 4) {
          if    ($command == 1) { $default_charset          = command31 (); }
          elsif ($command == 2) { $data_dir                 = command33a (); }
@@ -554,6 +560,7 @@ while (($command ne "q") && ($command ne "Q")) {
         elsif ($command == 6) { $force_username_lowercase = command36 (); }
         elsif ($command == 7) { $default_use_priority     = command37 (); }
          elsif ($command == 8) { $hide_sm_attributions     = command38 (); }
+         elsif ($command == 9) { $default_use_mdn          = command39 (); }     
       } elsif ($menu == 5) {
          if    ($command == 1) { command41 (); }
          elsif ($command == 2) { $theme_css = command42 (); }
@@ -1316,6 +1323,28 @@ sub command214 {
    return $auto_create_special;
 }
 
+# Auto create special folders
+sub command215 {
+   print "Would you like to automatically completely delete any deleted\n";
+   print "folders? If not then they will be moved to the Trash folder\n";
+   print "and can be deleted from there\n";
+   print "\n";
+
+   if ($delete_folder eq "true") {
+      $default_value = "y";
+   } else {
+      $default_value = "n";
+   }
+   print "Auto delete folders? (y/n) [$WHT$default_value$NRM]: $WHT";
+   $new_delete = <STDIN>;
+   if (($new_delete =~ /^y\n/i) || (($new_delete =~ /^\n/) && ($default_value eq "y"))) {
+      $delete_folder = "true";
+   } else {
+      $delete_folder = "false";
+   }  
+   return $delete_folder;
+}     
+
 
 ############# GENERAL OPTIONS #####################
 
@@ -1508,6 +1537,25 @@ sub command38 {
 }
 
 
+sub command39 {
+   print "";
+   print "\n";
+   
+   if ($default_use_mdn eq "true") {
+      $default_value = "y";
+   } else {
+      $default_value = "n";
+   }
+   
+   print "Enable read receipt support (y/n) [$WHT$default_value$NRM]: $WHT";
+      $new_show = <STDIN>;
+      if (($new_show =~ /^y\n/i) || (($new_show =~ /^\n/) && ($default_value eq "y"))) {
+         return "true";
+      }
+      return "false";
+}
+
+
 sub command41 {
    print "\nNow we will define the themes that you wish to use.  If you have added\n";
    print "a theme of your own, just follow the instructions (?) about how to add\n";
@@ -1921,14 +1969,12 @@ sub save_data {
         print CF " */\n";
         print CF "\n";
         
-        print CF "global \$config_version, \$config_use_color;\n";
         if ($print_config_version) {
            print CF "\$config_version = '$print_config_version';\n";
         }
         print CF "\$config_use_color = $config_use_color;\n"; 
         print CF "\n";
      
-        print CF "global \$org_name, \$org_logo, \$org_title, \$signout_page, \$frame_top;\n";
         print CF "\$org_name      = \"$org_name\";\n";
         print CF "\$org_logo      = '$org_logo';\n";
         print CF "\$org_title     = \"$org_title\";\n";
@@ -1940,19 +1986,12 @@ sub save_data {
         }
         print CF "\n";
      
-        print CF "global \$motd;\n";
         print CF "\$motd = '$motd';\n";
         print CF "\n";
      
-        print CF "global \$squirrelmail_default_language;\n";
         print CF "\$squirrelmail_default_language = '$squirrelmail_default_language';\n";
         print CF "\n";
      
-        print CF "global \$domain, \$imapServerAddress, \$imapPort;\n";
-        print CF "global \$useSendmail, \$smtpServerAddress, \$smtpPort;\n";
-        print CF "global \$sendmail_path, \$use_authenticated_smtp;\n";
-        print CF "global \$imap_server_type, \$invert_time;\n";
-        print CF "global \$optional_delimiter;\n";
         print CF "\$domain                 = '$domain';\n";
         print CF "\$imapServerAddress      = '$imapServerAddress';\n";
         print CF "\$imapPort               = $imapPort;\n";
@@ -1966,16 +2005,6 @@ sub save_data {
         print CF "\$optional_delimiter     = '$optional_delimiter';\n";
         print CF "\n";
      
-        print CF "global \$default_folder_prefix;\n";
-        print CF "global \$trash_folder, \$default_move_to_trash;\n";
-        print CF "global \$sent_folder, \$default_move_to_sent;\n";
-        print CF "global \$draft_folder, \$default_save_to_draft;\n";
-        print CF "global \$show_prefix_option, \$list_special_folders_first;\n";
-        print CF "global \$use_special_folder_color, \$auto_expunge;\n";
-        print CF "global \$default_sub_of_inbox;\n";
-        print CF "global \$show_contain_subfolders_option;\n";
-        print CF "global \$default_unseen_notify;\n";
-        print CF "global \$default_unseen_type, \$auto_create_special;\n";
         print CF "\$default_folder_prefix          = '$default_folder_prefix';\n";
         print CF "\$trash_folder                   = '$trash_folder';\n";
         print CF "\$sent_folder                    = '$sent_folder';\n";
@@ -1992,12 +2021,9 @@ sub save_data {
         print CF "\$default_unseen_notify          = $default_unseen_notify;\n";
         print CF "\$default_unseen_type            = $default_unseen_type;\n";
         print CF "\$auto_create_special            = $auto_create_special;\n";
+        print CF "\$delete_folder                  = $delete_folder;\n";
         print CF "\n";
      
-        print CF "global \$default_charset;\n";
-        print CF "global \$data_dir, \$attachment_dir, \$dir_hash_level;\n";
-        print CF "global \$default_left_size, \$force_username_lowercase;\n";
-        print CF "global \$default_use_priority, \$hide_sm_attributions;\n";
         print CF "\$default_charset          = '$default_charset';\n";
         print CF "\$data_dir                 = '$data_dir';\n";
         print CF "\$attachment_dir           = \"$attachment_dir\";\n";
@@ -2006,15 +2032,14 @@ sub save_data {
         print CF "\$force_username_lowercase = $force_username_lowercase;\n";
         print CF "\$default_use_priority     = $default_use_priority;\n";
         print CF "\$hide_sm_attributions     = $hide_sm_attributions;\n";
+        print CF "\$default_use_mdn          = $default_use_mdn;\n";
         print CF "\n";
      
-        print CF "global \$plugins;\n";
         for ($ct=0; $ct <= $#plugins; $ct++) {
            print CF "\$plugins[$ct] = '$plugins[$ct]';\n";
         }
         print CF "\n";
      
-        print CF "global \$theme_css, \$theme;\n";
         print CF "\$theme_css = '$theme_css';\n";
         for ($count=0; $count <= $#theme_name; $count++) {
            print CF "\$theme[$count]['PATH'] = '$theme_path[$count]';\n";
@@ -2025,7 +2050,6 @@ sub save_data {
         if ($default_use_javascript_addr_book ne "true") {
            $default_use_javascript_addr_book = "false";
         }   
-        print CF "global \$default_use_javascript_addr_book, \$ldap_server;\n";
         print CF "\$default_use_javascript_addr_book = $default_use_javascript_addr_book;\n";
         for ($count=0; $count <= $#ldap_host; $count++) {
            print CF "\$ldap_server[$count] = array(\n";
@@ -2052,10 +2076,8 @@ sub save_data {
            print CF "\n";
         }
 
-        print CF "\nglobal \$addrbook_dsn, \$addrbook_table;\n";
         print CF "\$addrbook_dsn = '$addrbook_dsn';\n";
         print CF "\$addrbook_table = '$addrbook_table';\n\n";
-        print CF "\nglobal \$prefs_dsn, \$prefs_table;\n";
         print CF "\$prefs_dsn = '$prefs_dsn';\n";
         print CF "\$prefs_table = '$prefs_table';\n";