summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUnknown <joe2010xtmf@163.com>2014-02-19 21:45:43 -0500
committerUnknown <joe2010xtmf@163.com>2014-02-19 21:45:43 -0500
commit8962b39648a7ac8895b4281b428a1091c410f8f0 (patch)
treef11ad341431adfcb918472b79586e3e7a12940e4
parentd4728fafafdd1d9a54d9337c7bddac086d58579c (diff)
downloadgitea-8962b39648a7ac8895b4281b428a1091c410f8f0.tar.gz
gitea-8962b39648a7ac8895b4281b428a1091c410f8f0.zip
Add routers for create and delete repo
-rw-r--r--routers/repo/repo.go44
-rw-r--r--routers/user/user.go9
-rw-r--r--templates/repo/create.tmpl12
-rw-r--r--templates/repo/delete.tmpl12
-rw-r--r--templates/user/delete.tmpl12
-rw-r--r--web.go3
6 files changed, 91 insertions, 1 deletions
diff --git a/routers/repo/repo.go b/routers/repo/repo.go
new file mode 100644
index 0000000000..cf79d539b6
--- /dev/null
+++ b/routers/repo/repo.go
@@ -0,0 +1,44 @@
+// Copyright 2014 The Gogs Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package repo
+
+import (
+ "fmt"
+ "net/http"
+
+ "github.com/martini-contrib/render"
+
+ "github.com/gogits/gogs/models"
+)
+
+func Create(req *http.Request, r render.Render) {
+ if req.Method == "GET" {
+ r.HTML(200, "repo/create", map[string]interface{}{
+ "Title": "Create repository",
+ })
+ return
+ }
+
+ u := &models.User{}
+ _, err := models.CreateRepository(u, "")
+ r.HTML(403, "status/403", map[string]interface{}{
+ "Title": fmt.Sprintf("%v", err),
+ })
+}
+
+func Delete(req *http.Request, r render.Render) {
+ if req.Method == "GET" {
+ r.HTML(200, "repo/delete", map[string]interface{}{
+ "Title": "Delete repository",
+ })
+ return
+ }
+
+ u := &models.User{}
+ err := models.DeleteRepository(u, "")
+ r.HTML(403, "status/403", map[string]interface{}{
+ "Title": fmt.Sprintf("%v", err),
+ })
+}
diff --git a/routers/user/user.go b/routers/user/user.go
index 3566601200..6fafcc47d8 100644
--- a/routers/user/user.go
+++ b/routers/user/user.go
@@ -52,7 +52,14 @@ func SignUp(req *http.Request, r render.Render) {
})
}
-func Delete(r render.Render) {
+func Delete(req *http.Request, r render.Render) {
+ if req.Method == "GET" {
+ r.HTML(200, "user/delete", map[string]interface{}{
+ "Title": "Delete user",
+ })
+ return
+ }
+
u := &models.User{}
err := models.DeleteUser(u)
r.HTML(403, "status/403", map[string]interface{}{
diff --git a/templates/repo/create.tmpl b/templates/repo/create.tmpl
new file mode 100644
index 0000000000..4ec4f6f1e8
--- /dev/null
+++ b/templates/repo/create.tmpl
@@ -0,0 +1,12 @@
+{{template "base/head" .}}
+{{template "base/navbar" .}}
+<div class="container">
+ <form action="/repo/create" method="post" class="form-horizontal">
+ <div class="form-group">
+ <div class="col-md-offset-4 col-md-3">
+ <button type="submit" class="btn btn-info">Create repository</button>
+ </div>
+ </div>
+ </form>
+</div>
+{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/repo/delete.tmpl b/templates/repo/delete.tmpl
new file mode 100644
index 0000000000..0b95c3fb18
--- /dev/null
+++ b/templates/repo/delete.tmpl
@@ -0,0 +1,12 @@
+{{template "base/head" .}}
+{{template "base/navbar" .}}
+<div class="container">
+ <form action="/repo/delete" method="post" class="form-horizontal">
+ <div class="form-group">
+ <div class="col-md-offset-4 col-md-3">
+ <button type="submit" class="btn btn-danger">Delete repository</button>
+ </div>
+ </div>
+ </form>
+</div>
+{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/user/delete.tmpl b/templates/user/delete.tmpl
new file mode 100644
index 0000000000..55993633db
--- /dev/null
+++ b/templates/user/delete.tmpl
@@ -0,0 +1,12 @@
+{{template "base/head" .}}
+{{template "base/navbar" .}}
+<div class="container">
+ <form action="/user/delete" method="post" class="form-horizontal">
+ <div class="form-group">
+ <div class="col-md-offset-4 col-md-3">
+ <button type="submit" class="btn btn-danger">Delete user</button>
+ </div>
+ </div>
+ </form>
+</div>
+{{template "base/footer" .}} \ No newline at end of file
diff --git a/web.go b/web.go
index 17e7cbfea1..1d36e8a178 100644
--- a/web.go
+++ b/web.go
@@ -14,6 +14,7 @@ import (
"github.com/martini-contrib/render"
"github.com/gogits/gogs/routers"
+ "github.com/gogits/gogs/routers/repo"
"github.com/gogits/gogs/routers/user"
"github.com/gogits/gogs/utils"
"github.com/gogits/gogs/utils/log"
@@ -50,6 +51,8 @@ func runWeb(*cli.Context) {
m.Get("/user/signin", user.SignIn)
m.Any("/user/signup", user.SignUp)
m.Any("/user/delete", user.Delete)
+ m.Any("/repo/create", repo.Create)
+ m.Any("/repo/delete", repo.Delete)
listenAddr := fmt.Sprintf("%s:%s",
utils.Cfg.MustValue("server", "HTTP_ADDR"),