mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 08:30:25 +08:00 
			
		
		
		
	Fix API deadline removal (#8759)
* Handle deadline is zero (to remove deadline) * Better API documentation for issue deadline. * Add parameter to unset due date. * Update pull edit API comment
This commit is contained in:
		
				
					committed by
					
						
						Lunny Xiao
					
				
			
			
				
	
			
			
			
						parent
						
							dce22efbee
						
					
				
				
					commit
					7971b05d2b
				
			@@ -8,6 +8,7 @@ import (
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"net/http"
 | 
			
		||||
	"strings"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"code.gitea.io/gitea/models"
 | 
			
		||||
	"code.gitea.io/gitea/modules/auth"
 | 
			
		||||
@@ -326,7 +327,7 @@ func CreatePullRequest(ctx *context.APIContext, form api.CreatePullRequestOption
 | 
			
		||||
func EditPullRequest(ctx *context.APIContext, form api.EditPullRequestOption) {
 | 
			
		||||
	// swagger:operation PATCH /repos/{owner}/{repo}/pulls/{index} repository repoEditPullRequest
 | 
			
		||||
	// ---
 | 
			
		||||
	// summary: Update a pull request
 | 
			
		||||
	// summary: Update a pull request. If using deadline only the date will be taken into account, and time of day ignored.
 | 
			
		||||
	// consumes:
 | 
			
		||||
	// - application/json
 | 
			
		||||
	// produces:
 | 
			
		||||
@@ -385,9 +386,15 @@ func EditPullRequest(ctx *context.APIContext, form api.EditPullRequestOption) {
 | 
			
		||||
		issue.Content = form.Body
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Update Deadline
 | 
			
		||||
	if form.Deadline != nil {
 | 
			
		||||
		deadlineUnix := timeutil.TimeStamp(form.Deadline.Unix())
 | 
			
		||||
	// Update or remove deadline if set
 | 
			
		||||
	if form.Deadline != nil || form.RemoveDeadline != nil {
 | 
			
		||||
		var deadlineUnix timeutil.TimeStamp
 | 
			
		||||
		if (form.RemoveDeadline == nil || !*form.RemoveDeadline) && !form.Deadline.IsZero() {
 | 
			
		||||
			deadline := time.Date(form.Deadline.Year(), form.Deadline.Month(), form.Deadline.Day(),
 | 
			
		||||
				23, 59, 59, 0, form.Deadline.Location())
 | 
			
		||||
			deadlineUnix = timeutil.TimeStamp(deadline.Unix())
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		if err := models.UpdateIssueDeadline(issue, deadlineUnix, ctx.User); err != nil {
 | 
			
		||||
			ctx.Error(500, "UpdateIssueDeadline", err)
 | 
			
		||||
			return
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user