58 lines
911 B
Go
58 lines
911 B
Go
package system
|
|
|
|
import (
|
|
"bdgrp_go/pbutil"
|
|
"bdgrp_go/routes"
|
|
"bdgrp_go/utils"
|
|
"fmt"
|
|
"os"
|
|
"strconv"
|
|
"time"
|
|
|
|
"github.com/gofiber/fiber/v2"
|
|
)
|
|
|
|
func init() {
|
|
path := routes.PathOf()
|
|
routes.Register(func(app *fiber.App) {
|
|
app.Get(path, application)
|
|
fmt.Println("Loaded:", path)
|
|
})
|
|
}
|
|
|
|
func application(c *fiber.Ctx) error {
|
|
var offset int
|
|
server := os.Getenv("SERVER")
|
|
|
|
switch server {
|
|
case "TW", "CN":
|
|
offset = 28800000
|
|
break
|
|
case "JP":
|
|
offset = 32400000
|
|
break
|
|
case "GL":
|
|
offset = 0
|
|
break
|
|
}
|
|
|
|
data := map[string]any{
|
|
"serverDate": strconv.FormatInt(time.Now().Add(27*time.Hour).UnixMilli(), 10),
|
|
"timeZoneRawOffset": offset,
|
|
}
|
|
|
|
encoded, err := pbutil.Encode("ServerSystem", data)
|
|
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
return c.Status(500).SendString("")
|
|
}
|
|
|
|
encrypted, err := utils.Encrypt(encoded)
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
|
|
return c.Send(encrypted)
|
|
}
|