@@ -519,6 +519,10 @@ public class JGitUtils { | |||
} | |||
return null; | |||
} | |||
public String toString() { | |||
return name().toLowerCase(); | |||
} | |||
} | |||
public static List<RevCommit> searchRevlogs(Repository r, String objectId, String value, final SearchType type, int offset, int maxCount) { |
@@ -6,8 +6,6 @@ import org.apache.wicket.Request; | |||
import org.apache.wicket.Response; | |||
import org.apache.wicket.Session; | |||
import org.apache.wicket.protocol.http.WebApplication; | |||
import org.apache.wicket.protocol.http.request.urlcompressing.UrlCompressingWebRequestProcessor; | |||
import org.apache.wicket.request.IRequestCycleProcessor; | |||
import org.apache.wicket.request.target.coding.MixedParamUrlCodingStrategy; | |||
import com.gitblit.GitBlit; | |||
@@ -86,11 +84,6 @@ public class GitBlitWebApp extends WebApplication { | |||
return new GitBlitWebSession(request); | |||
} | |||
@Override | |||
protected final IRequestCycleProcessor newRequestCycleProcessor() { | |||
return new UrlCompressingWebRequestProcessor(); | |||
} | |||
@Override | |||
public final String getConfigurationType() { | |||
if (GitBlit.self().isDebugMode()) |
@@ -10,7 +10,7 @@ | |||
<!-- page nav links --> | |||
<div wicket:id="pageLinks">[page links]</div> | |||
<div> | |||
<div style="clear:both;"> | |||
<!-- Repository Activity Chart --> | |||
<div style="width:400px;float:right;"> | |||
<img class="activityGraph" wicket:id="commitsChart" /> |
@@ -5,9 +5,20 @@ | |||
lang="en"> | |||
<wicket:panel> | |||
<!-- page nav links --> | |||
<div class="page_nav"> | |||
<a wicket:id="summary"><wicket:message key="gb.summary"></wicket:message></a> | <a wicket:id="log"><wicket:message key="gb.log"></wicket:message></a> | <a wicket:id="branches"><wicket:message key="gb.branches"></wicket:message></a> | <a wicket:id="tags"><wicket:message key="gb.tags"></wicket:message></a> | <a wicket:id="tree"><wicket:message key="gb.tree"></wicket:message></a> <span wicket:id="extra"><span wicket:id="extraSeparator"></span><span wicket:id="extraLink"></span></span> | |||
<!-- floating search form on right --> | |||
<form wicket:id="searchForm"> | |||
<div class="search"> | |||
<select wicket:id="searchType"/> | |||
<wicket:message key="gb.search"></wicket:message>: | |||
<input type="text" id="searchBox" wicket:id="searchBox" value=""/> | |||
</div> | |||
</form> | |||
<!-- page nav links --> | |||
<div class="page_nav"> | |||
<div> | |||
<a wicket:id="summary"><wicket:message key="gb.summary"></wicket:message></a> | <a wicket:id="log"><wicket:message key="gb.log"></wicket:message></a> | <a wicket:id="branches"><wicket:message key="gb.branches"></wicket:message></a> | <a wicket:id="tags"><wicket:message key="gb.tags"></wicket:message></a> | <a wicket:id="tree"><wicket:message key="gb.tree"></wicket:message></a> <span wicket:id="extra"><span wicket:id="extraSeparator"></span><span wicket:id="extraLink"></span></span> | |||
</div> | |||
</div> | |||
</wicket:panel> | |||
</html> |
@@ -2,26 +2,34 @@ package com.gitblit.wicket.panels; | |||
import java.text.MessageFormat; | |||
import java.util.ArrayList; | |||
import java.util.Arrays; | |||
import java.util.HashMap; | |||
import java.util.List; | |||
import java.util.Map; | |||
import org.apache.wicket.Component; | |||
import org.apache.wicket.markup.html.basic.Label; | |||
import org.apache.wicket.markup.html.form.DropDownChoice; | |||
import org.apache.wicket.markup.html.form.StatelessForm; | |||
import org.apache.wicket.markup.html.form.TextField; | |||
import org.apache.wicket.markup.html.link.BookmarkablePageLink; | |||
import org.apache.wicket.markup.html.panel.Panel; | |||
import org.apache.wicket.markup.repeater.Item; | |||
import org.apache.wicket.markup.repeater.data.DataView; | |||
import org.apache.wicket.markup.repeater.data.ListDataProvider; | |||
import org.apache.wicket.model.IModel; | |||
import org.apache.wicket.model.Model; | |||
import org.eclipse.jgit.lib.Repository; | |||
import com.gitblit.GitBlit; | |||
import com.gitblit.Keys; | |||
import com.gitblit.utils.JGitUtils; | |||
import com.gitblit.utils.JGitUtils.SearchType; | |||
import com.gitblit.wicket.LinkPanel; | |||
import com.gitblit.wicket.WicketUtils; | |||
import com.gitblit.wicket.pages.BranchesPage; | |||
import com.gitblit.wicket.pages.LogPage; | |||
import com.gitblit.wicket.pages.SearchPage; | |||
import com.gitblit.wicket.pages.SummaryPage; | |||
import com.gitblit.wicket.pages.TagsPage; | |||
import com.gitblit.wicket.pages.TicketsPage; | |||
@@ -78,6 +86,8 @@ public class PageLinksPanel extends Panel { | |||
} | |||
}; | |||
add(extrasView); | |||
add(new SearchForm("searchForm", repositoryName)); | |||
} | |||
public void disablePageLink(String pageName) { | |||
@@ -93,4 +103,30 @@ public class PageLinksPanel extends Panel { | |||
} | |||
} | |||
} | |||
class SearchForm extends StatelessForm<Void> { | |||
private static final long serialVersionUID = 1L; | |||
private final String repositoryName; | |||
private final IModel<String> searchBoxModel = new Model<String>(""); | |||
private final IModel<SearchType> searchTypeModel = new Model<SearchType>(SearchType.COMMIT); | |||
public SearchForm(String id, String repositoryName) { | |||
super(id); | |||
this.repositoryName = repositoryName; | |||
DropDownChoice<SearchType> searchType = new DropDownChoice<SearchType>("searchType", Arrays.asList(SearchType.values())); | |||
searchType.setModel(searchTypeModel); | |||
add(searchType); | |||
add(new TextField<String>("searchBox", searchBoxModel)); | |||
} | |||
@Override | |||
public void onSubmit() { | |||
SearchType searchType = searchTypeModel.getObject(); | |||
String searchString = searchBoxModel.getObject(); | |||
setResponsePage(SearchPage.class, WicketUtils.newSearchParameter(repositoryName, null, searchString, searchType)); | |||
} | |||
} | |||
} |
@@ -5,6 +5,10 @@ html, body, table, dl, dt, dd, ol, ul, li, form, a, span, tr, th, td, div, em { | |||
font-family: verdana, sans-serif; | |||
font-size: 12px; | |||
line-height: 15px; | |||
margin: 0; | |||
padding: 0; | |||
border: 0; | |||
outline: 0; | |||
} | |||
body { | |||
@@ -141,7 +145,7 @@ div.page_footer { | |||
div.page_nav { | |||
color: #ddd; | |||
background-color: #000070; | |||
padding: 5px; | |||
padding: 7px; | |||
} | |||
div.page_nav a { | |||
@@ -161,6 +165,13 @@ div.page_nav2 { | |||
padding: 2px 5px 7px 5px; | |||
} | |||
div.search { | |||
color:yellow; | |||
text-align:right; | |||
float:right; | |||
padding:3px; | |||
} | |||
.repositories_message { | |||
border: solid #bbb; | |||
border-width: 0px 0px 1px; |