pull/893/merge
Nicolas Newman 2025-12-03 10:39:01 +07:00 committed by GitHub
commit 895ba96c65
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 22 additions and 4 deletions

@ -388,15 +388,33 @@ func (widget *rssWidget) fetchItemsFromFeedTask(request rssFeedRequest) ([]rssFe
}
func findThumbnailInItemExtensions(item *gofeed.Item) string {
media, ok := item.Extensions["media"]
media, ok := item.Extensions["media"]
if !ok {
return ""
}
if !ok {
enclosures := item.Enclosures
if len(enclosures) == 0 {
return ""
}
return recursiveFindThumbnailInEnclosures(enclosures)
}
return recursiveFindThumbnailInExtensions(media)
}
func recursiveFindThumbnailInEnclosures(enclosures []*gofeed.Enclosure) string {
url := ""
for _, enclosure := range enclosures {
if url == "" && enclosure.Type == "image/generic" {
url = enclosure.URL
} else if enclosure.Type == "image/jpeg" || enclosure.Type == "image/png" || enclosure.Type == "image/gif" {
return enclosure.URL
}
}
return url
}
func recursiveFindThumbnailInExtensions(extensions map[string][]gofeedext.Extension) string {
for _, exts := range extensions {
for _, ext := range exts {