mirror of
				https://github.com/gitbucket/gitbucket.git
				synced 2025-10-31 18:46:28 +01:00 
			
		
		
		
	(refs #120) URL encode tag name
URL encode tag name URL like branch name. And rename encodeBranchName to encodeRefName.
This commit is contained in:
		| @@ -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) | ||||
|  | ||||
|   | ||||
| @@ -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> | ||||
|   | ||||
| @@ -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> | ||||
|   | ||||
| @@ -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> | ||||
|   | ||||
| @@ -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> | ||||
|           } | ||||
|   | ||||
| @@ -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> / | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   | ||||
| @@ -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>  | ||||
|         <a href="@url(repository)/commits/@encodeRefName(branch)">@if(commitCount > 1000){ @commitCount+ } else { @commitCount } @plural(commitCount, "commit")</a>  | ||||
|       } | ||||
|     </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> | ||||
|   | ||||
| @@ -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> | ||||
|   | ||||
| @@ -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> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user