package repo
import (
- "fmt"
"net/http"
+ "github.com/codegangsta/martini"
"github.com/martini-contrib/render"
"github.com/martini-contrib/sessions"
}
}
-func List(req *http.Request, r render.Render, data base.TmplData, session sessions.Session) {
- data["Title"] = "Repositories"
+func Repo(params martini.Params, req *http.Request, r render.Render, data base.TmplData, session sessions.Session) {
+ data["Title"] = "Repository"
+ files, err := models.GetReposFiles(params["username"], params["reponame"], "HEAD", "/")
+ if err != nil {
+ data["ErrorMsg"] = err
+ log.Error("repo.List: %v", err)
+ r.HTML(200, "base/error", data)
+ return
+ }
+ data["Files"] = files
+ r.HTML(200, "repo/repo", data)
+}
+
+func List(req *http.Request, r render.Render, data base.TmplData, session sessions.Session) {
u := auth.SignedInUser(session)
+ if u != nil {
+ r.Redirect("/")
+ return
+ }
+
+ data["Title"] = "Repositories"
repos, err := models.GetRepositories(u)
- fmt.Println("repos", repos)
if err != nil {
data["ErrorMsg"] = err
log.Error("repo.List: %v", err)
cmd := os.Getenv("SSH_ORIGINAL_COMMAND")
if cmd == "" {
- printf("Hi %s! You've successfully authenticated, but Gogs does not provide shell access.\n", user.Name)
+ println("Hi ", user.Name, "! You've successfully authenticated, but Gogs does not provide shell access.")
return
}
--- /dev/null
+{{template "base/head" .}}
+{{template "base/navbar" .}}
+<div class="container" id="gogs-body">
+ <ul>
+ {{range .Files}}
+ <li>{{.Name}} - {{.Type}}</li>
+ {{end}}
+ </ul>
+</div>
+{{template "base/footer" .}}
\ No newline at end of file
m.Get("/user/:username", auth.SignInRequire(false), user.Profile)
+ m.Get("/:username/:reponame", repo.Repo)
+
m.Any("/repo/create", auth.SignInRequire(true), binding.BindIgnErr(auth.CreateRepoForm{}), repo.Create)
m.Any("/repo/delete", auth.SignInRequire(true), repo.Delete)
m.Any("/repo/list", auth.SignInRequire(false), repo.List)