aboutsummaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
Diffstat (limited to 'pkg')
-rw-r--r--pkg/config/body.go35
-rw-r--r--pkg/config/config.go2
2 files changed, 37 insertions, 0 deletions
diff --git a/pkg/config/body.go b/pkg/config/body.go
new file mode 100644
index 0000000..d9957d5
--- /dev/null
+++ b/pkg/config/body.go
@@ -0,0 +1,35 @@
+package config
+
+import (
+ "fmt"
+
+ "gopkg.in/yaml.v3"
+
+ "github.com/Necoro/feed2imap-go/pkg/util"
+)
+
+type Body string
+
+var validBody = []string{"default", "both", "content", "description"}
+
+func (b *Body) UnmarshalYAML(node *yaml.Node) error {
+ var val string
+ if err := node.Decode(&val); err != nil {
+ return err
+ }
+
+ if val == "" {
+ val = "default"
+ }
+
+ if !util.StrContains(validBody, val) {
+ return TypeError("line %d: Invalid value for 'body': %q", node.Line, val)
+ }
+
+ *b = Body(val)
+ return nil
+}
+
+func TypeError(format string, v ...interface{}) *yaml.TypeError {
+ return &yaml.TypeError{Errors: []string{fmt.Sprintf(format, v...)}}
+}
diff --git a/pkg/config/config.go b/pkg/config/config.go
index d1cd4c9..dfd3d0e 100644
--- a/pkg/config/config.go
+++ b/pkg/config/config.go
@@ -44,10 +44,12 @@ type Options struct {
IgnHash bool `yaml:"ignore-hash"`
AlwaysNew bool `yaml:"always-new"`
NoTLS bool `yaml:"tls-no-verify"`
+ Body Body `yaml:"body"`
}
// Default feed options
var DefaultFeedOptions = Options{
+ Body: "default",
MinFreq: 1,
InclImages: true,
EmbedImages: false,
>1-57/+57 2021-02-16Increment go-version to 1.16René 'Necoro' Neumann3-5/+5 2021-02-16Use go-embed for templates instead of inline strings.René 'Necoro' Neumann6-74/+79 2021-02-16Issue #46: Fix semantics of `n` resultRené 'Necoro' Neumann2-9/+15 2021-02-16Issue #46: Move and rename writer; add commentsRené 'Necoro' Neumann3-12/+21 2021-02-15Issue #46: Improvements; add testsRené 'Necoro' Neumann2-1/+48 2021-02-15Bump github.com/google/uuid from 1.1.4 to 1.2.0dependabot[bot]2-3/+3 2021-02-15Issue #46: Make the resulting email body not to include single \r or \n. This...René 'Necoro' Neumann2-2/+66 2021-01-20Bump github.com/PuerkitoBio/goquery from 1.6.0 to 1.6.1dependabot[bot]2-3/+3 2021-01-09Bump github.com/google/uuid from 1.1.2 to 1.1.4dependabot[bot]2-3/+3 2021-01-09Bump github.com/emersion/go-message from 0.14.0 to 0.14.1 (#42)dependabot[bot]2-3/+3 2020-11-28Bump github.com/emersion/go-message from 0.13.0 to 0.14.0 (#38)dependabot[bot]2-3/+9 2020-11-28Bump github.com/google/go-cmp from 0.5.2 to 0.5.4 (#37)dependabot[bot]2-3/+3 2020-11-23Fix release.ymlv0.5.2René 'Necoro' Neumann1-3/+10 2020-11-23Prepare v0.5.2René 'Necoro' Neumann3-3/+8 2020-11-20Bump github.com/gabriel-vasile/mimetype from 1.1.1 to 1.1.2dependabot[bot]2-3/+3 2020-11-04Clean dependabot.ymlRené 'Necoro' Neumann1-4/+0