feat: check movie folder upon added

This commit is contained in:
Simon Ding
2024-09-29 18:35:20 +08:00
parent 98d14befa9
commit f9556ec2d2
3 changed files with 54 additions and 0 deletions

View File

@@ -14,6 +14,16 @@ type MovieMetadata struct {
IsQingban bool
}
func (m *MovieMetadata) IsAcceptable(name string) bool {
re := regexp.MustCompile(`[^\p{L}\w\s]`)
name = re.ReplaceAllString(strings.ToLower(name), " ")
name2 := re.ReplaceAllString(strings.ToLower(m.Name), " ")
name = strings.Join(strings.Fields(name), " ")
name2 = strings.Join(strings.Fields(name2), " ")
return strings.Contains(name2, name)
}
func ParseMovie(name string) *MovieMetadata {
name = strings.Join(strings.Fields(name), " ") //remove unnessary spaces
name = strings.ToLower(strings.TrimSpace(name))

View File

@@ -18,6 +18,18 @@ type Metadata struct {
IsSeasonPack bool
}
func (m *Metadata) IsAcceptable(name string) bool {
re := regexp.MustCompile(`[^\p{L}\w\s]`)
name = re.ReplaceAllString(strings.ToLower(name), " ")
nameCN := re.ReplaceAllString(strings.ToLower(m.NameCn), " ")
nameEN := re.ReplaceAllString(strings.ToLower(m.NameEn), " ")
name = strings.Join(strings.Fields(name), " ")
nameCN = strings.Join(strings.Fields(nameCN), " ")
nameEN = strings.Join(strings.Fields(nameEN), " ")
return strings.Contains(nameCN, name) || strings.Contains(nameEN, name)
}
func ParseTv(name string) *Metadata {
name = strings.ToLower(name)
name = strings.ReplaceAll(name, "\u200b", "") //remove unicode hidden character