summaryrefslogtreecommitdiffstats
path: root/routers/repo/single.go
diff options
context:
space:
mode:
authorLunny Xiao <xiaolunwen@gmail.com>2014-03-14 23:54:16 +0800
committerLunny Xiao <xiaolunwen@gmail.com>2014-03-14 23:54:16 +0800
commitb27e8e87f8be2d11468e9057254b6c8933e0af33 (patch)
treebbfb32d7e248ae6f2ec63164722523d96447848a /routers/repo/single.go
parent607303e4dee3ddf9ba3d9d67b0186fc5213b167b (diff)
parentd18237850c6a4ae855b3f8592994c91462fcdb0a (diff)
downloadgitea-b27e8e87f8be2d11468e9057254b6c8933e0af33.tar.gz
gitea-b27e8e87f8be2d11468e9057254b6c8933e0af33.zip
add tree view
Diffstat (limited to 'routers/repo/single.go')
-rw-r--r--routers/repo/single.go23
1 files changed, 18 insertions, 5 deletions
diff --git a/routers/repo/single.go b/routers/repo/single.go
index 1d5e601aa3..bc35b98e71 100644
--- a/routers/repo/single.go
+++ b/routers/repo/single.go
@@ -1,6 +1,7 @@
package repo
import (
+ "strings"
"github.com/codegangsta/martini"
"github.com/martini-contrib/render"
@@ -13,15 +14,27 @@ func Single(params martini.Params, r render.Render, data base.TmplData) {
if !data["IsRepositoryValid"].(bool) {
return
}
-
- files, err := models.GetReposFiles(params["username"], params["reponame"], "HEAD", "/")
+ if params["branchname"] == "" {
+ params["branchname"] = "master"
+ }
+ treename := params["_1"]
+ files, err := models.GetReposFiles(params["username"], params["reponame"],
+ params["branchname"], treename)
if err != nil {
- data["ErrorMsg"] = err
- log.Error("repo.List: %v", err)
- r.HTML(200, "base/error", data)
+ log.Handle(200, "repo.Single", data, r, err)
return
}
+ data["Username"] = params["username"]
+ data["Reponame"] = params["reponame"]
+ data["Branchname"] = params["branchname"]
+ treenames := strings.Split(treename, "/")
+ Paths := make([]string, 0)
+ for i, _ := range treenames {
+ Paths = append(Paths, strings.Join(treenames[0:i+1], "/"))
+ }
+ data["Paths"] = Paths
+ data["Treenames"] = treenames
data["IsRepoToolbarSource"] = true
data["Files"] = files