summaryrefslogtreecommitdiffstats
path: root/routers
diff options
context:
space:
mode:
Diffstat (limited to 'routers')
-rw-r--r--routers/admin/user.go2
-rw-r--r--routers/repo/issue.go2
-rw-r--r--routers/repo/repo.go8
-rw-r--r--routers/user/user.go21
4 files changed, 24 insertions, 9 deletions
diff --git a/routers/admin/user.go b/routers/admin/user.go
index fa27d11664..7f66c5528c 100644
--- a/routers/admin/user.go
+++ b/routers/admin/user.go
@@ -140,5 +140,5 @@ func DeleteUser(ctx *middleware.Context, params martini.Params) {
log.Trace("%s User deleted by admin(%s): %s", ctx.Req.RequestURI,
ctx.User.LowerName, ctx.User.LowerName)
- ctx.Redirect("/admin/users", 302)
+ ctx.Redirect("/admin/users")
}
diff --git a/routers/repo/issue.go b/routers/repo/issue.go
index 154e8308ab..4cc007e9ee 100644
--- a/routers/repo/issue.go
+++ b/routers/repo/issue.go
@@ -56,7 +56,7 @@ func CreateIssue(ctx *middleware.Context, params martini.Params, form auth.Creat
form.IssueName, form.Labels, form.Content, false)
if err == nil {
log.Trace("%s Issue created: %d", form.RepoId, issue.Id)
- ctx.Redirect(fmt.Sprintf("/%s/%s/issues/%d", params["username"], params["reponame"], issue.Index), 302)
+ ctx.Redirect(fmt.Sprintf("/%s/%s/issues/%d", params["username"], params["reponame"], issue.Index))
return
}
ctx.Handle(200, "issue.CreateIssue", err)
diff --git a/routers/repo/repo.go b/routers/repo/repo.go
index c436d38714..4782d64f70 100644
--- a/routers/repo/repo.go
+++ b/routers/repo/repo.go
@@ -40,7 +40,7 @@ func Create(ctx *middleware.Context, form auth.CreateRepoForm) {
form.Language, form.License, form.Visibility == "private", form.InitReadme == "on")
if err == nil {
log.Trace("%s Repository created: %s/%s", ctx.Req.RequestURI, ctx.User.LowerName, form.RepoName)
- ctx.Redirect("/"+ctx.User.Name+"/"+form.RepoName, 302)
+ ctx.Redirect("/" + ctx.User.Name + "/" + form.RepoName)
return
} else if err == models.ErrRepoAlreadyExist {
ctx.RenderWithErr("Repository name has already been used", "repo/create", &form)
@@ -73,7 +73,7 @@ func SettingPost(ctx *middleware.Context) {
}
log.Trace("%s Repository deleted: %s/%s", ctx.Req.RequestURI, ctx.User.LowerName, ctx.Repo.Repository.LowerName)
- ctx.Redirect("/", 302)
+ ctx.Redirect("/")
}
func Branches(ctx *middleware.Context, params martini.Params) {
@@ -113,8 +113,8 @@ func Single(ctx *middleware.Context, params martini.Params) {
treename := params["_1"]
if len(treename) > 0 && treename[len(treename)-1] == '/' {
- ctx.Redirect("/"+ctx.Repo.Owner.LowerName+"/"+
- ctx.Repo.Repository.Name+"/src/"+params["branchname"]+"/"+treename[:len(treename)-1], 302)
+ ctx.Redirect("/" + ctx.Repo.Owner.LowerName + "/" +
+ ctx.Repo.Repository.Name + "/src/" + params["branchname"] + "/" + treename[:len(treename)-1])
return
}
diff --git a/routers/user/user.go b/routers/user/user.go
index 56bc5f8e37..c34b529ec3 100644
--- a/routers/user/user.go
+++ b/routers/user/user.go
@@ -6,6 +6,7 @@ package user
import (
"fmt"
+ "net/url"
"strings"
"github.com/codegangsta/martini"
@@ -109,7 +110,13 @@ func SignIn(ctx *middleware.Context, form auth.LogInForm) {
isSucceed = true
ctx.Session.Set("userId", user.Id)
ctx.Session.Set("userName", user.Name)
- ctx.Redirect("/")
+ redirectTo, _ := url.QueryUnescape(ctx.GetCookie("redirect_to"))
+ if len(redirectTo) > 0 {
+ ctx.SetCookie("redirect_to", "", -1)
+ ctx.Redirect(redirectTo)
+ } else {
+ ctx.Redirect("/")
+ }
return
}
@@ -139,12 +146,20 @@ func SignIn(ctx *middleware.Context, form auth.LogInForm) {
ctx.Session.Set("userId", user.Id)
ctx.Session.Set("userName", user.Name)
- ctx.Redirect("/")
+ redirectTo, _ := url.QueryUnescape(ctx.GetCookie("redirect_to"))
+ if len(redirectTo) > 0 {
+ ctx.SetCookie("redirect_to", "", -1)
+ ctx.Redirect(redirectTo)
+ } else {
+ ctx.Redirect("/")
+ }
}
func SignOut(ctx *middleware.Context) {
ctx.Session.Delete("userId")
ctx.Session.Delete("userName")
+ ctx.SetCookie(base.CookieUserName, "", -1)
+ ctx.SetCookie(base.CookieRememberName, "", -1)
ctx.Redirect("/")
}
@@ -314,7 +329,7 @@ func Activate(ctx *middleware.Context) {
ctx.Session.Set("userId", user.Id)
ctx.Session.Set("userName", user.Name)
- ctx.Redirect("/", 302)
+ ctx.Redirect("/")
return
}