11package radarr
22
33import (
4- "github.com/spf13/cobra"
54 cmd2 "jrs/cmd"
65 "jrs/config"
6+ "jrs/pkg/jackett"
77 "jrs/pkg/radarr"
8+
9+ "github.com/spf13/cobra"
810)
911
1012var (
1113 url string
1214 api string
13- app * radarr.Radarr
15+ app * radarr.Client
16+ j * jackett.Jackett
1417)
1518
1619var Cmd = & cobra.Command {
@@ -20,23 +23,56 @@ var Cmd = &cobra.Command{
2023 cmd2 .CheckConfig ("radarr" , url , api )
2124 },
2225 PersistentPreRun : func (cmd * cobra.Command , args []string ) {
26+ if url != "" {
27+ config .Params .ChangeParams ("radarr" , "path" , url )
28+ }
29+ if api != "" {
30+ config .Params .ChangeParams ("radarr" , "api" , api )
31+ }
32+
2333 createApp ()
2434 },
2535}
2636
37+ var testIndexers = & cobra.Command {
38+ Use : "test" ,
39+ Short : "Test all indexers added to Radarr" ,
40+ Run : func (cmd * cobra.Command , args []string ) {
41+ app .TestAllIndexers ()
42+ },
43+ }
44+
45+ var addAllIndexers = & cobra.Command {
46+ Use : "add" ,
47+ Short : "Add all available indexers to Radarr" ,
48+ Run : func (cmd * cobra.Command , args []string ) {
49+ app .AddAllIndexers (j )
50+ },
51+ PreRun : func (cmd * cobra.Command , args []string ) {
52+ if j == nil {
53+ j = jackett .New (config .Params )
54+ }
55+ },
56+ }
57+
58+ var deleteAllIndexers = & cobra.Command {
59+ Use : "delete" ,
60+ Short : "Delete all indexers in Radarr" ,
61+ Run : func (cmd * cobra.Command , args []string ) {
62+ app .DeleteAllIndexers ()
63+ },
64+ }
65+
2766func createApp () {
2867 if app == nil {
29- app = radarr .New ( config . Params )
68+ app = radarr .NewClient ( )
3069 }
3170}
3271
3372func init () {
34- url := Cmd .PersistentFlags ().StringP ("url" , "u" , "http://localhost:7878" , "Radarr URL" )
35- api := Cmd .PersistentFlags ().StringP ("api" , "a" , "" , "API Key" )
36-
37- //
38- // if *url != "" {
39- // matched := utils.SplitUrl(*url)
40- //
41- // }
73+ Cmd .PersistentFlags ().StringVarP (& url , "url" , "u" , "" , "Radarr URL" )
74+ Cmd .PersistentFlags ().StringVarP (& api , "api" , "a" , "" , "API Key" )
75+
76+ Cmd .AddCommand (testIndexers , addAllIndexers , deleteAllIndexers )
77+
4278}
0 commit comments