From 8bc725871269aa47f8ef6db086a4cfedc75ef140 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Mon, 29 Oct 2012 09:19:03 -0400 Subject: [PATCH] Use repository swatch coloring in registrant permissions panel --- src/com/gitblit/wicket/pages/EditRepositoryPage.java | 27 ++++++++++++++++----------- 1 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/com/gitblit/wicket/pages/EditRepositoryPage.java b/src/com/gitblit/wicket/pages/EditRepositoryPage.java index 4e34d89..1a2e63c 100644 --- a/src/com/gitblit/wicket/pages/EditRepositoryPage.java +++ b/src/com/gitblit/wicket/pages/EditRepositoryPage.java @@ -54,9 +54,8 @@ import com.gitblit.GitBlit; import com.gitblit.GitBlitException; import com.gitblit.Keys; +import com.gitblit.models.RegistrantAccessPermission; import com.gitblit.models.RepositoryModel; -import com.gitblit.models.TeamAccessPermission; -import com.gitblit.models.UserAccessPermission; import com.gitblit.models.UserModel; import com.gitblit.utils.ArrayUtils; import com.gitblit.utils.StringUtils; @@ -64,8 +63,7 @@ import com.gitblit.wicket.StringChoiceRenderer; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.panels.BulletListPanel; -import com.gitblit.wicket.panels.TeamPermissionsPanel; -import com.gitblit.wicket.panels.UserPermissionsPanel; +import com.gitblit.wicket.panels.RegistrantPermissionsPanel; public class EditRepositoryPage extends RootSubPage { @@ -117,14 +115,15 @@ List<String> indexedBranches = new ArrayList<String>(); List<String> federationSets = new ArrayList<String>(); - final List<UserAccessPermission> repositoryUsers = new ArrayList<UserAccessPermission>(); - final List<TeamAccessPermission> repositoryTeams = new ArrayList<TeamAccessPermission>(); + final List<RegistrantAccessPermission> repositoryUsers = new ArrayList<RegistrantAccessPermission>(); + final List<RegistrantAccessPermission> repositoryTeams = new ArrayList<RegistrantAccessPermission>(); List<String> preReceiveScripts = new ArrayList<String>(); List<String> postReceiveScripts = new ArrayList<String>(); GitBlitWebSession session = GitBlitWebSession.get(); final UserModel user = session.getUser() == null ? UserModel.ANONYMOUS : session.getUser(); - + final boolean allowEditName = isCreate || isAdmin || repositoryModel.isUsersPersonalRepository(user.username); + if (isCreate) { if (user.canAdmin()) { super.setupPage(getString("gb.newRepository"), ""); @@ -146,8 +145,10 @@ final String oldName = repositoryModel.name; - UserPermissionsPanel usersPalette = new UserPermissionsPanel("users", repositoryUsers, getAccessPermissions()); - TeamPermissionsPanel teamsPalette = new TeamPermissionsPanel("teams", repositoryTeams, getAccessPermissions()); + RegistrantPermissionsPanel usersPalette = new RegistrantPermissionsPanel("users", + GitBlit.self().getAllUsernames(), repositoryUsers, getAccessPermissions()); + RegistrantPermissionsPanel teamsPalette = new RegistrantPermissionsPanel("teams", + GitBlit.self().getAllTeamnames(), repositoryTeams, getAccessPermissions()); // indexed local branches palette List<String> allLocalBranches = new ArrayList<String>(); @@ -253,7 +254,7 @@ return; } - if (user.canCreate() && !user.canAdmin()) { + if (user.canCreate() && !user.canAdmin() && allowEditName) { // ensure repository name begins with the user's path if (!repositoryModel.name.startsWith(user.getPersonalPath())) { error(MessageFormat.format(getString("gb.illegalPersonalRepositoryLocation"), @@ -360,7 +361,7 @@ form.add(new SimpleAttributeModifier("autocomplete", "off")); // field names reflective match RepositoryModel fields - form.add(new TextField<String>("name").setEnabled(isCreate || isAdmin || repositoryModel.isUsersPersonalRepository(user.username))); + form.add(new TextField<String>("name").setEnabled(allowEditName)); form.add(new TextField<String>("description")); form.add(new DropDownChoice<String>("owner", GitBlit.self().getAllUsernames()) .setEnabled(GitBlitWebSession.get().canAdmin())); @@ -378,6 +379,10 @@ } form.add(new DropDownChoice<String>("HEAD", availableRefs).setEnabled(availableRefs.size() > 0)); + List<String> gcPeriods = Arrays.asList("1 day", "2 days", "3 days", "4 days", "5 days", "7 days", "10 days", "14 days"); + form.add(new DropDownChoice<String>("gcPeriod", gcPeriods)); + form.add(new TextField<String>("gcThreshold")); + // federation strategies - remove ORIGIN choice if this repository has // no origin. List<FederationStrategy> federationStrategies = new ArrayList<FederationStrategy>( -- Gitblit v1.9.1