Versions in this module Expand all Collapse all v1 v1.0.1 Feb 25, 2020 Changes in this version + const TableUser + const TableUserAccessKey + const TableUserAuth + var ErrorLocked = fmt.Errorf("locked") + var ErrorNotFound = fmt.Errorf("not found") + type Config struct + CodeExpire int + CodeRetry int + IsEnableAccessKey bool + TokenExpire int + type ModelUser struct + Avatar string + Created time.Time + Email sql.NullString + Extra string + ID int + LastLogin time.Time + Mobile sql.NullString + Nickname string + Password string + UID string + Updated time.Time + type ModelUserAccessKey struct + AccessKey string + Comment string + Created time.Time + ExpireAt sql.NullTime + ID int + UID string + Updated time.Time + type ModelUserAuth struct + AuthExtra string + AuthName string + AuthUID string + Created time.Time + ID int + UID string + Updated time.Time + type User struct + func (user *User) BindAuth(authName string, v interface{}) error + func (user *User) Clean() error + func (user *User) DeleteAccessKey(accessKeyID int) error + func (user *User) GenerateAccessKey(comment string, expireAts ...time.Time) (*UserAccessKey, error) + func (user *User) GetAccessKeys(isAll bool) ([]*UserAccessKey, error) + func (user *User) GetAuths() ([]*UserAuth, error) + func (user *User) Login() (token string, deadline int64, err error) + func (user *User) LoginWithFrom(from string) (token string, deadline int64, err error) + func (user *User) Logout() error + func (user *User) LogoutWithFrom(from string) error + func (user *User) UnbindAuth(authName string) error + func (user *User) UpdateAccessKeyComment(accessKeyID int, comment string) error + func (user *User) UpdateAccessKeyExpireAt(accessKeyID int, expireAt *time.Time) error + func (user *User) UpdateAuthInfo(authName, authExtra string) error + func (user *User) UpdateEmail(email, code string) error + func (user *User) UpdateEmailApplyCode() (code string, expire int, err error) + func (user *User) UpdateInfo(nickname, avatar, extra *string) error + func (user *User) UpdateMobile(mobile, code string) error + func (user *User) UpdateMobileApplyCode(mobile string) (code string, expire, retry int, err error) + func (user *User) UpdatePasswordApplyCode() (code string, expire int, err error) + func (user *User) UpdatePasswordWithCode(rawPassword, code string) error + func (user *User) UpdatePasswordWithPassword(oldRawPassword, newRawPassword string) error + func (user *User) UpdateUID(uid string) error + type UserAccessKey struct + AccessKey string + Comment string + Created int64 + ExpireAt int64 + ID int + type UserAuth struct + AuthExtra string + AuthName string + AuthUID string + Created int64 + ID int + type UserData struct + Avatar string + Created int64 + Email string + Extra string + ID int + LastLogin int64 + Mobile string + Nickname string + UID string + type UserMgr struct + func (mgr *UserMgr) ApplyCode(expire int, args ...interface{}) (code string, expire0 int, err error) + func (mgr *UserMgr) ApplyCodeAntiReplay(lockname string, expire, retry int, args ...interface{}) (code string, expire0, retry0 int, err error) + func (mgr *UserMgr) EnsureTables() error + func (mgr *UserMgr) FindUserByAny(any string) (bool, *User, error) + func (mgr *UserMgr) FindUserByAuth(authName, authUID string) (bool, *User, error) + func (mgr *UserMgr) FindUserByEmail(email string) (bool, *User, error) + func (mgr *UserMgr) FindUserByMobile(mobile string) (bool, *User, error) + func (mgr *UserMgr) FindUserByUID(uid string) (bool, *User, error) + func (mgr *UserMgr) LoginAuth(authName string, v interface{}) (user *User, token string, deadline int64, err error) + func (mgr *UserMgr) LoginAuthWithFrom(authName string, v interface{}, from string) (user *User, token string, deadline int64, err error) + func (mgr *UserMgr) LoginLAPD(uid, rawPassword string) (user *User, token string, deadline int64, err error) + func (mgr *UserMgr) LoginLAPDWithFrom(uid, rawPassword, from string) (user *User, token string, deadline int64, err error) + func (mgr *UserMgr) LoginMobile(mobile, code string) (user *User, token string, deadline int64, err error) + func (mgr *UserMgr) LoginMobileApplyCode(mobile string) (code string, expire, retry int, err error) + func (mgr *UserMgr) LoginMobileWithFrom(mobile, code, from string) (user *User, token string, deadline int64, err error) + func (mgr *UserMgr) LoginTourist() (user *User, token string, deadline int64, err error) + func (mgr *UserMgr) LoginTouristWithFrom(from string) (user *User, token string, deadline int64, err error) + func (mgr *UserMgr) RegisterAuth(authName string, v interface{}) (*User, error) + func (mgr *UserMgr) RegisterEmail(email, code string) (*User, error) + func (mgr *UserMgr) RegisterEmailApplyCode(email string) (code string, expire int, err error) + func (mgr *UserMgr) RegisterLAPD(uid, rawPassword string) (*User, error) + func (mgr *UserMgr) RegisterMobile(mobile, code string) (*User, error) + func (mgr *UserMgr) RegisterMobileApplyCode(mobile string) (code string, expire, retry int, err error) + func (mgr *UserMgr) RegisterTourist() (*User, error) + func (mgr *UserMgr) SetAuthMgr(args ...authmgr.AuthMgr) + func (mgr *UserMgr) SetGenerateAccessKey(arg func() string) + func (mgr *UserMgr) SetGenerateCode(arg func() string) + func (mgr *UserMgr) SetGenerateSign(arg func(accessKey string, data interface{}) string) + func (mgr *UserMgr) SetGenerateUID(arg func() (uid, nickname, avatar, extra string)) + func (mgr *UserMgr) SetMLogName(name string) + func (mgr *UserMgr) SetTableAccessKey(tableName, tableCreateSQL string) error + func (mgr *UserMgr) SetTableAuth(tableName, tableCreateSQL string) error + func (mgr *UserMgr) SetTableUser(tableName, tableCreateSQL string) error + func (mgr *UserMgr) SetTokenMgr(arg tokenmgr.TokenMgr) + func (mgr *UserMgr) TableNames() []string + func (mgr *UserMgr) TablesCreateSQL() []string + func (mgr *UserMgr) VerifyAuth(authName string, v interface{}) (authUID, authExtra string, err error) + func (mgr *UserMgr) VerifyCode(code string, args ...interface{}) (bool, error) + func (mgr *UserMgr) VerifySign(uid string, accessKeyID int, data interface{}, sign string) (ok bool, err error) + func (mgr *UserMgr) VerifyToken(uid, token string) (ok bool, err error) + func (mgr *UserMgr) VerifyTokenWithFrom(uid, from, token string) (ok bool, err error) v1.0.0 Feb 25, 2020 Changes in this version + func New(name, secret string, pool *redigo.Pool, db *sql.DB, configs ...usermgr.Config) *usermgr.UserMgr