mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-22 12:54:53 -05:00
UI: issues - finish basic frame
This commit is contained in:
parent
548b95f7b5
commit
4447a20f87
38 changed files with 515 additions and 239 deletions
|
@ -4,7 +4,7 @@ path = github.com/gogits/gogs
|
|||
[deps]
|
||||
github.com/bradfitz/gomemcache = commit:72a68649ba
|
||||
github.com/Unknwon/cae = commit:2e70a1351b
|
||||
github.com/Unknwon/com = commit:188d690b1a
|
||||
github.com/Unknwon/com =
|
||||
github.com/Unknwon/i18n = commit:7457d88830
|
||||
github.com/Unknwon/macaron = commit:93de4f3fad
|
||||
github.com/codegangsta/cli = commit:2bcd11f863
|
||||
|
|
|
@ -71,6 +71,8 @@ According to [Semantic UI](https://github.com/Semantic-Org/Semantic-UI/tree/1.x)
|
|||
|
||||
Browser prefixes are present for Internet Explorer 9, but the browser is not officially supported.
|
||||
|
||||
The official support minimal size is 1024*768, UI may still looks right in smaller size but no promises and fixes.
|
||||
|
||||
## Installation
|
||||
|
||||
Make sure you install the [prerequisites](http://gogs.io/docs/installation/) first.
|
||||
|
|
|
@ -58,6 +58,8 @@ Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自
|
|||
|
||||
尽管已经使用了 Internet Explorer 9 的浏览器前缀,但该版本的浏览器被没有被正式支持。
|
||||
|
||||
官方支持的最小 UI 尺寸为 1024*768,UI 不一定会在更小尺寸的设备上被破坏,但我们无法保证且不会修复。
|
||||
|
||||
## 安装部署
|
||||
|
||||
在安装 Gogs 之前,您需要先安装 [基本环境](http://gogs.io/docs/installation/)。
|
||||
|
|
|
@ -316,6 +316,8 @@ migrate_repo = Migrate Repository
|
|||
migrate.clone_address = Clone Address
|
||||
migrate.invalid_local_path = Invalid local path, it does not exist or not a directory.
|
||||
|
||||
forked_from = forked from
|
||||
fork_from_self = You cannot fork repository you already owned!
|
||||
copy_link = Copy
|
||||
click_to_copy = Copy to clipboard
|
||||
copied = Copied OK
|
||||
|
@ -338,6 +340,8 @@ branch_and_tags = Branches & Tags
|
|||
branches = Branches
|
||||
tags = Tags
|
||||
issues = Issues
|
||||
labels = Labels
|
||||
milestones = Milestones
|
||||
commits = Commits
|
||||
releases = Releases
|
||||
file_raw = Raw
|
||||
|
@ -353,6 +357,19 @@ commits.date = Date
|
|||
commits.older = Older
|
||||
commits.newer = Newer
|
||||
|
||||
issues.new = New Issue
|
||||
issues.open_tab = %d Open
|
||||
issues.close_tab = %d Closed
|
||||
issues.filter_label = Label
|
||||
issues.filter_milestone = Milestone
|
||||
issues.filter_assignee = Assignee
|
||||
issues.filter_type = Type
|
||||
issues.filter_type.all_issues = All issues
|
||||
issues.filter_type.assigned_to_you = Assigned to you
|
||||
issues.filter_type.created_by_you = Created by you
|
||||
issues.filter_type.mentioning_you = Mentioning you
|
||||
issues.opened_by = opened %s by <a href="/%[2]s">%[2]s</a>
|
||||
|
||||
settings = Settings
|
||||
settings.options = Options
|
||||
settings.collaboration = Collaboration
|
||||
|
|
2
gogs.go
2
gogs.go
|
@ -17,7 +17,7 @@ import (
|
|||
"github.com/gogits/gogs/modules/setting"
|
||||
)
|
||||
|
||||
const APP_VER = "0.6.1.0719 Beta"
|
||||
const APP_VER = "0.6.1.0724 Beta"
|
||||
|
||||
func init() {
|
||||
runtime.GOMAXPROCS(runtime.NumCPU())
|
||||
|
|
File diff suppressed because one or more lines are too long
2
public/css/gogs.min.css
vendored
2
public/css/gogs.min.css
vendored
File diff suppressed because one or more lines are too long
|
@ -35,6 +35,9 @@ function initInstall() {
|
|||
$(document).ready(function () {
|
||||
// Semantic UI modules.
|
||||
$('.dropdown').dropdown();
|
||||
$('.link.dropdown').dropdown({
|
||||
action: 'hide'
|
||||
});
|
||||
$('.slide.up.dropdown').dropdown({
|
||||
transition: 'slide up'
|
||||
});
|
||||
|
|
|
@ -2,7 +2,10 @@
|
|||
|
||||
body {
|
||||
font-family: 'Helvetica Neue',Arial,Helvetica,sans-serif,'微软雅黑';
|
||||
background-color: #FFFFFF;
|
||||
background-color: #FAFAFA;
|
||||
}
|
||||
img {
|
||||
border-radius: 3px;
|
||||
}
|
||||
.full.height {
|
||||
padding: 0;
|
||||
|
@ -15,10 +18,13 @@ body {
|
|||
width: 100%;
|
||||
padding: 0.7em 0;
|
||||
&.light {
|
||||
background-color: #FFFFFF;
|
||||
background-color: white;
|
||||
border-bottom: 1px solid #DDDDDD;
|
||||
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.04);
|
||||
}
|
||||
.ui.secondary.menu {
|
||||
height: 30px;
|
||||
}
|
||||
.column .menu {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
@ -26,12 +32,36 @@ body {
|
|||
float: left;
|
||||
margin-right: 5px;
|
||||
}
|
||||
.head.link.item {
|
||||
padding-right: 0!important;
|
||||
.dropdown.icon,
|
||||
.menu .octicon {
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
.user.avatar {
|
||||
padding: 0;
|
||||
margin-top: 1px;
|
||||
}
|
||||
.searchbox {
|
||||
background-color: rgb(244, 244, 244)!important;
|
||||
&:focus {
|
||||
background-color: rgb(233, 233, 233)!important;
|
||||
}
|
||||
}
|
||||
.octicon {
|
||||
width: 16px;
|
||||
opacity: 1!important;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
.ui {
|
||||
&.left {
|
||||
float: left;
|
||||
}
|
||||
&.right {
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
footer {
|
||||
margin-top: @footer-margin!important;
|
||||
|
@ -40,14 +70,6 @@ footer {
|
|||
clear: both;
|
||||
width: 100%;
|
||||
color: #888888;
|
||||
.ui {
|
||||
&.left {
|
||||
float: left;
|
||||
}
|
||||
&.right {
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
.fa {
|
||||
width: 16px;
|
||||
text-align: center;
|
||||
|
|
78
public/less/_repository.less
Normal file
78
public/less/_repository.less
Normal file
|
@ -0,0 +1,78 @@
|
|||
.repository {
|
||||
@mega-octicon-width: 30px;
|
||||
|
||||
padding-top: 15px;
|
||||
padding-bottom: @footer-margin * 3;
|
||||
.head {
|
||||
height: 75px;
|
||||
padding-top: 20px;
|
||||
background-color: #FCFCFC;
|
||||
.mega-octicon {
|
||||
width: @mega-octicon-width;
|
||||
}
|
||||
a,
|
||||
.fork-flag {
|
||||
font-weight: 300;
|
||||
}
|
||||
.ui.label {
|
||||
margin-top: 5px;
|
||||
vertical-align: top;
|
||||
}
|
||||
.fork-flag {
|
||||
margin-left: @mega-octicon-width + 8px;
|
||||
display: block;
|
||||
font-size: 11px;
|
||||
line-height: 10px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.button {
|
||||
margin-left: 10px;
|
||||
i {
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
.num {
|
||||
font-weight: bold;
|
||||
}
|
||||
.octicon {
|
||||
height: 5px;
|
||||
}
|
||||
}
|
||||
.navbar {
|
||||
height: 60px;
|
||||
padding-top: 20px;
|
||||
}
|
||||
.filter.menu .label.color {
|
||||
padding: 0 8px;
|
||||
}
|
||||
.type.item .menu {
|
||||
right: 0!important;
|
||||
left: auto!important;
|
||||
}
|
||||
.issue.list {
|
||||
list-style: none;
|
||||
font-size: 13px;
|
||||
padding-top: 60px;
|
||||
.item {
|
||||
padding-bottom: 10px;
|
||||
border-bottom: 1px dashed #AAA;
|
||||
.title {
|
||||
color: #444;
|
||||
font-size: 15px;
|
||||
font-weight: bold;
|
||||
margin: 0 6px;
|
||||
&:hover {
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
.comment {
|
||||
padding-right: 10px;
|
||||
color: #666;
|
||||
}
|
||||
.desc {
|
||||
padding-top: 5px;
|
||||
color: #999;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -3,3 +3,4 @@
|
|||
@import "_home";
|
||||
@import "_install";
|
||||
@import "_form";
|
||||
@import "_repository";
|
|
@ -41,7 +41,8 @@ var (
|
|||
)
|
||||
|
||||
func Issues(ctx *middleware.Context) {
|
||||
ctx.Data["Title"] = "Issues"
|
||||
ctx.Data["Title"] = ctx.Tr("repo.issues")
|
||||
ctx.Data["PageIsIssueList"] = true
|
||||
ctx.Data["IsRepoToolbarIssues"] = true
|
||||
ctx.Data["IsRepoToolbarIssuesList"] = true
|
||||
|
||||
|
|
|
@ -374,7 +374,13 @@ func Action(ctx *middleware.Context) {
|
|||
})
|
||||
return
|
||||
}
|
||||
ctx.Redirect(ctx.Repo.RepoLink)
|
||||
|
||||
redirectTo := ctx.Query("redirect_to")
|
||||
if len(redirectTo) == 0 {
|
||||
redirectTo = ctx.Repo.RepoLink
|
||||
}
|
||||
ctx.Redirect(redirectTo)
|
||||
|
||||
return
|
||||
ctx.JSON(200, map[string]interface{}{
|
||||
"ok": true,
|
||||
|
|
|
@ -1 +1 @@
|
|||
0.6.1.0719 Beta
|
||||
0.6.1.0724 Beta
|
|
@ -38,12 +38,37 @@
|
|||
<div class="following bar light">
|
||||
<div class="ui page grid">
|
||||
<div class="column">
|
||||
{{if .IsSigned}}
|
||||
<div class="ui right floated secondary menu">
|
||||
<a class="view-ui item user avatar poping up" href="{{AppSubUrl}}/{{.SignedUser.Name}}" data-content="{{.SignedUser.Name}}" data-variation="inverted">
|
||||
<img class="img-15" src="{{.SignedUser.AvatarLink}}"/>
|
||||
<span class="sr-only">{{.SignedUser.Name}}</span>
|
||||
</a>
|
||||
<div class="ui pointing dropdown head link item">
|
||||
<span class="text">
|
||||
<i class="octicon octicon-plus"></i>
|
||||
<i class="dropdown icon"></i>
|
||||
</span>
|
||||
<div class="menu">
|
||||
<a class="item" href="{{AppSubUrl}}/repo/create"><i class="octicon octicon-repo-create"></i> {{.i18n.Tr "new_repo"}}</a>
|
||||
<a class="item" href="{{AppSubUrl}}/repo/migrate"><i class="octicon octicon-repo-clone"></i> {{.i18n.Tr "new_migrate"}}</a>
|
||||
<a class="item" href="{{AppSubUrl}}/org/create"><i class="octicon octicon-organization"></i> {{.i18n.Tr "new_org"}}</a>
|
||||
</div>
|
||||
</div>
|
||||
{{if .IsAdmin}}
|
||||
<a class="view-ui item poping up {{if .PageIsAdmin}}active{{end}}" href="{{AppSubUrl}}/admin" data-content="{{.i18n.Tr "admin_panel"}}" data-variation="inverted"><i class="octicon icon settings"></i><span class="sr-only">{{.i18n.Tr "admin_panel"}}</span></a>
|
||||
{{end}}
|
||||
<a class="view-ui item poping up {{if .PageIsSettings}}active{{end}}" href="{{AppSubUrl}}/user/settings" data-content="{{.i18n.Tr "account_settings"}}" data-variation="inverted"><i class="octicon octicon-settings"></i><span class="sr-only">{{.i18n.Tr "account_settings"}}</span></a>
|
||||
<a class="view-ui item poping up" href="{{AppSubUrl}}/user/logout" data-content="{{.i18n.Tr "sign_out"}}" data-variation="inverted"><i class="octicon octicon-sign-out"></i><span class="sr-only">{{.i18n.Tr "sign_out"}}</span></a>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="ui right floated secondary menu">
|
||||
{{if .ShowRegistrationButton}}
|
||||
<a class="view-ui item {{if .PageIsSignUp}}active{{end}}" href="{{AppSubUrl}}/user/sign_up"><i class="octicon octicon-person-add"></i> {{.i18n.Tr "register"}}</a>
|
||||
{{end}}
|
||||
<a class="view-ui item {{if .PageIsSignIn}}active{{end}}" href="{{AppSubUrl}}/user/login"><i class="octicon octicon-sign-in"></i> {{.i18n.Tr "sign_in"}}</a>
|
||||
</div>
|
||||
{{end}}
|
||||
<div class="ui secondary menu">
|
||||
<img class="img-15 ui image brand" src="{{AppSubUrl}}/img/favicon.png">
|
||||
<a class="view-ui item {{if .PageIsHome}}active{{end}}" href="{{AppSubUrl}}/">{{if .IsSigned}}{{.i18n.Tr "dashboard"}}{{else}}{{.i18n.Tr "home"}}{{end}}</a>
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
<div class="install">
|
||||
<div class="ui middle very relaxed page grid">
|
||||
<div class="sixteen wide center aligned centered column">
|
||||
|
||||
|
||||
<h3 class="ui top attached header">
|
||||
{{.i18n.Tr "install.title"}}
|
||||
</h3>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div class="container clear">
|
||||
{{template "repo/commits_table" .}}
|
||||
</div>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div class="container clear" id="diff-page">
|
||||
{{if .IsDiffCompare }}
|
||||
<div class="panel panel-info panel-radius compare-head-box">
|
||||
|
|
|
@ -1,63 +1,29 @@
|
|||
{{with .Repository}}
|
||||
<div id="repo-header" class="clear">
|
||||
<div class="container clear">
|
||||
<h1 id="repo-header-name" class="left public">
|
||||
<div class="ui middle page head grid">
|
||||
<h2 class="ui left">
|
||||
<div class="ui breadcrumb">
|
||||
<i class="mega-octicon octicon-{{if .IsPrivate}}lock{{else if .IsMirror}}repo-clone{{else if .IsFork}}repo-forked{{else}}repo{{end}}"></i>
|
||||
<a class="author" href="{{AppSubUrl}}/{{.Owner.Name}}">{{.Owner.Name}}</a>
|
||||
<span class="divider">/</span>
|
||||
<a class="repo text-bold" href="{{$.RepoLink}}">{{.Name}}</a>
|
||||
{{if .IsMirror}}<span class="label label-gray">{{$.i18n.Tr "mirror"}}</span>{{end}}
|
||||
{{if .IsFork}}<span class="fork-flag">forked from <a href="{{.ForkRepo.RepoLink}}">{{SubStr .ForkRepo.RepoLink 1 -1}}</a></span>{{end}}
|
||||
</h1>
|
||||
<ul id="repo-header-meta" class="right menu menu-line">
|
||||
<li id="repo-header-download" class="drop">
|
||||
<a id="repo-header-download-btn" href="#">
|
||||
<button class="btn btn-black text-bold btn-radius">
|
||||
<i class="octicon octicon-cloud-download"></i>
|
||||
</button>
|
||||
<a href="{{AppSubUrl}}/{{.Owner.Name}}">{{.Owner.Name}}</a>
|
||||
<div class="divider"> / </div>
|
||||
<a href="{{$.RepoLink}}">{{.Name}}</a>
|
||||
{{if .IsMirror}}<div class="ui label">{{$.i18n.Tr "mirror"}}</div>{{end}}
|
||||
{{if .IsFork}}<div class="fork-flag">{{$.i18n.Tr "repo.forked_from"}} <a href="{{.ForkRepo.RepoLink}}">{{SubStr .ForkRepo.RepoLink 1 -1}}</a></div>{{end}}
|
||||
</div>
|
||||
</h2>
|
||||
<div class="ui right floated secondary menu">
|
||||
<a class="ui black basic button" href="{{$.RepoLink}}/action/{{if $.IsWatchingRepo}}un{{end}}watch?redirect_to={{$.Link}}">
|
||||
<i class="fa fa-eye{{if not $.IsWatchingRepo}}-slash{{end}}"></i>
|
||||
{{if $.IsWatchingRepo}}{{$.i18n.Tr "repo.unwatch"}}{{else}}{{$.i18n.Tr "repo.watch"}}{{end}} <span class="num">{{.NumWatches}}</span>
|
||||
</a>
|
||||
<div id="repo-header-download-drop" class="drop-down">
|
||||
<div id="repo-clone" class="clear">
|
||||
{{if not $.DisableSSH}}
|
||||
<button class="btn btn-blue left btn-left-radius" id="repo-clone-ssh" data-link="{{$.CloneLink.SSH}}">SSH</button>
|
||||
{{end}}
|
||||
<button class="btn {{if $.DisableSSH}}btn-blue{{else}}btn-gray{{end}} left" id="repo-clone-https" data-link="{{$.CloneLink.HTTPS}}">HTTPS</button>
|
||||
<input id="repo-clone-url" class="ipt ipt-disabled left" value="{{if $.DisableSSH}}{{$.CloneLink.HTTPS}}{{else}}{{$.CloneLink.SSH}}{{end}}" onclick="this.select();" readonly />
|
||||
<button id="repo-clone-copy" class="btn btn-black left btn-right-radius" data-copy-val="val" data-copy-from="#repo-clone-url" original-title="{{$.i18n.Tr "repo.click_to_copy"}}" data-original-title="{{$.i18n.Tr "repo.click_to_copy"}}" data-after-title="{{$.i18n.Tr "repo.copied"}}">{{$.i18n.Tr "repo.copy_link"}}</button>
|
||||
<p class="text-center" id="repo-clone-help">{{$.i18n.Tr "repo.clone_helper" "http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository" | Str2html}}</p>
|
||||
<hr/>
|
||||
<div class="text-center" id="repo-clone-zip">
|
||||
<a class="btn btn-green btn-radius" href="{{$.RepoLink}}/archive/{{EscapePound $.BranchName}}.zip"><i class="octicon octicon-file-zip"></i>ZIP</a>
|
||||
<a class="btn btn-green btn-radius" href="{{$.RepoLink}}/archive/{{EscapePound $.BranchName}}.tar.gz"><i class="octicon octicon-file-zip"></i>TAR.GZ</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li id="repo-header-watch">
|
||||
<a id="repo-header-watch-btn" href="{{$.RepoLink}}/action/{{if $.IsWatchingRepo}}un{{end}}watch">
|
||||
<button class="btn btn-gray text-bold btn-radius">
|
||||
<i class="octicon octicon-eye-watch"></i>{{if $.IsWatchingRepo}}{{$.i18n.Tr "repo.unwatch"}}{{else}}{{$.i18n.Tr "repo.watch"}}{{end}}<span class="num">{{.NumWatches}}</span>
|
||||
</button>
|
||||
</a>
|
||||
</li>
|
||||
<li id="repo-header-star">
|
||||
<a id="repo-header-star-btn" href="{{$.RepoLink}}/action/{{if $.IsStaringRepo}}un{{end}}star">
|
||||
<button class="btn btn-gray text-bold btn-radius">
|
||||
<i class="octicon octicon-star"></i>{{if $.IsStaringRepo}}{{$.i18n.Tr "repo.unstar"}}{{else}}{{$.i18n.Tr "repo.star"}}{{end}}
|
||||
<span class="num">{{.NumStars}}</span>
|
||||
</button>
|
||||
</a>
|
||||
</li>
|
||||
<li id="repo-header-fork">
|
||||
<a id="repo-header-fork-btn" {{if or (not $.IsRepositoryAdmin) $.Owner.IsOrganization}}href="{{AppSubUrl}}/repo/fork?fork_id={{.Id}}"{{end}}>
|
||||
<button class="btn btn-gray text-bold btn-radius">
|
||||
<i class="octicon octicon-repo-forked"></i>{{$.i18n.Tr "repo.fork"}}
|
||||
<span class="num">{{.NumForks}}</span>
|
||||
</button>
|
||||
</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<a class="ui black basic button" href="{{$.RepoLink}}/action/{{if $.IsStaringRepo}}un{{end}}star?redirect_to={{$.Link}}">
|
||||
<i class="fa fa-star{{if not $.IsStaringRepo}}-o{{end}}"></i>
|
||||
{{if $.IsStaringRepo}}{{$.i18n.Tr "repo.unstar"}}{{else}}{{$.i18n.Tr "repo.star"}}{{end}} <span class="num">{{.NumStars}}</span>
|
||||
</a>
|
||||
<a class="ui black basic button {{if $.IsRepositoryOwner}}poping up{{end}}" {{if not $.IsRepositoryOwner}}href="{{AppSubUrl}}/repo/fork?fork_id={{.Id}}"{{end}} {{if $.IsRepositoryOwner}}data-content="{{$.i18n.Tr "repo.fork_from_self"}}"{{end}}>
|
||||
<i class="octicon octicon-repo-forked"></i>
|
||||
{{$.i18n.Tr "repo.fork"}} <span class="num">{{.NumForks}}</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ui divider"></div>
|
||||
{{end}}
|
63
templates/repo/header_old.tmpl
Normal file
63
templates/repo/header_old.tmpl
Normal file
|
@ -0,0 +1,63 @@
|
|||
{{with .Repository}}
|
||||
<div id="repo-header" class="clear">
|
||||
<div class="container clear">
|
||||
<h1 id="repo-header-name" class="left public">
|
||||
<i class="mega-octicon octicon-{{if .IsPrivate}}lock{{else if .IsMirror}}repo-clone{{else if .IsFork}}repo-forked{{else}}repo{{end}}"></i>
|
||||
<a class="author" href="{{AppSubUrl}}/{{.Owner.Name}}">{{.Owner.Name}}</a>
|
||||
<span class="divider">/</span>
|
||||
<a class="repo text-bold" href="{{$.RepoLink}}">{{.Name}}</a>
|
||||
{{if .IsMirror}}<span class="label label-gray">{{$.i18n.Tr "mirror"}}</span>{{end}}
|
||||
{{if .IsFork}}<span class="fork-flag">forked from <a href="{{.ForkRepo.RepoLink}}">{{SubStr .ForkRepo.RepoLink 1 -1}}</a></span>{{end}}
|
||||
</h1>
|
||||
<ul id="repo-header-meta" class="right menu menu-line">
|
||||
<li id="repo-header-download" class="drop">
|
||||
<a id="repo-header-download-btn" href="#">
|
||||
<button class="btn btn-black text-bold btn-radius">
|
||||
<i class="octicon octicon-cloud-download"></i>
|
||||
</button>
|
||||
</a>
|
||||
<div id="repo-header-download-drop" class="drop-down">
|
||||
<div id="repo-clone" class="clear">
|
||||
{{if not $.DisableSSH}}
|
||||
<button class="btn btn-blue left btn-left-radius" id="repo-clone-ssh" data-link="{{$.CloneLink.SSH}}">SSH</button>
|
||||
{{end}}
|
||||
<button class="btn {{if $.DisableSSH}}btn-blue{{else}}btn-gray{{end}} left" id="repo-clone-https" data-link="{{$.CloneLink.HTTPS}}">HTTPS</button>
|
||||
<input id="repo-clone-url" class="ipt ipt-disabled left" value="{{if $.DisableSSH}}{{$.CloneLink.HTTPS}}{{else}}{{$.CloneLink.SSH}}{{end}}" onclick="this.select();" readonly />
|
||||
<button id="repo-clone-copy" class="btn btn-black left btn-right-radius" data-copy-val="val" data-copy-from="#repo-clone-url" original-title="{{$.i18n.Tr "repo.click_to_copy"}}" data-original-title="{{$.i18n.Tr "repo.click_to_copy"}}" data-after-title="{{$.i18n.Tr "repo.copied"}}">{{$.i18n.Tr "repo.copy_link"}}</button>
|
||||
<p class="text-center" id="repo-clone-help">{{$.i18n.Tr "repo.clone_helper" "http://git-scm.com/book/en/Git-Basics-Getting-a-Git-Repository" | Str2html}}</p>
|
||||
<hr/>
|
||||
<div class="text-center" id="repo-clone-zip">
|
||||
<a class="btn btn-green btn-radius" href="{{$.RepoLink}}/archive/{{EscapePound $.BranchName}}.zip"><i class="octicon octicon-file-zip"></i>ZIP</a>
|
||||
<a class="btn btn-green btn-radius" href="{{$.RepoLink}}/archive/{{EscapePound $.BranchName}}.tar.gz"><i class="octicon octicon-file-zip"></i>TAR.GZ</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li id="repo-header-watch">
|
||||
<a id="repo-header-watch-btn" href="{{$.RepoLink}}/action/{{if $.IsWatchingRepo}}un{{end}}watch">
|
||||
<button class="btn btn-gray text-bold btn-radius">
|
||||
<i class="octicon octicon-eye-watch"></i>{{if $.IsWatchingRepo}}{{$.i18n.Tr "repo.unwatch"}}{{else}}{{$.i18n.Tr "repo.watch"}}{{end}}<span class="num">{{.NumWatches}}</span>
|
||||
</button>
|
||||
</a>
|
||||
</li>
|
||||
<li id="repo-header-star">
|
||||
<a id="repo-header-star-btn" href="{{$.RepoLink}}/action/{{if $.IsStaringRepo}}un{{end}}star">
|
||||
<button class="btn btn-gray text-bold btn-radius">
|
||||
<i class="octicon octicon-star"></i>{{if $.IsStaringRepo}}{{$.i18n.Tr "repo.unstar"}}{{else}}{{$.i18n.Tr "repo.star"}}{{end}}
|
||||
<span class="num">{{.NumStars}}</span>
|
||||
</button>
|
||||
</a>
|
||||
</li>
|
||||
<li id="repo-header-fork">
|
||||
<a id="repo-header-fork-btn" {{if or (not $.IsRepositoryAdmin) $.Owner.IsOrganization}}href="{{AppSubUrl}}/repo/fork?fork_id={{.Id}}"{{end}}>
|
||||
<button class="btn btn-gray text-bold btn-radius">
|
||||
<i class="octicon octicon-repo-forked"></i>{{$.i18n.Tr "repo.fork"}}
|
||||
<span class="num">{{.NumForks}}</span>
|
||||
</button>
|
||||
</a>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
{{end}}
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="repo-content" class="clear container">
|
||||
<div id="repo-main" class="left grid-5-6">
|
||||
<p id="repo-desc">
|
||||
|
|
|
@ -1,120 +1,85 @@
|
|||
{{template "base/head_old" .}}
|
||||
{{template "base/navbar" .}}
|
||||
{{template "repo/nav" .}}
|
||||
{{template "repo/toolbar" .}}
|
||||
<div id="body" class="container">
|
||||
<div id="issue">
|
||||
<div class="col-md-3 filters">
|
||||
<div class="filter-list">
|
||||
<ul class="list-unstyled">
|
||||
<li><a href="{{.RepoLink}}/issues?state={{.State}}"{{if eq .ViewType "all"}} class="active"{{end}}>All Issues <strong class="pull-right">{{.IssueStats.AllCount}}</strong></a></li>
|
||||
<li><a href="{{.RepoLink}}/issues?type=assigned&state={{.State}}"{{if eq .ViewType "assigned"}} class="active"{{end}}>Assigned to you <strong class="pull-right">{{.IssueStats.AssignCount}}</strong></a></li>
|
||||
<li><a href="{{.RepoLink}}/issues?type=created_by&state={{.State}}"{{if eq .ViewType "created_by"}} class="active"{{end}}>Created by you <strong class="pull-right">{{.IssueStats.CreateCount}}</strong></a></li>
|
||||
<li><a href="{{.RepoLink}}/issues?type=mentioned&state={{.State}}"{{if eq .ViewType "mentioned"}} class="active"{{end}}>Mentioning you <strong class="pull-right">{{.IssueStats.MentionCount}}</strong></a></li>
|
||||
</ul>
|
||||
{{template "base/head" .}}
|
||||
<div class="repository">
|
||||
{{template "repo/header" .}}
|
||||
<div class="ui middle page grid body">
|
||||
<div class="navbar">
|
||||
{{template "repo/issue/navbar" .}}
|
||||
<div class="ui right floated secondary menu">
|
||||
<a class="ui green button" href="{{$.RepoLink}}/issues/new">{{.i18n.Tr "repo.issues.new"}}</a>
|
||||
</div>
|
||||
<div class="label-filter">
|
||||
<h4>Label</h4>
|
||||
<ul class="list-unstyled" id="label-list" data-ajax="{{$.RepoLink}}/issues/labels/delete">
|
||||
{{range .Labels}}
|
||||
<li class="label-item{{if eq $.SelectLabels .Id}} label-selected{{end}}" id="label-{{.Id}}" data-id="{{.Id}}">
|
||||
<a href="?type={{$.ViewType}}&state={{$.State}}{{if not (eq $.SelectLabels .Id)}}&labels={{.Id}}{{end}}">
|
||||
<span class="pull-right count">{{if $.IsShowClosed}}{{.NumClosedIssues}}{{else}}{{.NumOpenIssues}}{{end}}</span>
|
||||
<span class="color" style="background-color: {{.Color}}" data-color="{{.Color}}"></span>
|
||||
<span class="name">{{.Name}}</span>
|
||||
</div>
|
||||
<div class="ui divider"></div>
|
||||
<div class="ui left">
|
||||
<div class="ui tiny buttons">
|
||||
<a class="ui green basic button {{if not .IsShowClosed}}active{{end}}" href="{{.RepoLink}}/issues?type={{.ViewType}}">
|
||||
<i class="octicon octicon-issue-opened"></i>
|
||||
{{.i18n.Tr "repo.issues.open_tab" .IssueStats.OpenCount}}
|
||||
</a>
|
||||
<a class="ui red basic button {{if .IsShowClosed}}active{{end}}" href="{{.RepoLink}}/issues?type={{.ViewType}}&state=closed">
|
||||
<i class="octicon octicon-issue-closed"></i>
|
||||
{{.i18n.Tr "repo.issues.close_tab" .IssueStats.ClosedCount}}
|
||||
</a>
|
||||
<a class="del pull-right" href="#" data-id="{{.Id}}"><i class="fa fa-times-circle-o"></i></a>
|
||||
</li>
|
||||
{{end}}
|
||||
{{if or .IsRepositoryOwner .IsAdmin}}
|
||||
<li class="label-change-li" style="display: none">
|
||||
<form id="label-change-form" action="{{$.RepoLink}}/issues/labels/edit" method="post">
|
||||
{{.CsrfTokenHtml}}
|
||||
<div class="input-group label-change-color-picker form-group" style="margin-bottom: 2px">
|
||||
<input type="text" class="form-control" name="title" required="required" id="label-name-change-ipt"/>
|
||||
<input type="hidden" name="color" id="label-color-change-ipt" value="#444444"/>
|
||||
<span class="input-group-addon"><i></i></span>
|
||||
<input type="hidden" name="id" id="label-change-id-ipt" value="0"/>
|
||||
</div>
|
||||
<div class="form-group text-right">
|
||||
<input class="form-control input-sm" type="text" id="label-color-change-ipt2" value="#444444"/>
|
||||
<button class="btn btn-default btn-sm">Save</button>
|
||||
</div>
|
||||
</form>
|
||||
</li>
|
||||
{{end}}
|
||||
</ul>
|
||||
{{if or .IsRepositoryOwner .IsAdmin}}
|
||||
<button class="btn btn-default btn-block label-button" id="label-manage-btn">Manage Labels</button>
|
||||
<hr/>
|
||||
<form id="label-add-form" action="{{$.RepoLink}}/issues/labels/new" method="post">
|
||||
{{.CsrfTokenHtml}}
|
||||
<h5><strong>New Label</strong></h5>
|
||||
<div class="input-group label-color-picker form-group">
|
||||
<input type="text" class="form-control" name="title" required="required" id="label-name-ipt"/>
|
||||
<input type="hidden" name="color" id="label-color-ipt" value="#444444"/>
|
||||
<span class="input-group-addon"><i></i></span>
|
||||
</div>
|
||||
<div class="form-group text-right">
|
||||
<input class="form-control input-sm" type="text" id="label-color-ipt2" value="#444444"/>
|
||||
<button class="btn btn-default btn-sm">Create</button>
|
||||
</div>
|
||||
</form>
|
||||
{{end}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
{{template "base/alert" .}}
|
||||
<div class="filter-option">
|
||||
<div class="btn-group">
|
||||
<a class="btn btn-default issue-open{{if not .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/issues?type={{.ViewType}}">{{.IssueStats.OpenCount}} Open</a>
|
||||
<a class="btn btn-default issue-close{{if .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/issues?type={{.ViewType}}&state=closed">{{.IssueStats.ClosedCount}} Closed</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="issues list-group">
|
||||
{{range .Issues}}{{if .Poster}}
|
||||
<div class="list-group-item issue-item{{if not .IsRead}} unread{{end}}" id="issue-{{.Id}}">
|
||||
<span class="number pull-right">#{{.Index}}</span>
|
||||
<h5 class="title">
|
||||
<a href="{{$.RepoLink}}/issues/{{.Index}}">{{.Name}}</a>
|
||||
<span class="labels">
|
||||
{{range .Labels}}
|
||||
<span class="label" style="background-color: {{.Color}}">{{.Name}}</span>
|
||||
{{end}}
|
||||
<div class="ui right floated secondary filter menu">
|
||||
<div class="ui {{if not .Labels}}disabled{{end}} pointing dropdown item">
|
||||
<span class="text">
|
||||
{{.i18n.Tr "repo.issues.filter_label"}}
|
||||
<i class="dropdown icon"></i>
|
||||
</span>
|
||||
</h5>
|
||||
<p class="info">
|
||||
<span class="author"><img class="avatar" src="{{.Poster.AvatarLink}}" alt="" width="20"/>
|
||||
<a href="{{AppSubUrl}}/{{.Poster.Name}}">{{.Poster.Name}}</a></span>
|
||||
<span class="time">{{TimeSince .Created $.Lang}}</span>
|
||||
<span class="comment"><i class="fa fa-comments"></i> {{.NumComments}}</span>
|
||||
</p>
|
||||
<div class="menu">
|
||||
{{range .Labels}}
|
||||
<a class="item" href="{{$.RepoLink}}/issues?type={{$.ViewType}}&state={{$.State}}&labels={{.Id}}"><span class="label color" style="background-color: {{.Color}}"></span> {{.Name}}</a>
|
||||
{{end}}
|
||||
</div>
|
||||
{{end}}{{end}}
|
||||
</div>
|
||||
<div class="ui {{if not .Milestones}}disabled{{end}} pointing dropdown item">
|
||||
<span class="text">
|
||||
{{.i18n.Tr "repo.issues.filter_milestone"}}
|
||||
<i class="dropdown icon"></i>
|
||||
</span>
|
||||
<div class="menu">
|
||||
{{range .Milestones}}
|
||||
<a class="item" href="{{$.RepoLink}}/issues">{{.Name}}</a>
|
||||
{{end}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="ui {{if not .Assignees}}disabled{{end}} pointing dropdown item">
|
||||
<span class="text">
|
||||
{{.i18n.Tr "repo.issues.filter_assignee"}}
|
||||
<i class="dropdown icon"></i>
|
||||
</span>
|
||||
<div class="menu">
|
||||
{{range .Assignees}}
|
||||
<a class="item" href="{{$.RepoLink}}/issues">{{.Name}}</a>
|
||||
{{end}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="ui pointing dropdown type item">
|
||||
<span class="text">
|
||||
{{.i18n.Tr "repo.issues.filter_type"}}
|
||||
<i class="dropdown icon"></i>
|
||||
</span>
|
||||
<div class="menu">
|
||||
<a class="item" href="{{$.RepoLink}}/issues">{{.i18n.Tr "repo.issues.filter_type.all_issues"}}</a>
|
||||
<a class="item" href="{{$.RepoLink}}/issues">{{.i18n.Tr "repo.issues.filter_type.assigned_to_you"}}</a>
|
||||
<a class="item" href="{{$.RepoLink}}/issues">{{.i18n.Tr "repo.issues.filter_type.created_by_you"}}</a>
|
||||
<a class="item" href="{{$.RepoLink}}/issues">{{.i18n.Tr "repo.issues.filter_type.mentioning_you"}}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="issue list">
|
||||
{{range .Issues}}
|
||||
{{ $timeStr:= TimeSince .Created $.Lang }}
|
||||
<li class="item">
|
||||
<div class="ui black label">#{{.Id}}</div>
|
||||
<a class="title" href="{{$.RepoLink}}/issues/{{.Index}}">{{.Name}}</a>
|
||||
<p class="desc">{{$.i18n.Tr "repo.issues.opened_by" $timeStr .Poster.Name|Str2html}}</p>
|
||||
{{if .NumComments}}<span class="comment ui right"><i class="octicon octicon-comment"></i> {{.NumComments}}</span>{{end}}
|
||||
</li>
|
||||
{{end}}
|
||||
</div>
|
||||
</div>
|
||||
<script src="{{AppSubUrl}}/js/bootstrap-colorpicker.min.js"></script>
|
||||
<script>
|
||||
$(function(){
|
||||
$('.label-color-picker').colorpicker({
|
||||
input: $('#label-color-ipt')
|
||||
}).on('changeColor', function (ev) {
|
||||
var $ipt = $('#label-color-ipt2');
|
||||
if ($ipt.val().length != 4) {
|
||||
$ipt.val(ev.color.toHex());
|
||||
}
|
||||
});
|
||||
$('.label-change-color-picker').colorpicker({
|
||||
input:$('#label-color-change-ipt')
|
||||
}).on('changeColor', function (ev) {
|
||||
var $ipt = $('#label-color-change-ipt2');
|
||||
if ($ipt.val().length != 4) {
|
||||
$ipt.val(ev.color.toHex());
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{template "base/footer_old" .}}
|
||||
</div>
|
||||
{{template "base/footer" .}}
|
120
templates/repo/issue/list_old.tmpl
Normal file
120
templates/repo/issue/list_old.tmpl
Normal file
|
@ -0,0 +1,120 @@
|
|||
{{template "base/head_old" .}}
|
||||
{{template "base/navbar" .}}
|
||||
{{template "repo/nav" .}}
|
||||
{{template "repo/toolbar" .}}
|
||||
<div id="body" class="container">
|
||||
<div id="issue">
|
||||
<div class="col-md-3 filters">
|
||||
<div class="filter-list">
|
||||
<ul class="list-unstyled">
|
||||
<li><a href="{{.RepoLink}}/issues?state={{.State}}"{{if eq .ViewType "all"}} class="active"{{end}}>All Issues <strong class="pull-right">{{.IssueStats.AllCount}}</strong></a></li>
|
||||
<li><a href="{{.RepoLink}}/issues?type=assigned&state={{.State}}"{{if eq .ViewType "assigned"}} class="active"{{end}}>Assigned to you <strong class="pull-right">{{.IssueStats.AssignCount}}</strong></a></li>
|
||||
<li><a href="{{.RepoLink}}/issues?type=created_by&state={{.State}}"{{if eq .ViewType "created_by"}} class="active"{{end}}>Created by you <strong class="pull-right">{{.IssueStats.CreateCount}}</strong></a></li>
|
||||
<li><a href="{{.RepoLink}}/issues?type=mentioned&state={{.State}}"{{if eq .ViewType "mentioned"}} class="active"{{end}}>Mentioning you <strong class="pull-right">{{.IssueStats.MentionCount}}</strong></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="label-filter">
|
||||
<h4>Label</h4>
|
||||
<ul class="list-unstyled" id="label-list" data-ajax="{{$.RepoLink}}/issues/labels/delete">
|
||||
{{range .Labels}}
|
||||
<li class="label-item{{if eq $.SelectLabels .Id}} label-selected{{end}}" id="label-{{.Id}}" data-id="{{.Id}}">
|
||||
<a href="?type={{$.ViewType}}&state={{$.State}}{{if not (eq $.SelectLabels .Id)}}&labels={{.Id}}{{end}}">
|
||||
<span class="pull-right count">{{if $.IsShowClosed}}{{.NumClosedIssues}}{{else}}{{.NumOpenIssues}}{{end}}</span>
|
||||
<span class="color" style="background-color: {{.Color}}" data-color="{{.Color}}"></span>
|
||||
<span class="name">{{.Name}}</span>
|
||||
</a>
|
||||
<a class="del pull-right" href="#" data-id="{{.Id}}"><i class="fa fa-times-circle-o"></i></a>
|
||||
</li>
|
||||
{{end}}
|
||||
{{if or .IsRepositoryOwner .IsAdmin}}
|
||||
<li class="label-change-li" style="display: none">
|
||||
<form id="label-change-form" action="{{$.RepoLink}}/issues/labels/edit" method="post">
|
||||
{{.CsrfTokenHtml}}
|
||||
<div class="input-group label-change-color-picker form-group" style="margin-bottom: 2px">
|
||||
<input type="text" class="form-control" name="title" required="required" id="label-name-change-ipt"/>
|
||||
<input type="hidden" name="color" id="label-color-change-ipt" value="#444444"/>
|
||||
<span class="input-group-addon"><i></i></span>
|
||||
<input type="hidden" name="id" id="label-change-id-ipt" value="0"/>
|
||||
</div>
|
||||
<div class="form-group text-right">
|
||||
<input class="form-control input-sm" type="text" id="label-color-change-ipt2" value="#444444"/>
|
||||
<button class="btn btn-default btn-sm">Save</button>
|
||||
</div>
|
||||
</form>
|
||||
</li>
|
||||
{{end}}
|
||||
</ul>
|
||||
{{if or .IsRepositoryOwner .IsAdmin}}
|
||||
<button class="btn btn-default btn-block label-button" id="label-manage-btn">Manage Labels</button>
|
||||
<hr/>
|
||||
<form id="label-add-form" action="{{$.RepoLink}}/issues/labels/new" method="post">
|
||||
{{.CsrfTokenHtml}}
|
||||
<h5><strong>New Label</strong></h5>
|
||||
<div class="input-group label-color-picker form-group">
|
||||
<input type="text" class="form-control" name="title" required="required" id="label-name-ipt"/>
|
||||
<input type="hidden" name="color" id="label-color-ipt" value="#444444"/>
|
||||
<span class="input-group-addon"><i></i></span>
|
||||
</div>
|
||||
<div class="form-group text-right">
|
||||
<input class="form-control input-sm" type="text" id="label-color-ipt2" value="#444444"/>
|
||||
<button class="btn btn-default btn-sm">Create</button>
|
||||
</div>
|
||||
</form>
|
||||
{{end}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
{{template "base/alert" .}}
|
||||
<div class="filter-option">
|
||||
<div class="btn-group">
|
||||
<a class="btn btn-default issue-open{{if not .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/issues?type={{.ViewType}}">{{.IssueStats.OpenCount}} Open</a>
|
||||
<a class="btn btn-default issue-close{{if .IsShowClosed}} active{{end}}" href="{{.RepoLink}}/issues?type={{.ViewType}}&state=closed">{{.IssueStats.ClosedCount}} Closed</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="issues list-group">
|
||||
{{range .Issues}}{{if .Poster}}
|
||||
<div class="list-group-item issue-item{{if not .IsRead}} unread{{end}}" id="issue-{{.Id}}">
|
||||
<span class="number pull-right">#{{.Index}}</span>
|
||||
<h5 class="title">
|
||||
<a href="{{$.RepoLink}}/issues/{{.Index}}">{{.Name}}</a>
|
||||
<span class="labels">
|
||||
{{range .Labels}}
|
||||
<span class="label" style="background-color: {{.Color}}">{{.Name}}</span>
|
||||
{{end}}
|
||||
</span>
|
||||
</h5>
|
||||
<p class="info">
|
||||
<span class="author"><img class="avatar" src="{{.Poster.AvatarLink}}" alt="" width="20"/>
|
||||
<a href="{{AppSubUrl}}/{{.Poster.Name}}">{{.Poster.Name}}</a></span>
|
||||
<span class="time">{{TimeSince .Created $.Lang}}</span>
|
||||
<span class="comment"><i class="fa fa-comments"></i> {{.NumComments}}</span>
|
||||
</p>
|
||||
</div>
|
||||
{{end}}{{end}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="{{AppSubUrl}}/js/bootstrap-colorpicker.min.js"></script>
|
||||
<script>
|
||||
$(function(){
|
||||
$('.label-color-picker').colorpicker({
|
||||
input: $('#label-color-ipt')
|
||||
}).on('changeColor', function (ev) {
|
||||
var $ipt = $('#label-color-ipt2');
|
||||
if ($ipt.val().length != 4) {
|
||||
$ipt.val(ev.color.toHex());
|
||||
}
|
||||
});
|
||||
$('.label-change-color-picker').colorpicker({
|
||||
input:$('#label-color-change-ipt')
|
||||
}).on('changeColor', function (ev) {
|
||||
var $ipt = $('#label-color-change-ipt2');
|
||||
if ($ipt.val().length != 4) {
|
||||
$ipt.val(ev.color.toHex());
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{template "base/footer_old" .}}
|
7
templates/repo/issue/navbar.tmpl
Normal file
7
templates/repo/issue/navbar.tmpl
Normal file
|
@ -0,0 +1,7 @@
|
|||
<div class="ui left">
|
||||
<div class="ui compact menu">
|
||||
<a class="{{if .PageIsIssueList}}active{{end}} item" href="{{.RepoLink}}/issues">{{.i18n.Tr "repo.issues"}}</a>
|
||||
<a class="item" href="{{.RepoLink}}/labels">{{.i18n.Tr "repo.labels"}}</a>
|
||||
<a class="item" href="{{.RepoLink}}/milestones">{{.i18n.Tr "repo.milestones"}}</a>
|
||||
</div>
|
||||
</div>
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div class="issue-main container repo-wide-wrapper">
|
||||
<ul id="issue-list-nav" class="menu menu-line">
|
||||
<li><a href="#">Issue</a></li>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div class="issue-main container repo-wide-wrapper">
|
||||
<ul id="issue-list-nav" class="menu menu-line">
|
||||
<li class="current"><a href="#">Issue</a></li>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div class="issue-main container repo-wide-wrapper">
|
||||
<ul id="issue-list-nav" class="menu menu-line">
|
||||
<li><a href="#">Issue</a></li>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div class="issue-main container repo-wide-wrapper">
|
||||
<ul id="issue-list-nav" class="menu menu-line">
|
||||
<li><a href="#">Issue</a></li>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div class="clear container repo-wide-wrapper repo-pr">
|
||||
<div class="pr-main">
|
||||
<div class="pr-title clear">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="repo-content" class="clear container">
|
||||
<div id="repo-main" class="left grid-5-6">
|
||||
{{template "ng/base/alert" .}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="repo-content" class="clear container">
|
||||
<div id="repo-main" class="left grid-5-6">
|
||||
<div id="release">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="repo-content" class="clear container">
|
||||
<div id="repo-main" class="left grid-5-6">
|
||||
{{template "ng/base/alert" .}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="setting-wrapper" class="main-wrapper">
|
||||
<div id="repo-setting" class="container clear">
|
||||
{{template "repo/settings/nav" .}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="setting-wrapper" class="main-wrapper">
|
||||
<div id="repo-setting" class="container clear">
|
||||
{{template "repo/settings/nav" .}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="setting-wrapper" class="main-wrapper">
|
||||
<div id="repo-setting" class="container clear">
|
||||
{{template "repo/settings/nav" .}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="setting-wrapper" class="main-wrapper">
|
||||
<div id="repo-setting" class="container clear">
|
||||
{{template "repo/settings/nav" .}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="setting-wrapper" class="main-wrapper">
|
||||
<div id="repo-setting" class="container clear">
|
||||
{{template "repo/settings/nav" .}}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{{template "ng/base/head" .}}
|
||||
{{template "ng/base/header" .}}
|
||||
<div id="repo-wrapper">
|
||||
{{template "repo/header" .}}
|
||||
{{template "repo/header_old" .}}
|
||||
<div id="setting-wrapper" class="main-wrapper">
|
||||
<div id="repo-setting" class="container clear">
|
||||
{{template "repo/settings/nav" .}}
|
||||
|
|
Loading…
Reference in a new issue