alecpl
2011-05-16 a509bb677ca626315d71e07afc8342a0690b6859
- Add option to set default action of Forward button to "Forward as attachment"


7 files modified
46 ■■■■ changed files
config/main.inc.php.dist 3 ●●●●● patch | view | raw | blame | history
program/js/app.js 11 ●●●●● patch | view | raw | blame | history
program/steps/mail/func.inc 6 ●●●● patch | view | raw | blame | history
program/steps/mail/show.inc 2 ●●●●● patch | view | raw | blame | history
skins/default/common.css 5 ●●●●● patch | view | raw | blame | history
skins/default/functions.js 7 ●●●●● patch | view | raw | blame | history
skins/default/includes/messagetoolbar.html 12 ●●●● patch | view | raw | blame | history
config/main.inc.php.dist
@@ -695,4 +695,7 @@
// Place replies in the folder of the message being replied to
$rcmail_config['reply_same_folder'] = false;
// Sets default mode of Forward feature to "forward as attachment"
$rcmail_config['forward_attachment'] = false;
// end of config file
program/js/app.js
@@ -931,10 +931,13 @@
      case 'forward-attachment':
      case 'forward':
        var uid;
        if (uid = this.get_single_uid())
          this.goto_url('compose', '_forward_uid='+uid+'&_mbox='+urlencode(this.env.mailbox)
            + (command == 'forward-attachment' ? '&_attachment=1' : ''), true);
        var uid, url;
        if (uid = this.get_single_uid()) {
          url = '_forward_uid='+uid+'&_mbox='+urlencode(this.env.mailbox);
          if (command == 'forward-attachment' || (!props && this.env.forward_attachment))
            url += '&_attachment=1';
          this.goto_url('compose', url, true);
        }
        break;
      case 'print':
program/steps/mail/func.inc
@@ -106,6 +106,7 @@
  $OUTPUT->set_env('delimiter', $IMAP->get_hierarchy_delimiter());
  $OUTPUT->set_env('threading', (bool) $IMAP->threading);
  $OUTPUT->set_env('threads', $IMAP->threading || $IMAP->get_capability('THREAD'));
  $OUTPUT->set_env('preview_pane_mark_read', $RCMAIL->config->get('preview_pane_mark_read', 0));
  if ($CONFIG['flag_for_deletion'])
    $OUTPUT->set_env('flag_for_deletion', true);
@@ -115,9 +116,8 @@
    $OUTPUT->set_env('skip_deleted', true);
  if ($CONFIG['display_next'])
    $OUTPUT->set_env('display_next', true);
  $OUTPUT->set_env('preview_pane_mark_read', $RCMAIL->config->get('preview_pane_mark_read', 0));
  if ($CONFIG['forward_attachment'])
    $OUTPUT->set_env('forward_attachment', true);
  if ($CONFIG['trash_mbox'])
    $OUTPUT->set_env('trash_mailbox', $CONFIG['trash_mbox']);
  if ($CONFIG['drafts_mbox'])
program/steps/mail/show.inc
@@ -64,6 +64,8 @@
    $OUTPUT->set_env('display_next', true);
  if ($MESSAGE->headers->others['list-post'])
    $OUTPUT->set_env('list_post', true);
  if ($CONFIG['forward_attachment'])
    $OUTPUT->set_env('forward_attachment', true);
  if (!$OUTPUT->ajax_call)
    $OUTPUT->add_label('checkingmail', 'deletemessage', 'movemessagetotrash',
skins/default/common.css
@@ -490,6 +490,11 @@
  background-color: #c00;
}
.popupmenu li input
{
  float: left;
}
.darkbg
{
  background-color: #F2F2F2 !important;
skins/default/functions.js
@@ -148,6 +148,13 @@
  this.popups.dragmessagemenu.obj[show?'show':'hide']();
},
forwardmenu: function(show)
{
  $("input[name='forwardtype'][value="+(rcmail.env.forward_attachment ? 1 : 0)+"]", this.popups.forwardmenu.obj)
    .prop('checked', true);
  this.show_popupmenu('forwardmenu', show);
},
uploadmenu: function(show)
{
  if (typeof show == 'object') // called as event handler
skins/default/includes/messagetoolbar.html
@@ -26,9 +26,15 @@
</div>
<div id="forwardmenu" class="popupmenu">
    <ul>
        <li><roundcube:button command="forward" label="forwardinline" prop="sub" classAct="forwardlink active" class="forwardlink" /></li>
        <li><roundcube:button command="forward-attachment" label="forwardattachment" prop="sub" classAct="forwardattachmentlink active" class="forwardattachmentlink" /></li>
    <ul class="toolbarmenu">
        <li>
            <input type="radio" name="forwardtype" value="0" onchange="rcmail.command('save-pref', {name: 'forward_attachment', value: 0, env: 'forward_attachment'});" />
            <roundcube:button command="forward" label="forwardinline" prop="sub" classAct="forwardlink active" class="forwardlink" />
        </li>
        <li>
            <input type="radio" name="forwardtype" value="1" onchange="rcmail.command('save-pref', {name: 'forward_attachment', value: 1, env: 'forward_attachment'})" />
            <roundcube:button command="forward-attachment" label="forwardattachment" prop="sub" classAct="forwardattachmentlink active" class="forwardattachmentlink" />
        </li>
        <roundcube:container name="forwardmenu" id="forwardmenu" />
    </ul>
</div>