feat: add characters

This commit is contained in:
2026-07-10 00:56:03 +03:30
parent da6df0328f
commit fe0b63083c
19 changed files with 635 additions and 92 deletions
+9 -1
View File
@@ -90,6 +90,9 @@ func main() {
slog.Info("IAP bazaar (RSA) configured")
}
eco := economy.New(st.DB, economy.DevAdVerifier{}, iap)
eco.SetPublicURL(cfg.PublicURL) // برای ساختِ URL کاملِ تصاویر (آواتار/فرش)
// آواتارهای «svgِ رستری» (PNG داخلِ svg) را به PNG واقعی تبدیل کن (یک‌بار، idempotent).
admin.ConvertRasterAvatars(context.Background(), st.DB, cfg.AvatarsDir)
if err := eco.LoadCatalog(context.Background()); err != nil {
slog.Error("load catalog", "err", err)
os.Exit(1)
@@ -134,9 +137,11 @@ func main() {
r.Handle("/cards/*", static.CardsHandler(cfg.CardsDir))
// تصاویرِ فرش (به‌جای میز) — از پنل ادمین آپلود می‌شوند.
r.Handle("/carpets/*", static.CarpetsHandler(cfg.CarpetsDir))
// تصاویرِ شخصیتِ آواتار — از پنل ادمین آپلود می‌شوند.
r.Handle("/avatars/*", static.AvatarsHandler(cfg.AvatarsDir))
// پنل ادمین (HTML سرور‌ساید، پشت Basic Auth)
r.Mount("/admin", admin.New(st.DB, eco, cfg.CardsDir, cfg.CarpetsDir).Routes(cfg.AdminUser, cfg.AdminPass))
r.Mount("/admin", admin.New(st.DB, eco, cfg.CardsDir, cfg.CarpetsDir, cfg.AvatarsDir).Routes(cfg.AdminUser, cfg.AdminPass))
// بازرسِ درخواست‌ها (Telescope-lite) — پشتِ همان Basic Auth ادمین.
r.Group(func(r chi.Router) {
@@ -172,6 +177,9 @@ func main() {
r.Get("/frames", ecoH.Frames)
r.Post("/shop/buy-frame", ecoH.BuyFrame)
r.Post("/shop/select-frame", ecoH.SelectFrame)
r.Get("/avatars", ecoH.Avatars)
r.Post("/shop/buy-avatar", ecoH.BuyAvatar)
r.Post("/shop/select-avatar", ecoH.SelectAvatar)
r.Post("/shop/purchase", ecoH.Purchase)
r.Post("/rewards/daily", ecoH.Daily)
r.Post("/rewards/ad", ecoH.AdReward)