node build fixed
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
package qbittorrent_rss
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"github.com/rs/zerolog"
|
||||
"net/http"
|
||||
"net/url"
|
||||
qbittorrent_model "seanime/internal/torrent_clients/qbittorrent/model"
|
||||
qbittorrent_util "seanime/internal/torrent_clients/qbittorrent/util"
|
||||
)
|
||||
|
||||
type Client struct {
|
||||
BaseUrl string
|
||||
Client *http.Client
|
||||
Logger *zerolog.Logger
|
||||
}
|
||||
|
||||
func (c Client) AddFolder(folder string) error {
|
||||
params := url.Values{}
|
||||
params.Add("path", folder)
|
||||
if err := qbittorrent_util.Post(c.Client, c.BaseUrl+"/addFolder?"+params.Encode(), nil); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c Client) AddFeed(link string, folder string) error {
|
||||
params := url.Values{}
|
||||
params.Add("path", folder)
|
||||
if folder != "" {
|
||||
params.Add("path", folder)
|
||||
}
|
||||
if err := qbittorrent_util.Post(c.Client, c.BaseUrl+"/addFeed?"+params.Encode(), nil); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c Client) RemoveItem(folder string) error {
|
||||
params := url.Values{}
|
||||
params.Add("path", folder)
|
||||
if err := qbittorrent_util.Post(c.Client, c.BaseUrl+"/removeItem?"+params.Encode(), nil); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c Client) MoveItem(currentFolder, destinationFolder string) error {
|
||||
params := url.Values{}
|
||||
params.Add("itemPath", currentFolder)
|
||||
params.Add("destPath", destinationFolder)
|
||||
if err := qbittorrent_util.Post(c.Client, c.BaseUrl+"/moveItem?"+params.Encode(), nil); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c Client) AddRule(name string, def qbittorrent_model.RuleDefinition) error {
|
||||
params := url.Values{}
|
||||
b, err := json.Marshal(def)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
params.Add("ruleName", name)
|
||||
params.Add("ruleDef", string(b))
|
||||
if err := qbittorrent_util.Post(c.Client, c.BaseUrl+"/setRule?"+params.Encode(), nil); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c Client) RenameRule(old, new string) error {
|
||||
params := url.Values{}
|
||||
params.Add("ruleName", old)
|
||||
params.Add("newRuleName", new)
|
||||
if err := qbittorrent_util.Post(c.Client, c.BaseUrl+"/renameRule?"+params.Encode(), nil); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c Client) RemoveRule(name string) error {
|
||||
params := url.Values{}
|
||||
params.Add("ruleName", name)
|
||||
if err := qbittorrent_util.Post(c.Client, c.BaseUrl+"/removeRule?"+params.Encode(), nil); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c Client) GetRules() (map[string]qbittorrent_model.RuleDefinition, error) {
|
||||
var res map[string]qbittorrent_model.RuleDefinition
|
||||
if err := qbittorrent_util.GetInto(c.Client, &res, c.BaseUrl+"/rules", nil); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return res, nil
|
||||
}
|
||||
Reference in New Issue
Block a user