feat: filter resources that is qiangban

This commit is contained in:
Simon Ding
2024-08-11 19:18:27 +08:00
parent 0057a75a95
commit 6c26812b92
8 changed files with 93 additions and 21 deletions

View File

@@ -3,6 +3,7 @@ package core
import (
"fmt"
"path/filepath"
"polaris/db"
"polaris/ent"
"polaris/ent/episode"
"polaris/ent/history"
@@ -276,11 +277,17 @@ func (c *Client) downloadMovieSingleEpisode(ep *ent.Episode) error {
if err != nil {
return errors.Wrap(err, "connect transmission")
}
qiangban := c.db.GetSetting(db.SettingAllowQiangban)
allowQiangban := false
if qiangban == "true" {
allowQiangban = false
}
res, err := SearchMovie(c.db, &SearchParam{
MediaId: ep.MediaID,
CheckFileSize: true,
CheckResolution: true,
FilterQiangban: !allowQiangban,
})
if err != nil {

View File

@@ -23,6 +23,7 @@ type SearchParam struct {
Episodes []int //for tv
CheckResolution bool
CheckFileSize bool
FilterQiangban bool //for movie, 是否过滤枪版电影
}
func SearchTvSeries(db1 *db.Client, param *SearchParam) ([]torznab.Result, error) {
@@ -150,6 +151,9 @@ func SearchMovie(db1 *db.Client, param *SearchParam) ([]torznab.Result, error) {
if !torrentSizeOk(movieDetail, r.Size, param) {
continue
}
if param.FilterQiangban && meta.IsQingban { //过滤枪版电影
continue
}
ss := strings.Split(movieDetail.AirDate, "-")[0]
year, _ := strconv.Atoi(ss)