From 90e9e3c89d01c58b68c71f47249a6190c04797a0 Mon Sep 17 00:00:00 2001
From: Florian Kaiser <florian.kaiser@fnkr.net>
Date: Tue, 2 Feb 2016 19:29:35 +0000
Subject: [PATCH] Only show repositories on organization dashboard, that the
 user has access to

---
 routers/user/home.go | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/routers/user/home.go b/routers/user/home.go
index 61cda33be2..e1f942df8f 100644
--- a/routers/user/home.go
+++ b/routers/user/home.go
@@ -109,10 +109,20 @@ func Dashboard(ctx *middleware.Context) {
 		ctx.Data["CollaborativeRepos"] = collaborateRepos
 	}
 
-	repos, err := models.GetRepositories(ctxUser.Id, true)
-	if err != nil {
-		ctx.Handle(500, "GetRepositories", err)
-		return
+	var repos []*models.Repository
+	if ctxUser.IsOrganization() {
+		if err := ctxUser.GetUserRepositories(ctx.User.Id); err != nil {
+			ctx.Handle(500, "GetUserRepositories", err)
+			return
+		}
+		repos = ctxUser.Repos
+	} else {
+		var err error
+		repos, err = models.GetRepositories(ctxUser.Id, true)
+		if err != nil {
+			ctx.Handle(500, "GetRepositories", err)
+			return
+		}
 	}
 	ctx.Data["Repos"] = repos
 
@@ -120,7 +130,7 @@ func Dashboard(ctx *middleware.Context) {
 	mirrors := make([]*models.Repository, 0, 5)
 	for _, repo := range repos {
 		if repo.IsMirror {
-			if err = repo.GetMirror(); err != nil {
+			if err := repo.GetMirror(); err != nil {
 				ctx.Handle(500, "GetMirror: "+repo.Name, err)
 				return
 			}