示例#1
0
文件: base.go 项目: thanzen/identity
// get login redirect url from cookie
func (this *BaseController) GetLoginRedirect(ctx *context.Context) string {
	loginRedirect := strings.TrimSpace(ctx.GetCookie("login_to"))
	if utils.IsMatchHost(loginRedirect) == false {
		loginRedirect = "/"
	} else {
		ctx.SetCookie("login_to", "", -1, "/")
	}
	return loginRedirect
}
示例#2
0
文件: base.go 项目: thanzen/identity
func (this *BaseController) LoginUser(u *user.User, remember bool) string {
	loginRedirect := strings.TrimSpace(this.Ctx.GetCookie("login_to"))
	if utils.IsMatchHost(loginRedirect) == false {
		loginRedirect = "/"
	} else {
		this.Ctx.SetCookie("login_to", "", -1, "/")
	}

	// login user
	this.LoginUserRememberCookie(u, this.Ctx, remember)

	//todo: add locale support, rewrite i18n.go
	this.setLangCookie(u.Lang)

	return loginRedirect
}
示例#3
0
文件: auth.go 项目: thanzen/identity
// Get implemented login page.
func (this *AuthController) Get() {
	this.Data["IsLoginPage"] = true
	this.TplName = "auth/login.html"

	loginRedirect := strings.TrimSpace(this.GetString("to"))
	if utils.IsMatchHost(loginRedirect) == false {
		loginRedirect = "/"
	}

	// no need login
	if this.CheckLoginRedirect(false, loginRedirect) {
		return
	}

	if len(loginRedirect) > 0 {
		this.Ctx.SetCookie("login_to", loginRedirect, 0, "/")
	}

	form := LoginForm{}
	this.SetFormSets(&form)
}