mirror of
https://github.com/celogeek/piwigo-cli.git
synced 2025-05-25 10:12:37 +02:00
fix load config
This commit is contained in:
parent
b902080534
commit
f38ffe5ac8
14
helper.go
Normal file
14
helper.go
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"encoding/json"
|
||||||
|
"fmt"
|
||||||
|
)
|
||||||
|
|
||||||
|
func dumpResponse(v interface{}) (err error) {
|
||||||
|
b, err := json.MarshalIndent(v, "", " ")
|
||||||
|
if err == nil {
|
||||||
|
fmt.Println(string(b))
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
@ -2,14 +2,15 @@ package piwigo
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"errors"
|
||||||
"os"
|
"os"
|
||||||
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (p *Piwigo) ConfigPath() (configPath string, err error) {
|
func (p *Piwigo) ConfigPath() (configPath string, err error) {
|
||||||
configDir, err := os.UserConfigDir()
|
configDir, err := os.UserConfigDir()
|
||||||
if err == nil {
|
if err == nil {
|
||||||
configPath = fmt.Sprintf("%s/piwigo-cli", configDir)
|
configPath = strings.Join([]string{configDir, "piwigo-cli"}, "/")
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -30,7 +31,7 @@ func (p *Piwigo) SaveConfig() (err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
configFile := fmt.Sprintf("%s/config.json", configPath)
|
configFile := strings.Join([]string{configPath, "config.json"}, "/")
|
||||||
|
|
||||||
b, err := json.MarshalIndent(p, "", " ")
|
b, err := json.MarshalIndent(p, "", " ")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -47,14 +48,19 @@ func (p *Piwigo) LoadConfig() (err error) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
configFile := fmt.Sprintf("%s/config.json", configPath)
|
configFile := strings.Join([]string{configPath, "config.json"}, "/")
|
||||||
b, err := os.ReadFile(configFile)
|
b, err := os.ReadFile(configFile)
|
||||||
if os.IsNotExist(err) {
|
if err != nil {
|
||||||
err = nil
|
if os.IsNotExist(err) {
|
||||||
|
err = errors.New("missing configuration file")
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if err != nil {
|
|
||||||
err = json.Unmarshal(b, p)
|
err = json.Unmarshal(b, &p)
|
||||||
|
if p.Url == "" || p.Token == "" {
|
||||||
|
err = errors.New("missing configuration url or token")
|
||||||
}
|
}
|
||||||
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
15
session.go
15
session.go
@ -50,6 +50,21 @@ func (c *LoginCommand) Execute(args []string) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *StatusCommand) Execute(args []string) error {
|
||||||
|
fmt.Println("Status:")
|
||||||
|
|
||||||
|
Piwigo := piwigo.Piwigo{}
|
||||||
|
if err := Piwigo.LoadConfig(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
var resp map[string]interface{}
|
||||||
|
Piwigo.Post("pwg.session.getStatus", &url.Values{}, &resp)
|
||||||
|
dumpResponse(resp)
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
parser.AddCommand("session", "Session management", "", &sessionGroup)
|
parser.AddCommand("session", "Session management", "", &sessionGroup)
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user