- messages list performance: build subject link on client side

release-0.6
alecpl 16 years ago
parent 69a7d3127e
commit 4d81544057

@ -3900,7 +3900,15 @@ function rcube_webmail()
col.className = 'icon';
col.innerHTML = icon ? '<img src="'+icon+'" alt="" />' : '';
row.appendChild(col);
// build subject link
if (!bw.ie && cols.subject) {
var action = cols.mbox == this.env.drafts_mailbox ? 'compose' : 'show';
var uid_param = cols.mbox == this.env.drafts_mailbox ? '_draft_uid' : '_uid';
cols.subject = '<a href="./?_task=mail&_action='+action+'&_mbox='+urlencode(cols.mbox)+'&'+uid_param+'='+uid+'"'+
' onclick="return rcube_event.cancel(event)">'+cols.subject+'</a>';
}
// add each submitted col
for (var n = 0; n < this.coltypes.length; n++) {
var c = this.coltypes[n];

@ -440,11 +440,10 @@ function rcmail_js_message_list($a_headers, $insert_top=FALSE, $replace=TRUE)
$cont = Q(rcmail_address_string($header->$col, 3), 'show');
else if ($col=='subject')
{
$action = $mbox==$CONFIG['drafts_mbox'] ? 'compose' : 'show';
$uid_param = $mbox==$CONFIG['drafts_mbox'] ? '_draft_uid' : '_uid';
$cont = abbreviate_string(trim($IMAP->decode_header($header->$col)), 160);
if (!$cont) $cont = rcube_label('nosubject');
$cont = $browser->ie ? Q($cont) : sprintf('<a href="%s" onclick="return rcube_event.cancel(event)">%s</a>', Q(rcmail_url($action, array($uid_param=>$header->uid, '_mbox'=>$mbox))), Q($cont));
$cont = Q($cont);
$a_msg_cols['mbox'] = $mbox;
}
else if ($col=='size')
$cont = show_bytes($header->$col);

Loading…
Cancel
Save