From 717267cdf6fff130865c194dc33620ac1cd10a51 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 31 Oct 2012 08:50:20 -0400
Subject: [PATCH] Reject add if permission selector has not been set
---
src/com/gitblit/client/RegistrantPermissionsTableModel.java | 18 ++++++++++++++++--
1 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/src/com/gitblit/client/RegistrantPermissionsTableModel.java b/src/com/gitblit/client/RegistrantPermissionsTableModel.java
index 91acec8..9ed8db4 100644
--- a/src/com/gitblit/client/RegistrantPermissionsTableModel.java
+++ b/src/com/gitblit/client/RegistrantPermissionsTableModel.java
@@ -36,7 +36,7 @@
List<RegistrantAccessPermission> permissions;
enum Columns {
- Registrant, Permission;
+ Registrant, Type, Permission;
@Override
public String toString() {
@@ -72,6 +72,8 @@
switch (col) {
case Registrant:
return Translation.get("gb.name");
+ case Type:
+ return Translation.get("gb.type");
case Permission:
return Translation.get("gb.permission");
}
@@ -88,13 +90,23 @@
public Class<?> getColumnClass(int columnIndex) {
if (columnIndex == Columns.Permission.ordinal()) {
return AccessPermission.class;
+ } else if (columnIndex == Columns.Type.ordinal()) {
+ return Boolean.class;
}
return String.class;
}
@Override
public boolean isCellEditable(int rowIndex, int columnIndex) {
- return columnIndex == Columns.Permission.ordinal();
+ if (columnIndex == Columns.Permission.ordinal()) {
+ // in order for the permission to be editable it must be
+ // explicitly defined on the object. regex permissions are inherited
+ // 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 false;
}
@Override
@@ -104,6 +116,8 @@
switch (col) {
case Registrant:
return rp.registrant;
+ case Type:
+ return rp.permissionType;
case Permission:
return rp.permission;
}
--
Gitblit v1.9.1