aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUnknown <joe2010xtmf@163.com>2014-02-20 16:51:03 -0500
committerUnknown <joe2010xtmf@163.com>2014-02-20 16:51:03 -0500
commit594ec0b659c34bfb25cc4f6f686dd7839b36e00c (patch)
tree069986fd20ff3c83686ee6865ed079a38d65210d
parent104aa23a9ed5ac01377eda1e421f1f3f43163c99 (diff)
downloadgitea-594ec0b659c34bfb25cc4f6f686dd7839b36e00c.tar.gz
gitea-594ec0b659c34bfb25cc4f6f686dd7839b36e00c.zip
Add code of add public key
-rw-r--r--models/repo.go2
-rw-r--r--routers/user/ssh.go29
-rw-r--r--templates/user/publickey_add.tmpl26
-rw-r--r--web.go1
4 files changed, 57 insertions, 1 deletions
diff --git a/models/repo.go b/models/repo.go
index 527b7a91de..6a0071ef9f 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -10,8 +10,8 @@ import (
"strings"
"time"
+ "github.com/gogits/gogs/utils/log"
git "github.com/libgit2/git2go"
- "github.com/qiniu/log"
)
type Repo struct {
diff --git a/routers/user/ssh.go b/routers/user/ssh.go
new file mode 100644
index 0000000000..84f41150ff
--- /dev/null
+++ b/routers/user/ssh.go
@@ -0,0 +1,29 @@
+// 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 user
+
+import (
+ "fmt"
+ "net/http"
+
+ "github.com/martini-contrib/render"
+
+ "github.com/gogits/gogs/models"
+)
+
+func AddPublickKey(req *http.Request, r render.Render) {
+ if req.Method == "GET" {
+ r.HTML(200, "user/publickey_add", map[string]interface{}{
+ "Title": "Add Public Key",
+ })
+ return
+ }
+
+ k := &models.PublicKey{}
+ err := models.AddPublicKey(k, "")
+ r.HTML(403, "status/403", map[string]interface{}{
+ "Title": fmt.Sprintf("%v", err),
+ })
+}
diff --git a/templates/user/publickey_add.tmpl b/templates/user/publickey_add.tmpl
new file mode 100644
index 0000000000..2d70d82a31
--- /dev/null
+++ b/templates/user/publickey_add.tmpl
@@ -0,0 +1,26 @@
+{{template "base/head" .}}
+{{template "base/navbar" .}}
+<div class="container">
+ <form action="/user/delete" method="post" class="form-horizontal">
+ <div class="form-group">
+ <label class="col-md-4 control-label">Name of this public key: </label>
+ <div class="col-md-3">
+ <input name="keyname" class="form-control" placeholder="Type your preferred name">
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-md-4 control-label">Paste your key here: </label>
+ <div class="col-md-3">
+ <textarea name="key_content" cols="30" rows="10" class="form-control"></textarea>
+ </div>
+ </div>
+
+ <div class="form-group">
+ <div class="col-md-offset-4 col-md-3">
+ <button type="submit" class="btn btn-info">Add public key</button>
+ </div>
+ </div>
+ </form>
+</div>
+{{template "base/footer" .}} \ No newline at end of file
diff --git a/web.go b/web.go
index 1d36e8a178..024a80f910 100644
--- a/web.go
+++ b/web.go
@@ -51,6 +51,7 @@ func runWeb(*cli.Context) {
m.Get("/user/signin", user.SignIn)
m.Any("/user/signup", user.SignUp)
m.Any("/user/delete", user.Delete)
+ m.Any("/user/publickey/add", user.AddPublickKey)
m.Any("/repo/create", repo.Create)
m.Any("/repo/delete", repo.Delete)