| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- // package config -- конфигурация для клиента
- package config
- import (
- "encoding/json"
- "log"
- "os"
- "wartank/desktop/bot"
- )
- // Config -- конфигурация для клиента
- type Config struct {
- Host_ string `json:"host"` // Хост
- Login_ string `json:"login"` // Логин
- Pass_ string `json:"password"` // Пароль
- DictBot_ map[string]*bot.Bot `json:"list_bots"` // Список ботов
- }
- // NewConfig -- возвращает новый конфиг
- func NewConfig() *Config {
- sf := &Config{
- DictBot_: map[string]*bot.Bot{},
- }
- sf.load()
- return sf
- }
- // Save -- сохраняет конфиг по требованию
- func (sf *Config) Save() {
- binData, _ := json.MarshalIndent(sf, "", "\t")
- err := os.WriteFile("./config.json", binData, 0600)
- if err != nil {
- log.Printf("Config.Save(): err=%v", err)
- }
- }
- // Загружает конфиг при старте
- func (sf *Config) load() {
- binData, err := os.ReadFile("./config.json")
- if err != nil {
- return
- }
- err = json.Unmarshal(binData, sf)
- if err != nil {
- return
- }
- }
|