thomascube
2011-01-23 8458c7ca0e787db4a04fb1a6264e15153fd173b3
program/js/app.js
@@ -1715,7 +1715,7 @@
      var action = flags.mbox == this.env.drafts_mailbox ? 'compose' : 'show';
      var uid_param = flags.mbox == this.env.drafts_mailbox ? '_draft_uid' : '_uid';
      cols.subject = '<a href="./?_task=mail&_action='+action+'&_mbox='+urlencode(flags.mbox)+'&'+uid_param+'='+uid+'"'+
        ' onclick="return rcube_event.cancel(event)">'+cols.subject+'</a>';
        ' onclick="return rcube_event.cancel(event)" onmouseover="rcube_webmail.long_subject_title(this,'+(message.depth+1)+')">'+cols.subject+'</a>';
    }
    // add each submitted col
@@ -3766,6 +3766,9 @@
        this.show_contentframe(false);
    }
    if (this.env.group)
      qs += '&_gid='+urlencode(this.env.group);
    // also send search request to get the right records from the next page
    if (this.env.search_request) 
      qs += '&_search='+this.env.search_request;
@@ -4914,11 +4917,14 @@
  // update the mailbox count display
  this.set_unread_count_display = function(mbox, set_title)
  {
    var reg, text_obj, item, mycount, childcount, div;
    var reg, link, text_obj, item, mycount, childcount, div;
    if (item = this.get_folder_li(mbox)) {
      mycount = this.env.unread_counts[mbox] ? this.env.unread_counts[mbox] : 0;
      text_obj = item.getElementsByTagName('a')[0];
      link = $(item).children('a').eq(0);
      text_obj = link.children('span.unreadcount');
      if (!text_obj.length && mycount)
        text_obj = $('<span>').addClass('unreadcount').appendTo(link);
      reg = /\s+\([0-9]+\)$/i;
      childcount = 0;
@@ -4930,12 +4936,10 @@
            childcount += this.env.unread_counts[k];
      }
      if (mycount && text_obj.innerHTML.match(reg))
        text_obj.innerHTML = text_obj.innerHTML.replace(reg, ' ('+mycount+')');
      else if (mycount)
        text_obj.innerHTML += ' ('+mycount+')';
      else
        text_obj.innerHTML = text_obj.innerHTML.replace(reg, '');
      if (mycount && text_obj.length)
        text_obj.html(' ('+mycount+')');
      else if (text_obj.length)
        text_obj.remove();
      // set parent's display
      reg = new RegExp(RegExp.escape(this.env.delimiter) + '[^' + RegExp.escape(this.env.delimiter) + ']+$');
@@ -5503,6 +5507,17 @@
}  // end object rcube_webmail
// some static methods
rcube_webmail.long_subject_title = function(elem, indent)
{
  if (!elem.title) {
    var $elem = $(elem);
    if ($elem.width() + indent * 15 > $elem.parent().width())
      elem.title = $elem.html();
  }
};
// copy event engine prototype
rcube_webmail.prototype.addEventListener = rcube_event_engine.prototype.addEventListener;
rcube_webmail.prototype.removeEventListener = rcube_event_engine.prototype.removeEventListener;