From 33b5c99234a57ac9c18863489938a9c00fa188bf Mon Sep 17 00:00:00 2001 From: MrMelon54 Date: Wed, 12 Jun 2024 14:49:44 +0100 Subject: [PATCH] Add value method to UserLocale and UserZone --- database/types/userlocale.go | 8 ++++++++ database/types/userzone.go | 3 +++ 2 files changed, 11 insertions(+) diff --git a/database/types/userlocale.go b/database/types/userlocale.go index aea629d..34a73b2 100644 --- a/database/types/userlocale.go +++ b/database/types/userlocale.go @@ -2,6 +2,7 @@ package types import ( "database/sql" + "database/sql/driver" "encoding/json" "fmt" "golang.org/x/text/language" @@ -9,6 +10,7 @@ import ( var ( _ sql.Scanner = &UserLocale{} + _ driver.Valuer = &UserLocale{} _ json.Marshaler = &UserLocale{} _ json.Unmarshaler = &UserLocale{} ) @@ -27,7 +29,13 @@ func (l *UserLocale) Scan(src any) error { l.Tag = lang return nil } + +func (l UserLocale) Value() (driver.Value, error) { + return l.Tag.String(), nil +} + func (l UserLocale) MarshalJSON() ([]byte, error) { return json.Marshal(l.Tag.String()) } + func (l *UserLocale) UnmarshalJSON(bytes []byte) error { var a string err := json.Unmarshal(bytes, &a) diff --git a/database/types/userzone.go b/database/types/userzone.go index 5ef952f..f203ad2 100644 --- a/database/types/userzone.go +++ b/database/types/userzone.go @@ -29,12 +29,15 @@ func (l *UserZone) Scan(src any) error { l.Location = loc return nil } + func (l UserZone) Value() (driver.Value, error) { return l.Location.String(), nil } + func (l UserZone) MarshalJSON() ([]byte, error) { return json.Marshal(l.Location.String()) } + func (l *UserZone) UnmarshalJSON(bytes []byte) error { var a string err := json.Unmarshal(bytes, &a)