Add routers for create and delete repo

release/v1.15
Unknown 2014-02-19 21:45:43 -05:00
parent d4728fafaf
commit 8962b39648
6 changed files with 91 additions and 1 deletions

44
routers/repo/repo.go Normal file
View File

@ -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),
})
}

View File

@ -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{}{

View File

@ -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" .}}

View File

@ -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" .}}

View File

@ -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" .}}

3
web.go
View File

@ -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"),