Skip to content

Commit e43de0d

Browse files
6543lafriks
authored andcommitted
Fix Dashboard Issues/PR list (#9235)
* fix it * revert suggestion part
1 parent e459f99 commit e43de0d

File tree

1 file changed

+25
-17
lines changed

1 file changed

+25
-17
lines changed

routers/user/home.go

+25-17
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,9 @@ func Issues(ctx *context.Context) {
285285
}
286286
opts.LabelIDs = labelIDs
287287

288-
opts.RepoIDs = repoIDs
288+
if len(repoIDs) > 0 {
289+
opts.RepoIDs = repoIDs
290+
}
289291

290292
issues, err := models.Issues(opts)
291293
if err != nil {
@@ -295,23 +297,29 @@ func Issues(ctx *context.Context) {
295297

296298
showReposMap := make(map[int64]*models.Repository, len(counts))
297299
for repoID := range counts {
298-
showReposMap[repoID], err = models.GetRepositoryByID(repoID)
299-
if models.IsErrRepoNotExist(err) {
300-
ctx.NotFound("GetRepositoryByID", err)
301-
return
302-
} else if err != nil {
303-
ctx.ServerError("GetRepositoryByID", fmt.Errorf("[%d]%v", repoID, err))
304-
return
305-
}
300+
if repoID > 0 {
301+
if _, ok := showReposMap[repoID]; !ok {
302+
repo, err := models.GetRepositoryByID(repoID)
303+
if models.IsErrRepoNotExist(err) {
304+
ctx.NotFound("GetRepositoryByID", err)
305+
return
306+
} else if err != nil {
307+
ctx.ServerError("GetRepositoryByID", fmt.Errorf("[%d]%v", repoID, err))
308+
return
309+
}
310+
showReposMap[repoID] = repo
311+
}
312+
repo := showReposMap[repoID]
306313

307-
// Check if user has access to given repository.
308-
perm, err := models.GetUserRepoPermission(showReposMap[repoID], ctxUser)
309-
if err != nil {
310-
ctx.ServerError("GetUserRepoPermission", fmt.Errorf("[%d]%v", repoID, err))
311-
return
312-
}
313-
if !perm.CanRead(models.UnitTypeIssues) {
314-
log.Error("User created Issues in Repository which they no longer have access to: [%d]", repoID)
314+
// Check if user has access to given repository.
315+
perm, err := models.GetUserRepoPermission(repo, ctxUser)
316+
if err != nil {
317+
ctx.ServerError("GetUserRepoPermission", fmt.Errorf("[%d]%v", repoID, err))
318+
return
319+
}
320+
if !perm.CanRead(models.UnitTypeIssues) {
321+
log.Error("User created Issues in Repository which they no longer have access to: [%d]", repoID)
322+
}
315323
}
316324
}
317325

0 commit comments

Comments
 (0)