repos / git-pr

a self-hosted git collaboration server
git clone https://github.com/picosh/git-pr.git

commit
4b46070
parent
9ccc782
author
Eric Bower
date
2026-01-02 20:30:31 -0500 EST
style: merge range diff details and patchset added timeline
3 files changed,  +68, -45
M web.go
M Makefile
+3, -0
 1@@ -15,6 +15,9 @@ test:
 2 	go test ./...
 3 .PHONY: test
 4 
 5+check: fmt lint test
 6+.PHONY: check
 7+
 8 snapshot:
 9 	UPDATE_SNAPS=true go test ./...
10 .PHONY: snapshot
M tmpl/pages/pr.html
+64, -44
  1@@ -22,54 +22,74 @@
  2   <div class="group timeline">
  3     {{range .Logs}}
  4     <div class="timeline-item{{if eq .Event "pr_status_changed"}} timeline-status-{{.Data.Status}}{{end}}">
  5-      {{if .RangeDiff}}
  6-      <details class="mb">
  7-        <summary class="text-sm">Range Diff ↕ <code><a href="/rd/{{.Patchset.ID}}">rd-{{.Patchset.ID}}</a></code></summary>
  8-        <div class="group">
  9-        {{- range .RangeDiff -}}
 10-          <div>
 11-            <code class='{{if eq .Type "rm"}}pill-admin{{else if eq .Type "add"}}pill-success{{else if eq .Type "diff"}}pill-review{{end}}'>
 12-              {{.Header}}
 13-            </code>
 14+      {{if eq .Event "pr_patchset_added"}}
 15+        <details class="mb" style="border: 0; padding: 0;">
 16+          <summary>
 17+            {{template "user-pill" .UserData}}
 18+            <span class="font-bold">added <a href="/ps/{{.Patchset.ID}}"><code>{{.FormattedPatchsetID}}</code></a></span>
 19+            <span>(<code><a href="/rd/{{.Patchset.ID}}">range-diff</a></code>)</span>
 20+            <span>on <date>{{.Date}}</date></span>
 21+          </summary>
 22+
 23+          <div class="group">
 24+            {{- range .RangeDiff -}}
 25+              <div>
 26+                <code class='{{if eq .Type "rm"}}pill-admin{{else if eq .Type "add"}}pill-success{{else if eq .Type "diff"}}pill-review{{end}}'>
 27+                  {{.Header}}
 28+                </code>
 29+              </div>
 30+            {{- end -}}
 31+          </div>
 32+        </details>
 33+      {{else if eq .Event "pr_reviewed"}}
 34+        <details class="mb" style="border: 0; padding: 0;">
 35+          <summary>
 36+            {{template "user-pill" .UserData}}
 37+            <span class="font-bold">reviewed pr with <a href="/ps/{{.Patchset.ID}}"><code class="pill-review">{{.FormattedPatchsetID}}</code></a></span>
 38+            <span>(<code><a href="/rd/{{.Patchset.ID}}">range-diff</a></code>)</span>
 39+            <span>on <date>{{.Date}}</date></span>
 40+          </summary>
 41+
 42+          <div class="group">
 43+            {{- range .RangeDiff -}}
 44+              <div>
 45+                <code class='{{if eq .Type "rm"}}pill-admin{{else if eq .Type "add"}}pill-success{{else if eq .Type "diff"}}pill-review{{end}}'>
 46+                  {{.Header}}
 47+                </code>
 48+              </div>
 49+            {{- end -}}
 50           </div>
 51-        {{- end -}}
 52+        </details>
 53+      {{else if eq .Event "pr_status_changed"}}
 54+        <div>
 55+          {{template "user-pill" .UserData}}
 56+          <span class="font-bold">changed status to
 57+            <code class="pill-status-{{.Data.Status}}">{{.Data.Status}}</code>
 58+          </span>
 59+          <span>on <date>{{.Date}}</date></span>
 60         </div>
 61-      </details>
 62-      {{end}}
 63 
 64-      {{if eq .Event "pr_status_changed"}}
 65-      <div>
 66-        {{template "user-pill" .UserData}}
 67-        <span class="font-bold">changed status to
 68-          <code class="pill-status-{{.Data.Status}}">{{.Data.Status}}</code>
 69-        </span>
 70-        <span>on <date>{{.Date}}</date></span>
 71-      </div>
 72-      {{if .Data.Comment}}
 73-      <div class="status-change-comment">{{.Data.Comment}}</div>
 74-      {{end}}
 75+        {{if .Data.Comment}}
 76+        <div class="status-change-comment">{{.Data.Comment}}</div>
 77+        {{end}}
 78       {{else}}
 79-      <div>
 80-        {{template "user-pill" .UserData}}
 81-        <span class="font-bold">
 82-          {{if eq .Event "pr_created"}}
 83-            created pr with <a href="/ps/{{.Patchset.ID}}"><code>{{.FormattedPatchsetID}}</code></a>
 84-          {{else if eq .Event "pr_patchset_added"}}
 85-            added <a href="/ps/{{.Patchset.ID}}"><code>{{.FormattedPatchsetID}}</code></a>
 86-          {{else if eq .Event "pr_patchset_deleted"}}
 87-            deleted <code>{{.FormattedPatchsetID}}</code>
 88-          {{else if eq .Event "pr_reviewed"}}
 89-            reviewed pr with <a href="/ps/{{.Patchset.ID}}"><code class="pill-review">{{.FormattedPatchsetID}}</code></a>
 90-          {{else if eq .Event "pr_patchset_replaced"}}
 91-            replaced <code>{{.FormattedPatchsetID}}</code>
 92-          {{else if eq .Event "pr_name_changed"}}
 93-            changed pr name to <code>{{.Data.Name}}</code>
 94-          {{else}}
 95-            {{.Event}}
 96-          {{end}}
 97-        </span>
 98-        <span>on <date>{{.Date}}</date></span>
 99-      </div>
100+        <div>
101+          {{template "user-pill" .UserData}}
102+          <span class="font-bold">
103+            {{if eq .Event "pr_created"}}
104+              created pr with <a href="/ps/{{.Patchset.ID}}"><code>{{.FormattedPatchsetID}}</code></a>
105+            {{else if eq .Event "pr_patchset_deleted"}}
106+              deleted <code>{{.FormattedPatchsetID}}</code>
107+            {{else if eq .Event "pr_patchset_replaced"}}
108+              replaced <code>{{.FormattedPatchsetID}}</code>
109+            {{else if eq .Event "pr_name_changed"}}
110+              changed pr name to <code>{{.Data.Name}}</code>
111+            {{else}}
112+              {{.Event}}
113+            {{end}}
114+          </span>
115+          <span>on <date>{{.Date}}</date></span>
116+        </div>
117       {{end}}
118     </div>
119     {{end}}
M web.go
+1, -1
1@@ -816,7 +816,7 @@ func createPrDetail(page string) http.HandlerFunc {
2 					return
3 				}
4 				for _, psData := range patchsetsData {
5-					if psData.Patchset.ID == eventlog.PatchsetID.Int64 {
6+					if psData.ID == eventlog.PatchsetID.Int64 {
7 						rangeDiff = psData.RangeDiff
8 						break
9 					}