thomascube
2008-08-14 ac5d15de2946cbd8988c11de0f218aeb1acf58dc
program/js/app.js
@@ -1282,8 +1282,8 @@
      if (!show && window.frames[this.env.contentframe])
        {
        if (window.frames[this.env.contentframe].location.href.indexOf(this.env.blankpage)<0)
     window.frames[this.env.contentframe].location.href = this.env.blankpage;
   }
          window.frames[this.env.contentframe].location.href = this.env.blankpage;
        }
      else if (!bw.safari)
        frm.style.display = show ? 'block' : 'none';
      }
@@ -1506,13 +1506,13 @@
  // Send a specifc request with UIDs of all selected messages
  // @private
  this._with_selected_messages = function(action, lock, add_url, remove)
    {
  {
    var a_uids = new Array();
    if (this.env.uid)
      a_uids[0] = this.env.uid;
    else
      {
    {
      var selection = this.message_list.get_selection();
      var rows = this.message_list.rows;
      var id;
@@ -1521,23 +1521,28 @@
        id = selection[n];
        a_uids[a_uids.length] = id;
   if (remove)
        if (remove)
          this.message_list.remove_row(id, (n == selection.length-1));
        else
     {
     rows[id].deleted = true;
        {
          rows[id].deleted = true;
        
          if (rows[id].classname.indexOf('deleted')<0)
       {
          {
            rows[id].classname += ' deleted';
            this.set_classname(rows[id].obj, 'deleted', true);
            }
          }
          if (this.env.read_when_deleted)
          {
            rows[id].classname = rows[id].classname.replace(/\s*unread/, '');
            this.set_classname(rows[id].obj, 'unread', false);
          }
        
     if (rows[id].icon && this.env.deletedicon)
          if (rows[id].icon && this.env.deletedicon)
            rows[id].icon.src = this.env.deletedicon;
     }
        }
      }
    }
    
    // also send search request to get the right messages 
    if (this.env.search_request) 
@@ -1545,7 +1550,7 @@
    // send request to server
    this.http_post(action, '_uid='+a_uids.join(',')+'&_mbox='+urlencode(this.env.mailbox)+add_url, lock);
    };
  };
  // set a specific flag to one or more messages
@@ -1574,14 +1579,14 @@
      {
        id = a_uids[n];
        if ((flag=='read' && this.message_list.rows[id].unread) 
       || (flag=='unread' && !this.message_list.rows[id].unread)
        || (flag=='delete' && !this.message_list.rows[id].deleted)
       || (flag=='undelete' && this.message_list.rows[id].deleted)
       || (flag=='flagged' && !this.message_list.rows[id].flagged)
       || (flag=='unflagged' && this.message_list.rows[id].flagged))
     {
       r_uids[r_uids.length] = id;
     }
            || (flag=='unread' && !this.message_list.rows[id].unread)
            || (flag=='delete' && !this.message_list.rows[id].deleted)
            || (flag=='undelete' && this.message_list.rows[id].deleted)
            || (flag=='flagged' && !this.message_list.rows[id].flagged)
            || (flag=='unflagged' && this.message_list.rows[id].flagged))
        {
          r_uids[r_uids.length] = id;
        }
      }
    // nothing to do
@@ -1636,7 +1641,7 @@
          }
        if (rows[uid].icon && icn_src 
       && !(rows[uid].replied && this.env.repliedicon)
            && !(rows[uid].replied && this.env.repliedicon)
            && !(rows[uid].deleted && this.env.deletedicon))
          rows[uid].icon.src = icn_src;
        }
@@ -1657,13 +1662,13 @@
        parent.rcmail.set_classname(rows[uid].obj, 'unread', false);
        if (rows[uid].replied && parent.rcmail.env.repliedicon)
         icn_src = parent.rcmail.env.repliedicon;
          icn_src = parent.rcmail.env.repliedicon;
        else if (rows[uid].deleted && parent.rcmail.env.deletedicon)
         icn_src = parent.rcmail.env.deletedicon;
          icn_src = parent.rcmail.env.deletedicon;
        else if (parent.rcmail.env.messageicon)
          icn_src = parent.rcmail.env.messageicon;
      
   if (rows[uid].icon && icn_src)
        if (rows[uid].icon && icn_src)
          rows[uid].icon.src = icn_src;
      }
  }
@@ -1779,16 +1784,21 @@
        rows[uid].deleted = true;
        
        if (rows[uid].classname.indexOf('deleted')<0)
     {
          {
          rows[uid].classname += ' deleted';
          this.set_classname(rows[uid].obj, 'deleted', true);
          }
   if (rows[uid].icon && this.env.deletedicon)
        if (this.env.read_when_deleted)
        {
          rows[uid].classname = rows[uid].classname.replace(/\s*unread/, '');
          this.set_classname(rows[uid].obj, 'unread', false);
        }
        if (rows[uid].icon && this.env.deletedicon)
          rows[uid].icon.src = this.env.deletedicon;
   if (rows[uid].unread)
     r_uids[r_uids.length] = uid;
        if (rows[uid].unread)
          r_uids[r_uids.length] = uid;
        }
      }
@@ -1817,7 +1827,7 @@
      if (rows[uid])
        {
        rows[uid].unread = false;
   rows[uid].read = true;
        rows[uid].read = true;
        
        rows[uid].classname = rows[uid].classname.replace(/\s*unread/, '');
        this.set_classname(rows[uid].obj, 'unread', false);
@@ -1889,11 +1899,18 @@
      }
    // check for empty body
    if ((((!window.tinyMCE || !tinyMCE.get('compose-body')) && input_message.value == '')
   || (window.tinyMCE && tinyMCE.get('compose-body') && tinyMCE.get('compose-body').getContent() == ''))
    if ((!window.tinyMCE || !tinyMCE.get('compose-body'))
   && input_message.value == ''
   && !confirm(this.get_label('nobodywarning')))
      {
      input_message.focus();
      return false;
      }
    else if (window.tinyMCE && tinyMCE.get('compose-body')
   && !tinyMCE.get('compose-body').getContent()
   && !confirm(this.get_label('nobodywarning')))
      {
      tinyMCE.get('compose-body').focus();
      return false;
      }
@@ -2189,10 +2206,10 @@
    };
  this.sent_successfully = function(msg)
  this.sent_successfully = function(type, msg)
    {
    this.list_mailbox();
    this.display_message(msg, 'confirmation', true);
    this.display_message(msg, type, true);
    }
@@ -3392,6 +3409,13 @@
    };
  // replace content of mailboxname display
  this.set_mailboxname = function(content)
    {
    if (this.gui_objects.mailboxname && content)
      this.gui_objects.mailboxname.innerHTML = content;
    };
  // replace content of quota display
  this.set_quota = function(content)
    {