mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-02-14 16:21:18 -05:00
* adds pkg/jmap/jmap_integration_test.go
* uses ghcr.io/stalwartlabs/stalwart:v0.13.2-alpine
* can be disabled by setting one of the following environment
variables, in the same fashion as ca0493b28
- CI=woodpecker
- CI_SYSTEM_NAME=woodpecker
- USE_TESTCONTAINERS=false
* dependencies:
- bump github.com/go-test/deep from 1.1.0 to 1.1.1
- add github.com/cention-sany/utf7
- add github.com/dustinkirkland/golang-petname
- add github.com/emersion/go-imap/v2
- add github.com/emersion/go-message
- add github.com/emersion/go-sasl
- add github.com/go-crypt/crypt
- add github.com/go-crypt/x
- add github.com/gogs/chardet
- add github.com/inbucket/html2text
- add github.com/jhilleryerd/enmime/v2
- add github.com/ssor/bom
- add gopkg.in/loremipsum.v1
31 lines
716 B
Go
31 lines
716 B
Go
package mail
|
|
|
|
import (
|
|
"github.com/emersion/go-message"
|
|
)
|
|
|
|
// An AttachmentHeader represents an attachment's header.
|
|
type AttachmentHeader struct {
|
|
message.Header
|
|
}
|
|
|
|
// Filename parses the attachment's filename.
|
|
func (h *AttachmentHeader) Filename() (string, error) {
|
|
_, params, err := h.ContentDisposition()
|
|
|
|
filename, ok := params["filename"]
|
|
if !ok {
|
|
// Using "name" in Content-Type is discouraged
|
|
_, params, err = h.ContentType()
|
|
filename = params["name"]
|
|
}
|
|
|
|
return filename, err
|
|
}
|
|
|
|
// SetFilename formats the attachment's filename.
|
|
func (h *AttachmentHeader) SetFilename(filename string) {
|
|
dispParams := map[string]string{"filename": filename}
|
|
h.SetContentDisposition("attachment", dispParams)
|
|
}
|