Ticket #196: decode_imap_folder.diff
File decode_imap_folder.diff, 3.2 KB (added by , 9 years ago) |
---|
-
skins/default/imap-bucket-folders.thtml
18 18 19 19 <TMPL_LOOP NAME="IMAP_loop_mailboxes"> 20 20 21 <option value="<TMPL_VAR NAME="IMAP_mailbox" >" <TMPL_VAR NAME="IMAP_selected">>22 <TMPL_VAR NAME="IMAP_mailbox ">21 <option value="<TMPL_VAR NAME="IMAP_mailbox" ESCAPE=HTML>" <TMPL_VAR NAME="IMAP_selected">> 22 <TMPL_VAR NAME="IMAP_mailbox_decoded" ESCAPE=HTML> 23 23 </option> 24 24 25 25 </TMPL_LOOP> -
skins/default/imap-watch-folders.thtml
14 14 15 15 <TMPL_LOOP NAME="IMAP_loop_mailboxes"> 16 16 17 <option value="<TMPL_VAR NAME="IMAP_mailbox" >" <TMPL_VAR NAME="IMAP_selected">>17 <option value="<TMPL_VAR NAME="IMAP_mailbox" ESCAPE=HTML>" <TMPL_VAR NAME="IMAP_selected">> 18 18 19 <TMPL_VAR NAME="IMAP_mailbox ">19 <TMPL_VAR NAME="IMAP_mailbox_decoded" ESCAPE=HTML> 20 20 21 21 </option> 22 22 -
Services/IMAP.pm
1188 1188 1189 1189 $data_mailboxes{IMAP_mailbox} = $mailbox; 1190 1190 1191 my $decoded_mailbox = $self->decode_imap_folder_name__( $mailbox, $language ); 1192 $data_mailboxes{IMAP_mailbox_decoded} = $decoded_mailbox; 1193 1191 1194 # Is it currently selected? 1192 1195 if ( $folder eq $mailbox ) { 1193 1196 $data_mailboxes{IMAP_selected} = 'selected="selected"'; … … 1246 1249 1247 1250 $inner_data{IMAP_mailbox} = $mailbox; 1248 1251 1252 my $decoded_mailbox = $self->decode_imap_folder_name__( $mailbox, $language ); 1253 $inner_data{IMAP_mailbox_decoded} = $decoded_mailbox; 1254 1249 1255 if ( defined $output && $output eq $mailbox ) { 1250 1256 $inner_data{IMAP_selected} = 'selected="selected"'; 1251 1257 } … … 1289 1295 1290 1296 # ---------------------------------------------------------------------------- 1291 1297 # 1298 # decode_imap_folder_name__ 1299 # 1300 # $name A folder name to decode 1301 # $language The language currently in use 1302 # 1303 # ---------------------------------------------------------------------------- 1304 1305 sub decode_imap_folder_name__ { 1306 my $self = shift; 1307 my $name = shift; 1308 my $language = shift; 1309 1310 # IMAP server encodes non-ascii folder name in IMAP-UTF-7. 1311 my $decoded_name = $name; 1312 if ( $$language{LanguageCode} eq 'ja' ) { 1313 require Encode; 1314 require Encode::IMAPUTF7; 1315 1316 Encode::from_to( $decoded_name, 'IMAP-UTF-7', $$language{LanguageCharset} ); 1317 } 1318 1319 return $decoded_name; 1320 } 1321 1322 1323 # ---------------------------------------------------------------------------- 1324 # 1292 1325 # validate_item 1293 1326 # 1294 1327 # $name The name of the item being configured, was passed in by the call