Changeset 6412


Ignore:
Timestamp:
06/04/12 16:56:48 (12 years ago)
Author:
acoutinho
Message:

Ticket #2834 - Inconsistência com lixo no javaScript

Location:
trunk/prototype
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/prototype/api/datalayer.js

    r6286 r6412  
    625625    rollback: function( concept, ids ){ 
    626626       
    627         var queue = this.prepareQ( 'current', concept, ids ); 
    628  
    629         ids = []; 
    630  
    631         for( var id in queue ) 
    632         { 
    633              this.put( concept, id, queue[id], false ); 
    634  
    635              ids[ ids.length ] = id; 
     627        if(concept){ 
     628                if(ids){ 
     629                        ids = !$.isArray(ids) ? [ids] : ids; 
     630                        for (var i in ids) 
     631                                delete DataLayer.storage.cache[':diff'][concept][ids[i]]; 
     632                }else 
     633                        delete DataLayer.storage.cache[':diff'][concept]; 
     634        }else{ 
     635 
     636                var queue = this.prepareQ( 'current', concept, ids ); 
     637 
     638                ids = []; 
     639 
     640                for( var id in queue ) 
     641                { 
     642                         this.put( concept, id, queue[id], false ); 
     643 
     644                         ids[ ids.length ] = id; 
     645                } 
     646 
     647                for(var link in ids) 
     648                        delete DataLayer.storage.cache[':diff'][ids[link]]; 
     649 
    636650        } 
    637  
    638         this.clearQ( concept, ( ids.length ? ids : false ) ); 
    639  
    640         this.broadcast( concept, 'revert' ); 
    641        
    642651    }, 
    643652     
  • trunk/prototype/modules/calendar/js/helpers.js

    r6393 r6412  
    371371        close: function(event, ui) { 
    372372            /** 
    373                                         * Remove tooltip possivelmente existente 
    374                                         */ 
     373                * Remove tooltip possivelmente existente 
     374                */ 
    375375            if ($('dd.attendee-list li:last').data('qtip')) 
    376376                $('dd.attendee-list li:last').qtip('destroy'); 
     
    392392                                canDiscardEventDialog = true; 
    393393                                /** 
    394                                                                                 *Remoção dos anexos do eventos caso seja cancelado a edição 
    395                                                                                 */ 
    396                                 var ids = []; 
     394                                *Remoção dos anexos do eventos caso seja cancelado a edição 
     395                                */ 
     396                                DataLayer.rollback(); 
     397 
     398                                var ids = false; 
    397399                                $.each($('.attachment-list input'), function (i, input) { 
    398                                     ids.push(input.value); 
     400                                    DataLayer.put('attachment', {id: ''+input.value}); 
     401                                    DataLayer.remove('attachment', ''+input.value); 
     402                                        ids = true; 
    399403                                }); 
    400                                 if(ids.length > 0) 
    401                                     DataLayer.remove('attachment', { 
    402                                         filter: ['IN', 'id', ids] 
    403                                         }); 
    404                                                                                  
    405                                 DataLayer.rollback(); 
     404                                if(ids) 
     405                                        DataLayer.commit(); 
     406                         
     407                                 
    406408                                                                                 
    407409                                UI.dialogs.addEvent.dialog('close'); 
     
    427429 
    428430            } 
     431            //DataLayer.rollback(); 
    429432            return canDiscardEventDialog; 
    430433        } 
     
    784787             
    785788.children(".cancel").click(function(){ 
    786     DataLayer.rollback('participant'); 
    787789    UI.dialogs.addEvent.dialog("close"); 
    788790}).end() 
Note: See TracChangeset for help on using the changeset viewer.