James Moger
2013-01-05 9e186eedf1a09ca7ac4fbdea32b00e7e5331f7eb
src/com/gitblit/client/UsersPanel.java
@@ -25,7 +25,6 @@
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.IOException;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.List;
@@ -41,10 +40,7 @@
import javax.swing.event.ListSelectionListener;
import javax.swing.table.TableRowSorter;
import com.gitblit.Constants.PermissionType;
import com.gitblit.Constants.RpcRequest;
import com.gitblit.models.RegistrantAccessPermission;
import com.gitblit.models.RepositoryModel;
import com.gitblit.models.TeamModel;
import com.gitblit.models.UserModel;
import com.gitblit.utils.StringUtils;
@@ -114,11 +110,10 @@
      defaultSorter = new TableRowSorter<UsersTableModel>(tableModel);
      table = Utils.newTable(tableModel, Utils.DATE_FORMAT);
      String name = table.getColumnName(UsersTableModel.Columns.Name.ordinal());
      table.setRowHeight(nameRenderer.getFont().getSize() + 8);
      table.getColumn(name).setCellRenderer(nameRenderer);
      
      int w = 125;
      name = table.getColumnName(UsersTableModel.Columns.AccessLevel.ordinal());
      int w = 130;
      name = table.getColumnName(UsersTableModel.Columns.Type.ordinal());
      table.getColumn(name).setMinWidth(w);
      table.getColumn(name).setMaxWidth(w);
      name = table.getColumnName(UsersTableModel.Columns.Teams.ordinal());
@@ -313,28 +308,7 @@
            gitblit.getSettings());
      dialog.setLocationRelativeTo(UsersPanel.this);
      dialog.setUsers(gitblit.getUsers());
      List<RegistrantAccessPermission> permissions = user.getRepositoryPermissions();
      for (RegistrantAccessPermission permission : permissions) {
         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.getRepository(permission.registrant);
            if (rm == null) {
               System.out.println(MessageFormat.format("{0}: failed to find registrant repository {1}",
                     getClass().getSimpleName(), permission.registrant));
               continue;
            }
            boolean isOwner = rm.isOwner(user.username);
            if (isOwner) {
               permission.permissionType = PermissionType.OWNER;
               permission.mutable = false;
            }
         }
      }
      dialog.setRepositories(gitblit.getRepositories(), user.getRepositoryPermissions());
      dialog.setRepositories(gitblit.getRepositories(), gitblit.getUserAccessPermissions(user));
      dialog.setTeams(gitblit.getTeams(), user.teams == null ? null : new ArrayList<TeamModel>(
            user.teams));
      dialog.setVisible(true);