@ -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; | |||
} | |||
} | |||
} | |||
} |
@ -1 +1 @@ | |||
0.6.1.0719 Beta | |||
0.6.1.0724 Beta |
@ -1,63 +1,29 @@ | |||
{{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 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 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> | |||
<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> | |||
{{end}} | |||
<div class="ui divider"></div> | |||
{{end}} |
@ -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,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> | |||
</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> | |||
{{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> | |||
<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> | |||
</div> | |||
</div> | |||
<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> | |||
<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> | |||
</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> | |||
</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" .}} | |||
{{template "base/footer" .}} |
@ -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" .}} |
@ -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> |