|
|
|
@ -181,8 +181,9 @@ $OUTPUT->add_label('deletefolderconfirm', 'purgefolderconfirm', 'folderdeleting'
|
|
|
|
|
|
|
|
|
|
// register UI objects
|
|
|
|
|
$OUTPUT->add_handlers(array(
|
|
|
|
|
'foldersubscription' => 'rcube_subscription_form',
|
|
|
|
|
'foldersubscription' => 'rcmail_subscription_form',
|
|
|
|
|
'folderframe' => 'rcmail_folder_frame',
|
|
|
|
|
'folderfilter' => 'rcmail_folder_filter',
|
|
|
|
|
'quotadisplay' => array($RCMAIL, 'quota_display'),
|
|
|
|
|
));
|
|
|
|
|
|
|
|
|
@ -190,7 +191,7 @@ $OUTPUT->send('folders');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// build table with all folders listed by server
|
|
|
|
|
function rcube_subscription_form($attrib)
|
|
|
|
|
function rcmail_subscription_form($attrib)
|
|
|
|
|
{
|
|
|
|
|
global $RCMAIL, $OUTPUT;
|
|
|
|
|
|
|
|
|
@ -424,6 +425,50 @@ function rcmail_folder_frame($attrib)
|
|
|
|
|
return $OUTPUT->frame($attrib, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function rcmail_folder_filter($attrib)
|
|
|
|
|
{
|
|
|
|
|
global $RCMAIL;
|
|
|
|
|
|
|
|
|
|
$storage = $RCMAIL->get_storage();
|
|
|
|
|
$namespace = $storage->get_namespace();
|
|
|
|
|
|
|
|
|
|
if (empty($namespace['personal']) && empty($namespace['shared']) && empty($namespace['other'])) {
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!$attrib['id']) {
|
|
|
|
|
$attrib['id'] = 'rcmfolderfilter';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$attrib['onchange'] = rcmail_output::JS_OBJECT_NAME . '.folder_filter(this.value)';
|
|
|
|
|
|
|
|
|
|
$roots = array();
|
|
|
|
|
$select = new html_select($attrib);
|
|
|
|
|
$select->add($RCMAIL->gettext('all'), '---');
|
|
|
|
|
|
|
|
|
|
foreach (array_keys($namespace) as $type) {
|
|
|
|
|
foreach ((array)$namespace[$type] as $ns) {
|
|
|
|
|
$root = rtrim($ns[0], $ns[1]);
|
|
|
|
|
$label = $RCMAIL->gettext('namespace.' . $type);
|
|
|
|
|
|
|
|
|
|
if (count($namespace[$type]) > 1) {
|
|
|
|
|
$label .= ' (' . rcube_charset::convert($root, 'UTF7-IMAP', RCUBE_CHARSET) . ')';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$select->add($label, $root);
|
|
|
|
|
|
|
|
|
|
if (strlen($root)) {
|
|
|
|
|
$roots[] = $root;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$RCMAIL->output->add_gui_object('foldersfilter', $attrib['id']);
|
|
|
|
|
$RCMAIL->output->set_env('ns_roots', $roots);
|
|
|
|
|
|
|
|
|
|
return $select->show();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function rcmail_rename_folder($oldname, $newname)
|
|
|
|
|
{
|
|
|
|
|
global $RCMAIL;
|
|
|
|
|