(refs #120) URL encode tag name

URL encode tag name URL like branch name.
And rename encodeBranchName to encodeRefName.
This commit is contained in:
Tomofumi Tanaka
2013-10-09 09:59:30 +09:00
parent 72b25591a5
commit f74f2c47d3
9 changed files with 25 additions and 25 deletions

View File

@@ -70,7 +70,7 @@ object helpers extends AvatarImageProvider with LinkConverter with RequestCache
/**
* URL encode except '/'.
*/
def encodeBranchName(value: String): String = StringUtil.urlEncode(value).replace("%2F", "/")
def encodeRefName(value: String): String = StringUtil.urlEncode(value).replace("%2F", "/")
def urlEncode(value: String): String = StringUtil.urlEncode(value)

View File

@@ -27,7 +27,7 @@
}
@helper.html.dropdown(originId, "base") {
@originRepository.branchList.map { branch =>
<li><a href="#" class="origin-branch" data-name="@encodeBranchName(branch)">@helper.html.checkicon(branch == originId) @branch</a></li>
<li><a href="#" class="origin-branch" data-name="@encodeRefName(branch)">@helper.html.checkicon(branch == originId) @branch</a></li>
}
}
...
@@ -38,7 +38,7 @@
}
@helper.html.dropdown(forkedId, "compare") {
@forkedRepository.branchList.map { branch =>
<li><a href="#" class="forked-branch" data-name="@encodeBranchName(branch)">@helper.html.checkicon(branch == forkedId) @branch</a></li>
<li><a href="#" class="forked-branch" data-name="@encodeRefName(branch)">@helper.html.checkicon(branch == forkedId) @branch</a></li>
}
}
</div>

View File

@@ -9,12 +9,12 @@
@html.header("code", repository)
@tab(branch, repository, "files")
<div class="head">
<a href="@url(repository)/tree/@encodeBranchName(branch)">@repository.name</a> /
<a href="@url(repository)/tree/@encodeRefName(branch)">@repository.name</a> /
@pathList.zipWithIndex.map { case (section, i) =>
@if(i == pathList.length - 1){
@section
} else {
<a href="@url(repository)/tree/@encodeBranchName(branch)/@pathList.take(i + 1).mkString("/")">@section</a> /
<a href="@url(repository)/tree/@encodeRefName(branch)/@pathList.take(i + 1).mkString("/")">@section</a> /
}
}
</div>
@@ -30,7 +30,7 @@
</div>
<div class="btn-group pull-right">
<a class="btn btn-mini" href="?raw=true">Raw</a>
<a class="btn btn-mini" href="@url(repository)/commits/@encodeBranchName(branch)/@pathList.mkString("/")">History</a>
<a class="btn btn-mini" href="@url(repository)/commits/@encodeRefName(branch)/@pathList.mkString("/")">History</a>
</div>
</th>
</tr>

View File

@@ -16,7 +16,7 @@
@branchInfo.map { case (branchName, latestUpdateDate) =>
<tr>
<td>
<a href="@url(repository)/tree/@encodeBranchName(branchName)">@branchName</a>
<a href="@url(repository)/tree/@encodeRefName(branchName)">@branchName</a>
@*
<a href="#" class="btn btn-danger btn-mini">Delete branch</a>
*@
@@ -28,10 +28,10 @@
@if(repository.repository.defaultBranch == branchName){
Base branch
} else {
<a href="@url(repository)/compare/@{encodeBranchName(repository.repository.defaultBranch)}...@{encodeBranchName(branchName)}">to @{repository.repository.defaultBranch}</a>
<a href="@url(repository)/compare/@{encodeRefName(repository.repository.defaultBranch)}...@{encodeRefName(branchName)}">to @{repository.repository.defaultBranch}</a>
}
</td>
<td><a href="@url(repository)/archive/@{encodeBranchName(branchName)}.zip">ZIP</a></td>
<td><a href="@url(repository)/archive/@{encodeRefName(branchName)}.zip">ZIP</a></td>
</tr>
}
</table>

View File

@@ -26,7 +26,7 @@
<span class="muted">
<img src="@assets/common/images/branch.png"/>
@branches.zipWithIndex.map { case (branch, i) =>
<a href="@url(repository)/tree/@encodeBranchName(branch)" class="branch" id="branch-@i">@branch</a>
<a href="@url(repository)/tree/@encodeRefName(branch)" class="branch" id="branch-@i">@branch</a>
}
</span>
}

View File

@@ -11,16 +11,16 @@
@tab(branch, repository, if(pathList.isEmpty) "commits" else "files")
<div class="head">
@if(pathList.isEmpty){
<a href="@url(repository)/tree/@encodeBranchName(branch)">@repository.name</a> / Commit History
<a href="@url(repository)/tree/@encodeRefName(branch)">@repository.name</a> / Commit History
}
@if(pathList.nonEmpty){
<span class="muted">History for</span>
<a href="@url(repository)/tree/@encodeBranchName(branch)">@repository.name</a> /
<a href="@url(repository)/tree/@encodeRefName(branch)">@repository.name</a> /
@pathList.zipWithIndex.map { case (section, i) =>
@if(i == pathList.length - 1){
@section
} else {
<a href="@url(repository)/tree/@encodeBranchName(branch)/@pathList.take(i + 1).mkString("/")">@section</a> /
<a href="@url(repository)/tree/@encodeRefName(branch)/@pathList.take(i + 1).mkString("/")">@section</a> /
}
}
}

