Add search form on issues and wiki

This commit is contained in:
Naoki Takezoe
2016-12-19 00:09:16 +09:00
parent 6b3218dd43
commit 2618f54442
9 changed files with 46 additions and 32 deletions

View File

@@ -21,7 +21,14 @@
<a href="@condition.copy(state = "closed").toURL">Closed <span class="badge">@closedCount</span></a> <a href="@condition.copy(state = "closed").toURL">Closed <span class="badge">@closedCount</span></a>
</li> </li>
</ul> </ul>
<form method="GET" id="search-filter-form" class="form-inline pull-right"> <form method="GET" action="@helpers.url(repository)/search" id="search-filter-form" class="form-inline pull-right">
<div class="input-group">
<input type="text" class="form-control" name="q" placeholder="Search..."/>
<input type="hidden" name="type" value="issue"/>
<span class="input-group-btn">
<button type="submit" id="search-btn" class="btn btn-default"><i class="fa fa-search"></i></button>
</span>
</div>
@if(isEditable){ @if(isEditable){
@if(target == "issues"){ @if(target == "issues"){
<a class="btn btn-success" href="@helpers.url(repository)/issues/new">New issue</a> <a class="btn btn-success" href="@helpers.url(repository)/issues/new">New issue</a>

View File

@@ -67,7 +67,6 @@
<div class="head"> <div class="head">
@gitbucket.core.helper.html.repositoryicon(repository, true) @gitbucket.core.helper.html.repositoryicon(repository, true)
<a href="@helpers.url(repository.owner)">@repository.owner</a> / <a href="@helpers.url(repository)" class="strong">@repository.name</a> <a href="@helpers.url(repository.owner)">@repository.owner</a> / <a href="@helpers.url(repository)" class="strong">@repository.name</a>
<a href="@helpers.url(repository)/search"><i class="octicon octicon-search"></i></a>
@defining(repository.repository){ x => @defining(repository.repository){ x =>
@if(repository.repository.originRepositoryName.isDefined){ @if(repository.repository.originRepositoryName.isDefined){

View File

@@ -5,7 +5,7 @@
@import gitbucket.core.view.helpers @import gitbucket.core.view.helpers
@import gitbucket.core.service.RepositorySearchService @import gitbucket.core.service.RepositorySearchService
@gitbucket.core.html.main("Search Results", Some(repository)){ @gitbucket.core.html.main("Search Results", Some(repository)){
@gitbucket.core.search.html.menu("code", query, repository){ @gitbucket.core.search.html.menu("files", query, repository){
@if(query.nonEmpty) { @if(query.nonEmpty) {
@if(files.isEmpty) { @if(files.isEmpty) {
<h4>We couldn't find any code matching '@query'</h4> <h4>We couldn't find any code matching '@query'</h4>

View File

@@ -5,7 +5,7 @@
@import gitbucket.core.view.helpers @import gitbucket.core.view.helpers
@import gitbucket.core.service.RepositorySearchService @import gitbucket.core.service.RepositorySearchService
@gitbucket.core.html.main("Search Results", Some(repository)){ @gitbucket.core.html.main("Search Results", Some(repository)){
@gitbucket.core.search.html.menu("issue", query, repository){ @gitbucket.core.search.html.menu("issues", query, repository){
@if(query.nonEmpty) { @if(query.nonEmpty) {
@if(issues.isEmpty) { @if(issues.isEmpty) {
<h4>We couldn't find any code matching '@query'</h4> <h4>We couldn't find any code matching '@query'</h4>

View File

@@ -1,14 +1,18 @@
@(active: String, query: String, @(active: String, query: String,
repository: gitbucket.core.service.RepositoryService.RepositoryInfo)(body: Html)(implicit context: gitbucket.core.controller.Context) repository: gitbucket.core.service.RepositoryService.RepositoryInfo)(body: Html)(implicit context: gitbucket.core.controller.Context)
@import gitbucket.core.view.helpers @import gitbucket.core.view.helpers
@gitbucket.core.html.menu("", repository){ @gitbucket.core.html.menu(active, repository){
<form action="@helpers.url(repository)/search" method="GET" class="form-inline"> <form action="@helpers.url(repository)/search" method="GET" class="form-inline">
<select class="form-control" name="type"> <select class="form-control" name="type">
<option value="code" @if(active=="code" ){ selected }>Files</option> <option value="code" @if(active == "files"){ selected }>Files</option>
<option value="issue" @if(active=="issue"){ selected }>Issues</option> @if(repository.repository.options.issuesOption != "DISABLE") {
<option value="wiki" @if(active=="wiki" ){ selected }>Wiki</option> <option value="issue" @if(active == "issues"){ selected }>Issues</option>
}
@if(repository.repository.options.wikiOption != "DISABLE") {
<option value="wiki" @if(active == "wiki"){ selected }>Wiki</option>
}
</select> </select>
<input type="text" name="q" value="@query" class="form-control" style="width: 250px; margin-bottom: 0px;"/> <input type="text" name="q" value="@query" class="form-control" style="width: 250px;" placeholder="Search..."/>
<input type="submit" value="Search" class="btn btn-default"/> <input type="submit" value="Search" class="btn btn-default"/>
<input type="hidden" name="type" value="@active"/> <input type="hidden" name="type" value="@active"/>
</form> </form>

View File

@@ -7,10 +7,9 @@
@gitbucket.core.html.menu("wiki", repository){ @gitbucket.core.html.menu("wiki", repository){
<div class="pull-right"> <div class="pull-right">
@if(page.isDefined){ @if(page.isDefined){
<a class="btn btn-small btn-default" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_history">Page History</a> <a class="btn btn-default" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_history">Page History</a>
<a class="btn btn-small btn-danger" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_delete" id="delete">Delete Page</a> <a class="btn btn-danger" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_delete" id="delete">Delete Page</a>
} }
<a class="btn btn-small btn-success" href="@helpers.url(repository)/wiki/_new">New Page</a>
</div> </div>
<h1 class="wiki-title"><span class="muted">Editing</span> @if(pageName.isEmpty){New Page} else {@pageName}</h1> <h1 class="wiki-title"><span class="muted">Editing</span> @if(pageName.isEmpty){New Page} else {@pageName}</h1>
<form action="@helpers.url(repository)/wiki/@if(page.isEmpty){_new} else {_edit}" method="POST" validate="true"> <form action="@helpers.url(repository)/wiki/@if(page.isEmpty){_new} else {_edit}" method="POST" validate="true">

View File

@@ -8,10 +8,10 @@
@if(isEditable) { @if(isEditable) {
<div class="pull-right"> <div class="pull-right">
@if(pageName.isEmpty) { @if(pageName.isEmpty) {
<a class="btn btn-small" href="@helpers.url(repository)/wiki/_new">New Page</a> <a class="btn" href="@helpers.url(repository)/wiki/_new">New Page</a>
} else { } else {
<a class="btn btn-small btn-default" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_edit">Edit Page</a> <a class="btn btn-default" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_edit">Edit Page</a>
<a class="btn btn-small btn-success" href="@helpers.url(repository)/wiki/_new">New Page</a> <a class="btn btn-success" href="@helpers.url(repository)/wiki/_new">New Page</a>
} }
</div> </div>
} }
@@ -28,7 +28,7 @@
<th colspan="3"> <th colspan="3">
<div class="pull-left" style="padding-top: 4px;">Revisions</div> <div class="pull-left" style="padding-top: 4px;">Revisions</div>
<div class="pull-right"> <div class="pull-right">
<input type="button" id="compare" value="Compare Revisions" class="btn btn-dm btn-default"/> <input type="button" id="compare" value="Compare Revisions" class="btn btn-sm btn-default"/>
</div> </div>
</th> </th>
</tr> </tr>

View File

@@ -10,13 +10,20 @@
@gitbucket.core.html.main(s"${pageName} - ${repository.owner}/${repository.name}", Some(repository)){ @gitbucket.core.html.main(s"${pageName} - ${repository.owner}/${repository.name}", Some(repository)){
@gitbucket.core.html.menu("wiki", repository){ @gitbucket.core.html.menu("wiki", repository){
<div> <div>
<div class="pull-right"> <form method="GET" action="@helpers.url(repository)/search" id="search-filter-form" class="form-inline pull-right">
<a class="btn btn-small btn-default" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_history">Page History</a> <div class="input-group">
<input type="text" class="form-control" name="q" placeholder="Search..."/>
<input type="hidden" name="type" value="wiki"/>
<span class="input-group-btn">
<button type="submit" id="search-btn" class="btn btn-default"><i class="fa fa-search"></i></button>
</span>
</div>
<a class="btn btn-default" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_history">Page History</a>
@if(isEditable){ @if(isEditable){
<a class="btn btn-default" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_edit">Edit Page</a> <a class="btn btn-default" href="@helpers.url(repository)/wiki/@helpers.urlEncode(pageName)/_edit">Edit Page</a>
<a class="btn btn-success" href="@helpers.url(repository)/wiki/_new">New Page</a> <a class="btn btn-success" href="@helpers.url(repository)/wiki/_new">New Page</a>
} }
</div> </form>
<h1 class="body-title">@pageName</h1> <h1 class="body-title">@pageName</h1>
<div> <div>
<span class="muted"><strong>@page.committer</strong> edited this page @gitbucket.core.helper.html.datetimeago(page.time)</span> <span class="muted"><strong>@page.committer</strong> edited this page @gitbucket.core.helper.html.datetimeago(page.time)</span>

View File

@@ -9,11 +9,9 @@
<h1 class="wiki-title"><span class="muted">Pages</span></h1> <h1 class="wiki-title"><span class="muted">Pages</span></h1>
</li> </li>
<li class="pull-right"> <li class="pull-right">
<div class="btn-group">
@if(isEditable){ @if(isEditable){
<a class="btn btn-small btn-default" href="@helpers.url(repository)/wiki/_new">New Page</a> <a class="btn btn-default" href="@helpers.url(repository)/wiki/_new">New Page</a>
} }
</div>
</li> </li>
</ul> </ul>
<ul class="pull-left"> <ul class="pull-left">