28 lines
511 B
Go
28 lines
511 B
Go
package api
|
|
|
|
import (
|
|
"errors"
|
|
"fmt"
|
|
"strings"
|
|
)
|
|
|
|
type Message int
|
|
type MessageMap map[Message]string
|
|
|
|
// msgParams replaces message params with the actual values.
|
|
func msgParams(msg string, params ...interface{}) string {
|
|
if strings.Contains(msg, "%") {
|
|
msg = fmt.Sprintf(msg, params...)
|
|
}
|
|
|
|
return msg
|
|
}
|
|
|
|
func Msg(id Message, params ...interface{}) string {
|
|
return msgParams(Messages[id], params...)
|
|
}
|
|
|
|
func ErrorMsg(id Message, params ...interface{}) error {
|
|
return errors.New(Msg(id, params...))
|
|
}
|