SocialDragon/config/config.go

70 lines
1.2 KiB
Go
Raw Normal View History

package config
import (
"bytes"
"io/ioutil"
"github.com/BurntSushi/toml"
)
type Config struct {
DatabaseConnection string
BindAddress string
AssetsDirectory string
TemplatesDirectory string
ContentDirectory string
ContentWebDirectory string
Snapchat Snapchat
Twitter Twitter
Instagram Instagram
Folder Folder
}
type Folder struct {
Folder string
}
type Instagram struct {
Tag string
}
type Twitter struct {
ConsumerKey string
ConsumerSecret string
OAuthToken string
OAuthTokenSecret string
Filter []string
}
type Snapchat struct {
ApiBase string
UserAgent string
UserName string
GetConversations SnapchatEndpoint
GetBlob SnapchatEndpoint
MarkAsSeen SnapchatEndpoint
}
type SnapchatEndpoint struct {
Uuid string
ClientAuthToken string
RequestToken string
Timestamp string
}
var C Config
func LoadConfig(path string) error {
_, e := toml.DecodeFile(path, &C)
return e
}
func WriteConfig(path string) error {
buf := new(bytes.Buffer)
err := toml.NewEncoder(buf).Encode(C)
if err != nil {
return err
}
err = ioutil.WriteFile(path, buf.Bytes(), 0644)
return err
}