diff options
-rw-r--r-- | routers/org/setting.go | 14 | ||||
-rw-r--r-- | templates/base/delete_modal_actions.tmpl | 10 | ||||
-rw-r--r-- | templates/org/settings/delete.tmpl | 71 | ||||
-rw-r--r-- | templates/org/settings/nav.tmpl | 12 | ||||
-rw-r--r-- | templates/user/settings/delete.tmpl | 15 |
5 files changed, 63 insertions, 59 deletions
diff --git a/routers/org/setting.go b/routers/org/setting.go index c36bafee8c..c6d2db3d97 100644 --- a/routers/org/setting.go +++ b/routers/org/setting.go @@ -70,7 +70,7 @@ func SettingsPost(ctx *middleware.Context, form auth.UpdateOrgSettingForm) { } log.Trace("Organization setting updated: %s", org.Name) ctx.Flash.Success(ctx.Tr("org.settings.update_setting_success")) - ctx.Redirect(setting.AppSubUrl + "/org/" + org.Name + "/settings") + ctx.Redirect(org.HomeLink() + "/settings") } func SettingsDelete(ctx *middleware.Context) { @@ -79,11 +79,19 @@ func SettingsDelete(ctx *middleware.Context) { org := ctx.Org.Organization if ctx.Req.Method == "POST" { - // FIXME: validate password. + if _, err := models.UserSignIn(ctx.User.Name, ctx.Query("password")); err != nil { + if models.IsErrUserNotExist(err) { + ctx.RenderWithErr(ctx.Tr("form.enterred_invalid_password"), SETTINGS_DELETE, nil) + } else { + ctx.Handle(500, "UserSignIn", err) + } + return + } + if err := models.DeleteOrganization(org); err != nil { if models.IsErrUserOwnRepos(err) { ctx.Flash.Error(ctx.Tr("form.org_still_own_repo")) - ctx.Redirect(setting.AppSubUrl + "/org/" + org.LowerName + "/settings/delete") + ctx.Redirect(org.HomeLink() + "/settings/delete") } else { ctx.Handle(500, "DeleteOrganization", err) } diff --git a/templates/base/delete_modal_actions.tmpl b/templates/base/delete_modal_actions.tmpl new file mode 100644 index 0000000000..6e9e256cb9 --- /dev/null +++ b/templates/base/delete_modal_actions.tmpl @@ -0,0 +1,10 @@ +<div class="actions"> + <div class="ui red basic inverted cancel button"> + <i class="remove icon"></i> + {{.i18n.Tr "modal.no"}} + </div> + <div class="ui green basic inverted ok button"> + <i class="checkmark icon"></i> + {{.i18n.Tr "modal.yes"}} + </div> +</div>
\ No newline at end of file diff --git a/templates/org/settings/delete.tmpl b/templates/org/settings/delete.tmpl index a929fabfe2..707d6f88b2 100644 --- a/templates/org/settings/delete.tmpl +++ b/templates/org/settings/delete.tmpl @@ -1,36 +1,43 @@ -{{template "ng/base/head" .}} -{{template "ng/base/header" .}} -{{template "org/base/header" .}} -<div id="setting-wrapper" class="main-wrapper"> - <div id="org-setting" class="container clear"> - {{template "org/settings/nav" .}} - <div class="grid-4-5 left"> - <div class="setting-content"> - {{template "ng/base/alert" .}} - <div id="setting-content"> - <div id="user-profile-setting-content" class="panel panel-warning panel-radius"> - <p class="panel-header"><strong>{{.i18n.Tr "org.settings.delete_account"}}</strong></p> - <div class="panel-body panel-content"> - <span class="alert alert-red alert-radius block"><i class="octicon octicon-alert"></i>{{.i18n.Tr "org.settings.delete_prompt" | Str2html}}</span> - <form id="delete-org-form" action="{{AppSubUrl}}/org/{{.Org.LowerName}}/settings/delete" method="post"> - {{.CsrfTokenHtml}} - <p class="field"> - <span class="form-label"></span> - <button class="btn btn-red btn-large btn-radius" id="delete-org-btn" href="#delete-org-modal">{{.i18n.Tr "org.settings.confirm_delete_account"}}</button> - </p> - </form> - <div class="white-popup-block mfp-hide" id="delete-org-modal"> - <h1 class="text-red">{{.i18n.Tr "org.settings.delete_org_title"}}</h1> - <p>{{.i18n.Tr "org.settings.delete_org_desc"}}</p> - <br> - <button class="btn btn-red btn-large btn-radius" id="delete-org-submit">{{.i18n.Tr "settings.continue"}}</button> - <button class="btn btn-large btn-radius popup-modal-dismiss">{{.i18n.Tr "settings.cancel"}}</button> - </div> - </div> - </div> - </div> +{{template "base/head" .}} +<div class="organization settings delete"> + {{template "org/header" .}} + <div class="ui container"> + <div class="ui grid"> + {{template "org/settings/navbar" .}} + <div class="twelve wide column content"> + {{template "base/alert" .}} + <h4 class="ui top attached warning header"> + {{.i18n.Tr "org.settings.delete_account"}} + </h4> + <div class="ui attached warning segment"> + <div class="ui red message"> + <p class="text left"><i class="octicon octicon-alert"></i> {{.i18n.Tr "org.settings.delete_prompt" | Str2html}}</p> + </div> + <form class="ui form" id="delete-form" action="{{.Link}}" method="post"> + {{.CsrfTokenHtml}} + <input class="fake" type="password"> + <div class="inline required field {{if .Err_Password}}error{{end}}"> + <label for="password">{{.i18n.Tr "password"}}</label> + <input id="password" name="password" type="password" autofocus required> </div> + <div class="ui red button delete-button" data-type="form" data-form="#delete-form"> + {{.i18n.Tr "org.settings.confirm_delete_account"}} + </div> + </form> </div> + </div> </div> + </div> +</div> + +<div class="ui small basic delete modal"> + <div class="ui icon header"> + <i class="trash icon"></i> + {{.i18n.Tr "org.settings.delete_org_title"}} + </div> + <div class="content"> + <p>{{.i18n.Tr "org.settings.delete_org_desc"}}</p> + </div> + {{template "base/delete_modal_actions" .}} </div> -{{template "ng/base/footer" .}}
\ No newline at end of file +{{template "base/footer" .}}
\ No newline at end of file diff --git a/templates/org/settings/nav.tmpl b/templates/org/settings/nav.tmpl deleted file mode 100644 index 28af4d29a5..0000000000 --- a/templates/org/settings/nav.tmpl +++ /dev/null @@ -1,12 +0,0 @@ -<div id="setting-menu" class="grid-1-5 panel panel-radius left"> - <div class="panel-header"> - <strong>{{.i18n.Tr "org.settings"}}</strong> - </div> - <div class="panel-body"> - <ul class="menu menu-vertical switching-list grid-1-5 left"> - <li {{if .PageIsSettingsOptions}}class="current"{{end}}><a href="{{.Org.HomeLink}}/settings">{{.i18n.Tr "org.settings.options"}}</a></li> - <li {{if .PageIsSettingsHooks}}class="current"{{end}}><a href="{{.Org.HomeLink}}/settings/hooks">{{.i18n.Tr "repo.settings.hooks"}}</a></li> - <li {{if .PageIsSettingsDelete}}class="current"{{end}}><a href="{{.Org.HomeLink}}/settings/delete">{{.i18n.Tr "org.settings.delete"}}</a></li> - </ul> - </div> -</div> diff --git a/templates/user/settings/delete.tmpl b/templates/user/settings/delete.tmpl index d9a0837b5e..6b490ad291 100644 --- a/templates/user/settings/delete.tmpl +++ b/templates/user/settings/delete.tmpl @@ -1,5 +1,5 @@ {{template "base/head" .}} -<div class="user settings"> +<div class="user settings delete"> <div class="ui container"> <div class="ui grid"> {{template "user/settings/navbar" .}} @@ -10,7 +10,7 @@ </h4> <div class="ui attached warning segment"> <div class="ui red message"> - <p>{{.i18n.Tr "settings.delete_prompt" | Str2html}}</p> + <p class="text left"><i class="octicon octicon-alert"></i> {{.i18n.Tr "settings.delete_prompt" | Str2html}}</p> </div> <form class="ui form" id="delete-form" action="{{.Link}}" method="post"> {{.CsrfTokenHtml}} @@ -37,15 +37,6 @@ <div class="content"> <p>{{.i18n.Tr "settings.delete_account_desc"}}</p> </div> - <div class="actions"> - <div class="ui red basic inverted cancel button"> - <i class="remove icon"></i> - {{.i18n.Tr "modal.no"}} - </div> - <div class="ui green basic inverted ok button"> - <i class="checkmark icon"></i> - {{.i18n.Tr "modal.yes"}} - </div> - </div> + {{template "base/delete_modal_actions" .}} </div> {{template "base/footer" .}}
\ No newline at end of file |