newslettermanager

package
v0.0.0-...-c8bebc6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 19, 2025 License: BSD-4-Clause Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CanSendVerificationEmail

func CanSendVerificationEmail(sentAt *time.Time) error

func IsValidEmail

func IsValidEmail(email string) bool

Types

type NewsletterConfirmReply

type NewsletterConfirmReply struct {
	Confirmed *bool `json:"confirmed" validate:"required"`
}

type NewsletterConfirmRequest

type NewsletterConfirmRequest struct {
	VerificationToken string `json:"verificationToken" validate:"required"`
}

type NewsletterConnection

type NewsletterConnection struct {
	// contains filtered or unexported fields
}

func InitNewsletterConnection

func InitNewsletterConnection(ctx context.Context, log *zap.Logger, mongoHandler *mongomanager.MongoConnection, eMailConnection *emailmanager.EMailConnection) (*NewsletterConnection, error)

func (NewsletterConnection) NewsletterConfirm

func (newsletterHandler NewsletterConnection) NewsletterConfirm(c context.Context, request NewsletterConfirmRequest) (NewsletterConfirmReply, error)

func (NewsletterConnection) NewsletterSubscribe

func (newsletterHandler NewsletterConnection) NewsletterSubscribe(c context.Context, request NewsletterSubscribeRequest) (NewsletterSubscribeReply, error)

func (NewsletterConnection) NewsletterUnsubscribe

func (newsletterHandler NewsletterConnection) NewsletterUnsubscribe(c context.Context, request NewsletterUnsubscribeRequest) (NewsletterUnsubscribeReply, error)

type NewsletterSubscribeReply

type NewsletterSubscribeReply struct {
	NewsletterSubscribeReplyStatus NewsletterSubscribeReplyStatus `json:"newsletterSubscribeReplyStatus" validate:"required"`
	EMail                          string                         `json:"email" validate:"required,email"`
}

type NewsletterSubscribeReplyStatus

type NewsletterSubscribeReplyStatus string
const (
	NewsletterSubscribeReplyStatusSuccess      NewsletterSubscribeReplyStatus = "success"
	NewsletterSubscribeReplyStatusInvalidEmail NewsletterSubscribeReplyStatus = "invalid_email"
	NewsletterSubscribeReplyStatusRateLimited  NewsletterSubscribeReplyStatus = "rate_limited"
)

type NewsletterSubscribeRequest

type NewsletterSubscribeRequest struct {
	EMail string `json:"email" validate:"required,email"`
}

type NewsletterUnsubscribeReply

type NewsletterUnsubscribeReply struct {
	NewsletterUnsubscribeReplyStatus NewsletterUnsubscribeReplyStatus `json:"newsletterUnsubscribeReplyStatus" validate:"required"`
}

type NewsletterUnsubscribeReplyStatus

type NewsletterUnsubscribeReplyStatus string
const (
	NewsletterUnsubscribeReplyStatusUnsubscribed NewsletterUnsubscribeReplyStatus = "unsubscribed"
	NewsletterUnsubscribeReplyStatusNotFound     NewsletterUnsubscribeReplyStatus = "not_found"
)

type NewsletterUnsubscribeRequest

type NewsletterUnsubscribeRequest struct {
	UnsubscribeToken string `json:"unsubscribeToken" validate:"required"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL