👽 Support new count usage API
This commit is contained in:
@ -1,12 +1,16 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
|
||||
"git.solsynth.dev/hypernet/paperclip/pkg/filekit"
|
||||
"git.solsynth.dev/hypernet/paperclip/pkg/proto"
|
||||
"git.solsynth.dev/hypernet/passport/pkg/authkit/models"
|
||||
"git.solsynth.dev/hypernet/passport/pkg/internal/database"
|
||||
"git.solsynth.dev/hypernet/passport/pkg/internal/gap"
|
||||
"git.solsynth.dev/hypernet/passport/pkg/internal/services"
|
||||
"git.solsynth.dev/hypernet/passport/pkg/internal/web/exts"
|
||||
"github.com/gofiber/fiber/v2"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
func setAvatar(c *fiber.Ctx) error {
|
||||
@ -23,6 +27,7 @@ func setAvatar(c *fiber.Ctx) error {
|
||||
return err
|
||||
}
|
||||
|
||||
og := user.Avatar
|
||||
user.Avatar = &data.AttachmentID
|
||||
|
||||
if err := database.C.Save(&user).Error; err != nil {
|
||||
@ -32,6 +37,17 @@ func setAvatar(c *fiber.Ctx) error {
|
||||
services.InvalidAuthCacheWithUser(user.ID)
|
||||
}
|
||||
|
||||
if og != nil && len(*og) > 0 {
|
||||
filekit.CountAttachmentUsage(gap.Nx, &proto.UpdateUsageRequest{
|
||||
Rid: []string{*og},
|
||||
Delta: -1,
|
||||
})
|
||||
}
|
||||
filekit.CountAttachmentUsage(gap.Nx, &proto.UpdateUsageRequest{
|
||||
Rid: []string{*user.Avatar},
|
||||
Delta: 1,
|
||||
})
|
||||
|
||||
return c.SendStatus(fiber.StatusOK)
|
||||
}
|
||||
|
||||
@ -49,6 +65,7 @@ func setBanner(c *fiber.Ctx) error {
|
||||
return err
|
||||
}
|
||||
|
||||
og := user.Banner
|
||||
user.Banner = &data.AttachmentID
|
||||
|
||||
if err := database.C.Save(&user).Error; err != nil {
|
||||
@ -58,6 +75,17 @@ func setBanner(c *fiber.Ctx) error {
|
||||
services.InvalidAuthCacheWithUser(user.ID)
|
||||
}
|
||||
|
||||
if og != nil && len(*og) > 0 {
|
||||
filekit.CountAttachmentUsage(gap.Nx, &proto.UpdateUsageRequest{
|
||||
Rid: []string{*og},
|
||||
Delta: -1,
|
||||
})
|
||||
}
|
||||
filekit.CountAttachmentUsage(gap.Nx, &proto.UpdateUsageRequest{
|
||||
Rid: []string{*user.Banner},
|
||||
Delta: 1,
|
||||
})
|
||||
|
||||
return c.SendStatus(fiber.StatusOK)
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user