From 74e73c7f2cd1f0ecc4e65d009e0d8ce2d9160e97 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Sun, 25 Mar 2012 18:10:33 -0400
Subject: [PATCH] Corrected timestamp on activity panel from author time to committer time
---
src/com/gitblit/wicket/pages/EditRepositoryPage.java | 65 +++++++++++++++++++-------------
1 files changed, 39 insertions(+), 26 deletions(-)
diff --git a/src/com/gitblit/wicket/pages/EditRepositoryPage.java b/src/com/gitblit/wicket/pages/EditRepositoryPage.java
index 6c04249..c2fc9f5 100644
--- a/src/com/gitblit/wicket/pages/EditRepositoryPage.java
+++ b/src/com/gitblit/wicket/pages/EditRepositoryPage.java
@@ -26,10 +26,10 @@
import java.util.Set;
import org.apache.wicket.PageParameters;
+import org.apache.wicket.behavior.SimpleAttributeModifier;
import org.apache.wicket.extensions.markup.html.form.palette.Palette;
import org.apache.wicket.markup.html.form.Button;
import org.apache.wicket.markup.html.form.CheckBox;
-import org.apache.wicket.markup.html.form.ChoiceRenderer;
import org.apache.wicket.markup.html.form.DropDownChoice;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.markup.html.form.IChoiceRenderer;
@@ -45,12 +45,12 @@
import com.gitblit.GitBlit;
import com.gitblit.GitBlitException;
import com.gitblit.Keys;
-import com.gitblit.models.RefModel;
import com.gitblit.models.RepositoryModel;
import com.gitblit.models.UserModel;
import com.gitblit.utils.ArrayUtils;
import com.gitblit.utils.StringUtils;
import com.gitblit.wicket.GitBlitWebSession;
+import com.gitblit.wicket.StringChoiceRenderer;
import com.gitblit.wicket.WicketUtils;
import com.gitblit.wicket.panels.BulletListPanel;
@@ -82,6 +82,7 @@
// ensure this user can create or edit this repository
checkPermissions(repositoryModel);
+ List<String> indexedBranches = new ArrayList<String>();
List<String> federationSets = new ArrayList<String>();
List<String> repositoryUsers = new ArrayList<String>();
List<String> repositoryTeams = new ArrayList<String>();
@@ -98,24 +99,35 @@
Collections.sort(repositoryUsers);
}
federationSets.addAll(repositoryModel.federationSets);
+ if (!ArrayUtils.isEmpty(repositoryModel.indexedBranches)) {
+ indexedBranches.addAll(repositoryModel.indexedBranches);
+ }
}
final String oldName = repositoryModel.name;
// users palette
final Palette<String> usersPalette = new Palette<String>("users", new ListModel<String>(
repositoryUsers), new CollectionModel<String>(GitBlit.self().getAllUsernames()),
- new ChoiceRenderer<String>("", ""), 10, false);
+ new StringChoiceRenderer(), 10, false);
// teams palette
final Palette<String> teamsPalette = new Palette<String>("teams", new ListModel<String>(
repositoryTeams), new CollectionModel<String>(GitBlit.self().getAllTeamnames()),
- new ChoiceRenderer<String>("", ""), 5, false);
+ new StringChoiceRenderer(), 8, false);
+ // indexed local branches palette
+ List<String> allLocalBranches = repositoryModel.getLocalBranches();
+ boolean luceneEnabled = GitBlit.getBoolean(Keys.web.allowLuceneIndexing, true);
+ final Palette<String> indexedBranchesPalette = new Palette<String>("indexedBranches", new ListModel<String>(
+ indexedBranches), new CollectionModel<String>(allLocalBranches),
+ new StringChoiceRenderer(), 8, false);
+ indexedBranchesPalette.setEnabled(luceneEnabled && (allLocalBranches.size() > 0));
+
// federation sets palette
List<String> sets = GitBlit.getStrings(Keys.federation.sets);
final Palette<String> federationSetsPalette = new Palette<String>("federationSets",
new ListModel<String>(federationSets), new CollectionModel<String>(sets),
- new ChoiceRenderer<String>("", ""), 5, false);
+ new StringChoiceRenderer(), 8, false);
// pre-receive palette
if (!ArrayUtils.isEmpty(repositoryModel.preReceiveScripts)) {
@@ -124,7 +136,7 @@
final Palette<String> preReceivePalette = new Palette<String>("preReceiveScripts",
new ListModel<String>(preReceiveScripts), new CollectionModel<String>(GitBlit
.self().getPreReceiveScriptsUnused(repositoryModel)),
- new ChoiceRenderer<String>("", ""), 12, true);
+ new StringChoiceRenderer(), 12, true);
// post-receive palette
if (!ArrayUtils.isEmpty(repositoryModel.postReceiveScripts)) {
@@ -133,7 +145,7 @@
final Palette<String> postReceivePalette = new Palette<String>("postReceiveScripts",
new ListModel<String>(postReceiveScripts), new CollectionModel<String>(GitBlit
.self().getPostReceiveScriptsUnused(repositoryModel)),
- new ChoiceRenderer<String>("", ""), 12, true);
+ new StringChoiceRenderer(), 12, true);
CompoundPropertyModel<RepositoryModel> model = new CompoundPropertyModel<RepositoryModel>(
repositoryModel);
@@ -211,6 +223,14 @@
repositoryModel.mailingLists = new ArrayList<String>(list);
}
+ // indexed branches
+ List<String> indexedBranches = new ArrayList<String>();
+ Iterator<String> branches = indexedBranchesPalette.getSelectedChoices();
+ while (branches.hasNext()) {
+ indexedBranches.add(branches.next());
+ }
+ repositoryModel.indexedBranches = indexedBranches;
+
// pre-receive scripts
List<String> preReceiveScripts = new ArrayList<String>();
Iterator<String> pres = preReceivePalette.getSelectedChoices();
@@ -262,6 +282,9 @@
}
};
+ // do not let the browser pre-populate these fields
+ form.add(new SimpleAttributeModifier("autocomplete", "off"));
+
// field names reflective match RepositoryModel fields
form.add(new TextField<String>("name").setEnabled(isCreate || isAdmin));
form.add(new TextField<String>("description"));
@@ -272,9 +295,13 @@
form.add(new CheckBox("isFrozen"));
// TODO enable origin definition
form.add(new TextField<String>("origin").setEnabled(false/* isCreate */));
- // enable alteration of the default branch after clone
- form.add(new DropDownChoice<RefModel>("defaultHead", repositoryModel.availableHeads,
- new RefModelRenderer()).setEnabled(GitBlitWebSession.get().canAdmin()));
+
+ // allow relinking HEAD to a branch or tag other than master on edit repository
+ List<String> availableRefs = new ArrayList<String>();
+ if (!ArrayUtils.isEmpty(repositoryModel.availableRefs)) {
+ availableRefs.addAll(repositoryModel.availableRefs);
+ }
+ form.add(new DropDownChoice<String>("HEAD", availableRefs).setEnabled(availableRefs.size() > 0));
// federation strategies - remove ORIGIN choice if this repository has
// no origin.
@@ -286,7 +313,7 @@
form.add(new DropDownChoice<FederationStrategy>("federationStrategy", federationStrategies,
new FederationTypeRenderer()));
form.add(new CheckBox("useTickets"));
- form.add(new CheckBox("useDocs"));
+ form.add(new CheckBox("useDocs"));
form.add(new CheckBox("showRemoteBranches"));
form.add(new CheckBox("showReadme"));
form.add(new CheckBox("skipSizeCalculation"));
@@ -294,6 +321,7 @@
mailingLists = new Model<String>(ArrayUtils.isEmpty(repositoryModel.mailingLists) ? ""
: StringUtils.flattenStrings(repositoryModel.mailingLists, " "));
form.add(new TextField<String>("mailingLists", mailingLists));
+ form.add(indexedBranchesPalette);
form.add(usersPalette);
form.add(teamsPalette);
form.add(federationSetsPalette);
@@ -362,21 +390,6 @@
} else {
// No Administration Permitted
error("Administration is disabled", true);
- }
- }
-
- private class RefModelRenderer implements IChoiceRenderer<RefModel> {
-
- private static final long serialVersionUID = 1L;
-
- @Override
- public String getDisplayValue(RefModel type) {
- return type.displayName;
- }
-
- @Override
- public String getIdValue(RefModel type, int index) {
- return type.getName();
}
}
--
Gitblit v1.9.1