Changeset 2126 in subversion
- Timestamp:
- Dec 6, 2008 1:52:18 PM (4 years ago)
- Location:
- trunk/roundcubemail
- Files:
-
- 3 edited
-
CHANGELOG (modified) (1 diff)
-
program/include/rcube_config.php (modified) (1 diff)
-
program/include/rcube_imap.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/roundcubemail/CHANGELOG
r2122 r2126 1 1 CHANGELOG RoundCube Webmail 2 2 --------------------------- 3 4 2008/12/06 (alec) 5 ---------- 6 - Fix sorting of folders with more than 2 levels (#1485569) 3 7 4 8 2008/12/04 (alec) -
trunk/roundcubemail/program/include/rcube_config.php
r2113 r2126 76 76 $this->prop['temp_dir'] = $this->prop['temp_dir'] ? unslashify($this->prop['temp_dir']) : INSTALL_PATH . 'temp'; 77 77 78 // fix default imap folders encod e79 foreach ( Array('drafts_mbox', 'junk_mbox', 'sent_mbox', 'trash_mbox') as $folder)78 // fix default imap folders encoding 79 foreach (array('drafts_mbox', 'junk_mbox', 'sent_mbox', 'trash_mbox') as $folder) 80 80 $this->prop[$folder] = rcube_charset_convert($this->prop[$folder], RCMAIL_CHARSET, 'UTF-7'); 81 81 82 foreach ($this->prop['default_imap_folders'] as $n => $folder) 83 $this->prop['default_imap_folders'][$n] = rcube_charset_convert($folder, RCMAIL_CHARSET, 'UTF-7'); 82 if (!empty($this->prop['default_imap_folders'])) 83 foreach ($this->prop['default_imap_folders'] as $n => $folder) 84 $this->prop['default_imap_folders'][$n] = rcube_charset_convert($folder, RCMAIL_CHARSET, 'UTF-7'); 84 85 85 86 // set PHP error logging according to config -
trunk/roundcubemail/program/include/rcube_imap.php
r2092 r2126 2712 2712 } 2713 2713 2714 // sort folders and place defaults on the top 2714 2715 asort($folders, SORT_LOCALE_STRING); 2715 2716 ksort($a_defaults); 2716 2717 2717 $folders = array_merge($a_defaults, array_keys($folders)); 2718 2718 … … 2721 2721 // ...also do this for the rest of folders because 2722 2722 // asort() is not properly sorting case sensitive names 2723 2724 // set the type of folder name variable (#1485527)2725 2723 while (list($key, $folder) = each($folders)) { 2724 // set the type of folder name variable (#1485527) 2726 2725 $a_out[] = (string) $folder; 2727 2726 unset($folders[$key]); 2728 foreach ($folders as $idx => $f) { 2729 if (strpos($f, $folder.$delimiter) === 0) { 2730 $a_out[] = (string) $f; 2731 unset($folders[$idx]); 2727 $this->_rsort($folder, $delimiter, $folders, $a_out); 2728 } 2729 2730 return $a_out; 2731 } 2732 2733 2734 /** 2735 * @access private 2736 */ 2737 function _rsort($folder, $delimiter, &$list, &$out) 2738 { 2739 while (list($key, $name) = each($list)) { 2740 if (strpos($name, $folder.$delimiter) === 0) { 2741 // set the type of folder name variable (#1485527) 2742 $out[] = (string) $name; 2743 unset($list[$key]); 2744 $this->_rsort($name, $delimiter, $list, $out); 2732 2745 } 2733 2746 } 2734 reset($folders); 2735 } 2736 2737 return $a_out; 2738 } 2747 reset($list); 2748 } 2749 2739 2750 2740 2751 /**
Note: See TracChangeset
for help on using the changeset viewer.
