From eecaad8b8e2c447429c31a01d49260ddd6b4ee03 Mon Sep 17 00:00:00 2001 From: Paul Martin <paul@paulsputer.com> Date: Sat, 16 Apr 2016 17:35:32 -0400 Subject: [PATCH] Proof of concept #1026 --- src/main/java/com/gitblit/models/UserModel.java | 12 +++++++++++- 1 files changed, 11 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/gitblit/models/UserModel.java b/src/main/java/com/gitblit/models/UserModel.java index 675835d..e152274 100644 --- a/src/main/java/com/gitblit/models/UserModel.java +++ b/src/main/java/com/gitblit/models/UserModel.java @@ -543,7 +543,7 @@ // admins can create any repository return true; } - if (canCreate) { + if (canCreate()) { String projectPath = StringUtils.getFirstPathElement(repository); if (!StringUtils.isEmpty(projectPath) && projectPath.equalsIgnoreCase(getPersonalPath())) { // personal repository @@ -553,6 +553,16 @@ return false; } + /** + * Returns true if the user is allowed to administer the specified repository + * + * @param repo + * @return true if the user can administer the repository + */ + public boolean canAdmin(RepositoryModel repo) { + return canAdmin() || repo.isOwner(username) || isMyPersonalRepository(repo.name); + } + public boolean isAuthenticated() { return !UserModel.ANONYMOUS.equals(this) && isAuthenticated; } -- Gitblit v1.9.1