40 lines
718 B
Go
40 lines
718 B
Go
package utils
|
|
|
|
import (
|
|
"encoding/json"
|
|
"time"
|
|
|
|
"github.com/gofiber/fiber/v2"
|
|
"github.com/rs/zerolog/log"
|
|
)
|
|
|
|
func GetXAuhorizationHeader(c *fiber.Ctx) string {
|
|
return c.GetReqHeaders()[HeaderXAuthorization]
|
|
}
|
|
|
|
func MarshalJson(v any) string {
|
|
json, err := json.Marshal(v)
|
|
|
|
if err != nil {
|
|
log.Error().Msgf("Failed to marshal json %s", err)
|
|
return ""
|
|
}
|
|
|
|
return string(json)
|
|
}
|
|
|
|
func GetSessionExpiresAtTime() time.Time {
|
|
return time.Now().Add(time.Second * SessionExpiresAtTime)
|
|
}
|
|
|
|
func IsPasswordLengthValid(password string) bool {
|
|
lenPassword := len(password)
|
|
|
|
if lenPassword < MinPassword || lenPassword > MaxPassword {
|
|
log.Error().Msg("Password length not valid")
|
|
return false
|
|
}
|
|
|
|
return true
|
|
}
|