mirror of
https://github.com/Prowlarr/Prowlarr
synced 2026-02-04 14:01:47 +01:00
Fixed: (Cardigann) Genre Parsing
New: (Cardigann) Add Validate Field Filter v7
This commit is contained in:
parent
2db24d454e
commit
5c5dfbb66b
1 changed files with 11 additions and 2 deletions
|
|
@ -594,8 +594,9 @@ private string ParseFields(string value, string fieldName, TorrentInfo release,
|
|||
value = release.PosterUrl;
|
||||
break;
|
||||
case "genre":
|
||||
release.Genres = release.Genres.Union(value.Split(',')).ToList();
|
||||
value = string.Join(",", release.Genres);
|
||||
char[] delimiters = { ',', ' ', '/', ')', '(', '.', ';', '[', ']' };
|
||||
release.Genres = release.Genres.Union(value.Split(delimiters, System.StringSplitOptions.RemoveEmptyEntries)).ToList();
|
||||
value = string.Join(", ", release.Genres);
|
||||
break;
|
||||
case "year":
|
||||
release.Year = ParseUtil.CoerceInt(value);
|
||||
|
|
@ -653,6 +654,14 @@ private bool ParseRowFilters(List<FilterBlock> filters, ReleaseInfo release, Dic
|
|||
// for debugging
|
||||
_logger.Debug(string.Format("CardigannIndexer ({0}): row strdump: {1}", _definition.Id, row.ToString()));
|
||||
break;
|
||||
case "validate":
|
||||
char[] delimiters = { ',', ' ', '/', ')', '(', '.', ';', '[', ']' };
|
||||
var args = (string)filter.Args;
|
||||
var argsList = args.ToLower().Split(delimiters, StringSplitOptions.RemoveEmptyEntries);
|
||||
var validList = argsList.ToList();
|
||||
var validIntersect = validList.Intersect(row.ToString().ToLower().Split(delimiters, StringSplitOptions.RemoveEmptyEntries)).ToList();
|
||||
row = string.Join(", ", validIntersect);
|
||||
break;
|
||||
default:
|
||||
_logger.Error(string.Format("CardigannIndexer ({0}): Unsupported rows filter: {1}", _definition.Id, filter.Name));
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in a new issue