Fix 653
This commit is contained in:
		
							parent
							
								
									8ea7ba3afa
								
							
						
					
					
						commit
						dc53270da9
					
				
					 8 changed files with 30 additions and 9 deletions
				
			
		|  | @ -77,7 +77,9 @@ There are 5 ways to install Gogs: | |||
| 
 | ||||
| ## Contributors | ||||
| 
 | ||||
| The [core team](http://gogs.io/team) of this project. See [contributors page](https://github.com/gogits/gogs/graphs/contributors) for full list of contributors. | ||||
| - The [core team](http://gogs.io/team) of this project.  | ||||
| - See [contributors page](https://github.com/gogits/gogs/graphs/contributors) for full list of contributors. | ||||
| - See [TRANSLATORS](conf/locale/TRANSLATORS) for full list of translators. | ||||
| 
 | ||||
| ## License | ||||
| 
 | ||||
|  |  | |||
|  | @ -68,7 +68,9 @@ Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自 | |||
| 
 | ||||
| ## 贡献成员 | ||||
| 
 | ||||
| 本项目的 [开发团队](http://gogs.io/team)。您可以通过查看 [贡献者页面](https://github.com/gogits/gogs/graphs/contributors) 获取完整的贡献者列表。 | ||||
| - 本项目的 [开发团队](http://gogs.io/team)。 | ||||
| - 您可以通过查看 [贡献者页面](https://github.com/gogits/gogs/graphs/contributors) 获取完整的贡献者列表。 | ||||
| - 您可以通过查看 [TRANSLATORS](conf/locale/TRANSLATORS) 文件获取完整的翻译人员列表。 | ||||
| 
 | ||||
| ## 授权许可 | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										3
									
								
								conf/locale/TRANSLATORS
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								conf/locale/TRANSLATORS
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | |||
| # This file lists all individuals having contributed content to the translation. | ||||
| 
 | ||||
| Thomas Fanninger <gogs.thomas@fanninger.at> | ||||
|  | @ -208,6 +208,7 @@ enable_custom_avatar_helper = Enable this to disable fetch from Gravatar | |||
| choose_new_avatar = Choose new avatar | ||||
| update_avatar = Update Avatar Setting | ||||
| uploaded_avatar_not_a_image = Uploaded file is not a image. | ||||
| no_custom_avatar_available = No custom avatar available, cannot enable it. | ||||
| update_avatar_success = Your avatar setting has been updated successfully. | ||||
| 
 | ||||
| change_password = Change Password | ||||
|  |  | |||
							
								
								
									
										2
									
								
								gogs.go
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gogs.go
									
									
									
									
									
								
							|  | @ -17,7 +17,7 @@ import ( | |||
| 	"github.com/gogits/gogs/modules/setting" | ||||
| ) | ||||
| 
 | ||||
| const APP_VER = "0.5.8.1121 Beta" | ||||
| const APP_VER = "0.5.8.1122 Beta" | ||||
| 
 | ||||
| func init() { | ||||
| 	runtime.GOMAXPROCS(runtime.NumCPU()) | ||||
|  |  | |||
|  | @ -140,10 +140,14 @@ func (u *User) ValidtePassword(passwd string) bool { | |||
| 	return u.Passwd == newUser.Passwd | ||||
| } | ||||
| 
 | ||||
| // CustomAvatarPath returns user custom avatar file path.
 | ||||
| func (u *User) CustomAvatarPath() string { | ||||
| 	return filepath.Join(setting.AvatarUploadPath, com.ToStr(u.Id)) | ||||
| } | ||||
| 
 | ||||
| // UploadAvatar saves custom avatar for user.
 | ||||
| // FIXME: splite uploads to different subdirs in case we have massive users.
 | ||||
| func (u *User) UploadAvatar(data []byte) error { | ||||
| 	savePath := filepath.Join(setting.AvatarUploadPath, com.ToStr(u.Id)) | ||||
| 	u.UseCustomAvatar = true | ||||
| 
 | ||||
| 	img, _, err := image.Decode(bytes.NewReader(data)) | ||||
|  | @ -164,7 +168,7 @@ func (u *User) UploadAvatar(data []byte) error { | |||
| 	} | ||||
| 
 | ||||
| 	os.MkdirAll(setting.AvatarUploadPath, os.ModePerm) | ||||
| 	fw, err := os.Create(savePath) | ||||
| 	fw, err := os.Create(u.CustomAvatarPath()) | ||||
| 	if err != nil { | ||||
| 		sess.Rollback() | ||||
| 		return err | ||||
|  |  | |||
|  | @ -89,9 +89,6 @@ func SettingsAvatar(ctx *middleware.Context, form auth.UploadAvatarForm) { | |||
| 	defer ctx.Redirect(setting.AppSubUrl + "/user/settings") | ||||
| 
 | ||||
| 	ctx.User.UseCustomAvatar = form.Enable | ||||
| 	if err := models.UpdateUser(ctx.User); err != nil { | ||||
| 		ctx.Flash.Error(err.Error()) | ||||
| 	} | ||||
| 
 | ||||
| 	if form.Avatar != nil { | ||||
| 		fr, err := form.Avatar.Open() | ||||
|  | @ -113,7 +110,19 @@ func SettingsAvatar(ctx *middleware.Context, form auth.UploadAvatarForm) { | |||
| 			ctx.Flash.Error(err.Error()) | ||||
| 			return | ||||
| 		} | ||||
| 	} else { | ||||
| 		// In case no avatar at all.
 | ||||
| 		if form.Enable && !com.IsFile(ctx.User.CustomAvatarPath()) { | ||||
| 			ctx.Flash.Error(ctx.Tr("settings.no_custom_avatar_available")) | ||||
| 			return | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	if err := models.UpdateUser(ctx.User); err != nil { | ||||
| 		ctx.Flash.Error(err.Error()) | ||||
| 		return | ||||
| 	} | ||||
| 
 | ||||
| 	ctx.Flash.Success(ctx.Tr("settings.update_avatar_success")) | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -1 +1 @@ | |||
| 0.5.8.1121 Beta | ||||
| 0.5.8.1122 Beta | ||||
		Loading…
	
		Reference in a new issue