Thomas Bruederli
2014-01-29 9675702579700124b4309932df6566423ce385ad
program/js/app.js
@@ -2054,7 +2054,6 @@
      if (preview && this.message_list && this.message_list.rows[id] && this.message_list.rows[id].unread && this.env.preview_pane_mark_read >= 0) {
        this.preview_read_timer = setTimeout(function() {
          ref.set_message(id, 'unread', false);
          ref.update_thread_root(id, 'read');
          if (ref.env.unread_counts[ref.env.mailbox]) {
            ref.env.unread_counts[ref.env.mailbox] -= 1;
            ref.set_unread_count(ref.env.mailbox, ref.env.unread_counts[ref.env.mailbox], ref.env.mailbox == 'INBOX');
@@ -2560,8 +2559,11 @@
    if (!row)
      return false;
    if (flag == 'unread')
    if (flag == 'unread') {
      if (row.unread != status)
        this.update_thread_root(uid, status ? 'unread' : 'read');
      row.unread = status;
    }
    else if(flag == 'deleted')
      row.deleted = status;
    else if (flag == 'replied')
@@ -2849,9 +2851,6 @@
      this.set_message(a_uids[i], 'unread', (flag == 'unread' ? true : false));
    this.http_post('mark', post_data, lock);
    for (i=0; i<len; i++)
      this.update_thread_root(a_uids[i], flag);
  };
  // set image to flagged or unflagged
@@ -3142,6 +3141,10 @@
        if (this.env.draft_id && formdata.draft_id && formdata.draft_id != this.env.draft_id) {
          continue;
        }
        // skip records on reply
        if (this.env.reply_msgid && formdata.reply_msgid != this.env.reply_msgid) {
          continue;
        }
        // show dialog asking to restore the message
        if (formdata.changed && formdata.session != this.env.session_id) {
          this.show_popup_dialog(
@@ -3393,7 +3396,7 @@
    if ($("input[name='_is_html']").val() == '1') {
      var editor = tinyMCE.get(this.env.composebody);
      editor.getWin().focus(); // correct focus in IE & Chrome
      editor.selection.setContent(insert, { format:'text' });
      editor.selection.setContent(this.quote_html(insert).replace(/\r?\n/g, '<br/>'), { format:'text' });
    }
    // replace selection in compose textarea
    else {
@@ -3617,8 +3620,10 @@
      this.env.draft_id = id;
      $("input[name='_draft_saveid']").val(id);
      this.remove_compose_data(this.env.compose_id);
    }
    // always remove local copy upon saving as draft
    this.remove_compose_data(this.env.compose_id);
  };
  this.auto_save_start = function()
@@ -3681,6 +3686,9 @@
    if (this.env.draft_id) {
      formdata.draft_id = this.env.draft_id;
    }
    if (this.env.reply_msgid) {
      formdata.reply_msgid = this.env.reply_msgid;
    }
    $('input, select, textarea', this.gui_objects.messageform).each(function(i, elem) {
@@ -6363,12 +6371,14 @@
  this.mark_folder = function(name, class_name, prefix, encode)
  {
    $(this.get_folder_li(name, prefix, encode)).addClass(class_name);
    this.triggerEvent('markfolder', {folder: name, mark: class_name, status: true});
  };
  // adds a class to selected folder
  this.unmark_folder = function(name, class_name, prefix, encode)
  {
    $(this.get_folder_li(name, prefix, encode)).removeClass(class_name);
    this.triggerEvent('markfolder', {folder: name, mark: class_name, status: false});
  };
  // helper method to find a folder list item