chore: formatting
This commit is contained in:
@@ -80,7 +80,7 @@ func (h *Handler) HandleWatchPage(w http.ResponseWriter, r *http.Request) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// resolve current episode: query param > saved progress > first episode
|
// resolve current episode: query param > saved progress > first episode
|
||||||
currentEpID := r.URL.Query().Get("ep")
|
currentEpID := r.URL.Query().Get("ep")
|
||||||
if currentEpID == "" {
|
if currentEpID == "" {
|
||||||
if user != nil {
|
if user != nil {
|
||||||
entry, err := h.svc.db.GetWatchListEntry(r.Context(), db.GetWatchListEntryParams{
|
entry, err := h.svc.db.GetWatchListEntry(r.Context(), db.GetWatchListEntryParams{
|
||||||
|
|||||||
@@ -325,9 +325,9 @@ func (s *Service) fetchPlaybackSourcesAndSegments(ctx context.Context, showID st
|
|||||||
segmentsCh <- s.fetchSkipSegments(ctx, malID, episode)
|
segmentsCh <- s.fetchSkipSegments(ctx, malID, episode)
|
||||||
}()
|
}()
|
||||||
|
|
||||||
modeSources := make(map[string]ModeSource)
|
modeSources := make(map[string]ModeSource)
|
||||||
// collect results from both mode goroutines
|
// collect results from both mode goroutines
|
||||||
for range 2 {
|
for range 2 {
|
||||||
result := <-modeCh
|
result := <-modeCh
|
||||||
if !result.OK {
|
if !result.OK {
|
||||||
continue
|
continue
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ type Client struct {
|
|||||||
db db.Querier
|
db db.Querier
|
||||||
retrySignal chan struct{} // signals retry worker to process queued retries
|
retrySignal chan struct{} // signals retry worker to process queued retries
|
||||||
mu sync.Mutex
|
mu sync.Mutex
|
||||||
lastReqTime time.Time // rate limiting: last request timestamp
|
lastReqTime time.Time // rate limiting: last request timestamp
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewClient(db db.Querier) *Client {
|
func NewClient(db db.Querier) *Client {
|
||||||
|
|||||||
@@ -2,5 +2,5 @@ package jikan
|
|||||||
|
|
||||||
import "time"
|
import "time"
|
||||||
|
|
||||||
const shortCacheTTL = time.Hour // 1 hour - for frequently changing data
|
const shortCacheTTL = time.Hour // 1 hour - for frequently changing data
|
||||||
const longCacheTTL = time.Hour * 24 // 24 hours - for stable data like genres
|
const longCacheTTL = time.Hour * 24 // 24 hours - for stable data like genres
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ const defaultUserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/
|
|||||||
|
|
||||||
// idPattern extracts the watch order ID from chiaki.site URLs
|
// idPattern extracts the watch order ID from chiaki.site URLs
|
||||||
var idPattern = regexp.MustCompile(`/id/(\d+)`)
|
var idPattern = regexp.MustCompile(`/id/(\d+)`)
|
||||||
|
|
||||||
// malLinkPattern extracts MAL IDs from watch order entries
|
// malLinkPattern extracts MAL IDs from watch order entries
|
||||||
var malLinkPattern = regexp.MustCompile(`myanimelist\.net/anime/(\d+)`)
|
var malLinkPattern = regexp.MustCompile(`myanimelist\.net/anime/(\d+)`)
|
||||||
|
|
||||||
@@ -48,9 +49,9 @@ func (e *HTTPStatusError) Error() string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type WatchOrderEntry struct {
|
type WatchOrderEntry struct {
|
||||||
ID int `json:"id"` // MAL anime ID
|
ID int `json:"id"` // MAL anime ID
|
||||||
Type string `json:"type"` // anime type label (e.g. "TV", "Movie")
|
Type string `json:"type"` // anime type label (e.g. "TV", "Movie")
|
||||||
Title string `json:"title"` // primary title
|
Title string `json:"title"` // primary title
|
||||||
TitleAlt string `json:"title_alt,omitempty"` // alternative title
|
TitleAlt string `json:"title_alt,omitempty"` // alternative title
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import (
|
|||||||
|
|
||||||
type AccessPolicy struct {
|
type AccessPolicy struct {
|
||||||
PublicPaths map[string]struct{} // exact match paths (e.g. /login)
|
PublicPaths map[string]struct{} // exact match paths (e.g. /login)
|
||||||
PublicHeads []string // prefix match paths (e.g. /static/)
|
PublicHeads []string // prefix match paths (e.g. /static/)
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewAccessPolicy() AccessPolicy {
|
func NewAccessPolicy() AccessPolicy {
|
||||||
@@ -17,7 +17,7 @@ func NewAccessPolicy() AccessPolicy {
|
|||||||
},
|
},
|
||||||
PublicHeads: []string{
|
PublicHeads: []string{
|
||||||
"/static/", // static assets
|
"/static/", // static assets
|
||||||
"/dist/", // bundled assets
|
"/dist/", // bundled assets
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user