dashboard / erock/git-pr / fix patchset count for specific user #61 rss

accepted · opened on 2025-04-07T23:02:03Z by jolheiser
Help
checkout latest patchset:
ssh pr.pico.sh print pr-61 | git am -3
checkout any patchset in a patch request:
ssh pr.pico.sh print ps-X | git am -3
add changes to patch request:
git format-patch main --stdout | ssh pr.pico.sh pr add 61
add review to patch request:
git format-patch main --stdout | ssh pr.pico.sh pr add --review 61
accept PR:
ssh pr.pico.sh pr accept 61
close PR:
ssh pr.pico.sh pr close 61

Logs

jolheiser created pr with ps-126 on 2025-04-07T23:02:03Z
erock added ps-128 on 2025-04-08T15:41:51Z
erock changed status on 2025-04-08T15:41:51Z {"status":"accepted"}

Patchsets

ps-126 by jolheiser on 2025-04-07T23:02:03Z
Range Diff ↕ rd-128
-: ------- > 1: 941acdf lgtm
1: e32ba93 = 2: 941acdf fix patchset count for specific user
ps-128 by erock on 2025-04-08T15:41:51Z

Patchset ps-126

fix patchset count for specific user

jolheiser
2025-04-07T23:01:41Z
pr.go
+11 -0
web.go
+1 -1
Back to top

fix patchset count for specific user

Signed-off-by: jolheiser <git@jolheiser.com>
pr.go link
+11 -0
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
diff --git a/pr.go b/pr.go
index 78d41fe..59664c7 100644
--- a/pr.go
+++ b/pr.go
@@ -38,6 +38,7 @@ type GitPatchRequest interface {
 	GetPatchRequestByID(prID int64) (*PatchRequest, error)
 	GetPatchRequests() ([]*PatchRequest, error)
 	GetPatchRequestsByRepoID(repoID int64) ([]*PatchRequest, error)
+	GetPatchRequestsByPubkey(pubkey string) ([]*PatchRequest, error)
 	GetPatchsetsByPrID(prID int64) ([]*Patchset, error)
 	GetPatchsetByID(patchsetID int64) (*Patchset, error)
 	GetLatestPatchsetByPrID(prID int64) (*Patchset, error)
@@ -271,6 +272,16 @@ func (cmd PrCmd) GetPatchRequestsByRepoID(repoID int64) ([]*PatchRequest, error)
 	return prs, err
 }
 
+func (cmd PrCmd) GetPatchRequestsByPubkey(pubkey string) ([]*PatchRequest, error) {
+	prs := []*PatchRequest{}
+	err := cmd.Backend.DB.Select(
+		&prs,
+		"SELECT pr.* FROM patch_requests pr, app_users au WHERE pr.user_id=au.id AND au.pubkey=? ORDER BY id DESC",
+		pubkey,
+	)
+	return prs, err
+}
+
 func (cmd PrCmd) GetPatchRequestByID(prID int64) (*PatchRequest, error) {
 	pr := PatchRequest{}
 	err := cmd.Backend.DB.Get(
web.go link
+1 -1
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
diff --git a/web.go b/web.go
index cab9357..8bc8839 100644
--- a/web.go
+++ b/web.go
@@ -390,7 +390,7 @@ func userDetailHandler(w http.ResponseWriter, r *http.Request) {
 	}
 	isAdmin := web.Backend.IsAdmin(pk)
 
-	prs, err := web.Pr.GetPatchRequests()
+	prs, err := web.Pr.GetPatchRequestsByPubkey(user.Pubkey)
 	if err != nil {
 		web.Logger.Error("cannot get prs", "err", err)
 		w.WriteHeader(http.StatusInternalServerError)