Aleksander Machniak
2012-12-13 a9bb50d8045e5a119ca5f66ec03753ca80aa4d4a
Fix handling of signatures on draft edit: Don't add new signature
and don't remove the old-one, the same for Edit as new (#1488798)
2 files modified
14 ■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
program/steps/mail/compose.inc 13 ●●●●● patch | view | raw | blame | history
CHANGELOG
@@ -1,6 +1,7 @@
CHANGELOG Roundcube Webmail
===========================
- Fix handling of signatures on draft edit (#1488798)
- Fix so compacting of non-empty folder is possible also when messages list is empty (#1488858)
- Allow forwarding of multiple emails (#1486854)
- Fix big memory consumption of DB layer (#1488856)
program/steps/mail/compose.inc
@@ -169,14 +169,15 @@
}
$config_show_sig = $RCMAIL->config->get('show_sig', 1);
if ($config_show_sig == 1)
if ($compose_mode == RCUBE_COMPOSE_EDIT || $compose_mode == RCUBE_COMPOSE_DRAFT) {
  // don't add signature in draft/edit mode, we'll also not remove the old-one
}
else if ($config_show_sig == 1)
  $OUTPUT->set_env('show_sig', true);
else if ($config_show_sig == 2 && (empty($compose_mode) || $compose_mode == RCUBE_COMPOSE_EDIT || $compose_mode == RCUBE_COMPOSE_DRAFT))
else if ($config_show_sig == 2 && empty($compose_mode))
  $OUTPUT->set_env('show_sig', true);
else if ($config_show_sig == 3 && ($compose_mode == RCUBE_COMPOSE_REPLY || $compose_mode == RCUBE_COMPOSE_FORWARD))
  $OUTPUT->set_env('show_sig', true);
else
  $OUTPUT->set_env('show_sig', false);
// set line length for body wrapping
$LINE_LENGTH = $RCMAIL->config->get('line_length', 72);
@@ -741,8 +742,10 @@
        }
        else {
            // try to remove the signature
            if ($compose_mode != RCUBE_COMPOSE_DRAFT && $compose_mode != RCUBE_COMPOSE_EDIT) {
            if ($RCMAIL->config->get('strip_existing_sig', true)) {
                $body = rcmail_remove_signature($body);
                }
            }
            // add HTML formatting
            $body = rcmail_plain_body($body);
@@ -773,11 +776,13 @@
            }
            // try to remove the signature
            if ($compose_mode != RCUBE_COMPOSE_DRAFT && $compose_mode != RCUBE_COMPOSE_EDIT) {
            if ($RCMAIL->config->get('strip_existing_sig', true)) {
                $body = rcmail_remove_signature($body);
            }
        }
    }
    }
    return $body;
}