Update rutracker categories
This commit is contained in:
@@ -7,8 +7,6 @@ import (
|
||||
"homelab.lan/music-agregator/internal/tracker/rutracker"
|
||||
)
|
||||
|
||||
var parserFactory = rutracker.NewParserFactory()
|
||||
|
||||
type SearchResult struct {
|
||||
XMLName xml.Name `xml:"rss"`
|
||||
Items []Item `xml:"channel>item"`
|
||||
@@ -37,10 +35,19 @@ type TorznabAttr struct {
|
||||
Value string `xml:"value,attr"`
|
||||
}
|
||||
|
||||
func (sr *SearchResult) ToProto() *pb.SearchResponse {
|
||||
pbItems := make([]*pb.SearchItem, len(sr.Items))
|
||||
var (
|
||||
parserFactory = rutracker.NewParserFactory()
|
||||
filter = rutracker.NewFilter()
|
||||
)
|
||||
|
||||
func (sr *SearchResult) ToProto() *pb.SearchResponse {
|
||||
var pbItems []*pb.SearchItem
|
||||
|
||||
for _, item := range sr.Items {
|
||||
if !filter.IsKnownCategory(item.Categories) {
|
||||
continue
|
||||
}
|
||||
|
||||
for i, item := range sr.Items {
|
||||
pbAttrs := make([]*pb.TorznabAttr, len(item.TorznabAttrs))
|
||||
for j, attr := range item.TorznabAttrs {
|
||||
pbAttrs[j] = &pb.TorznabAttr{
|
||||
@@ -51,7 +58,7 @@ func (sr *SearchResult) ToProto() *pb.SearchResponse {
|
||||
|
||||
release := parserFactory.GetParser(item.Categories).Parse(item.Title)
|
||||
|
||||
pbItems[i] = &pb.SearchItem{
|
||||
pbItems = append(pbItems, &pb.SearchItem{
|
||||
Title: item.Title,
|
||||
DownloadLink: item.Link,
|
||||
TorrentPageUrl: item.Guid,
|
||||
@@ -66,7 +73,7 @@ func (sr *SearchResult) ToProto() *pb.SearchResponse {
|
||||
},
|
||||
TorznabAttrs: pbAttrs,
|
||||
Release: release.ToProto(),
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
return &pb.SearchResponse{
|
||||
|
||||
Reference in New Issue
Block a user