Save outgoing mail to selectable folder (#1324581)

release-0.6
thomascube 17 years ago
parent 62e54249df
commit faf8766fd2

@ -1,6 +1,11 @@
CHANGELOG RoundCube Webmail CHANGELOG RoundCube Webmail
--------------------------- ---------------------------
2008/07/31 (thomasb)
----------
- Make default imap folders configurable for each user (#1485075)
- Save outgoing mail to selectable folder (#1324581)
2008/07/21 (alec) 2008/07/21 (alec)
---------- ----------
- use long date format in print mode (#1485191) - use long date format in print mode (#1485191)

@ -188,6 +188,8 @@ $labels['alwaysshow'] = 'Bilder von $sender immer zeigen';
$labels['htmltoggle'] = 'HTML'; $labels['htmltoggle'] = 'HTML';
$labels['plaintoggle'] = 'Klartext'; $labels['plaintoggle'] = 'Klartext';
$labels['savesentmessagein'] = 'Nachricht speichern in';
$labels['dontsave'] = 'nicht speichern';
$labels['addcc'] = 'Cc hinzufügen'; $labels['addcc'] = 'Cc hinzufügen';
$labels['addbcc'] = 'Bcc hinzufügen'; $labels['addbcc'] = 'Bcc hinzufügen';
@ -280,6 +282,7 @@ $labels['rename'] = 'Umbenennen';
$labels['renamefolder'] = 'Ordner umbenennen'; $labels['renamefolder'] = 'Ordner umbenennen';
$labels['deletefolder'] = 'Ordner löschen'; $labels['deletefolder'] = 'Ordner löschen';
$labels['managefolders'] = 'Ordner verwalten'; $labels['managefolders'] = 'Ordner verwalten';
$labels['specialfolders'] = 'Spezialordner';
$labels['sortby'] = 'Sortieren nach'; $labels['sortby'] = 'Sortieren nach';
$labels['sortasc'] = 'aufsteigend sortieren'; $labels['sortasc'] = 'aufsteigend sortieren';

@ -149,6 +149,8 @@ $labels['showimages'] = 'Bilder anzeigen';
$labels['alwaysshow'] = 'Bilder von $sender immer zeigen'; $labels['alwaysshow'] = 'Bilder von $sender immer zeigen';
$labels['htmltoggle'] = 'HTML'; $labels['htmltoggle'] = 'HTML';
$labels['plaintoggle'] = 'Nur-Text'; $labels['plaintoggle'] = 'Nur-Text';
$labels['savesentmessagein'] = 'Nachricht speichern in';
$labels['dontsave'] = 'nicht speichern';
$labels['addcc'] = 'Cc hinzufügen'; $labels['addcc'] = 'Cc hinzufügen';
$labels['addbcc'] = 'Bcc hinzufügen'; $labels['addbcc'] = 'Bcc hinzufügen';
$labels['addreplyto'] = 'Antwortadresse hinzufügen'; $labels['addreplyto'] = 'Antwortadresse hinzufügen';
@ -221,6 +223,7 @@ $labels['rename'] = 'Umbenennen';
$labels['renamefolder'] = 'Ordner umbenennen'; $labels['renamefolder'] = 'Ordner umbenennen';
$labels['deletefolder'] = 'Ordner löschen'; $labels['deletefolder'] = 'Ordner löschen';
$labels['managefolders'] = 'Ordner verwalten'; $labels['managefolders'] = 'Ordner verwalten';
$labels['specialfolders'] = 'Spezialordner';
$labels['sortby'] = 'Sortieren nach'; $labels['sortby'] = 'Sortieren nach';
$labels['sortasc'] = 'Aufsteigend sortieren'; $labels['sortasc'] = 'Aufsteigend sortieren';
$labels['sortdesc'] = 'Absteigend sortieren'; $labels['sortdesc'] = 'Absteigend sortieren';

@ -190,6 +190,8 @@ $labels['alwaysshow'] = 'Always show images from $sender';
$labels['htmltoggle'] = 'HTML'; $labels['htmltoggle'] = 'HTML';
$labels['plaintoggle'] = 'Plain text'; $labels['plaintoggle'] = 'Plain text';
$labels['savesentmessagein'] = 'Save sent message in';
$labels['dontsave'] = 'don\'t save';
$labels['addcc'] = 'Add Cc'; $labels['addcc'] = 'Add Cc';
$labels['addbcc'] = 'Add Bcc'; $labels['addbcc'] = 'Add Bcc';
@ -284,6 +286,7 @@ $labels['rename'] = 'Rename';
$labels['renamefolder'] = 'Rename folder'; $labels['renamefolder'] = 'Rename folder';
$labels['deletefolder'] = 'Delete folder'; $labels['deletefolder'] = 'Delete folder';
$labels['managefolders'] = 'Manage folders'; $labels['managefolders'] = 'Manage folders';
$labels['specialfolders'] = 'Special folders';
$labels['sortby'] = 'Sort by'; $labels['sortby'] = 'Sort by';
$labels['sortasc'] = 'Sort ascending'; $labels['sortasc'] = 'Sort ascending';

@ -776,6 +776,14 @@ function rcmail_editor_selector($attrib)
} }
function rcmail_store_target_selection($attrib)
{
$attrib['name'] = '_store_target';
$select = rcmail_mailbox_select(array('noselection' => '- '.rcube_label('dontsave').' -'));
return $select->show(rcmail::get_instance()->config->get('sent_mbox'), $attrib);
}
function get_form_tags($attrib) function get_form_tags($attrib)
{ {
global $RCMAIL, $MESSAGE_FORM; global $RCMAIL, $MESSAGE_FORM;
@ -813,6 +821,7 @@ $OUTPUT->add_handlers(array(
'priorityselector' => 'rcmail_priority_selector', 'priorityselector' => 'rcmail_priority_selector',
'editorselector' => 'rcmail_editor_selector', 'editorselector' => 'rcmail_editor_selector',
'receiptcheckbox' => 'rcmail_receipt_checkbox', 'receiptcheckbox' => 'rcmail_receipt_checkbox',
'storetarget' => 'rcmail_store_target_selection',
)); ));
/****** get contacts for this user and add them to client scripts ********/ /****** get contacts for this user and add them to client scripts ********/

@ -355,27 +355,27 @@ if (!$savedraft)
// Determine which folder to save message // Determine which folder to save message
if ($savedraft) if ($savedraft)
$store_target = 'drafts_mbox'; $store_target = $CONFIG['drafts_mbox'];
else else
$store_target = 'sent_mbox'; $store_target = isset($_POST['_store_target']) ? get_input_value('_store_target', RCUBE_INPUT_POST) : $CONFIG['sent_mbox'];
if ($CONFIG[$store_target]) if ($store_target)
{ {
// check if mailbox exists // check if mailbox exists
if (!in_array_nocase($CONFIG[$store_target], $IMAP->list_mailboxes())) if (!in_array_nocase($store_target, $IMAP->list_mailboxes()))
$store_folder = $IMAP->create_mailbox($CONFIG[$store_target], TRUE); $store_folder = $IMAP->create_mailbox($store_target, TRUE);
else else
$store_folder = TRUE; $store_folder = TRUE;
// append message to sent box // append message to sent box
if ($store_folder) if ($store_folder)
$saved = $IMAP->save_message($CONFIG[$store_target], $MAIL_MIME->getMessage()); $saved = $IMAP->save_message($store_target, $MAIL_MIME->getMessage());
// raise error if saving failed // raise error if saving failed
if (!$saved) if (!$saved)
{ {
raise_error(array('code' => 800, 'type' => 'imap', 'file' => __FILE__, raise_error(array('code' => 800, 'type' => 'imap', 'file' => __FILE__,
'message' => "Could not save message in $CONFIG[$store_target]"), TRUE, FALSE); 'message' => "Could not save message in $store_target"), TRUE, FALSE);
$OUTPUT->show_message('errorsaving', 'error'); $OUTPUT->show_message('errorsaving', 'error');
$OUTPUT->send('iframe'); $OUTPUT->send('iframe');

@ -132,11 +132,14 @@ function rcmail_prev_sibling(elm)
<table border="0" cellspacing="0" width="100%" summary=""><tbody> <table border="0" cellspacing="0" width="100%" summary=""><tbody>
<tr> <tr>
<td> <td style="white-space:nowrap">
<roundcube:button type="input" command="send" class="button" label="sendmessage" tabindex="8" /> <roundcube:button type="input" command="send" class="button" label="sendmessage" tabindex="8" />
<roundcube:button type="input" command="list" class="button" label="cancel" tabindex="9" /> <roundcube:button type="input" command="list" class="button" label="cancel" tabindex="9" />
</td> </td>
<td align="right"> <td style="text-align:center">
<label><span style="white-space:nowrap"><roundcube:label name="savesentmessagein" />:</span> <roundcube:object name="storetarget" /></label>
</td>
<td style="text-align:right; white-space:nowrap">
<roundcube:label name="editortype" />:&nbsp; <roundcube:label name="editortype" />:&nbsp;
<span class="radios-left"><roundcube:object name="editorSelector" tabindex="10" /></span> <span class="radios-left"><roundcube:object name="editorSelector" tabindex="10" /></span>
</td> </td>

Loading…
Cancel
Save