Modify

Opened 5 years ago

Closed 4 years ago

#6859 closed defect (duplicate)

[patch] Fixing broken ticket diff viewing

Reported by: anonymous Owned by: coderanger
Priority: normal Component: MasterTicketsPlugin
Severity: normal Keywords:
Cc: Trac Release: 0.11

Description

  • 0.11/mastertickets/web_ui.py

    old new  
    5959            # Add link to depgraph if needed 
    6060            if links: 
    6161                add_ctxtnav(req, 'Depgraph', req.href.depgraph(tkt.id)) 
    62              
     62 
    6363            for change in data.get('changes', []): 
    64                 for field, field_data in change['fields'].iteritems(): 
    65                     if field in self.fields: 
    66                         if field_data['new'].strip(): 
    67                             new = set([int(n) for n in field_data['new'].split(',')]) 
    68                         else: 
    69                             new = set() 
    70                         if field_data['old'].strip(): 
    71                             old = set([int(n) for n in field_data['old'].split(',')]) 
    72                         else: 
    73                             old = set() 
    74                         add = new - old 
    75                         sub = old - new 
    76                         elms = tag() 
    77                         if add: 
    78                             elms.append( 
    79                                 tag.em(u', '.join([unicode(n) for n in sorted(add)])) 
    80                             ) 
    81                             elms.append(u' added') 
    82                         if add and sub: 
    83                             elms.append(u'; ') 
    84                         if sub: 
    85                             elms.append( 
    86                                 tag.em(u', '.join([unicode(n) for n in sorted(sub)])) 
    87                             ) 
    88                             elms.append(u' removed') 
    89                         field_data['rendered'] = elms 
     64               if 'fields' in change: 
     65                   for field, field_data in change['fields'].iteritems(): 
     66                       if field in self.fields: 
     67                           if field_data['new'].strip(): 
     68                               new = set([int(n) for n in field_data['new'].split(',')]) 
     69                           else: 
     70                               new = set() 
     71                           if field_data['old'].strip(): 
     72                               old = set([int(n) for n in field_data['old'].split(',')]) 
     73                           else: 
     74                               old = set() 
     75                           add = new - old 
     76                           sub = old - new 
     77                           elms = tag() 
     78                           if add: 
     79                               elms.append( 
     80                                   tag.em(u', '.join([unicode(n) for n in sorted(add)])) 
     81                               ) 
     82                               elms.append(u' added') 
     83                           if add and sub: 
     84                               elms.append(u'; ') 
     85                           if sub: 
     86                               elms.append( 
     87                                   tag.em(u', '.join([unicode(n) for n in sorted(sub)])) 
     88                               ) 
     89                               elms.append(u' removed') 
     90                            field_data['rendered'] = elms 
    9091             
    9192        return template, data, content_type 
    9293         

Othervise links like /ticket/[ticketname]?action=diff or similiar, where is no fields in changes, produce error messages instead of output.

Attachments (0)

Change History (1)

comment:1 Changed 4 years ago by silk

  • Resolution set to duplicate
  • Status changed from new to closed

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.