mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 00:02:59 -04:00 
			
		
		
		
	move CreateReview to moduels/pull (#7841)
This commit is contained in:
		
							parent
							
								
									eaa4d4ea98
								
							
						
					
					
						commit
						c021890930
					
				| @ -8,7 +8,6 @@ import ( | |||||||
| 	"fmt" | 	"fmt" | ||||||
| 
 | 
 | ||||||
| 	"code.gitea.io/gitea/modules/log" | 	"code.gitea.io/gitea/modules/log" | ||||||
| 	api "code.gitea.io/gitea/modules/structs" |  | ||||||
| 	"code.gitea.io/gitea/modules/util" | 	"code.gitea.io/gitea/modules/util" | ||||||
| 
 | 
 | ||||||
| 	"github.com/go-xorm/xorm" | 	"github.com/go-xorm/xorm" | ||||||
| @ -235,42 +234,6 @@ func createReview(e Engine, opts CreateReviewOptions) (*Review, error) { | |||||||
| 		return nil, err | 		return nil, err | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	var reviewHookType HookEventType |  | ||||||
| 
 |  | ||||||
| 	switch opts.Type { |  | ||||||
| 	case ReviewTypeApprove: |  | ||||||
| 		reviewHookType = HookEventPullRequestApproved |  | ||||||
| 	case ReviewTypeComment: |  | ||||||
| 		reviewHookType = HookEventPullRequestComment |  | ||||||
| 	case ReviewTypeReject: |  | ||||||
| 		reviewHookType = HookEventPullRequestRejected |  | ||||||
| 	default: |  | ||||||
| 		// unsupported review webhook type here |  | ||||||
| 		return review, nil |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	pr := opts.Issue.PullRequest |  | ||||||
| 
 |  | ||||||
| 	if err := pr.LoadIssue(); err != nil { |  | ||||||
| 		return nil, err |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	mode, err := AccessLevel(opts.Issue.Poster, opts.Issue.Repo) |  | ||||||
| 	if err != nil { |  | ||||||
| 		return nil, err |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	if err := PrepareWebhooks(opts.Issue.Repo, reviewHookType, &api.PullRequestPayload{ |  | ||||||
| 		Action:      api.HookIssueSynchronized, |  | ||||||
| 		Index:       opts.Issue.Index, |  | ||||||
| 		PullRequest: pr.APIFormat(), |  | ||||||
| 		Repository:  opts.Issue.Repo.APIFormat(mode), |  | ||||||
| 		Sender:      opts.Reviewer.APIFormat(), |  | ||||||
| 	}); err != nil { |  | ||||||
| 		return nil, err |  | ||||||
| 	} |  | ||||||
| 	go HookQueue.Add(opts.Issue.Repo.ID) |  | ||||||
| 
 |  | ||||||
| 	return review, nil | 	return review, nil | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										57
									
								
								modules/pull/review.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								modules/pull/review.go
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,57 @@ | |||||||
|  | // Copyright 2019 The Gitea Authors. | ||||||
|  | // All rights reserved. | ||||||
|  | // Use of this source code is governed by a MIT-style | ||||||
|  | // license that can be found in the LICENSE file. | ||||||
|  | 
 | ||||||
|  | package pull | ||||||
|  | 
 | ||||||
|  | import ( | ||||||
|  | 	"code.gitea.io/gitea/models" | ||||||
|  | 	api "code.gitea.io/gitea/modules/structs" | ||||||
|  | ) | ||||||
|  | 
 | ||||||
|  | // CreateReview creates a new review based on opts | ||||||
|  | func CreateReview(opts models.CreateReviewOptions) (*models.Review, error) { | ||||||
|  | 	review, err := models.CreateReview(opts) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	var reviewHookType models.HookEventType | ||||||
|  | 
 | ||||||
|  | 	switch opts.Type { | ||||||
|  | 	case models.ReviewTypeApprove: | ||||||
|  | 		reviewHookType = models.HookEventPullRequestApproved | ||||||
|  | 	case models.ReviewTypeComment: | ||||||
|  | 		reviewHookType = models.HookEventPullRequestComment | ||||||
|  | 	case models.ReviewTypeReject: | ||||||
|  | 		reviewHookType = models.HookEventPullRequestRejected | ||||||
|  | 	default: | ||||||
|  | 		// unsupported review webhook type here | ||||||
|  | 		return review, nil | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	pr := opts.Issue.PullRequest | ||||||
|  | 
 | ||||||
|  | 	if err := pr.LoadIssue(); err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	mode, err := models.AccessLevel(opts.Issue.Poster, opts.Issue.Repo) | ||||||
|  | 	if err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	if err := models.PrepareWebhooks(opts.Issue.Repo, reviewHookType, &api.PullRequestPayload{ | ||||||
|  | 		Action:      api.HookIssueSynchronized, | ||||||
|  | 		Index:       opts.Issue.Index, | ||||||
|  | 		PullRequest: pr.APIFormat(), | ||||||
|  | 		Repository:  opts.Issue.Repo.APIFormat(mode), | ||||||
|  | 		Sender:      opts.Reviewer.APIFormat(), | ||||||
|  | 	}); err != nil { | ||||||
|  | 		return nil, err | ||||||
|  | 	} | ||||||
|  | 	go models.HookQueue.Add(opts.Issue.Repo.ID) | ||||||
|  | 
 | ||||||
|  | 	return review, nil | ||||||
|  | } | ||||||
| @ -12,6 +12,7 @@ import ( | |||||||
| 	"code.gitea.io/gitea/modules/context" | 	"code.gitea.io/gitea/modules/context" | ||||||
| 	"code.gitea.io/gitea/modules/log" | 	"code.gitea.io/gitea/modules/log" | ||||||
| 	"code.gitea.io/gitea/modules/notification" | 	"code.gitea.io/gitea/modules/notification" | ||||||
|  | 	pull_service "code.gitea.io/gitea/modules/pull" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| // CreateCodeComment will create a code comment including an pending review if required | // CreateCodeComment will create a code comment including an pending review if required | ||||||
| @ -53,7 +54,7 @@ func CreateCodeComment(ctx *context.Context, form auth.CodeCommentForm) { | |||||||
| 			} | 			} | ||||||
| 			// No pending review exists | 			// No pending review exists | ||||||
| 			// Create a new pending review for this issue & user | 			// Create a new pending review for this issue & user | ||||||
| 			if review, err = models.CreateReview(models.CreateReviewOptions{ | 			if review, err = pull_service.CreateReview(models.CreateReviewOptions{ | ||||||
| 				Type:     models.ReviewTypePending, | 				Type:     models.ReviewTypePending, | ||||||
| 				Reviewer: ctx.User, | 				Reviewer: ctx.User, | ||||||
| 				Issue:    issue, | 				Issue:    issue, | ||||||
| @ -61,6 +62,7 @@ func CreateCodeComment(ctx *context.Context, form auth.CodeCommentForm) { | |||||||
| 				ctx.ServerError("CreateCodeComment", err) | 				ctx.ServerError("CreateCodeComment", err) | ||||||
| 				return | 				return | ||||||
| 			} | 			} | ||||||
|  | 
 | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| 	if review.ID == 0 { | 	if review.ID == 0 { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user