alecpl
2008-09-16 d734041f00e3d70d422004c2dc3948f3fdd17ab5
- Added icons for forwarded/forwarded+replied messages (#1485257)


4 files modified
1 files added
62 ■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
program/js/app.js 41 ●●●● patch | view | raw | blame | history
program/steps/mail/func.inc 18 ●●●● patch | view | raw | blame | history
skins/default/images/icons/forwarded_replied.png patch | view | raw | blame | history
skins/default/templates/mail.html 2 ●●●●● patch | view | raw | blame | history
CHANGELOG
@@ -6,6 +6,7 @@
- Reduced memory footprint when forwarding attachments (#1485345)
- Fix inline images handling when replying/forwarding html messages
- Allow and use spellcheck attribute for input/textarea fields (#1485060)
- Added icons for forwarded/forwarded+replied messages (#1485257)
2008/09/15 (thomasb)
----------
program/js/app.js
@@ -390,6 +390,7 @@
      row.unread = this.env.messages[uid].unread ? true : false;
      row.replied = this.env.messages[uid].replied ? true : false;
      row.flagged = this.env.messages[uid].flagged ? true : false;
      row.forwarded = this.env.messages[uid].forwarded ? true : false;
      }
    // set eventhandler to message icon
@@ -1748,6 +1749,7 @@
        if (rows[uid].icon && icn_src 
            && !(rows[uid].replied && this.env.repliedicon)
        && !(rows[uid].forwarded && this.env.forwardedicon)
            && !(rows[uid].deleted && this.env.deletedicon))
          rows[uid].icon.src = icn_src;
        }
@@ -1767,10 +1769,17 @@
        rows[uid].classname = rows[uid].classname.replace(/\s*unread/, '');
        parent.rcmail.set_classname(rows[uid].obj, 'unread', false);
        if (rows[uid].replied && parent.rcmail.env.repliedicon)
          icn_src = parent.rcmail.env.repliedicon;
        else if (rows[uid].deleted && parent.rcmail.env.deletedicon)
        if (rows[uid].deleted && parent.rcmail.env.deletedicon)
          icn_src = parent.rcmail.env.deletedicon;
        else if (rows[uid].replied && parent.rcmail.env.repliedicon)
      {
      if (rows[uid].forwarded && parent.rcmail.env.forwardedrepliedicon)
        icn_src = parent.rcmail.env.forwardedrepliedicon;
          else
        icn_src = parent.rcmail.env.repliedicon;
          }
    else if (rows[uid].forwarded && parent.rcmail.env.forwardedicon)
          icn_src = parent.rcmail.env.forwardedicon;
        else if (parent.rcmail.env.messageicon)
          icn_src = parent.rcmail.env.messageicon;
      
@@ -1859,10 +1868,18 @@
          rows[uid].classname = rows[uid].classname.replace(/\s*deleted/, '');
          this.set_classname(rows[uid].obj, 'deleted', false);
        }
        if (rows[uid].unread && this.env.unreadicon)
          icn_src = this.env.unreadicon;
        else if (rows[uid].replied && this.env.repliedicon)
      {
      if (rows[uid].forwarded && this.env.forwardedrepliedicon)
            icn_src = this.env.forwardedrepliedicon;
          else
          icn_src = this.env.repliedicon;
          }
    else if (rows[uid].forwarded && this.env.forwardedicon)
          icn_src = this.env.forwardedicon;
        else if (this.env.messageicon)
          icn_src = this.env.messageicon;
@@ -3471,6 +3488,7 @@
    this.env.messages[uid] = {deleted:flags.deleted?1:0,
                              replied:flags.replied?1:0,
                              unread:flags.unread?1:0,
                  forwarded:flags.forwarded?1:0,
                              flagged:flags.flagged?1:0};
    
    var row = document.createElement('TR');
@@ -3480,9 +3498,20 @@
    if (this.message_list.in_selection(uid))
      row.className += ' selected';
    var icon = flags.deleted && this.env.deletedicon ? this.env.deletedicon:
               (flags.unread && this.env.unreadicon ? this.env.unreadicon :
               (flags.replied && this.env.repliedicon ? this.env.repliedicon : this.env.messageicon));
    var icon = this.env.messageicon;
    if (flags.deleted && this.env.deletedicon)
      icon = this.env.deletedicon;
    else if(flags.unread && this.env.unreadicon)
      icon = this.env.unreadicon;
    else if (flags.replied && this.env.repliedicon)
      {
      if (flags.forwarded && this.env.forwardedrepliedicon)
        icon = this.env.forwardedrepliedicon;
      else
        icon = this.env.repliedicon;
      }
    else if (flags.forwarded && this.env.forwardedicon)
      icon = this.env.forwardedicon;
    var col = document.createElement('TD');
    col.className = 'icon';
program/steps/mail/func.inc
@@ -206,16 +206,25 @@
      $js_row_arr['unread'] = true;
    if ($header->answered)
      $js_row_arr['replied'] = true;
    if ($header->forwarded)
      $js_row_arr['forwarded'] = true;
    if ($header->flagged)
      $js_row_arr['flagged'] = true;
    // set message icon  
    if ($attrib['deletedicon'] && $header->deleted)
      $message_icon = $attrib['deletedicon'];
    else if ($attrib['repliedicon'] && $header->answered)
      {
      if ($attrib['forwardedrepliedicon'] && $header->forwarded)
        $message_icon = $attrib['forwardedrepliedicon'];
      else
        $message_icon = $attrib['repliedicon'];
      }
    else if ($attrib['forwardedicon'] && $header->forwarded)
      $message_icon = $attrib['forwardedicon'];
    else if ($attrib['unreadicon'] && !$header->seen)
      $message_icon = $attrib['unreadicon'];
    else if ($attrib['repliedicon'] && $header->answered)
      $message_icon = $attrib['repliedicon'];
    else if ($attrib['messageicon'])
      $message_icon = $attrib['messageicon'];
@@ -296,6 +305,10 @@
    $OUTPUT->set_env('unreadicon', $skin_path . $attrib['unreadicon']);
  if ($attrib['repliedicon'])
    $OUTPUT->set_env('repliedicon', $skin_path . $attrib['repliedicon']);
  if ($attrib['forwardedicon'])
    $OUTPUT->set_env('forwardedicon', $skin_path . $attrib['forwardedicon']);
  if ($attrib['forwardedrepliedicon'])
    $OUTPUT->set_env('forwardedrepliedicon', $skin_path . $attrib['forwardedrepliedicon']);
  if ($attrib['attachmenticon'])
    $OUTPUT->set_env('attachmenticon', $skin_path . $attrib['attachmenticon']);
  if ($attrib['flaggedicon'])
@@ -367,6 +380,7 @@
    $a_msg_flags['deleted'] = $header->deleted ? 1 : 0;
    $a_msg_flags['unread'] = $header->seen ? 0 : 1;
    $a_msg_flags['replied'] = $header->answered ? 1 : 0;
    $a_msg_flags['forwarded'] = $header->forwarded ? 1 : 0;
    $a_msg_flags['flagged'] = $header->flagged ? 1 : 0;
    
    $OUTPUT->command('add_message_row',
skins/default/images/icons/forwarded_replied.png
skins/default/templates/mail.html
@@ -70,6 +70,8 @@
  unreadIcon="/images/icons/unread.png"
  deletedIcon="/images/icons/deleted.png"
  repliedIcon="/images/icons/replied.png"
  forwardedIcon="/images/icons/forwarded.png"
  forwardedrepliedIcon="/images/icons/forwarded_replied.png"
  attachmentIcon="/images/icons/attachment.png"
  flaggedIcon="/images/icons/flagged.png"
  unflaggedIcon="/images/icons/unflagged.png" />