summaryrefslogtreecommitdiffstats
path: root/models
diff options
context:
space:
mode:
authorUnknwon <u@gogs.io>2015-02-22 18:24:49 -0500
committerUnknwon <u@gogs.io>2015-02-22 18:24:49 -0500
commit04164eada3bc89bb3b54aa3dea0f22203ff4aa6e (patch)
tree8c66bfea48dc2f1fc9638c212477d26fb807a743 /models
parent74a8bb93d84a75fae46cd40f2b670073bee5a593 (diff)
downloadgitea-04164eada3bc89bb3b54aa3dea0f22203ff4aa6e.tar.gz
gitea-04164eada3bc89bb3b54aa3dea0f22203ff4aa6e.zip
models: able to rename user with diff letter cases #981
- templates/org: mirror fix on name output - routers: add missing error check
Diffstat (limited to 'models')
-rw-r--r--models/org.go2
-rw-r--r--models/user.go14
2 files changed, 11 insertions, 5 deletions
diff --git a/models/org.go b/models/org.go
index 3d37a37d69..b2f9c903a4 100644
--- a/models/org.go
+++ b/models/org.go
@@ -93,7 +93,7 @@ func CreateOrganization(org, owner *User) (*User, error) {
return nil, ErrUserNameIllegal
}
- isExist, err := IsUserExist(org.Name)
+ isExist, err := IsUserExist(0, org.Name)
if err != nil {
return nil, err
} else if isExist {
diff --git a/models/user.go b/models/user.go
index 9f9b0cd7fc..a974e081f1 100644
--- a/models/user.go
+++ b/models/user.go
@@ -249,11 +249,13 @@ func (u *User) GetFullNameFallback() string {
// IsUserExist checks if given user name exist,
// the user name should be noncased unique.
-func IsUserExist(name string) (bool, error) {
+// If uid is presented, then check will rule out that one,
+// it is used when update a user name in settings page.
+func IsUserExist(uid int64, name string) (bool, error) {
if len(name) == 0 {
return false, nil
}
- return x.Get(&User{LowerName: strings.ToLower(name)})
+ return x.Where("id!=?", uid).Get(&User{LowerName: strings.ToLower(name)})
}
// IsEmailUsed returns true if the e-mail has been used.
@@ -278,7 +280,7 @@ func CreateUser(u *User) error {
return ErrUserNameIllegal
}
- isExist, err := IsUserExist(u.Name)
+ isExist, err := IsUserExist(0, u.Name)
if err != nil {
return err
} else if isExist {
@@ -397,6 +399,10 @@ func ChangeUserName(u *User, newUserName string) (err error) {
}
newUserName = strings.ToLower(newUserName)
+ if u.LowerName == newUserName {
+ // User only change letter cases.
+ return nil
+ }
// Update accesses of user.
accesses := make([]Access, 0, 10)
@@ -453,7 +459,7 @@ func ChangeUserName(u *User, newUserName string) (err error) {
// UpdateUser updates user's information.
func UpdateUser(u *User) error {
- has, err := x.Where("id!=?", u.Id).And("type=?", INDIVIDUAL).And("email=?", u.Email).Get(new(User))
+ has, err := x.Where("id!=?", u.Id).And("type=?", u.Type).And("email=?", u.Email).Get(new(User))
if err != nil {
return err
} else if has {