From f8dc86f1b362c2906ea302eb56928b59156cd484 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Wed, 27 Jul 2011 09:40:57 -0400 Subject: [PATCH] Renamed README for GutHub. --- src/com/gitblit/wicket/pages/EditRepositoryPage.java | 33 +++++++++++++++++++++++++++++++-- 1 files changed, 31 insertions(+), 2 deletions(-) diff --git a/src/com/gitblit/wicket/pages/EditRepositoryPage.java b/src/com/gitblit/wicket/pages/EditRepositoryPage.java index a1a42d0..eea389e 100644 --- a/src/com/gitblit/wicket/pages/EditRepositoryPage.java +++ b/src/com/gitblit/wicket/pages/EditRepositoryPage.java @@ -19,13 +19,13 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; -import java.util.Date; import java.util.Iterator; import java.util.List; import java.util.Map; import org.apache.wicket.PageParameters; 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; @@ -104,6 +104,22 @@ // automatically convert backslashes to forward slashes repositoryModel.name = repositoryModel.name.replace('\\', '/'); + // Automatically replace // with / + repositoryModel.name = repositoryModel.name.replace("//", "/"); + + // prohibit folder paths + if (repositoryModel.name.startsWith("/")) { + error("Leading root folder references (/) are prohibited."); + return; + } + if (repositoryModel.name.startsWith("../")) { + error("Relative folder references (../) are prohibited."); + return; + } + if (repositoryModel.name.contains("/../")) { + error("Relative folder references (../) are prohibited."); + return; + } // confirm valid characters in repository name char[] validChars = { '/', '.', '_', '-' }; @@ -128,7 +144,7 @@ } // save the repository - GitBlit.self().editRepositoryModel(oldName, repositoryModel, isCreate); + GitBlit.self().updateRepositoryModel(oldName, repositoryModel, isCreate); // save the repository access list if (repositoryModel.accessRestriction.exceeds(AccessRestrictionType.NONE)) { @@ -164,8 +180,21 @@ form.add(new CheckBox("useTickets")); form.add(new CheckBox("useDocs")); form.add(new CheckBox("showRemoteBranches")); + form.add(new CheckBox("showReadme")); form.add(usersPalette); + form.add(new Button("save")); + Button cancel = new Button("cancel") { + private static final long serialVersionUID = 1L; + + @Override + public void onSubmit() { + setResponsePage(RepositoriesPage.class); + } + }; + cancel.setDefaultFormProcessing(false); + form.add(cancel); + add(form); } -- Gitblit v1.9.1