James Moger
2011-04-29 bc9d4a0f2266e5ac1a018f0b691c76d53479b9e5
src/com/gitblit/wicket/pages/EditRepositoryPage.java
@@ -9,6 +9,7 @@
import org.apache.wicket.model.CompoundPropertyModel;
import com.gitblit.GitBlit;
import com.gitblit.GitBlitException;
import com.gitblit.wicket.AdminPage;
import com.gitblit.wicket.BasePage;
import com.gitblit.wicket.WicketUtils;
@@ -30,34 +31,42 @@
      // edit constructor
      super(params);
      isCreate = false;
      String repositoryName = WicketUtils.getRepositoryName(params);
      setupPage(new RepositoryModel(repositoryName, "", "", new Date()));
      String name = WicketUtils.getRepositoryName(params);
      RepositoryModel model = GitBlit.self().getRepositoryModel(name);
      setupPage(model);
   }
   protected void setupPage(final RepositoryModel repository) {
   protected void setupPage(final RepositoryModel repositoryModel) {
      if (isCreate) {
         super.setupPage("", getString("gb.newRepository"));
      } else {
         super.setupPage("", getString("gb.edit"));
      }
      CompoundPropertyModel<RepositoryModel> model = new CompoundPropertyModel<RepositoryModel>(repository);
      CompoundPropertyModel<RepositoryModel> model = new CompoundPropertyModel<RepositoryModel>(repositoryModel);
      Form<RepositoryModel> form = new Form<RepositoryModel>("editForm", model) {
         private static final long serialVersionUID = 1L;
         @Override
         protected void onSubmit() {
            GitBlit.self().editRepository(repository, isCreate);
            try {
               GitBlit.self().editRepositoryModel(repositoryModel, isCreate);
            } catch (GitBlitException e) {
               error(e.getMessage());
               return;
            }
            setRedirect(true);
            setResponsePage(RepositoriesPage.class);
         }
      };
      // field names reflective match RepositoryModel fields
      form.add(new TextField<String>("name").setEnabled(isCreate));
      form.add(new TextField<String>("description"));
      form.add(new TextField<String>("owner"));
      form.add(new TextField<String>("group"));
      form.add(new CheckBox("useTickets"));
      form.add(new CheckBox("useDocs"));
      form.add(new CheckBox("useNamedUsers"));
      add(form);
   }