Ticket #2302: tracmetrix-11.0.3.patch

File tracmetrix-11.0.3.patch, 6.2 kB (added by mixedpuppy, 3 months ago)

last revision of 11.1 patch

  • plugins/tracmetrix/tracmetrixplugin/web_ui.py

    old new  
    2020from trac import mimeview 
    2121from model import *  # need it but should have worked in __init__.py 
    2222from trac.config import ExtensionOption 
    23 from trac.context import Context 
     23from trac.mimeview import Context 
    2424from trac.core import * 
    2525from trac.perm import IPermissionRequestor 
    2626from trac.ticket import Milestone, Ticket, model #These are object 
     
    8787        self.env.log.info("pdashboard match request %s" % (req.path_info,))   
    8888                 
    8989        urlcomp = req.path_info.split('/') 
     90        if len(urlcomp) < 2: 
     91            return False 
    9092         
    9193        self.env.log.info(urlcomp) 
    9294                 
     
    140142        } 
    141143         
    142144        data = { 
    143             'context': Context(self.env, req), 
     145            'context': Context.from_request(req), 
    144146            'milestones': milestones, 
    145147            'milestone_stats': stats, 
    146148            'queries': queries, 
  • plugins/tracmetrix/tracmetrixplugin/model.py

    old new  
    618618            self.changesets.append((rev,time,author)) 
    619619         
    620620        self.start_date = start_date 
    621         self.stop_date = stop_date     
    622         self.first_rev = self.changesets[0][0] 
    623         self.last_rev = self.changesets[-1][0] 
     621        self.stop_date = stop_date 
     622        if not self.changesets: 
     623            self.first_rev = self.last_rev = 0 
     624        else: 
     625            self.first_rev = self.changesets[0][0] 
     626            self.last_rev = self.changesets[-1][0] 
    624627     
    625628    def get_commit_by_date(self): 
    626629         
  • plugins/tracmetrix/tracmetrixplugin/mdashboard.py

    old new  
    3434from trac import __version__ 
    3535from trac import mimeview 
    3636from trac.core import * 
    37 from trac.context import Context 
    38 from trac.core import * 
    3937from trac.perm import IPermissionRequestor 
    4038from trac.util import sorted 
    4139from trac.util.compat import sorted 
     
    4442                              format_date, format_datetime, pretty_timedelta 
    4543from trac.util.text import shorten_line, CRLF, to_unicode 
    4644from trac.ticket import Milestone, Ticket, TicketSystem, model #These are object 
    47 from trac.ticket.query import Query 
    4845from trac.ticket.roadmap import ITicketGroupStatsProvider, DefaultTicketGroupStatsProvider, \ 
    4946                                get_ticket_stats, get_tickets_for_milestone, \ 
    5047                                milestone_stats_data, TicketGroupStats 
    51 from trac.timeline.api import ITimelineEventProvider, TimelineEvent 
    52 from trac.web import IRequestHandler, IRequestFilter 
     48from trac.web import IRequestHandler 
    5349from trac.web.chrome import add_link, add_stylesheet, INavigationContributor, ITemplateProvider 
    5450from trac.wiki.api import IWikiSyntaxProvider 
    5551from trac.config import ExtensionOption, IntOption, BoolOption 
     
    109105                       "FROM ticket LEFT JOIN ticket_change ON ticket.id = ticket_change.ticket " \ 
    110106                       "WHERE (ticket_change.field='status' " \ 
    111107                       "OR ticket_change.field='milestone') AND ticket.id IN (%s) " \ 
    112                        "UNION SELECT ticket.id, ticket.type, ticket.time, ticket.status, " \ 
     108                       "UNION (SELECT ticket.id, ticket.type, ticket.time, ticket.status, " \ 
    113109                       "ticket.time, ticket.milestone, null, null, null FROM ticket " \ 
    114110                       "WHERE ticket.time = ticket.changetime " \ 
    115                        "AND ticket.id IN (%s) ORDER BY ticket.id" % (ticket_list, ticket_list) 
     111                       "AND ticket.id IN (%s) ORDER BY ticket.id)" % (ticket_list, ticket_list) 
    116112         
    117113#    sqlquery = "SELECT ticket.id, ticket.type, ticket.time, ticket.status, " \ 
    118114#                   "ticket.time as changetime, null, null, null FROM ticket " \ 
    119115#                   "WHERE ticket.time = ticket.changetime " \ 
    120116#                   "AND ticket.id IN (%s) ORDER BY changetime" % (ticket_list,) 
    121 #     
     117# 
    122118    cursor.execute(sqlquery) 
    123119     
    124120    #env.log.info(sqlquery) 
     
    313309    title('Cummulative flow chart for ticket status history') 
    314310    legend(('Ticket Entered', 'Ticket Left', 'Ticket Completed'), loc='best') 
    315311     
    316     filename = "cummulativeflow_%s" % (milestone.name,) 
     312    filename = "cummulativeflow_%s.%s" % (milestone.name,"png",) 
    317313    path = os.path.join(env.path, 'cache', 'tracmetrixplugin', filename) 
    318314    #env.log.info(path)   
    319315     
  • plugins/tracmetrix/tracmetrixplugin/templates/pdashboard.html

    old new  
    4949                    <tbody> 
    5050                          <tr py:for="bmi in project_bmi_stats" > 
    5151                            <td style="width: 90px">${bmi[0]}</td> 
    52                             <td style="width: 200px">${len(bmi[1])} ${wiki_to_html(context(), ', '.join(['#%s' % i for i in bmi[1]]))}</td> 
    53                             <td style="width: 200px">${len(bmi[2])} ${wiki_to_html(context(), ', '.join(['#%s' % i for i in bmi[2]]))}</td> 
    54                             <td style="width: 200px">${len(bmi[3])} ${wiki_to_html(context(), ', '.join(['#%s' % i for i in bmi[3]]))}</td> 
     52                            <td style="width: 200px">${len(bmi[1])} ${wiki_to_html(context, ', '.join(['#%s' % i for i in bmi[1]]))}</td> 
     53                            <td style="width: 200px">${len(bmi[2])} ${wiki_to_html(context, ', '.join(['#%s' % i for i in bmi[2]]))}</td> 
     54                            <td style="width: 200px">${len(bmi[3])} ${wiki_to_html(context, ', '.join(['#%s' % i for i in bmi[3]]))}</td> 
    5555                            <td style="width: 90px">${"%.2f %%" % (float(len(bmi[3])) * 100 / float(len(bmi[2])),)}</td> 
    5656                          </tr> 
    5757                    </tbody>