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.

Reply via email to