Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitc8b64c7

Browse files
committed
Refactor
1 parent229235f commitc8b64c7

File tree

3 files changed

+58
-33
lines changed

3 files changed

+58
-33
lines changed

‎services/mailer/mail.go‎

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,3 +171,39 @@ func fromDisplayName(u *user_model.User) string {
171171
}
172172
returnu.GetCompleteName()
173173
}
174+
175+
funcgenerateMetadataHeaders(repo*repo_model.Repository)map[string]string {
176+
returnmap[string]string{
177+
// https://datatracker.ietf.org/doc/html/rfc2919
178+
"List-ID":fmt.Sprintf("%s <%s.%s.%s>",repo.FullName(),repo.Name,repo.OwnerName,setting.Domain),
179+
180+
// https://datatracker.ietf.org/doc/html/rfc2369
181+
"List-Archive":fmt.Sprintf("<%s>",repo.HTMLURL()),
182+
183+
"X-Mailer":"Gitea",
184+
185+
"X-Gitea-Repository":repo.Name,
186+
"X-Gitea-Repository-Path":repo.FullName(),
187+
"X-Gitea-Repository-Link":repo.HTMLURL(),
188+
189+
"X-GitLab-Project":repo.Name,
190+
"X-GitLab-Project-Path":repo.FullName(),
191+
}
192+
}
193+
194+
funcgenerateSenderRecipientHeaders(doer,recipient*user_model.User)map[string]string {
195+
returnmap[string]string{
196+
"X-Gitea-Sender":doer.Name,
197+
"X-Gitea-Recipient":recipient.Name,
198+
"X-GitHub-Sender":doer.Name,
199+
"X-GitHub-Recipient":recipient.Name,
200+
}
201+
}
202+
203+
funcgenerateReasonHeaders(reasonstring)map[string]string {
204+
returnmap[string]string{
205+
"X-Gitea-Reason":reason,
206+
"X-GitHub-Reason":reason,
207+
"X-GitLab-NotificationReason":reason,
208+
}
209+
}

‎services/mailer/mail_issue_common.go‎

Lines changed: 20 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ import (
2929
// Many e-mail service providers have limitations on the size of the email body, it's usually from 10MB to 25MB
3030
constmaxEmailBodySize=9_000_000
3131

32-
funcfallbackMailSubject(issue*issues_model.Issue)string {
32+
funcfallbackIssueMailSubject(issue*issues_model.Issue)string {
3333
returnfmt.Sprintf("[%s] %s (#%d)",issue.Repo.FullName(),issue.Title,issue.Index)
3434
}
3535

@@ -86,7 +86,7 @@ func composeIssueCommentMessages(ctx context.Context, comment *mailComment, lang
8686
ifactName!="new" {
8787
prefix="Re: "
8888
}
89-
fallback=prefix+fallbackMailSubject(comment.Issue)
89+
fallback=prefix+fallbackIssueMailSubject(comment.Issue)
9090

9191
ifcomment.Comment!=nil&&comment.Comment.Review!=nil {
9292
reviewComments=make([]*issues_model.Comment,0,10)
@@ -202,7 +202,7 @@ func composeIssueCommentMessages(ctx context.Context, comment *mailComment, lang
202202
msg.SetHeader("References",references...)
203203
msg.SetHeader("List-Unsubscribe",listUnsubscribe...)
204204

205-
forkey,value:=rangegenerateAdditionalHeaders(comment,actType,recipient) {
205+
forkey,value:=rangegenerateAdditionalHeadersForIssue(comment,actType,recipient) {
206206
msg.SetHeader(key,value)
207207
}
208208

@@ -302,35 +302,24 @@ func generateMessageIDForIssue(issue *issues_model.Issue, comment *issues_model.
302302
returnfmt.Sprintf("<%s/%s/%d%s@%s>",issue.Repo.FullName(),path,issue.Index,extra,setting.Domain)
303303
}
304304

305-
funcgenerateAdditionalHeaders(ctx*mailComment,reasonstring,recipient*user_model.User)map[string]string {
305+
funcgenerateAdditionalHeadersForIssue(ctx*mailComment,reasonstring,recipient*user_model.User)map[string]string {
306306
repo:=ctx.Issue.Repo
307307

308-
returnmap[string]string{
309-
// https://datatracker.ietf.org/doc/html/rfc2919
310-
"List-ID":fmt.Sprintf("%s <%s.%s.%s>",repo.FullName(),repo.Name,repo.OwnerName,setting.Domain),
311-
312-
// https://datatracker.ietf.org/doc/html/rfc2369
313-
"List-Archive":fmt.Sprintf("<%s>",repo.HTMLURL()),
314-
315-
"X-Mailer":"Gitea",
316-
"X-Gitea-Reason":reason,
317-
"X-Gitea-Sender":ctx.Doer.Name,
318-
"X-Gitea-Recipient":recipient.Name,
319-
"X-Gitea-Recipient-Address":recipient.Email,
320-
"X-Gitea-Repository":repo.Name,
321-
"X-Gitea-Repository-Path":repo.FullName(),
322-
"X-Gitea-Repository-Link":repo.HTMLURL(),
323-
"X-Gitea-Issue-ID":strconv.FormatInt(ctx.Issue.Index,10),
324-
"X-Gitea-Issue-Link":ctx.Issue.HTMLURL(),
325-
326-
"X-GitHub-Reason":reason,
327-
"X-GitHub-Sender":ctx.Doer.Name,
328-
"X-GitHub-Recipient":recipient.Name,
329-
"X-GitHub-Recipient-Address":recipient.Email,
330-
331-
"X-GitLab-NotificationReason":reason,
332-
"X-GitLab-Project":repo.Name,
333-
"X-GitLab-Project-Path":repo.FullName(),
334-
"X-GitLab-Issue-IID":strconv.FormatInt(ctx.Issue.Index,10),
308+
issueID:=strconv.FormatInt(ctx.Issue.Index,10)
309+
headers:=generateMetadataHeaders(repo)
310+
311+
fork,v:=rangegenerateSenderRecipientHeaders(ctx.Doer,recipient) {
312+
headers[k]=v
313+
}
314+
fork,v:=rangegenerateReasonHeaders(reason) {
315+
headers[k]=v
335316
}
317+
318+
headers["X-Gitea-Recipient-Address"]=recipient.Email
319+
headers["X-Gitea-Issue-ID"]=issueID
320+
headers["X-Gitea-Issue-Link"]=ctx.Issue.HTMLURL()
321+
headers["X-GitHub-Recipient-Address"]=recipient.Email
322+
headers["X-GitLab-Issue-IID"]=issueID
323+
324+
returnheaders
336325
}

‎services/mailer/mail_test.go‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,13 +297,13 @@ func testComposeIssueCommentMessage(t *testing.T, ctx *mailComment, recipients [
297297
returnmsgs[0]
298298
}
299299

300-
funcTestGenerateAdditionalHeaders(t*testing.T) {
300+
funcTestGenerateAdditionalHeadersForIssue(t*testing.T) {
301301
doer,_,issue,_:=prepareMailerTest(t)
302302

303303
comment:=&mailComment{Issue:issue,Doer:doer}
304304
recipient:=&user_model.User{Name:"test",Email:"test@gitea.com"}
305305

306-
headers:=generateAdditionalHeaders(comment,"dummy-reason",recipient)
306+
headers:=generateAdditionalHeadersForIssue(comment,"dummy-reason",recipient)
307307

308308
expected:=map[string]string{
309309
"List-ID":"user2/repo1 <repo1.user2.localhost>",

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp