From: Jan Schneider Date: Thu, 23 Sep 2010 10:54:49 +0000 (+0200) Subject: Check if folder prefs are empty *before* prefixing with personal namespace. X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=de5fc2fd52dcdf366f811609b92aac293e1092d4;p=horde.git Check if folder prefs are empty *before* prefixing with personal namespace. --- diff --git a/imp/compose-mimp.php b/imp/compose-mimp.php index dafabec11..432452ca6 100644 --- a/imp/compose-mimp.php +++ b/imp/compose-mimp.php @@ -59,14 +59,15 @@ if (!$prefs->isLocked('default_identity') && isset($vars->identity)) { $identity->setDefault($vars->identity); } -$draft = IMP::folderPref($prefs->getValue('drafts_folder'), true); +$draft = $prefs->getValue('drafts_folder'); $sent_mail_folder = $identity->getValue('sent_mail_folder'); /* Determine if mailboxes are readonly. */ +$readonly_drafts = false; $imp_imap = $injector->getInstance('IMP_Imap')->getOb(); -$readonly_drafts = empty($draft) - ? false - : $imp_imap->isReadOnly($draft); +if (!empty($draft)) { + $readonly_drafts = $imp_imap->isReadOnly(IMP::folderPref($draft, true)); +} $save_sent_mail = $imp_imap->isReadOnly($sent_mail_folder) ? false : $prefs->getValue('save_sent_mail'); diff --git a/imp/compose.php b/imp/compose.php index 11c3ab268..bb948a723 100644 --- a/imp/compose.php +++ b/imp/compose.php @@ -98,10 +98,10 @@ $compose_disable = !IMP::canCompose(); /* Determine if mailboxes are readonly. */ $readonly_drafts = $readonly_sentmail = false; -$draft = IMP::folderPref($prefs->getValue('drafts_folder'), true); +$draft = $prefs->getValue('drafts_folder'); $imp_imap = $injector->getInstance('IMP_Imap')->getOb(); if (!empty($draft)) { - $readonly_drafts = $imp_imap->isReadOnly($draft); + $readonly_drafts = $imp_imap->isReadOnly(IMP::folderPref($draft, true)); } $readonly_sentmail = $imp_imap->isReadOnly($sent_mail_folder); if ($readonly_sentmail) { diff --git a/imp/lib/Application.php b/imp/lib/Application.php index 9dad2a797..270888875 100644 --- a/imp/lib/Application.php +++ b/imp/lib/Application.php @@ -244,7 +244,7 @@ class IMP_Application extends Horde_Registry_Application } } - $spam_folder = IMP::folderPref($prefs->getValue('spam_folder'), true); + $spam_folder = $prefs->getValue('spam_folder'); if (!empty($spam_folder) && $prefs->getValue('empty_spam_menu')) { $menu->addArray(array( @@ -252,7 +252,7 @@ class IMP_Application extends Horde_Registry_Application 'icon' => 'empty_spam.png', 'onclick' => 'return window.confirm(' . Horde_Serialize::serialize(_("Are you sure you wish to empty your trash folder?"), Horde_Serialize::JSON, $registry->getCharset()) . ')', 'text' => _("Empty _Spam"), - 'url' => IMP::generateIMPUrl($menu_mailbox_url, $spam_folder)->add(array('actionID' => 'empty_mailbox', 'mailbox_token' => Horde::getRequestToken('imp.mailbox'))) + 'url' => IMP::generateIMPUrl($menu_mailbox_url, IMP::folderPref($spam_folder, true))->add(array('actionID' => 'empty_mailbox', 'mailbox_token' => Horde::getRequestToken('imp.mailbox'))) )); } } diff --git a/imp/lib/Compose.php b/imp/lib/Compose.php index a9ed9b3d5..5be3b61d1 100644 --- a/imp/lib/Compose.php +++ b/imp/lib/Compose.php @@ -277,10 +277,11 @@ class IMP_Compose */ protected function _saveDraftServer($data) { - $drafts_mbox = IMP::folderPref($GLOBALS['prefs']->getValue('drafts_folder'), true); + $drafts_mbox = $GLOBALS['prefs']->getValue('drafts_folder'); if (empty($drafts_mbox)) { throw new IMP_Compose_Exception(_("Saving the draft failed. No draft folder specified.")); } + $drafts_mbox = IMP::folderPref($drafts_mbox, true); $imp_folder = $GLOBALS['injector']->getInstance('IMP_Folder'); @@ -299,7 +300,6 @@ class IMP_Compose * set the $MDNSent keyword. However, IMP doesn't write MDN headers * until send time so no need to set the flag here. */ - $drafts_mbox = IMP::folderPref($GLOBALS['prefs']->getValue('drafts_folder'), true); $old_uid = $this->getMetadata('draft_uid'); /* Add the message to the mailbox. */ diff --git a/imp/lib/LoginTasks/Task/PurgeSpam.php b/imp/lib/LoginTasks/Task/PurgeSpam.php index dbb37134c..d7e88082b 100644 --- a/imp/lib/LoginTasks/Task/PurgeSpam.php +++ b/imp/lib/LoginTasks/Task/PurgeSpam.php @@ -37,10 +37,11 @@ class IMP_LoginTasks_Task_PurgeSpam extends Horde_LoginTasks_Task public function execute() { /* If there is no Spam folder set, just return. */ - $spam_folder = IMP::folderPref($GLOBALS['prefs']->getValue('spam_folder'), true); + $spam_folder = $GLOBALS['prefs']->getValue('spam_folder'); if (!$spam_folder) { return false; } + $spam_folder = IMP::folderPref($spam_folder, true); /* Make sure the Spam folder exists. */ if (!$GLOBALS['injector']->getInstance('IMP_Folder')->exists($spam_folder)) { diff --git a/imp/lib/Spam.php b/imp/lib/Spam.php index 42ac74a7e..8dc29c85d 100644 --- a/imp/lib/Spam.php +++ b/imp/lib/Spam.php @@ -204,9 +204,9 @@ class IMP_Spam break; case 2: - $targetMbox = IMP::folderPref($GLOBALS['prefs']->getValue('spam_folder'), true); + $targetMbox = $GLOBALS['prefs']->getValue('spam_folder'); if ($targetMbox) { - if (!$imp_message->copy($targetMbox, 'move', $indices, array('create' => true))) { + if (!$imp_message->copy(IMP::folderPref($targetMbox, true), 'move', $indices, array('create' => true))) { $result = 0; } } else {