On Mon, Jul 22, 2013 at 5:34 PM, Ryan Ollos <[email protected]> wrote:
> On Mon, Jul 22, 2013 at 5:16 PM, <[email protected]> wrote: > >> Author: huaxiang >> Date: Tue Jul 23 00:16:15 2013 >> New Revision: 1505863 >> >> URL: http://svn.apache.org/r1505863 >> Log: >> https://issues.apache.org/bloodhound/ticket/574 >> Display historical status changes for all tickets >> >> Modified: >> >> bloodhound/trunk/bloodhound_dashboard/bhdashboard/widgets/templates/widget_grid.html >> >> bloodhound/trunk/bloodhound_theme/bhtheme/templates/bh_report_view.html >> bloodhound/trunk/trac/trac/ticket/api.py >> bloodhound/trunk/trac/trac/ticket/report.py >> >> Modified: >> bloodhound/trunk/bloodhound_dashboard/bhdashboard/widgets/templates/widget_grid.html >> URL: >> http://svn.apache.org/viewvc/bloodhound/trunk/bloodhound_dashboard/bhdashboard/widgets/templates/widget_grid.html?rev=1505863&r1=1505862&r2=1505863&view=diff >> >> ============================================================================== >> --- >> bloodhound/trunk/bloodhound_dashboard/bhdashboard/widgets/templates/widget_grid.html >> (original) >> +++ >> bloodhound/trunk/bloodhound_dashboard/bhdashboard/widgets/templates/widget_grid.html >> Tue Jul 23 00:16:15 2013 >> @@ -61,7 +61,7 @@ >> }${'__style__' in row and row.__style__+';' or None >> }${fullrow and 'border: none; padding: 0;' or None}"> >> >> - <td py:if="use_groups" py:choose="" >> + <td py:if="use_groups" py:choose="" >> style="background: none repeat scroll 0 0 #FFFFFF; >> color: #333333;"> >> <py:when test="idx == 0 and value_for_group and not >> fullrow"> >> $value_for_group >> @@ -75,33 +75,33 @@ >> <py:if test="not cell.header.hidden"> >> <py:with vars="col = cell.header.col.strip('_')"> >> <py:choose> >> - >> + >> <!--! for the report listing --> >> <py:when test="col == 'report'"> >> <td class="$col" py:attrs="td_attrs"> >> <a title="View report" >> href="${href.report(cell.value)}">{$cell.value}</a> >> </td> >> </py:when> >> - >> + >> <py:when test="col == 'title'"> >> <td class="$col" py:attrs="td_attrs"> >> <a title="View report" href="${href.report( >> row.id)}">$cell.value</a> >> </td> >> </py:when> >> - >> + >> <!--! for the ticket listing --> >> <py:when test="col in ('ticket', 'id')"> >> <td class="ticket" py:attrs="td_attrs"> >> <a title="View ${row.resource.realm}" >> href="${row.href if row.href else >> url_of(row.resource)}">${shortname_of(row.resource)}</a> >> </td> >> </py:when> >> - >> + >> <py:when test="col == 'summary' and row.id"> >> <td class="$col" py:attrs="td_attrs"> >> <a title="View ${row.resource.realm}" >> href="${row.href if row.href else url_of(row.resource)}">$cell.value</a> >> </td> >> </py:when> >> - >> + >> <!--! generic fields --> >> <py:when test="col == 'time'" py:with="value = >> int(cell.value) if isinstance(cell.value, basestring) else cell.value"> >> <td class="date" >> py:attrs="td_attrs">${cell.value != '' and format_time(value) or '--'} >> @@ -113,7 +113,7 @@ >> </td> >> </py:when> >> >> - <py:when test="col == 'datetime'" py:with="value = >> int(cell.value) if isinstance(cell.value, basestring) else cell.value"> >> + <py:when test="col in ('datetime','tctime')" >> py:with="value = int(cell.value) if isinstance(cell.value, basestring) else >> cell.value"> >> <td class="date" >> py:attrs="td_attrs">${cell.value != '' and format_datetime(value) or '--'} >> </td> >> </py:when> >> @@ -123,18 +123,18 @@ >> ${wiki_to_html(context(row.resource), >> cell.value)} >> </td> >> </py:when> >> - >> + >> <py:when test="col == 'milestone'"> >> <td class="$col" py:attrs="td_attrs"> >> <a title="View milestone" >> href="${href.milestone(cell.value)}">$cell.value</a> >> </td> >> </py:when> >> - >> + >> <py:otherwise> >> <td class="$col" py:attrs="td_attrs">$cell.value >> </td> >> </py:otherwise> >> - >> + >> </py:choose> >> </py:with> >> </py:if> >> >> Modified: >> bloodhound/trunk/bloodhound_theme/bhtheme/templates/bh_report_view.html >> URL: >> http://svn.apache.org/viewvc/bloodhound/trunk/bloodhound_theme/bhtheme/templates/bh_report_view.html?rev=1505863&r1=1505862&r2=1505863&view=diff >> >> ============================================================================== >> --- >> bloodhound/trunk/bloodhound_theme/bhtheme/templates/bh_report_view.html >> (original) >> +++ >> bloodhound/trunk/bloodhound_theme/bhtheme/templates/bh_report_view.html Tue >> Jul 23 00:16:15 2013 >> @@ -35,6 +35,7 @@ >> </head> >> >> <body> >> + >> <div id="content" class="report row"> >> <span class='span12'><h1>$title >> <small py:if="numrows" class="numrows">(${ngettext('%(num)s >> match', '%(num)s matches', numrows)})</small> >> @@ -44,12 +45,12 @@ >> <div py:if="description" id="description" xml:space="preserve"> >> ${wiki_to_html(context, description)} >> </div> >> - >> + >> <div class="buttons control-group"> >> <form py:if="'REPORT_MODIFY' in perm(report.resource)" >> action="" method="get"> >> <div> >> <input type="hidden" name="action" value="edit" /> >> - <input type="submit" value="${_('Edit report')}" >> accesskey="e" >> + <input type="submit" value="${_('Edit report')}" >> accesskey="e" >> class="btn" /> >> </div> >> </form> >> @@ -62,7 +63,7 @@ >> <form py:if="'REPORT_DELETE' in perm(report.resource)" >> action="" method="get"> >> <div> >> <input type="hidden" name="action" value="delete" /> >> - <input type="submit" value="${_('Delete report')}" >> + <input type="submit" value="${_('Delete report')}" >> class="btn" /> >> </div> >> </form> >> @@ -74,7 +75,7 @@ >> <div> >> <label> >> Max items per page >> - <input type="text" naime="max" size="10" value="${max}" >> + <input type="text" naime="max" size="10" value="${max}" >> class="input-mini" /> >> </label> >> <fieldset id="reportfilters" py:if="show_args_form"> >> >> Modified: bloodhound/trunk/trac/trac/ticket/api.py >> URL: >> http://svn.apache.org/viewvc/bloodhound/trunk/trac/trac/ticket/api.py?rev=1505863&r1=1505862&r2=1505863&view=diff >> >> ============================================================================== >> --- bloodhound/trunk/trac/trac/ticket/api.py (original) >> +++ bloodhound/trunk/trac/trac/ticket/api.py Tue Jul 23 00:16:15 2013 >> @@ -165,13 +165,13 @@ class ITicketFieldProvider(Interface): >> """Returns a list of select fields, each as a tuple of >> (rank, field) >> where field is a dictionary that defines: >> - * name: the field name >> + * name: the field name >> * pk: the primary key of the field table >> * label: the label to display, preferably wrapped with N_() >> * cls: the model describing the field >> the following keys can also usefully be defined: >> * optional: a boolean specifying that the select can be empty >> - >> + >> The rank is expected to be an integer to specify the sorting of >> the >> select and radio fields. This is not intended to allow for the >> extent >> of configurability of the custom fields but allows a plugin to >> mix in >> @@ -342,11 +342,11 @@ class TicketSystem(Component): >> >> # Default select and radio fields >> selects = [] >> - [selects.extend(field_provider.get_select_fields()) >> + [selects.extend(field_provider.get_select_fields()) >> for field_provider in self.ticket_field_providers] >> [select.update({'type': 'select'}) for n, select in selects] >> radios = [] >> - [radios.extend(field_provider.get_radio_fields()) >> + [radios.extend(field_provider.get_radio_fields()) >> for field_provider in self.ticket_field_providers] >> [radio.update({'type': 'radio', >> 'optional': True}) for n, radio in radios] >> @@ -379,6 +379,8 @@ class TicketSystem(Component): >> 'label': N_('Created')}) >> fields.append({'name': 'changetime', 'type': 'time', >> 'label': N_('Modified')}) >> + fields.append({'name':'tctime','type':'time', >> + 'label': N_('Change Time')}) >> >> for field in self.get_custom_fields(): >> if field['name'] in [f['name'] for f in fields]: >> @@ -643,17 +645,17 @@ class TicketSystem(Component): >> def get_select_fields(self): >> """Default select and radio fields""" >> from trac.ticket import model >> - selects = [(10, {'name': 'type', 'label': N_('Type'), >> + selects = [(10, {'name': 'type', 'label': N_('Type'), >> 'cls': model.Type}), >> - (30, {'name':'priority', 'label': N_('Priority'), >> + (30, {'name':'priority', 'label': N_('Priority'), >> 'cls': model.Priority}), >> - (40, {'name': 'milestone', 'label': N_('Milestone'), >> + (40, {'name': 'milestone', 'label': N_('Milestone'), >> 'cls': model.Milestone, 'optional': True}), >> - (50, {'name': 'component', 'label': N_('Component'), >> + (50, {'name': 'component', 'label': N_('Component'), >> 'cls': model.Component}), >> - (60, {'name': 'version', 'label': N_('Version'), >> + (60, {'name': 'version', 'label': N_('Version'), >> 'cls': model.Version, 'optional': True}), >> - (70, {'name': 'severity', 'label': N_('Severity'), >> + (70, {'name': 'severity', 'label': N_('Severity'), >> 'cls': model.Severity})] >> return selects >> >> @@ -662,6 +664,6 @@ class TicketSystem(Component): >> from trac.ticket import model >> radios = [(20, {'name': 'status', 'label': N_('Status'), >> 'cls': model.Status}), >> - (80, {'name': 'resolution', 'label': N_('Resolution'), >> + (80, {'name': 'resolution', 'label': N_('Resolution'), >> 'cls': model.Resolution})] >> return radios >> >> Modified: bloodhound/trunk/trac/trac/ticket/report.py >> URL: >> http://svn.apache.org/viewvc/bloodhound/trunk/trac/trac/ticket/report.py?rev=1505863&r1=1505862&r2=1505863&view=diff >> >> ============================================================================== >> --- bloodhound/trunk/trac/trac/ticket/report.py (original) >> +++ bloodhound/trunk/trac/trac/ticket/report.py Tue Jul 23 00:16:15 2013 >> @@ -847,6 +847,7 @@ class ReportModule(Component): >> 'date': iso_datetime, >> 'created': iso_datetime, >> 'modified': iso_datetime, >> + 'tctime':iso_datetime, >> } >> >> converters = [col_conversions.get(c.strip('_'), cell_value) >> >> >> > It appears that you've mistakenly committed to the trunk rather than your > BEP-0008 branch. > I've rolled back your commit on the trunk in [1505871]. Please checkout the following branch and push your changes there, http://svn.apache.org/viewvc/bloodhound/branches/bep_0008_time_series_reports/
