summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/gitblit/models/UserModel.java
diff options
context:
space:
mode:
authorJames Moger <james.moger@gitblit.com>2014-03-28 19:44:48 -0400
committerJames Moger <james.moger@gitblit.com>2014-04-10 19:00:52 -0400
commita9dc74e73eea068b8cbb5c96958abccae88b4abc (patch)
treecf9834c7b98cc8b284c64fb49ad3f97657de9e5f /src/main/java/com/gitblit/models/UserModel.java
parentcd45b5fe5ae88c1d526211e67068ce7b2a066d70 (diff)
downloadgitblit-a9dc74e73eea068b8cbb5c96958abccae88b4abc.tar.gz
gitblit-a9dc74e73eea068b8cbb5c96958abccae88b4abc.zip
Implement management commands in repositories dispatcher
Diffstat (limited to 'src/main/java/com/gitblit/models/UserModel.java')
-rw-r--r--src/main/java/com/gitblit/models/UserModel.java12
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 675835d3..64bca825 100644
--- a/src/main/java/com/gitblit/models/UserModel.java
+++ b/src/main/java/com/gitblit/models/UserModel.java
@@ -543,7 +543,7 @@ public class UserModel implements Principal, Serializable, Comparable<UserModel>
// 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
@@ -552,6 +552,16 @@ public class UserModel implements Principal, Serializable, Comparable<UserModel>
}
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() || isMyPersonalRepository(repo.name);
+ }
public boolean isAuthenticated() {
return !UserModel.ANONYMOUS.equals(this) && isAuthenticated;