/
cached.go
42 lines (34 loc) · 1.06 KB
/
cached.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package discord
import (
"fmt"
"github.com/keshon/melodix-player/mods/music/cache"
)
func (d *Discord) handleCacheListCommand(param string) {
guildID := d.GuildID
uploadsFolder := "./upload"
cacheFolder := "./cache"
c := cache.NewCache(uploadsFolder, cacheFolder, guildID)
if param == "" {
list, err := c.ListCachedFiles()
listStr := ""
for _, file := range list {
listStr += fmt.Sprintf("```%s```", file)
}
if err != nil {
d.sendMessageEmbed(err.Error())
return
} else {
d.sendMessageEmbed("🗳 Cached files\n\n" + listStr)
}
}
if param == "sync" {
msg := d.sendMessageEmbed("⏳ Starting to sync cached files with DB...")
added, updated, removed, err := c.SyncCachedDir()
if err != nil {
d.editMessageEmbed(err.Error(), msg.ID)
return
} else {
d.editMessageEmbed("🗃 All cached files are synced successfully\n\nUse `"+d.prefix+"cached` command to see available files\n\n**Added:** "+fmt.Sprintf("%d", added)+"\n**Updated:** "+fmt.Sprintf("%d", updated)+"\n**Removed:** "+fmt.Sprintf("%d", removed), msg.ID)
}
}
}