@@ -130,7 +130,7 @@ public function process() {
130130class Hm_Handler_process_accept_special_folders extends Hm_Handler_Module {
131131 public function process () {
132132 list ($ success , $ form ) = $ this ->process_form (array ('imap_server_id ' , 'imap_service_name ' ));
133- if ($ success ) {
133+ if ($ success ) {
134134 $ cache = Hm_IMAP_List::get_cache ($ this ->cache , $ form ['imap_server_id ' ]);
135135 $ imap = Hm_IMAP_List::connect ($ form ['imap_server_id ' ], $ cache );
136136
@@ -141,17 +141,23 @@ public function process() {
141141
142142 $ specials = $ this ->user_config ->get ('special_imap_folders ' , array ());
143143 if ($ exposed = $ imap ->get_special_use_mailboxes ()) {
144- $ specials [$ form ['imap_server_id ' ]] = array ('sent ' => $ exposed ['sent ' ], 'draft ' => '' , 'trash ' => $ exposed ['trash ' ], 'archive ' => '' , 'junk ' => '' );
144+ $ specials [$ form ['imap_server_id ' ]] = array (
145+ 'sent ' => $ exposed ['sent ' ] ?? '' ,
146+ 'draft ' => $ exposed ['drafts ' ] ?? '' ,
147+ 'trash ' => $ exposed ['trash ' ] ?? '' ,
148+ 'archive ' => $ exposed ['archive ' ] ?? '' ,
149+ 'junk ' => $ exposed ['junk ' ] ?? ''
150+ );
145151 } else if ($ form ['imap_service_name ' ] == 'gandi ' ) {
146152 $ specials [$ form ['imap_server_id ' ]] = array ('sent ' => 'Sent ' , 'draft ' => 'Drafts ' , 'trash ' => 'Trash ' , 'archive ' => 'Archive ' , 'junk ' => 'Junk ' );
147153 } else {
148154 $ specials [$ form ['imap_server_id ' ]] = array ('sent ' => '' , 'draft ' => '' , 'trash ' => '' , 'archive ' => '' , 'junk ' => '' );
149- }
155+ }
150156 $ this ->user_config ->set ('special_imap_folders ' , $ specials );
151157
152158 $ user_data = $ this ->user_config ->dump ();
153159 $ this ->session ->set ('user_data ' , $ user_data );
154-
160+
155161 Hm_Msgs::add ('Special folders assigned ' );
156162 $ this ->session ->record_unsaved ('Special folders assigned ' );
157163 $ this ->session ->close_early ();
@@ -225,7 +231,6 @@ function ($value) use($old_folder) {
225231 foreach ($ script_names as $ script_name ) {
226232 $ script_parsed = $ client ->getScript ($ script_name );
227233 $ script_parsed = str_replace ('" ' .$ old_folder .'" ' , '" ' .$ new_folder .'" ' , $ script_parsed );
228-
229234 $ old_actions = base64_decode (preg_split ('#\r?\n# ' , $ script_parsed , 0 )[2 ]);
230235 $ new_actions = base64_encode (str_replace ('" ' .$ old_folder .'" ' , '" ' .$ new_folder .'" ' , $ old_actions ));
231236 $ script_parsed = str_replace (base64_encode ($ old_actions ), $ new_actions , $ script_parsed );
@@ -269,7 +274,7 @@ public function process() {
269274 if (is_mailbox_linked_with_filters ($ del_folder , $ form ['imap_server_id ' ], $ this )) {
270275 Hm_Msgs::add ('ERRThis folder can \'t be deleted because it is used in a filter. ' );
271276 return ;
272- }
277+ }
273278 }
274279 if ($ del_folder && $ imap ->delete_mailbox ($ del_folder )) {
275280 Hm_Msgs::add ('Folder deleted ' );
@@ -639,6 +644,6 @@ function is_mailbox_linked_with_filters ($mailbox, $imap_server_id, $module) {
639644 $ linked_mailboxes = get_sieve_linked_mailbox ($ imap_account , $ module );
640645 return in_array ($ mailbox , $ linked_mailboxes );
641646 }
642- return false ;
647+ return false ;
643648 }
644649}
0 commit comments