mirror of
https://github.com/go-gitea/gitea
synced 2025-07-22 18:28:37 +00:00
milestone: create page
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
<form class="ui right form" action="{{$.RepoLink}}/labels/new" method="post">
|
||||
{{.CsrfTokenHtml}}
|
||||
<div class="ui right floated secondary menu">
|
||||
<div class="item">
|
||||
<div class="input item">
|
||||
<div class="ui large input">
|
||||
<input class="new-label-input" name="title" placeholder="{{.i18n.Tr "repo.issues.new_label_placeholder"}}" required>
|
||||
</div>
|
||||
|
@@ -1,120 +0,0 @@
|
||||
{{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" .}}
|
@@ -1,62 +1,51 @@
|
||||
{{template "base/head_old" .}}
|
||||
{{template "base/navbar" .}}
|
||||
{{template "repo/nav" .}}
|
||||
{{template "repo/toolbar" .}}
|
||||
<div id="body" class="container">
|
||||
<div id="issue">
|
||||
<form class="form" action="{{.RepoLink}}/milestones/new" method="post" id="issue-create-form">
|
||||
{{.CsrfTokenHtml}}
|
||||
{{template "base/alert" .}}
|
||||
<div class="col-md-1">
|
||||
<img class="avatar" src="{{.SignedUser.AvatarLink}}" alt=""/>
|
||||
</div>
|
||||
<div class="col-md-8 panel panel-default">
|
||||
<div class="form-group panel-body">
|
||||
<input class="form-control input-lg" type="text" name="title" required="required" placeholder="Title" value="{{.title}}" />
|
||||
</div>
|
||||
<div class="form-group panel-body">
|
||||
<div class="md-help pull-right"><!-- todo help link -->
|
||||
Content with <a href="https://help.github.com/articles/markdown-basics">Markdown</a>
|
||||
</div>
|
||||
<ul class="nav nav-tabs" data-init="tabs">
|
||||
<li class="active issue-write"><a href="#issue-textarea" data-toggle="tab">Write</a></li>
|
||||
<li class="issue-preview"><a href="#issue-preview" data-toggle="tab" data-ajax="/api/v1/markdown" data-ajax-name="issue-preview" data-ajax-context="{{.RepoLink}}" data-ajax-method="post" data-preview="#issue-preview">Preview</a></li>
|
||||
</ul>
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane" id="issue-textarea">
|
||||
<div class="form-group">
|
||||
<textarea class="form-control" name="content" id="issue-content" rows="10" placeholder="Write some content" data-ajax-rel="issue-preview" data-ajax-val="val" data-ajax-field="text">{{.content}}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab-pane issue-preview-content" id="issue-preview">loading...</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-right panel-body">
|
||||
<div class="form-group">
|
||||
<input type="hidden" value="id" name="repo-id"/>
|
||||
<button class="btn-success btn">Create new milestone</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<h4>Milestone Due Date</h4>
|
||||
|
||||
<div class="form-group">
|
||||
<input name="due_date" type="text" class="form-control" id="milestone-due-date">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
{{template "base/head" .}}
|
||||
<div class="repository new milestone">
|
||||
{{template "repo/header" .}}
|
||||
<div class="ui middle page grid body">
|
||||
<div class="navbar">
|
||||
{{template "repo/issue/navbar" .}}
|
||||
</div>
|
||||
<div class="ui divider"></div>
|
||||
<div class="sixteen wide column page grid">
|
||||
<h2 class="ui dividing header">
|
||||
{{.i18n.Tr "repo.milestones.new"}}
|
||||
<div class="sub header">{{.i18n.Tr "repo.milestones.new_subheader"}}</div>
|
||||
</h2>
|
||||
<form class="ui form grid" action="{{.Link}}" method="post">
|
||||
{{.CsrfTokenHtml}}
|
||||
{{if .Flash}}
|
||||
<div class="sixteen wide column">
|
||||
{{template "base/alert" .}}
|
||||
</div>
|
||||
{{end}}
|
||||
<div class="eleven wide column">
|
||||
<div class="field {{if .Err_Title}}error{{end}}">
|
||||
<label>{{.i18n.Tr "repo.milestones.title"}}</label>
|
||||
<input name="title" placeholder="{{.i18n.Tr "repo.milestones.title"}}" value="{{.title}}" required>
|
||||
</div>
|
||||
<div class="field">
|
||||
<label>{{.i18n.Tr "repo.milestones.desc"}}</label>
|
||||
<textarea name="content"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="three wide column">
|
||||
<div class="field {{if .Err_Deadline}}error{{end}}">
|
||||
<label>
|
||||
{{.i18n.Tr "repo.milestones.due_date"}}
|
||||
<a id="clear-date" href="#">{{.i18n.Tr "repo.milestones.clear"}}</a>
|
||||
</label>
|
||||
<input id="deadline" name="deadline" value="{{.deadline}}">
|
||||
</div>
|
||||
<div class="field">
|
||||
<input class="milestone datepicker" data-lang="{{.DateLang}}" data-start-date="{{.deadline}}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="ui divider"></div>
|
||||
<button class="ui right green button">
|
||||
{{.i18n.Tr "repo.milestones.create"}}
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="/js/bootstrap-datepicker.js"></script>
|
||||
<script>
|
||||
$(function(){
|
||||
$('#milestone-due-date').datepicker({
|
||||
weekStart: 1,
|
||||
todayBtn: "linked",
|
||||
calendarWeeks: true,
|
||||
todayHighlight: true
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{template "base/footer_old" .}}
|
||||
{{template "base/footer" .}}
|
62
templates/repo/issue/milestone_new_old.tmpl
Normal file
62
templates/repo/issue/milestone_new_old.tmpl
Normal file
@@ -0,0 +1,62 @@
|
||||
{{template "base/head_old" .}}
|
||||
{{template "base/navbar" .}}
|
||||
{{template "repo/nav" .}}
|
||||
{{template "repo/toolbar" .}}
|
||||
<div id="body" class="container">
|
||||
<div id="issue">
|
||||
<form class="form" action="{{.RepoLink}}/milestones/new" method="post" id="issue-create-form">
|
||||
{{.CsrfTokenHtml}}
|
||||
{{template "base/alert" .}}
|
||||
<div class="col-md-1">
|
||||
<img class="avatar" src="{{.SignedUser.AvatarLink}}" alt=""/>
|
||||
</div>
|
||||
<div class="col-md-8 panel panel-default">
|
||||
<div class="form-group panel-body">
|
||||
<input class="form-control input-lg" type="text" name="title" required="required" placeholder="Title" value="{{.title}}" />
|
||||
</div>
|
||||
<div class="form-group panel-body">
|
||||
<div class="md-help pull-right"><!-- todo help link -->
|
||||
Content with <a href="https://help.github.com/articles/markdown-basics">Markdown</a>
|
||||
</div>
|
||||
<ul class="nav nav-tabs" data-init="tabs">
|
||||
<li class="active issue-write"><a href="#issue-textarea" data-toggle="tab">Write</a></li>
|
||||
<li class="issue-preview"><a href="#issue-preview" data-toggle="tab" data-ajax="/api/v1/markdown" data-ajax-name="issue-preview" data-ajax-context="{{.RepoLink}}" data-ajax-method="post" data-preview="#issue-preview">Preview</a></li>
|
||||
</ul>
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane" id="issue-textarea">
|
||||
<div class="form-group">
|
||||
<textarea class="form-control" name="content" id="issue-content" rows="10" placeholder="Write some content" data-ajax-rel="issue-preview" data-ajax-val="val" data-ajax-field="text">{{.content}}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab-pane issue-preview-content" id="issue-preview">loading...</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-right panel-body">
|
||||
<div class="form-group">
|
||||
<input type="hidden" value="id" name="repo-id"/>
|
||||
<button class="btn-success btn">Create new milestone</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<h4>Milestone Due Date</h4>
|
||||
|
||||
<div class="form-group">
|
||||
<input name="due_date" type="text" class="form-control" id="milestone-due-date">
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<script src="/js/bootstrap-datepicker.js"></script>
|
||||
<script>
|
||||
$(function(){
|
||||
$('#milestone-due-date').datepicker({
|
||||
weekStart: 1,
|
||||
todayBtn: "linked",
|
||||
calendarWeeks: true,
|
||||
todayHighlight: true
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{template "base/footer_old" .}}
|
@@ -9,6 +9,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="ui divider"></div>
|
||||
{{template "repo/issue/alert" .}}
|
||||
<div class="ui left">
|
||||
<div class="ui tiny buttons">
|
||||
<a class="ui green basic button {{if not .IsShowClosed}}active{{end}}" href="{{.RepoLink}}/milestones?state=open">
|
||||
@@ -36,9 +37,14 @@
|
||||
<div class="meta">
|
||||
{{ $closedDate:= TimeSince .ClosedDate $.Lang }}
|
||||
{{if .IsClosed}}
|
||||
<span class="octicon octicon-clock"></span> {{$.i18n.Tr "repo.milestones.closed" $closedDate|Str2html}}
|
||||
<span class="octicon octicon-clock"></span> {{$.i18n.Tr "repo.milestones.closed" $closedDate|Str2html}}
|
||||
{{else}}
|
||||
<span class="octicon octicon-calendar"></span> {{if .DeadlineString}}{{.DeadlineString}}{{else}}{{$.i18n.Tr "repo.milestones.no_due_date"}}{{end}}
|
||||
<span class="octicon octicon-calendar"></span>
|
||||
{{if .DeadlineString}}
|
||||
<span {{if .IsOverDue}}class="overdue"{{end}}>{{.DeadlineString}}</span>
|
||||
{{else}}
|
||||
{{$.i18n.Tr "repo.milestones.no_due_date"}}
|
||||
{{end}}
|
||||
{{end}}
|
||||
<span class="issue-stats">
|
||||
<i class="octicon octicon-issue-opened"></i> {{$.i18n.Tr "repo.issues.open_tab" .NumOpenIssues}}
|
Reference in New Issue
Block a user