View File

@@ -12,12 +12,12 @@
<div class="head">
<div class="pull-right">
@defining(repository.commitCount){ commitCount =>
<a href="@url(repository)/commits/@encodeBranchName(branch)">@if(commitCount > 1000){ @commitCount+ } else { @commitCount } @plural(commitCount, "commit")</a>&nbsp;
<a href="@url(repository)/commits/@encodeRefName(branch)">@if(commitCount > 1000){ @commitCount+ } else { @commitCount } @plural(commitCount, "commit")</a>&nbsp;
}
</div>
<a href="@url(repository)/tree/@encodeBranchName(branch)">@repository.name</a> /
<a href="@url(repository)/tree/@encodeRefName(branch)">@repository.name</a> /
@pathList.zipWithIndex.map { case (section, i) =>
<a href="@url(repository)/tree/@encodeBranchName(branch)/@pathList.take(i + 1).mkString("/")">@section</a> /
<a href="@url(repository)/tree/@encodeRefName(branch)/@pathList.take(i + 1).mkString("/")">@section</a> /
}
</div>
<div class="box">
@@ -46,7 +46,7 @@
@if(pathList.size > 0){
<tr>
<td width="16"></td>
<td><a href="@url(repository)@if(pathList.size > 1){/tree/@encodeBranchName(branch)/@pathList.init.mkString("/")}">..</a></td>
<td><a href="@url(repository)@if(pathList.size > 1){/tree/@encodeRefName(branch)/@pathList.init.mkString("/")}">..</a></td>
<td></td>
<td></td>
</tr>
@@ -62,9 +62,9 @@
</td>
<td>
@if(file.isDirectory){
<a href="@url(repository)/tree@{(encodeBranchName(branch) :: pathList).mkString("/", "/", "/")}@file.name">@file.name</a>
<a href="@url(repository)/tree@{(encodeRefName(branch) :: pathList).mkString("/", "/", "/")}@file.name">@file.name</a>
} else {
<a href="@url(repository)/blob@{(encodeBranchName(branch) :: pathList).mkString("/", "/", "/")}@file.name">@file.name</a>
<a href="@url(repository)/blob@{(encodeRefName(branch) :: pathList).mkString("/", "/", "/")}@file.name">@file.name</a>
}
</td>
<td>@datetime(file.time)</td>

View File

@@ -12,13 +12,13 @@
style = "margin-right: 20px;"
){
@repository.branchList.map { branch =>
<li><a href="@url(repository)/@if(active=="commits"){commits} else {tree}/@encodeBranchName(branch)">@helper.html.checkicon(id == branch) @branch</a></li>
<li><a href="@url(repository)/@if(active=="commits"){commits} else {tree}/@encodeRefName(branch)">@helper.html.checkicon(id == branch) @branch</a></li>
}
}
</li>
}
<li@if(active=="files" ){ class="active"}><a href="@url(repository)/tree/@encodeBranchName(id)">Files</a></li>
<li@if(active=="commits" ){ class="active"}><a href="@url(repository)/commits/@encodeBranchName(id)">Commits</a></li>
<li@if(active=="files" ){ class="active"}><a href="@url(repository)/tree/@encodeRefName(id)">Files</a></li>
<li@if(active=="commits" ){ class="active"}><a href="@url(repository)/commits/@encodeRefName(id)">Commits</a></li>
<li@if(active=="branches"){ class="active"}><a href="@url(repository)/branches">Branches@if(repository.branchList.length > 0){ <span class="badge">@repository.branchList.length</span>}</a></li>
<li@if(active=="tags" ){ class="active"}><a href="@url(repository)/tags">Tags@if(repository.tags.length > 0){ <span class="badge">@repository.tags.length</span>}</a></li>
<li class="pull-right">
@@ -28,7 +28,7 @@
</li>
<li class="pull-right" style="margin-right: 8px;">
<div class="pull-right">
<a href="@{url(repository)}/archive/@{encodeBranchName(id)}.zip" class="btn"><i class="icon-download-alt"></i>ZIP</a>
<a href="@{url(repository)}/archive/@{encodeRefName(id)}.zip" class="btn"><i class="icon-download-alt"></i>ZIP</a>
</div>
</li>
</ul>

View File

@@ -14,10 +14,10 @@
</tr>
@repository.tags.map { tag =>
<tr>
<td><a href="@url(repository)/tree/@tag.name">@tag.name</a></td>
<td><a href="@url(repository)/tree/@encodeRefName(tag.name)">@tag.name</a></td>
<td>@datetime(tag.time)</td>
<td class="monospace"><a href="@url(repository)/commit/@tag.id">@tag.id.substring(0, 10)</a></td>
<td><a href="@url(repository)/archive/@(tag.name).zip">ZIP</a></td>
<td><a href="@url(repository)/archive/@{encodeRefName(tag.name)}.zip">ZIP</a></td>
</tr>
}
</table>