|
|
|
|
@ -1270,7 +1270,7 @@ function rcmail_mailbox_list($attrib)
|
|
|
|
|
foreach ($a_folders as $folder)
|
|
|
|
|
rcmail_build_folder_tree($a_mailboxes, $folder, $delimiter);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// allow plugins to alter the folder tree or to localize folder names
|
|
|
|
|
$hook = $RCMAIL->plugins->exec_hook('render_mailboxlist', array('list' => $a_mailboxes, 'delimiter' => $delimiter));
|
|
|
|
|
|
|
|
|
|
@ -1333,10 +1333,18 @@ function rcmail_mailbox_select($p = array())
|
|
|
|
|
function rcmail_build_folder_tree(&$arrFolders, $folder, $delm='/', $path='')
|
|
|
|
|
{
|
|
|
|
|
$pos = strpos($folder, $delm);
|
|
|
|
|
|
|
|
|
|
if ($pos !== false) {
|
|
|
|
|
$subFolders = substr($folder, $pos+1);
|
|
|
|
|
$currentFolder = substr($folder, 0, $pos);
|
|
|
|
|
$virtual = !isset($arrFolders[$currentFolder]);
|
|
|
|
|
|
|
|
|
|
// sometimes folder has a delimiter as the last character
|
|
|
|
|
if (empty($subFolders))
|
|
|
|
|
$virtual = false;
|
|
|
|
|
else if (!isset($arrFolders[$currentFolder]))
|
|
|
|
|
$virtual = true;
|
|
|
|
|
else
|
|
|
|
|
$virtual = $arrFolders[$currentFolder]['virtual'];
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
$subFolders = false;
|
|
|
|
|
|