Changeset 1378

Show
Ignore:
Timestamp:
10/13/06 17:27:59 (2 years ago)
Author:
coderanger
Message:

TicketDeletePlugin:

Don't show attachment "changes" in the delete screen. Fixes #753.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • ticketdeleteplugin/0.10/setup.py

    r1377 r1378  
    66setup( 
    77    name = 'TracTicketDelete', 
    8     version = '1.1.2', 
     8    version = '1.1.3', 
    99    packages = ['ticketdelete'], 
    1010    package_data = { 'ticketdelete': ['templates/*.cs', 'htdocs/*.js', 'htdocs/*.css' ] }, 
  • ticketdeleteplugin/0.10/ticketdelete/web_ui.py

    r1377 r1378  
    8686                if page == 'comments': 
    8787                    try: 
    88                         selected = int(req.args.get('cnum')) 
     88                        selected = int(req.args.get('cnum')) - 1 
    8989                    except (TypeError, ValueError): 
    9090                        selected = None 
    91                     cnum = 0 
    92                     cur = None 
    93                     for time, author, field, oldvalue, newvalue, _ in t.get_changelog(): 
    94                         if time != cur: 
    95                             cnum += 1 
    96                             cur = time 
    97                             req.hdf['ticketdelete.changes.%s.checked'%time] = cnum == selected 
    98                         req.hdf['ticketdelete.changes.%s.fields.%s'%(time,field)] = {'old': oldvalue, 'new': newvalue} 
    99                         req.hdf['ticketdelete.changes.%s.author'%time] = author 
    100                         req.hdf['ticketdelete.changes.%s.prettytime'%time] = strftime('%a, %d %b %Y %H:%M:%S',localtime(time)) 
    101                         print cnum, selected 
     91 
     92                    ticket_data = {} 
     93                    for time, author, field, oldvalue, newvalue, perm in t.get_changelog(): 
     94                        data = ticket_data.setdefault(str(time), {}) 
     95                        data.setdefault('fields', {})[field] = {'old': oldvalue, 'new': newvalue} 
     96                        data['author'] = author 
     97                        data['prettytime'] = strftime('%a, %d %b %Y %H:%M:%S',localtime(time)) 
     98                     
     99                    # Remove all attachment changes                     
     100                    for k, v in ticket_data.items(): 
     101                        if 'attachment' in v.get('fields', {}): 
     102                            del ticket_data[k] 
     103                             
     104                    # Check the boxes next to change number `selected` 
     105                    time_list = list(sorted(ticket_data.iterkeys())) 
     106                    if selected is not None and selected < len(time_list): 
     107                        ticket_data[time_list[selected]]['checked'] = True 
     108                    req.hdf['ticketdelete.changes'] = ticket_data 
    102109                elif page == 'delete': 
    103110                    req.hdf['ticketdelete.id'] = t.id