user update-password page ui

This commit is contained in:
FuXiaoHei 2014-03-14 11:24:08 +08:00
parent 52de63e7bb
commit 9c0672e0dd
10 changed files with 80 additions and 64 deletions

View file

@ -269,7 +269,8 @@ body {
/* gogits user setting */ /* gogits user setting */
#gogs-user-setting-nav > h4, #gogs-user-setting-container > h4, #gogs-ssh-keys > h4, #gogs-user-delete > h4 ,#gogs-repo-setting-container .tab-pane > h4{ #gogs-user-setting-nav > h4, #gogs-user-setting-container > h4, #gogs-user-setting-container > div > h4,
#gogs-ssh-keys > h4, #gogs-user-delete > h4, #gogs-repo-setting-container .tab-pane > h4 {
padding-bottom: 18px; padding-bottom: 18px;
margin-bottom: 18px; margin-bottom: 18px;
border-bottom: 1px solid #CCC; border-bottom: 1px solid #CCC;
@ -429,8 +430,7 @@ body {
margin-bottom: 4px; margin-bottom: 4px;
} }
#gogs-repo-toolbar {
#gogs-repo-toolbar{
margin-top: 51px; margin-top: 51px;
margin-bottom: -50px; margin-bottom: -50px;
border-bottom: 1px solid #BBB; border-bottom: 1px solid #BBB;
@ -438,23 +438,23 @@ body {
height: 40px; height: 40px;
} }
#gogs-repo-toolbar .navbar-default{ #gogs-repo-toolbar .navbar-default {
border: none; border: none;
height: 39px; height: 39px;
} }
#gogs-repo-toolbar .nav > li > a{ #gogs-repo-toolbar .nav > li > a {
height: 39px; height: 39px;
} }
#gogs-repo-toolbar .navbar-toolbar.navbar-default .navbar-nav>.active>a:after{ #gogs-repo-toolbar .navbar-toolbar.navbar-default .navbar-nav > .active > a:after {
border-bottom-color: #999; border-bottom-color: #999;
} }
#gogs-repo-toolbar .navbar.nav-toolbar{ #gogs-repo-toolbar .navbar.nav-toolbar {
margin-bottom: 0; margin-bottom: 0;
} }
#gogs-repo-toolbar .navbar-collapse{ #gogs-repo-toolbar .navbar-collapse {
padding: 0; padding: 0;
} }

View file

@ -47,6 +47,14 @@ func Setting(form auth.UpdateProfileForm, r render.Render, data base.TmplData, r
r.HTML(200, "user/setting", data) r.HTML(200, "user/setting", data)
} }
func SettingEmailPassword(r render.Render, data base.TmplData, session sessions.Session, req *http.Request) {
data["Title"] = "Email & Password"
data["PageIsUserSetting"] = true
data["IsPwdSuccess"] = (req.FormValue("password") == "true")
r.HTML(200, "user/email_password", data)
}
func UpdatePasswd(form auth.UpdatePasswdForm, r render.Render, data base.TmplData, req *http.Request, session sessions.Session) { func UpdatePasswd(form auth.UpdatePasswdForm, r render.Render, data base.TmplData, req *http.Request, session sessions.Session) {
data["Title"] = "Setting" data["Title"] = "Setting"
data["PageIsUserSetting"] = true data["PageIsUserSetting"] = true

View file

@ -5,10 +5,10 @@
<h4>Account Setting</h4> <h4>Account Setting</h4>
<ul class="list-group"> <ul class="list-group">
<li class="list-group-item"><a href="/user/setting">Account Profile</a></li> <li class="list-group-item"><a href="/user/setting">Account Profile</a></li>
<li class="list-group-item"><a href="#">Emails and Password</a></li> <li class="list-group-item"><a href="/user/setting/email_password">Emails and Password</a></li>
<li class="list-group-item"><a href="#">Notifications</a></li> <li class="list-group-item"><a href="/user/setting/notification">Notifications</a></li>
<li class="list-group-item"><a href="/user/setting/ssh/">SSH Keys</a></li> <li class="list-group-item"><a href="/user/setting/ssh/">SSH Keys</a></li>
<li class="list-group-item"><a href="#">Security</a></li> <li class="list-group-item"><a href="/user/setting/security">Security</a></li>
<li class="list-group-item list-group-item-success"><a href="/user/delete">Delete Account</a></li> <li class="list-group-item list-group-item-success"><a href="/user/delete">Delete Account</a></li>
</ul> </ul>
</div> </div>

View file

@ -0,0 +1,53 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
<div id="gogs-body" class="container">
<div id="gogs-user-setting-nav" class="col-md-3">
<h4>Account Setting</h4>
<ul class="list-group">
<li class="list-group-item"><a href="/user/setting">Account Profile</a></li>
<li class="list-group-item list-group-item-success"><a href="/user/setting/email_password">Emails and Password</a></li>
<li class="list-group-item"><a href="/user/setting/notification">Notifications</a></li>
<li class="list-group-item"><a href="/user/setting/ssh/">SSH Keys</a></li>
<li class="list-group-item"><a href="/user/setting/security">Security</a></li>
<li class="list-group-item"><a href="/user/delete">Delete Account</a></li>
</ul>
</div>
<div id="gogs-user-setting-container" class="col-md-9">
<div id="gogs-setting-email">
<h4>Email</h4>
<p><strong>Your Primary Email</strong> will be used for Account related notifications as well as any web based operations, such as edits and merges made via the web.</p>
<p>// TODO</p><br/>
</div>
<div id="gogs-setting-pwd">
<h4>Password</h4>
<form class="form-horizontal" id="gogs-password-form" method="post" action="/user/setting/update_passwd">{{if .IsPwdSuccess}}
<p class="alert alert-success">Password is changed successfully. You can sign in via new password.</p>{{end}}
<div class="form-group">
<label class="col-md-2 control-label">Old Password<strong class="text-danger">*</strong></label>
<div class="col-md-8">
<input type="password" name="oldpasswd" class="form-control" placeholder="Type your current password" required="required">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">New Password<strong class="text-danger">*</strong></label>
<div class="col-md-8">
<input type="password" name="newpasswd" class="form-control" placeholder="Type your new password" required="required">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Re-Type<strong class="text-danger">*</strong></label>
<div class="col-md-8">
<input type="password" name="re-type" class="form-control" placeholder="Re-type your new password" required="required">
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-8">
<button type="submit" class="btn btn-primary">Change Password</button>&nbsp;&nbsp;
<a href="/forget-password/">Forget Password ?</a>
</div>
</div>
</form>
</div>
</div>
</div>
{{template "base/footer" .}}

View file

@ -5,10 +5,10 @@
<h4>Account Setting</h4> <h4>Account Setting</h4>
<ul class="list-group"> <ul class="list-group">
<li class="list-group-item"><a href="/user/setting">Account Profile</a></li> <li class="list-group-item"><a href="/user/setting">Account Profile</a></li>
<li class="list-group-item"><a href="#">Emails and Password</a></li> <li class="list-group-item"><a href="/user/setting/email_password">Emails and Password</a></li>
<li class="list-group-item"><a href="#">Notifications</a></li> <li class="list-group-item"><a href="/user/setting/notification">Notifications</a></li>
<li class="list-group-item list-group-item-success"><a href="/user/setting/ssh/">SSH Keys</a></li> <li class="list-group-item list-group-item-success"><a href="/user/setting/ssh/">SSH Keys</a></li>
<li class="list-group-item"><a href="#">Security</a></li> <li class="list-group-item"><a href="/user/setting/security">Security</a></li>
<li class="list-group-item"><a href="/user/delete">Delete Account</a></li> <li class="list-group-item"><a href="/user/delete">Delete Account</a></li>
</ul> </ul>
</div> </div>

View file

@ -1,26 +0,0 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
<div class="container" id="gogs-body">
<form action="/user/publickey/add" 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" value="{{.KeyName}}">
</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">{{.KeyContent}}</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" .}}

