代码拉取完成,页面将自动刷新
// Package controllers 控制器相关.
package controllers
import (
"fmt"
"time"
"github.com/lifei6671/go-git-webhook/modules/gob"
"github.com/lifei6671/go-git-webhook/conf"
"github.com/lifei6671/go-git-webhook/models"
"github.com/astaxie/beego"
)
// AccountController 用户登录与注册.
type AccountController struct {
BaseController
}
// Login 用户登录.
func (c *AccountController) Login() {
c.Prepare()
var remember struct { MemberId int ; Account string; Time time.Time}
//如果Cookie中存在登录信息
if cookie,ok := c.GetSecureCookie(conf.GetAppKey(),"login");ok{
if err := gob.Decode(cookie,&remember); err == nil {
member := models.NewMember()
member.MemberId = remember.MemberId
if err := models.NewMember().Find(); err == nil {
c.SetMember(*member)
c.Redirect(beego.URLFor("HomeController.Index"), 302)
c.StopRun()
}
}
}
if c.Ctx.Input.IsPost() {
account := c.GetString("inputAccount")
password := c.GetString("inputPassword")
member,err := models.NewMember().Login(account,password)
//如果没有数据
if err == nil {
c.SetMember(*member)
c.JsonResult(0,"ok")
c.StopRun()
}else{
fmt.Println(err)
c.JsonResult(500,"账号或密码错误",nil)
}
return
}else{
c.Layout = ""
c.TplName = "account/login.html"
}
}
// Logout 退出登录.
func (c *AccountController) Logout(){
c.SetMember(models.Member{});
c.Redirect(beego.URLFor("AccountController.Login"),302)
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。