grim/wasdead
Clone
Summary
Browse
Changes
Graph
remove the database move hack, it was a hack and a dumb one
draft
2020-09-26, Gary Kramlich
81d77ff37d53
remove the database move hack, it was a hack and a dumb one
package
database
import
(
"encoding/json"
log
"github.com/sirupsen/logrus"
)
type
Guild
struct
{
ID
string
`json:"guild_id"`
Channel
string
`json:"announce_channel"`
History
map
[
string
]
string
`json:"history"`
Ignore
[]
string
`json:"ignore"`
}
func
LoadGuild
(
id
string
)
(
*
Guild
,
error
)
{
created
:=
false
data
,
err
:=
db
.
Get
([]
byte
(
"guild-"
+
id
))
if
err
!=
nil
{
log
.
Infof
(
"guild %s not found, creating new"
,
id
)
created
=
true
}
guild
:=
&
Guild
{}
json
.
Unmarshal
(
data
,
guild
)
// if the load failed for any reason we create a new one
if
guild
.
ID
==
""
{
guild
.
ID
=
id
guild
.
History
=
map
[
string
]
string
{}
guild
.
Ignore
=
[]
string
{}
}
if
created
{
guild
.
Save
()
}
return
guild
,
nil
}
func
(
g
*
Guild
)
CanAnnounce
()
bool
{
return
g
.
Channel
!=
""
}
func
(
g
*
Guild
)
Save
()
error
{
data
,
err
:=
json
.
Marshal
(
g
)
if
err
!=
nil
{
return
err
}
return
db
.
Put
([]
byte
(
"guild-"
+
g
.
ID
),
data
)
}