[PATCH V2] changeset: improve the comment count information display
Angel Ezquerra
angel.ezquerra at gmail.com
Sat Feb 27 15:51:07 UTC 2016
On Sat, Feb 27, 2016 at 4:49 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
> # Node ID 40af58461b7a72f3bccc5ff8bf88da942b5931c1
> # Parent c71b5a31fd80f5f4e8b0ce8da47aec2fff354891
> 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
> @@ -64,7 +64,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
> @@ -122,13 +122,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>
>
> @@ -154,7 +174,7 @@
> </div>
> </div>
> <div class="comments-number">
> - ${comment_count(c.inline_cnt, len(c.comments))}
> + ${comment_count(c.inline_cnt, c.comments)}
> </div>
> </%def>
>
> 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
> @@ -309,7 +309,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">
>
> _______________________________________________
> kallithea-general mailing list
> kallithea-general at sfconservancy.org
> http://lists.sfconservancy.org/mailman/listinfo/kallithea-general
>
This second version should apply fine on default.
Cheers,
Angel
More information about the kallithea-general
mailing list