From 0e7a2d9d3c59a67e9681d8e6e0d813c191777e2c Mon Sep 17 00:00:00 2001 From: slene Date: Thu, 20 Mar 2014 09:16:48 +0800 Subject: [PATCH] directory redirect --- routers/repo/single.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/routers/repo/single.go b/routers/repo/single.go index 1c4de34a5..3ab346302 100644 --- a/routers/repo/single.go +++ b/routers/repo/single.go @@ -53,6 +53,12 @@ func Single(ctx *middleware.Context, params martini.Params) { // Get tree path treename := params["_1"] + if len(treename) > 0 && treename[len(treename)-1] == '/' { + ctx.Redirect("/"+ctx.Repo.Owner.LowerName+"/"+ + ctx.Repo.Repository.Name+"/tree/"+params["branchname"]+"/"+treename[:len(treename)-1], 302) + return + } + // Branches. brs, err := models.GetBranches(params["username"], params["reponame"]) if err != nil { @@ -125,7 +131,7 @@ func Single(ctx *middleware.Context, params martini.Params) { } else { // current repo branch link urlPrefix := "http://" + base.Domain + "/" + ctx.Repo.Owner.LowerName + "/" + - ctx.Repo.Repository.Name + "/blob/" + params["branchname"] + ctx.Repo.Repository.Name + "/tree/" + params["branchname"] ctx.Data["ReadmeContent"] = string(base.RenderMarkdown(blob.Contents(), urlPrefix)) }