diff options
author | Vidhu Kant Sharma <vidhukant@vidhukant.com> | 2023-08-15 13:46:15 +0530 |
---|---|---|
committer | Vidhu Kant Sharma <vidhukant@vidhukant.com> | 2023-08-15 13:46:15 +0530 |
commit | 9b3d6d0ec5ecb9d73b518d786a22cb3ff7f3768f (patch) | |
tree | 68c970ee46f6c572f4389573921c5e20a2992a4e /validators.go | |
parent | d0d0d0cdc4218f1f944481a5116c74d81682deff (diff) |
added validators for getting users' lists
Diffstat (limited to 'validators.go')
-rw-r--r-- | validators.go | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/validators.go b/validators.go index 2dafaad..7386c23 100644 --- a/validators.go +++ b/validators.go @@ -263,6 +263,31 @@ func validateSuggestedParams(params *SuggestedParams) error { return validateAnimeFields(¶ms.Fields) } +func validateAnimeListParams(params *ListParams) error { + // if username is empty, set it to @me + if strings.TrimSpace(params.Username) == "" { + params.Username = "@me" + } + + if params.Status != "" { + err := validateAnimeListStatus(params.Status) + if err != nil { + return err + } + } + + err := validateAnimeListSort(params.Sort) + if err != nil { + return err + } + + if params.Limit > 1000 || params.Limit < 1 { + return ErrLimitOutOfRange + } + + return validateAnimeFields(¶ms.Fields) +} + func validateMangaSearchParams(params *SearchParams) error { if strings.TrimSpace(params.SearchString) == "" { return ErrEmptySearchString @@ -292,3 +317,29 @@ func validateMangaRankingParams(params *RankingParams) error { return err } + + +func validateMangaListParams(params *ListParams) error { + // if username is empty, set it to @me + if strings.TrimSpace(params.Username) == "" { + params.Username = "@me" + } + + if params.Status != "" { + err := validateMangaListStatus(params.Status) + if err != nil { + return err + } + } + + err := validateMangaListSort(params.Sort) + if err != nil { + return err + } + + if params.Limit > 1000 || params.Limit < 1 { + return ErrLimitOutOfRange + } + + return validateMangaFields(¶ms.Fields) +} |