Updating a deadline from the ui is now entirely done via the api

This commit is contained in:
kolaente 2018-05-02 16:15:12 +02:00
parent cf3313b998
commit d27bb3eb9b
No known key found for this signature in database
GPG Key ID: F40E70337AB24C9B
4 changed files with 48 additions and 24 deletions

View File

@ -2194,14 +2194,33 @@ function initTopicbar() {
}, },
}); });
} }
function toggleDuedateForm() { function toggleDeadlineForm() {
$('#add_deadline_form').fadeToggle(150); $('#deadlineForm').fadeToggle(150);
} }
function deleteDueDate(url) { function setDeadline() {
$.post(url, { var deadline = $('#deadlineDate').val();
'_csrf': csrf, updateDeadline(deadline);
},function( data ) { }
window.location.reload();
function updateDeadline(deadlineString) {
var issue_api_url = suburl + '/api/v1/repos/' + $('meta[name=_repo_owner]').attr("content") + '/' + $('meta[name=_repo_name]').attr("content") + '/issues/' + $('meta[name=_issue_index]').attr("content");
$('#deadline-loader').addClass('loading');
var realDeadline = null;
if (deadlineString !== '') {
realDeadline = deadlineString + 'T13:55:29.764Z';
}
$.ajax(issue_api_url + '/deadline', {
data: JSON.stringify({
'due_date': realDeadline,
}),
contentType: 'application/json',
type: 'POST',
complete: function () {
window.location.reload();
}
}); });
} }

View File

@ -338,7 +338,7 @@ func EditIssue(ctx *context.APIContext, form api.EditIssueOption) {
func UpdateIssueDeadline(ctx *context.APIContext, form api.CreateDeadlineOption) { func UpdateIssueDeadline(ctx *context.APIContext, form api.CreateDeadlineOption) {
// swagger:operation POST /repos/{owner}/{repo}/issues/{index}/deadline issue issueCreateIssueDeadline // swagger:operation POST /repos/{owner}/{repo}/issues/{index}/deadline issue issueCreateIssueDeadline
// --- // ---
// summary: Set an issue deadline // summary: Set an issue deadline. If set to null, the deadline is deleted.
// consumes: // consumes:
// - application/json // - application/json
// produces: // produces:

View File

@ -21,6 +21,13 @@
{{if .SearchLimit}} {{if .SearchLimit}}
<meta name="_search_limit" content="{{.SearchLimit}}" /> <meta name="_search_limit" content="{{.SearchLimit}}" />
{{end}} {{end}}
{{with .Repository}}
<meta name="_repo_owner" content="{{.Owner.Name}}" />
<meta name="_repo_name" content="{{.Name}}" />
{{end}}
{{with .Issue}}
<meta name="_issue_index" content="{{.Index}}" />
{{end}}
{{if .GoGetImport}} {{if .GoGetImport}}
<meta name="go-import" content="{{.GoGetImport}} git {{.CloneLink.HTTPS}}"> <meta name="go-import" content="{{.GoGetImport}} git {{.CloneLink.HTTPS}}">
<meta name="go-source" content="{{.GoGetImport}} _ {{.GoDocDirectory}} {{.GoDocFile}}"> <meta name="go-source" content="{{.GoGetImport}} _ {{.GoDocDirectory}} {{.GoDocFile}}">

View File

@ -194,6 +194,7 @@
<div class="ui divider"></div> <div class="ui divider"></div>
<span class="text"><strong>{{.i18n.Tr "repo.issues.due_date"}}</strong></span> <span class="text"><strong>{{.i18n.Tr "repo.issues.due_date"}}</strong></span>
<div class="ui form" id="deadline-loader">
{{if gt .Issue.DeadlineUnix 0}} {{if gt .Issue.DeadlineUnix 0}}
<p> <p>
<span class="octicon octicon-calendar"></span> <span class="octicon octicon-calendar"></span>
@ -203,8 +204,8 @@
{{end}} {{end}}
{{if and .IsSigned .IsRepositoryWriter}} {{if and .IsSigned .IsRepositoryWriter}}
<br/> <br/>
<a style="cursor:pointer;" onclick="toggleDuedateForm();"><i class="edit icon"></i>Edit</a> - <a style="cursor:pointer;" onclick="toggleDeadlineForm();"><i class="edit icon"></i>Edit</a> -
<a style="cursor:pointer;" onclick="deleteDueDate('{{$.RepoLink}}/issues/{{.Issue.Index}}/deadline/delete');"><i class="remove icon"></i>Remove</a> <a style="cursor:pointer;" onclick="updateDeadline('');"><i class="remove icon"></i>Remove</a>
{{end}} {{end}}
</p> </p>
{{else}} {{else}}
@ -212,20 +213,17 @@
{{end}} {{end}}
{{if and .IsSigned .IsRepositoryWriter}} {{if and .IsSigned .IsRepositoryWriter}}
<form method="POST"{{if gt .Issue.DeadlineUnix 0}}style="display: none;"{{end}}} id="add_deadline_form" action="{{$.RepoLink}}/issues/{{.Issue.Index}}/deadline/update" class="ui action input fluid"> <div class="ui fluid action input"{{if gt .Issue.DeadlineUnix 0}} style="display: none;"{{end}} id="deadlineForm">
{{$.CsrfTokenHtml}} <input required placeholder="{{.i18n.Tr "repo.issues.due_date_form"}}" {{if gt .Issue.DeadlineUnix 0}}value="{{.Issue.DeadlineUnix.Format "2006-01-02"}}"{{end}} type="date" name="deadlineDate" id="deadlineDate" style="min-width: 13.8rem;border-radius: 4px 0 0 4px;border-right: 0;white-space: nowrap;">
<div class="ui fluid action input"> <button class="ui green icon button" onclick="setDeadline();">
<input required placeholder="{{.i18n.Tr "repo.issues.due_date_form"}}" {{if gt .Issue.DeadlineUnix 0}}value="{{.Issue.DeadlineUnix.Format "2006-01-02"}}"{{end}} type="date" name="date" style="min-width: 13.9rem;border-radius: 4px 0 0 4px;border-right: 0;white-space: nowrap;"> {{if gt .Issue.DeadlineUnix 0}}
<button class="ui green icon button"> <i class="edit icon"></i>
{{if gt .Issue.DeadlineUnix 0}} {{else}}
<i class="edit icon"></i> <i class="plus icon"></i>
{{else}} {{end}}
<i class="plus icon"></i> </button>
{{end}} </div>
</button>
</div>
</form>
{{end}} {{end}}
</div>
</div> </div>
</div> </div>