Finish delete user

release/v1.15
Unknown 2014-03-11 11:40:47 -04:00
parent b3de0ded70
commit 12f81de349
6 changed files with 25 additions and 14 deletions

View File

@ -1,7 +1,7 @@
Gogs - Go Git Service [![Go Walker](http://gowalker.org/api/v1/badge)](https://gowalker.org/github.com/gogits/gogs) Gogs - Go Git Service [![wercker status](https://app.wercker.com/status/ad0bdb0bc450ac6f09bc56b9640a50aa/s/ "wercker status")](https://app.wercker.com/project/bykey/ad0bdb0bc450ac6f09bc56b9640a50aa) [![Go Walker](http://gowalker.org/api/v1/badge)](https://gowalker.org/github.com/gogits/gogs)
===================== =====================
Gogs(Go Git Service) is a GitHub-like clone in the Go Programming Language. Gogs(Go Git Service) is a GitHub-like clone in the Go Programming Language, it currently supports Linux and Max OS X, but Windows has **NOT** supported yet due to installation problem with [libgit2](http://libgit2.github.com/) in Windows.
## Purpose ## Purpose
@ -9,14 +9,14 @@ There are some very good products in this category such as [gitlab](http://gitla
## Overview ## Overview
Please see [Wiki](https://github.com/gogits/gogs/wiki) for project design. Please see [Wiki](https://github.com/gogits/gogs/wiki) for project design, develop specification, change log and road map.
## Installation ## Installation
### Dependencies There are two ways to install Gogs:
- [Go Programming Language](http://golang.org): Main develop language. - [Install from binary](https://github.com/gogits/gogs/wiki/Install-from-binary)
- [libgit2](http://libgit2.github.com/)(cgo): Git data manipulation. - [Install from source](https://github.com/gogits/gogs/wiki/Install-from-source)
## Acknowledgments ## Acknowledgments

View File

@ -20,7 +20,7 @@ import (
// Test that go1.1 tag above is included in builds. main.go refers to this definition. // Test that go1.1 tag above is included in builds. main.go refers to this definition.
const go11tag = true const go11tag = true
const APP_VER = "0.0.4.0311" const APP_VER = "0.0.5.0311"
func init() { func init() {
runtime.GOMAXPROCS(runtime.NumCPU()) runtime.GOMAXPROCS(runtime.NumCPU())

View File

@ -150,10 +150,10 @@ func UpdateUser(user *User) (err error) {
// DeleteUser completely deletes everything of the user. // DeleteUser completely deletes everything of the user.
func DeleteUser(user *User) error { func DeleteUser(user *User) error {
cnt, err := GetRepositoryCount(user) count, err := GetRepositoryCount(user)
if err != nil { if err != nil {
return errors.New("modesl.GetRepositories: " + err.Error()) return errors.New("modesl.GetRepositories: " + err.Error())
} else if cnt > 0 { } else if count > 0 {
return ErrUserOwnRepos return ErrUserOwnRepos
} }

View File

@ -151,8 +151,18 @@ func Delete(data base.TmplData, req *http.Request, session sessions.Session, r r
id := auth.SignedInId(session) id := auth.SignedInId(session)
u := &models.User{Id: id} u := &models.User{Id: id}
err := models.DeleteUser(u) if err := models.DeleteUser(u); err != nil {
data["ErrorMsg"] = err data["HasError"] = true
log.Error("user.Delete: %v", data) switch err.Error() {
r.HTML(200, "base/error", nil) case models.ErrUserOwnRepos.Error():
data["ErrorMsg"] = "Your account still have ownership of repository, you have to delete or transfer them first."
default:
data["ErrorMsg"] = err
log.Error("user.Delete: %v", data)
r.HTML(200, "base/error", nil)
return
}
}
r.HTML(200, "user/delete", data)
} }

View File

@ -15,7 +15,7 @@
<div id="gogs-user-setting-container" class="col-md-9"> <div id="gogs-user-setting-container" class="col-md-9">
<form action="/user/delete" method="post" class="form-horizontal" id="gogs-user-delete"> <form action="/user/delete" method="post" class="form-horizontal" id="gogs-user-delete">
<h4>Delete Account</h4> <h4>Delete Account</h4>
<p class="alert alert-danger">Deleting your account is permanent. Sorry to see you go, if you have any feedback you can contact us.</p> <p class="alert alert-danger">{{if not .HasError}}The operation will delete your account permanently. Sorry to see you go, but we know you'll back soon.{{else}}{{.ErrorMsg}}{{end}}</p>
<div class="form-group"> <div class="form-group">
<div class="col-md-3"> <div class="col-md-3">
<button type="submit" class="btn btn-danger btn-lg">Delete Account</button> <button type="submit" class="btn btn-danger btn-lg">Delete Account</button>

1
wercker.yml Normal file
View File

@ -0,0 +1 @@
box: wercker/default