alecpl
2010-03-06 5821ff51239b7f24d18e3097b3e85813f81768dd
- Don't show a warning on html2text switch when textarea is empty
- Set properly select's value when html2text is aborted


3 files modified
28 ■■■■ changed files
program/js/editor.js 24 ●●●● patch | view | raw | blame | history
program/steps/mail/compose.inc 2 ●●● patch | view | raw | blame | history
program/steps/settings/edit_identity.inc 2 ●●● patch | view | raw | blame | history
program/js/editor.js
@@ -83,10 +83,15 @@
}
// switch html/plain mode
function rcmail_toggle_editor(ishtml, textAreaId, flagElement)
function rcmail_toggle_editor(select, textAreaId, flagElement)
{
  var composeElement = document.getElementById(textAreaId);
  var flag;
  var flag, ishtml;
  if (select.tagName != 'SELECT')
    ishtml = select.checked;
  else
    ishtml = select.value == 'html';
  if (ishtml)
    {
@@ -100,12 +105,19 @@
    }
  else
    {
    if (!confirm(rcmail.get_label('editorwarning')))
      return false;
    var thisMCE = tinyMCE.get(textAreaId);
    var existingHtml = thisMCE.getContent();
    rcmail.html2plain(existingHtml, textAreaId);
    if (existingHtml) {
      if (!confirm(rcmail.get_label('editorwarning'))) {
        if (select.tagName == 'SELECT')
      select.value = 'html';
        return false;
    }
      rcmail.html2plain(existingHtml, textAreaId);
      }
    tinyMCE.execCommand('mceRemoveControl', true, textAreaId);
    rcmail.display_spellcheck_controls(true);
    if (flagElement && (flag = rcube_find_object(flagElement)))
program/steps/mail/compose.inc
@@ -976,7 +976,7 @@
  if (empty($attrib['name']))
    $attrib['name'] = 'editorSelect';
    
  $attrib['onchange'] = "return rcmail_toggle_editor(this.value=='html', '".$attrib['editorid']."', '_is_html')";
  $attrib['onchange'] = "return rcmail_toggle_editor(this, '".$attrib['editorid']."', '_is_html')";
  $select = new html_select($attrib);
program/steps/settings/edit_identity.inc
@@ -70,7 +70,7 @@
                       'reply-to'     => array('type' => 'text', 'label' => 'reply-to', 'size' => $i_size),
                       'bcc'          => array('type' => 'text', 'size' => $i_size),
                       'signature'      => array('type' => 'textarea', 'size' => $t_cols, 'rows' => $t_rows),
                       'html_signature'=>array('type' => 'checkbox', 'label' => 'htmlsignature', 'onclick' => 'return rcmail_toggle_editor(this.checked, \'rcmfd_signature\');'),
                       'html_signature'=>array('type' => 'checkbox', 'label' => 'htmlsignature', 'onclick' => 'return rcmail_toggle_editor(this, \'rcmfd_signature\');'),
                       'standard'     => array('type' => 'checkbox', 'label' => 'setdefault'));
  // disable some field according to access level