Help us shape the future of Go! Take the 2026 Go Developer Survey

web

package
v0.40.0 Latest Latest
Warning

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

Go to latest
Published: Aug 12, 2026 License: MIT Imports: 33 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type App

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

func New

func New(cfg config.Config, s *store.Store, mb catalog.CatalogProvider, spotify catalog.SpotifyProvider,
	sender notify.NotificationSender, cipher *security.Cipher, art artwork.Provider,
	runner *jobs.Runner, logger *slog.Logger, itunesProvider catalog.ITunesProvider) (*App, error)

func (*App) Handler

func (a *App) Handler() http.Handler

type CalendarDay added in v0.28.0

type CalendarDay struct {
	Date     string
	Label    string
	Today    bool
	Releases []store.CalendarRelease
}

type PageData

type PageData struct {
	Title                    string
	Version                  string
	User                     *UserView
	CSRF                     string
	Error                    string
	Message                  string
	SetupNeeded              bool
	Artists                  []store.Artist
	Results                  []catalog.ArtistResult
	SpotifyResults           []catalog.SpotifyArtist
	ITunesResults            []catalog.ITunesArtist
	UpcomingReleases         []store.Release
	RecentReleases           []store.Release
	CalendarDays             []CalendarDay
	CalendarMonth            string
	CalendarPrevMonth        string
	CalendarNextMonth        string
	CalendarICSURL           string
	ReleaseCount             int
	Preferences              store.NotificationPreferences
	NotificationHolds        []store.NotificationHold
	ReleaseNotificationHolds []store.NotificationHold
	ReleaseDetail            *store.ReleaseDetail
	ReleaseEvidenceIssues    []store.EvidenceIssue
	ReleaseUnavailable       bool
	Resolutions              []store.ArtistResolution
	Resolution               *store.ArtistResolution
	Destinations             []store.Destination
	DestinationHealth        map[int64]store.DestinationHealth
	History                  []store.DeliveryHistory
	AdminHistory             []store.AdminDeliveryHistory
	AdminDelivery            *store.AdminDeliveryHistory
	AppLogs                  []logging.Entry
	AdminUsers               []store.AdminUser
	AdminArtists             []store.AdminArtist
	ProviderHealth           []store.ProviderHealth
	AdminDestinationHealth   []store.AdminDestinationHealth
	ManualSyncs              []store.ManualSyncRequest
	Import                   *store.ImportJob
	FollowCount              int
	FollowRules              map[int64]store.FollowNotificationRule
	ListenBrainzArtists      []store.Artist
	GenreBreakdown           []store.ArtistBreakdown
	CountryBreakdown         []store.ArtistBreakdown
	TypeBreakdown            []store.ArtistBreakdown
	CoverageSummary          store.CoverageSummary
	CoverageArtists          []store.ArtistCoverage
	CoveragePage             int
	CoveragePages            int
	CoveragePrevPage         int
	CoverageNextPage         int
	CoveragePrevURL          string
	CoverageNextURL          string
	CoveragePageLinks        []PaginationLink
	CoveragePageStart        int
	CoveragePageEnd          int
	AssuranceSummary         store.AssuranceSummary
	Diagnostics              store.DiagnosticsSnapshot
	RunnerStatus             jobs.RunnerStatus
	DiagnosticReport         string
	EvidenceIssues           []store.EvidenceIssue
	EvidenceIssueCount       int
	EvidenceIssueUnreadCount int
	EvidenceIssueStatus      string
	EvidenceIssueState       string
	EvidenceIssueType        string
	EvidenceIssueSeverity    string
	EvidenceIssuePage        int
	EvidenceIssuePages       int
	EvidenceIssuePrevURL     string
	EvidenceIssueNextURL     string
	EvidenceIssuePageLinks   []PaginationLink
	EvidenceIssuePageStart   int
	EvidenceIssuePageEnd     int
	EvidenceIssueURL         string
	GenreFilter              string
	CountryFilter            string
	TypeFilter               string
	InboxItems               []store.ReleaseInboxItem
	InboxUnreadCount         int
	InboxCount               int
	InboxState               string
	InboxSource              string
	InboxType                string
	InboxPage                int
	InboxPages               int
	InboxPrevURL             string
	InboxNextURL             string
	InboxPageLinks           []PaginationLink
	InboxPageStart           int
	InboxPageEnd             int
	InboxURL                 string
	AdminPage                int
	AdminPages               int
	AdminPrevPage            int
	AdminNextPage            int
	ArtistPage               int
	ArtistPages              int
	ArtistPrevPage           int
	ArtistNextPage           int
	ArtistPrevURL            string
	ArtistNextURL            string
	ArtistPageLinks          []PaginationLink
	ArtistPageStart          int
	ArtistPageEnd            int
	FilteredArtistCount      int
	Query                    string
	GeneratedURL             string
	Token                    string
	TokenKind                string
	TokenEmail               string
	SpotifyOn                bool
	ProviderNotice           string
}
type PaginationLink struct {
	Number  int
	URL     string
	Current bool
}

type UserView added in v0.36.0

type UserView struct {
	ID           int64
	Email        string
	Username     string
	Role         string
	Timezone     string
	ReminderTime string
}

UserView is the deliberately narrow projection exposed to templates. The persistence model contains PasswordHash for authentication, but rendering code should never receive credential material by accident.

Jump to

Keyboard shortcuts

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