[PATCH] changeset: improve the comment count information display
Angel Ezquerra
angel.ezquerra at gmail.com
Sat Feb 27 15:43:01 UTC 2016
On Sat, Feb 27, 2016 at 12:24 PM, Angel Ezquerra
<angel.ezquerra at gmail.com> wrote:
> # HG changeset patch
> # User Angel Ezquerra <angel.ezquerra at gmail.com>
> # Date 1456572240 -3600
> # Sat Feb 27 12:24:00 2016 +0100
> # Branch stable
> # Node ID 58ee8a76b6a8ae0a69d3f50b2e3e3357780598c9
> # Parent a13394a91f352a982afcf0b9141ece5537caacb1
> changeset: improve the comment count information display
>
> Some recent revisions have changed the way comments are counted. We no longer
> count "status change only comments" as comments on the changelog, etc. This
> change tries to make the way we count comments on the changest details page
> match the way we count them everywhere else. At the same time this tries to
>
> Change the way the comment count information is displayed as follows:
>
> - Separately count the number of status changes and the number of comment
> changes (to match how comments are counted everywhere else)
> - Only show the status and comment counts when needed (i.e. show nothing when
> there are no comments or status changes)
> - Visually separate the counts from the "First comment" link by adding a "|"
> separator.
>
> diff --git a/kallithea/templates/changeset/changeset.html b/kallithea/templates/changeset/changeset.html
> --- a/kallithea/templates/changeset/changeset.html
> +++ b/kallithea/templates/changeset/changeset.html
> @@ -72,7 +72,7 @@
> ${c.context_url(request.GET)}
> </div>
> <div class="comments-number" style="float:right;padding-right:5px">
> - ${comment.comment_count(c.inline_cnt, len(c.comments))}
> + ${comment.comment_count(c.inline_cnt, c.comments)}
> </div>
> </div>
> </div>
> diff --git a/kallithea/templates/changeset/changeset_file_comment.html b/kallithea/templates/changeset/changeset_file_comment.html
> --- a/kallithea/templates/changeset/changeset_file_comment.html
> +++ b/kallithea/templates/changeset/changeset_file_comment.html
> @@ -100,13 +100,33 @@
> </%def>
>
>
> -## show comment count as "x comments (y inline, z general)"
> -<%def name="comment_count(inline_cnt, general_cnt)">
> - ${'%s (%s, %s)' % (
> - ungettext("%d comment", "%d comments", inline_cnt + general_cnt) % (inline_cnt + general_cnt),
> - ungettext("%d inline", "%d inline", inline_cnt) % inline_cnt,
> - ungettext("%d general", "%d general", general_cnt) % general_cnt
> - )}
> +## show comment count as "w comments (x inline, y general), z status changes"
> +<%def name="comment_count(inline_cnt, comments)">
> + <%
> + general_cnt = len([cm for cm in comments if cm.text])
> + status_cnt = len([cm for cm in comments if cm.status_change])
> + comment_cnt = inline_cnt + general_cnt
> + %>
> + %if status_cnt:
> + ${ungettext("%d status change", "%d status changes", status_cnt) % status_cnt}
> + %if comment_cnt:
> + ${", "}
> + %endif
> + %endif
> + %if inline_cnt > 0 and general_cnt > 0:
> + ${'%s (%s, %s)' % (
> + ungettext("%d comment", "%d comments", inline_cnt + general_cnt) % (inline_cnt + general_cnt),
> + ungettext("%d inline", "%d inline", inline_cnt) % inline_cnt,
> + ungettext("%d general", "%d general", general_cnt) % general_cnt,
> + )}
> + %elif inline_cnt > 0:
> + ${ungettext("%d inline comment", "%d inline comments", inline_cnt) % inline_cnt,}
> + %elif general_cnt > 0:
> + ${ungettext("%d general comment", "%d general comments", general_cnt) % general_cnt,}
> + %endif
> + %if status_cnt + comment_cnt:
> + |
> + %endif
> <span class="firstlink"></span>
> </%def>
>
> @@ -125,7 +145,7 @@
> %endfor
>
> <div class="comments-number">
> - ${comment_count(c.inline_cnt, len(c.comments))}
> + ${comment_count(c.inline_cnt, c.comments)}
> </div>
>
> <div class="comments-list-general">
> diff --git a/kallithea/templates/pullrequests/pullrequest_show.html b/kallithea/templates/pullrequests/pullrequest_show.html
> --- a/kallithea/templates/pullrequests/pullrequest_show.html
> +++ b/kallithea/templates/pullrequests/pullrequest_show.html
> @@ -298,7 +298,7 @@
> <div class="table">
> <div id="changeset_compare_view_content">
> <div style="font-size:1.1em;font-weight: bold;clear:both;padding-top:10px">
> - ${comment.comment_count(c.inline_cnt, len(c.comments))}
> + ${comment.comment_count(c.inline_cnt, c.comments)}
> </div>
> ##CS
> <div style="font-size:1.1em;font-weight: bold;clear:both;padding-top:10px">
Hi,
I just realized that this patch does not apply cleanly on the head of
default (I tested it on stable). Please ignore until I send a fixed
version.
Sorry!
Angel
More information about the kallithea-general
mailing list