summaryrefslogtreecommitdiffstats
path: root/routers/repo/repo.go
diff options
context:
space:
mode:
authorslene <vslene@gmail.com>2014-03-30 10:13:02 +0800
committerslene <vslene@gmail.com>2014-03-30 10:13:02 +0800
commitb27c34f39acee3bf7b6594a1f0db2183b343326c (patch)
tree47c19758b57fbaf43a3806191e4ab2f64be6978d /routers/repo/repo.go
parent41ca0ed30212367389099cfefa41587ec80d85f5 (diff)
downloadgitea-b27c34f39acee3bf7b6594a1f0db2183b343326c.tar.gz
gitea-b27c34f39acee3bf7b6594a1f0db2183b343326c.zip
update git api. fix link... and so on
Diffstat (limited to 'routers/repo/repo.go')
-rw-r--r--routers/repo/repo.go51
1 files changed, 12 insertions, 39 deletions
diff --git a/routers/repo/repo.go b/routers/repo/repo.go
index b9ac1f1c42..c9c9af1e41 100644
--- a/routers/repo/repo.go
+++ b/routers/repo/repo.go
@@ -53,20 +53,20 @@ func Create(ctx *middleware.Context, form auth.CreateRepoForm) {
}
func Single(ctx *middleware.Context, params martini.Params) {
- if !ctx.Repo.IsValid {
- return
- }
+ branchName := ctx.Repo.BranchName
+ commitId := ctx.Repo.CommitId
+ userName := ctx.Repo.Owner.Name
+ repoName := ctx.Repo.Repository.Name
- branchName := params["branchname"]
- userName := params["username"]
- repoName := params["reponame"]
+ repoLink := ctx.Repo.RepoLink
+ branchLink := ctx.Repo.RepoLink + "/src/" + branchName
+ rawLink := ctx.Repo.RepoLink + "/raw/" + branchName
// Get tree path
treename := params["_1"]
if len(treename) > 0 && treename[len(treename)-1] == '/' {
- ctx.Redirect("/" + ctx.Repo.Owner.LowerName + "/" +
- ctx.Repo.Repository.Name + "/src/" + branchName + "/" + treename[:len(treename)-1])
+ ctx.Redirect(repoLink + "/src/" + branchName + "/" + treename[:len(treename)-1])
return
}
@@ -84,23 +84,17 @@ func Single(ctx *middleware.Context, params martini.Params) {
}
ctx.Data["Branches"] = brs
- var commitId string
- isViewBranch := models.IsBranchExist(userName, repoName, branchName)
- if !isViewBranch {
- commitId = branchName
- }
+ isViewBranch := ctx.Repo.IsBranch
ctx.Data["IsViewBranch"] = isViewBranch
repoFile, err := models.GetTargetFile(userName, repoName,
branchName, commitId, treename)
+
if err != nil && err != models.ErrRepoFileNotExist {
ctx.Handle(404, "repo.Single(GetTargetFile)", err)
return
}
- branchLink := "/" + ctx.Repo.Owner.LowerName + "/" + ctx.Repo.Repository.Name + "/src/" + branchName
- rawLink := "/" + ctx.Repo.Owner.LowerName + "/" + ctx.Repo.Repository.Name + "/raw/" + branchName
-
if len(treename) != 0 && repoFile == nil {
ctx.Handle(404, "repo.Single", nil)
return
@@ -142,8 +136,7 @@ func Single(ctx *middleware.Context, params martini.Params) {
} else {
// Directory and file list.
- files, err := models.GetReposFiles(userName, repoName,
- branchName, commitId, treename)
+ files, err := models.GetReposFiles(userName, repoName, ctx.Repo.CommitId, treename)
if err != nil {
ctx.Handle(404, "repo.Single(GetReposFiles)", err)
return
@@ -200,18 +193,7 @@ func Single(ctx *middleware.Context, params martini.Params) {
}
}
- // Get latest commit according username and repo name.
- commit, err := models.GetCommit(userName, repoName,
- branchName, commitId)
- if err != nil {
- log.Error("repo.Single(GetCommit): %v", err)
- ctx.Handle(404, "repo.Single(GetCommit)", err)
- return
- }
- ctx.Data["LastCommit"] = commit
-
- ctx.Data["CommitId"] = commitId
-
+ ctx.Data["LastCommit"] = ctx.Repo.Commit
ctx.Data["Paths"] = Paths
ctx.Data["Treenames"] = treenames
ctx.Data["BranchLink"] = branchLink
@@ -219,11 +201,6 @@ func Single(ctx *middleware.Context, params martini.Params) {
}
func SingleDownload(ctx *middleware.Context, params martini.Params) {
- if !ctx.Repo.IsValid {
- ctx.Handle(404, "repo.SingleDownload", nil)
- return
- }
-
// Get tree path
treename := params["_1"]
@@ -263,10 +240,6 @@ func SingleDownload(ctx *middleware.Context, params martini.Params) {
}
func Http(ctx *middleware.Context, params martini.Params) {
- /*if !ctx.Repo.IsValid {
- return
- }*/
-
// TODO: access check
username := params["username"]