View file

@ -1,8 +0,0 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
<div class="container">
<div class="form-group">
publickey added
</div>
</div>
{{template "base/footer" .}}

View file

@ -1,12 +0,0 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
<div class="container" id="gogs-body">
<div><a href="/user/publickey/add">Add publick key</a></div>
<ul>
{{range .Keys}}
<li>{{.Name}}</li>
<li>{{.Content}}</li>
{{end}}
</ul>
</div>
{{template "base/footer" .}}

View file

@ -5,10 +5,10 @@
<h4>Account Setting</h4> <h4>Account Setting</h4>
<ul class="list-group"> <ul class="list-group">
<li class="list-group-item list-group-item-success"><a href="/user/setting">Account Profile</a></li> <li class="list-group-item list-group-item-success"><a href="/user/setting">Account Profile</a></li>
<li class="list-group-item"><a href="#">Emails and Password</a></li> <li class="list-group-item"><a href="/user/setting/email_password">Emails and Password</a></li>
<li class="list-group-item"><a href="#">Notifications</a></li> <li class="list-group-item"><a href="/user/setting/notification">Notifications</a></li>
<li class="list-group-item"><a href="/user/setting/ssh">SSH Keys</a></li> <li class="list-group-item"><a href="/user/setting/ssh/">SSH Keys</a></li>
<li class="list-group-item"><a href="#">Security</a></li> <li class="list-group-item"><a href="/user/setting/security">Security</a></li>
<li class="list-group-item"><a href="/user/delete">Delete Account</a></li> <li class="list-group-item"><a href="/user/delete">Delete Account</a></li>
</ul> </ul>
</div> </div>

1
web.go
View file

@ -64,6 +64,7 @@ func runWeb(*cli.Context) {
m.Get("/user/feeds", binding.Bind(auth.FeedsForm{}), user.Feeds) m.Get("/user/feeds", binding.Bind(auth.FeedsForm{}), user.Feeds)
m.Any("/user/setting", auth.SignInRequire(true), binding.BindIgnErr(auth.UpdateProfileForm{}), user.Setting) m.Any("/user/setting", auth.SignInRequire(true), binding.BindIgnErr(auth.UpdateProfileForm{}), user.Setting)
m.Get("/user/setting/email_password",auth.SignInRequire(true),user.SettingEmailPassword)
m.Post("/user/setting/update_passwd", auth.SignInRequire(true), binding.BindIgnErr(auth.UpdatePasswdForm{}), user.UpdatePasswd) m.Post("/user/setting/update_passwd", auth.SignInRequire(true), binding.BindIgnErr(auth.UpdatePasswdForm{}), user.UpdatePasswd)
m.Any("/user/setting/ssh", auth.SignInRequire(true), binding.BindIgnErr(auth.AddSSHKeyForm{}), user.SettingSSHKeys) m.Any("/user/setting/ssh", auth.SignInRequire(true), binding.BindIgnErr(auth.AddSSHKeyForm{}), user.SettingSSHKeys)