src/com/gitblit/GitBlit.java | ●●●●● patch | view | raw | blame | history | |
src/com/gitblit/client/RegistrantPermissionsPanel.java | ●●●●● patch | view | raw | blame | history | |
src/com/gitblit/client/RegistrantPermissionsTableModel.java | ●●●●● patch | view | raw | blame | history | |
src/com/gitblit/client/UsersPanel.java | ●●●●● patch | view | raw | blame | history | |
src/com/gitblit/models/RegistrantAccessPermission.java | ●●●●● patch | view | raw | blame | history | |
src/com/gitblit/models/TeamModel.java | ●●●●● patch | view | raw | blame | history | |
src/com/gitblit/models/UserModel.java | ●●●●● patch | view | raw | blame | history | |
src/com/gitblit/wicket/pages/EditUserPage.java | ●●●●● patch | view | raw | blame | history | |
src/com/gitblit/wicket/panels/RegistrantPermissionsPanel.java | ●●●●● patch | view | raw | blame | history |
src/com/gitblit/GitBlit.java
@@ -692,7 +692,7 @@ public boolean setUserAccessPermissions(RepositoryModel repository, Collection<RegistrantAccessPermission> permissions) { List<UserModel> users = new ArrayList<UserModel>(); for (RegistrantAccessPermission up : permissions) { if (up.isEditable) { if (up.mutable) { // only set editable defined permissions UserModel user = userService.getUserModel(up.registrant); user.setRepositoryPermission(repository.name, up.permission); @@ -832,7 +832,7 @@ public boolean setTeamAccessPermissions(RepositoryModel repository, Collection<RegistrantAccessPermission> permissions) { List<TeamModel> teams = new ArrayList<TeamModel>(); for (RegistrantAccessPermission tp : permissions) { if (tp.isEditable) { if (tp.mutable) { // only set explicitly defined access permissions TeamModel team = userService.getTeamModel(tp.registrant); team.setRepositoryPermission(repository.name, tp.permission); src/com/gitblit/client/RegistrantPermissionsPanel.java
@@ -133,7 +133,7 @@ permissions = new ArrayList<RegistrantAccessPermission>(); } for (RegistrantAccessPermission rp : permissions) { if (rp.isEditable) { if (rp.mutable) { // only remove editable duplicates // this allows for specifying an explicit permission filtered.remove(rp.registrant); src/com/gitblit/client/RegistrantPermissionsTableModel.java
@@ -104,7 +104,7 @@ // and therefore can not be directly manipulated unless the current // object is the source of the regex (i.e. a user or team with explicit // regex definition) return permissions.get(rowIndex).isEditable; return permissions.get(rowIndex).mutable; } return false; } src/com/gitblit/client/UsersPanel.java
@@ -316,7 +316,7 @@ List<RegistrantAccessPermission> permissions = user.getRepositoryPermissions(); for (RegistrantAccessPermission permission : permissions) { if (permission.isEditable && PermissionType.EXPLICIT.equals(permission.permissionType)) { if (permission.mutable && PermissionType.EXPLICIT.equals(permission.permissionType)) { // Ensure this is NOT an owner permission - which is non-editable // We don't know this from within the usermodel, ownership is a // property of a repository. @@ -329,7 +329,7 @@ boolean isOwner = rm.isOwner(user.username); if (isOwner) { permission.permissionType = PermissionType.OWNER; permission.isEditable = false; permission.mutable = false; } } } src/com/gitblit/models/RegistrantAccessPermission.java
@@ -35,7 +35,7 @@ public AccessPermission permission; public RegistrantType registrantType; public PermissionType permissionType; public boolean isEditable; public boolean mutable; public String source; public RegistrantAccessPermission() { @@ -44,16 +44,16 @@ public RegistrantAccessPermission(RegistrantType registrantType) { this.registrantType = registrantType; this.permissionType = PermissionType.EXPLICIT; this.isEditable = true; this.mutable = true; } public RegistrantAccessPermission(String registrant, AccessPermission permission, PermissionType permissionType, RegistrantType registrantType, String source, boolean isEditable) { public RegistrantAccessPermission(String registrant, AccessPermission permission, PermissionType permissionType, RegistrantType registrantType, String source, boolean mutable) { this.registrant = registrant; this.permission = permission; this.permissionType = permissionType; this.registrantType = registrantType; this.source = source; this.isEditable = isEditable; this.mutable = mutable; } public boolean isAdmin() { src/com/gitblit/models/TeamModel.java
@@ -191,7 +191,7 @@ ap.registrant = name; ap.registrantType = RegistrantType.TEAM; ap.permission = AccessPermission.NONE; ap.isEditable = false; ap.mutable = false; if (canAdmin) { ap.permissionType = PermissionType.ADMINISTRATOR; @@ -205,7 +205,7 @@ if (p != null) { ap.permissionType = PermissionType.EXPLICIT; ap.permission = p; ap.isEditable = true; ap.mutable = true; return ap; } } else { src/com/gitblit/models/UserModel.java
@@ -252,7 +252,7 @@ ap.registrant = username; ap.registrantType = RegistrantType.USER; ap.permission = AccessPermission.NONE; ap.isEditable = false; ap.mutable = false; // administrator if (canAdmin()) { @@ -291,7 +291,7 @@ if (p != null) { ap.permissionType = PermissionType.EXPLICIT; ap.permission = p; ap.isEditable = true; ap.mutable = true; return ap; } } else { src/com/gitblit/wicket/pages/EditUserPage.java
@@ -107,19 +107,19 @@ final String oldName = userModel.username; final List<RegistrantAccessPermission> permissions = userModel.getRepositoryPermissions(); for (RegistrantAccessPermission permission : permissions) { if (permission.isEditable && PermissionType.EXPLICIT.equals(permission.permissionType)) { if (permission.mutable && PermissionType.EXPLICIT.equals(permission.permissionType)) { // Ensure this is NOT an owner permission - which is non-editable // We don't know this from within the usermodel, ownership is a // property of a repository. RepositoryModel rm = GitBlit.self().getRepositoryModel(permission.registrant); if (rm == null) { LoggerFactory.getLogger(getClass()).error("Missing repository " + permission.registrant, new NullPointerException()); LoggerFactory.getLogger(getClass()).error("Missing repository " + permission.registrant); continue; } boolean isOwner = rm.isOwner(oldName); if (isOwner) { permission.permissionType = PermissionType.OWNER; permission.isEditable = false; permission.mutable = false; } } } src/com/gitblit/wicket/panels/RegistrantPermissionsPanel.java
@@ -159,9 +159,9 @@ // only allow changing an explicitly defined permission // this is designed to prevent changing a regex permission in // a repository permissionChoice.setEnabled(entry.isEditable); permissionChoice.setEnabled(entry.mutable); permissionChoice.setOutputMarkupId(true); if (entry.isEditable) { if (entry.mutable) { permissionChoice.add(new AjaxFormComponentUpdatingBehavior("onchange") { private static final long serialVersionUID = 1L; @@ -181,7 +181,7 @@ // filter out registrants we already have permissions for final List<String> registrants = new ArrayList<String>(allRegistrants); for (RegistrantAccessPermission rp : permissions) { if (rp.isEditable) { if (rp.mutable) { // remove editable duplicates // this allows for specifying an explicit permission registrants.remove(rp.registrant);