photoprism/internal/i18n/response.go
Michael Mayer d1db3d04f7 Logs: Improve event log and messages in i18n package
Signed-off-by: Michael Mayer <michael@liquidbytes.net>
2020-07-07 10:51:55 +02:00

39 lines
736 B
Go

package i18n
import "strings"
type Response struct {
Code int `json:"code"`
Err string `json:"error,omitempty"`
Msg string `json:"message,omitempty"`
Details string `json:"details,omitempty"`
}
func (r Response) String() string {
if r.Err != "" {
return r.Err
} else {
return r.Msg
}
}
func (r Response) LowerString() string {
return strings.ToLower(r.String())
}
func (r Response) Error() string {
return r.Err
}
func (r Response) Success() bool {
return r.Err == "" && r.Code < 400
}
func NewResponse(code int, id Message, params ...interface{}) Response {
if code < 400 {
return Response{Code: code, Msg: Msg(id, params...)}
} else {
return Response{Code: code, Err: Msg(id, params...)}
}
}