Changeset 1508 in subversion


Ignore:
Timestamp:
Jun 11, 2008 3:26:08 PM (5 years ago)
Author:
alec
Message:
  • don't call expunge and don't remove message row after message move if flag_for_deletion is set to true (#1485002)
Location:
trunk/roundcubemail
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/roundcubemail/CHANGELOG

    r1493 r1508  
    11CHANGELOG RoundCube Webmail 
    22--------------------------- 
     3 
     42008/06/11 (alec) 
     5---------- 
     6- Don't call expunge and don't remove message row after message move  
     7  if flag_for_deletion is set to true (#1485002) 
    38 
    492008/06/08 (alec) 
  • trunk/roundcubemail/program/include/rcube_imap.php

    r1490 r1508  
    14201420    // really deleted from the source mailbox 
    14211421    if ($moved) { 
    1422       $this->_expunge($from_mbox, FALSE); 
    1423       $this->_clear_messagecount($from_mbox); 
    1424       $this->_clear_messagecount($to_mbox); 
     1422      // but only when flag_for_deletion is set to false 
     1423      if (!rcmail::get_instance()->config->get('flag_for_deletion', false)) 
     1424        { 
     1425        $this->_expunge($from_mbox, FALSE); 
     1426        $this->_clear_messagecount($from_mbox); 
     1427        $this->_clear_messagecount($to_mbox); 
     1428        } 
    14251429    } 
    14261430    // moving failed 
  • trunk/roundcubemail/program/js/app.js

    r1464 r1508  
    13981398      this.set_busy(true, 'movingmessage'); 
    13991399      } 
    1400     else 
     1400    else if (!this.env.flag_for_deletion) 
    14011401      this.show_contentframe(false); 
    14021402 
     
    14041404    this.enable_command('reply', 'reply-all', 'forward', 'delete', 'mark', 'print', false); 
    14051405 
    1406     this._with_selected_messages('moveto', lock, add_url); 
     1406    this._with_selected_messages('moveto', lock, add_url, (this.env.flag_for_deletion ? false : true)); 
    14071407    }; 
    14081408 
     
    14541454       
    14551455    this.show_contentframe(false); 
    1456     this._with_selected_messages('delete', false, '&_from='+(this.env.action ? this.env.action : '')); 
     1456    this._with_selected_messages('delete', false, '&_from='+(this.env.action ? this.env.action : ''), true); 
    14571457    }; 
    14581458 
    14591459  // Send a specifc request with UIDs of all selected messages 
    14601460  // @private 
    1461   this._with_selected_messages = function(action, lock, add_url) 
     1461  this._with_selected_messages = function(action, lock, add_url, remove) 
    14621462    { 
    14631463    var a_uids = new Array(); 
     
    14681468      { 
    14691469      var selection = this.message_list.get_selection(); 
     1470      var rows = this.message_list.rows; 
    14701471      var id; 
    14711472      for (var n=0; n<selection.length; n++) 
     
    14741475        a_uids[a_uids.length] = id; 
    14751476 
    1476         this.message_list.remove_row(id, (n == selection.length-1)); 
     1477        if (remove) 
     1478          this.message_list.remove_row(id, (n == selection.length-1)); 
     1479        else 
     1480          { 
     1481          rows[id].deleted = true; 
     1482         
     1483          if (rows[id].classname.indexOf('deleted')<0) 
     1484            { 
     1485            rows[id].classname += ' deleted'; 
     1486            this.set_classname(rows[id].obj, 'deleted', true); 
     1487            } 
     1488         
     1489          if (rows[id].icon && this.env.deletedicon) 
     1490            rows[id].icon.src = this.env.deletedicon; 
     1491          } 
    14771492        } 
    14781493      } 
Note: See TracChangeset for help on using the changeset viewer.