| 123456789101112131415161718192021222324252627282930313233343536373839 |
- // Copyright 2024 The Gitea Authors. All rights reserved.
- // SPDX-License-Identifier: MIT
-
- package sender
-
- import (
- "io"
-
- "code.gitea.io/gitea/modules/log"
- "code.gitea.io/gitea/modules/setting"
- )
-
- type Sender interface {
- Send(from string, to []string, msg io.WriterTo) error
- }
-
- var Send = send
-
- func send(sender Sender, msgs ...*Message) error {
- if setting.MailService == nil {
- log.Error("Mailer: Send is being invoked but mail service hasn't been initialized")
- return nil
- }
- for _, msg := range msgs {
- m := msg.ToMessage()
- froms := m.GetFrom()
- to, err := m.GetRecipients()
- if err != nil {
- return err
- }
-
- // TODO: implement sending from multiple addresses
- if err := sender.Send(froms[0].Address, to, m); err != nil {
- return err
- }
- }
- return nil
- }
|