James Moger
2011-12-13 f08aab5c5e632431635e73b47b6096dc47243755
src/com/gitblit/client/UsersPanel.java
@@ -41,6 +41,7 @@
import javax.swing.table.TableRowSorter;
import com.gitblit.Constants.RpcRequest;
import com.gitblit.models.TeamModel;
import com.gitblit.models.UserModel;
import com.gitblit.utils.StringUtils;
@@ -51,7 +52,7 @@
 * @author James Moger
 * 
 */
public class UsersPanel extends JPanel {
public abstract class UsersPanel extends JPanel {
   private static final long serialVersionUID = 1L;
@@ -111,6 +112,18 @@
      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());
      table.getColumn(name).setMinWidth(w);
      table.getColumn(name).setMaxWidth(w);
      name = table.getColumnName(UsersTableModel.Columns.Teams.ordinal());
      table.getColumn(name).setMinWidth(w);
      table.getColumn(name).setMaxWidth(w);
      name = table.getColumnName(UsersTableModel.Columns.Repositories.ordinal());
      table.getColumn(name).setMinWidth(w);
      table.getColumn(name).setMaxWidth(w);
      table.setRowSorter(defaultSorter);
      table.getRowSorter().toggleSortOrder(UsersTableModel.Columns.Name.ordinal());
      table.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
@@ -167,7 +180,7 @@
      add(userTablePanel, BorderLayout.CENTER);
      add(userControls, BorderLayout.SOUTH);
   }
   @Override
   public void requestFocus() {
      filterTextfield.requestFocus();
@@ -178,6 +191,8 @@
      return Utils.INSETS;
   }
   protected abstract void updateTeamsTable();
   protected void updateTable(boolean pack) {
      tableModel.list.clear();
      tableModel.list.addAll(gitblit.getUsers());
@@ -240,10 +255,12 @@
    * 
    */
   protected void createUser() {
      EditUserDialog dialog = new EditUserDialog(gitblit.getSettings());
      EditUserDialog dialog = new EditUserDialog(gitblit.getProtocolVersion(),
            gitblit.getSettings());
      dialog.setLocationRelativeTo(UsersPanel.this);
      dialog.setUsers(gitblit.getUsers());
      dialog.setRepositories(gitblit.getRepositories(), null);
      dialog.setTeams(gitblit.getTeams(), null);
      dialog.setVisible(true);
      final UserModel newUser = dialog.getUser();
      if (newUser == null) {
@@ -257,6 +274,9 @@
            boolean success = gitblit.createUser(newUser);
            if (success) {
               gitblit.refreshUsers();
               if (newUser.teams.size() > 0) {
                  gitblit.refreshTeams();
               }
            }
            return success;
         }
@@ -264,6 +284,9 @@
         @Override
         protected void onSuccess() {
            updateTable(false);
            if (newUser.teams.size() > 0) {
               updateTeamsTable();
            }
         }
         @Override
@@ -282,10 +305,13 @@
    * @param user
    */
   protected void editUser(final UserModel user) {
      EditUserDialog dialog = new EditUserDialog(user, gitblit.getSettings());
      EditUserDialog dialog = new EditUserDialog(gitblit.getProtocolVersion(), user,
            gitblit.getSettings());
      dialog.setLocationRelativeTo(UsersPanel.this);
      dialog.setUsers(gitblit.getUsers());
      dialog.setRepositories(gitblit.getRepositories(), new ArrayList<String>(user.repositories));
      dialog.setTeams(gitblit.getTeams(), user.teams == null ? null : new ArrayList<TeamModel>(
            user.teams));
      dialog.setVisible(true);
      final UserModel revisedUser = dialog.getUser();
      if (revisedUser == null) {
@@ -298,6 +324,7 @@
            boolean success = gitblit.updateUser(user.username, revisedUser);
            if (success) {
               gitblit.refreshUsers();
               gitblit.refreshTeams();
            }
            return success;
         }
@@ -305,6 +332,7 @@
         @Override
         protected void onSuccess() {
            updateTable(false);
            updateTeamsTable();
         }
         @Override
@@ -336,6 +364,7 @@
               }
               if (success) {
                  gitblit.refreshUsers();
                  gitblit.refreshTeams();
               }
               return success;
            }
@@ -343,6 +372,7 @@
            @Override
            protected void onSuccess() {
               updateTable(false);
               updateTeamsTable();
            }
            @Override