support duoshuo mirror of gravatar

This commit is contained in:
Unknwon 2014-11-16 20:27:04 -05:00
parent 4c770b87c5
commit 340a4595dd
8 changed files with 20 additions and 6 deletions

View file

@ -167,6 +167,8 @@ SESSION_LIFE_TIME = 86400
[picture] [picture]
; The place to picture data, either "server" or "qiniu", default is "server" ; The place to picture data, either "server" or "qiniu", default is "server"
SERVICE = server SERVICE = server
; Chinese users can choose "duoshuo"
GRAVATAR_SOURCE = gravatar
DISABLE_GRAVATAR = false DISABLE_GRAVATAR = false
[attachment] [attachment]

View file

@ -17,7 +17,7 @@ import (
"github.com/gogits/gogs/modules/setting" "github.com/gogits/gogs/modules/setting"
) )
const APP_VER = "0.5.8.1114 Beta" const APP_VER = "0.5.8.1116 Beta"
func init() { func init() {
runtime.GOMAXPROCS(runtime.NumCPU()) runtime.GOMAXPROCS(runtime.NumCPU())

View file

@ -100,7 +100,7 @@ func (u *User) AvatarLink() string {
} else if setting.Service.EnableCacheAvatar { } else if setting.Service.EnableCacheAvatar {
return setting.AppSubUrl + "/avatar/" + u.Avatar return setting.AppSubUrl + "/avatar/" + u.Avatar
} }
return "//1.gravatar.com/avatar/" + u.Avatar return setting.GravatarSource + u.Avatar
} }
// NewGitSig generates and returns the signature of given user. // NewGitSig generates and returns the signature of given user.

View file

@ -207,6 +207,7 @@ const (
PUSH HookEventType = "push" PUSH HookEventType = "push"
) )
// FIXME: just use go-gogs-client structs maybe?
type PayloadAuthor struct { type PayloadAuthor struct {
Name string `json:"name"` Name string `json:"name"`
Email string `json:"email"` Email string `json:"email"`

View file

@ -180,7 +180,7 @@ func AvatarLink(email string) string {
} else if setting.Service.EnableCacheAvatar { } else if setting.Service.EnableCacheAvatar {
return setting.AppSubUrl + "/avatar/" + EncodeMd5(email) return setting.AppSubUrl + "/avatar/" + EncodeMd5(email)
} }
return "//1.gravatar.com/avatar/" + EncodeMd5(email) return setting.GravatarSource + EncodeMd5(email)
} }
// Seconds-based time units // Seconds-based time units

View file

@ -67,6 +67,7 @@ var (
// Picture settings. // Picture settings.
PictureService string PictureService string
GravatarSource string
DisableGravatar bool DisableGravatar bool
// Log settings. // Log settings.
@ -257,8 +258,13 @@ func NewConfigContext() {
} }
ScriptType = Cfg.MustValue("repository", "SCRIPT_TYPE", "bash") ScriptType = Cfg.MustValue("repository", "SCRIPT_TYPE", "bash")
PictureService = Cfg.MustValueRange("picture", "SERVICE", "server", PictureService = Cfg.MustValueRange("picture", "SERVICE", "server", []string{"server"})
[]string{"server"}) switch Cfg.MustValue("picture", "GRAVATAR_SOURCE", "gravatar") {
case "duoshuo":
GravatarSource = "http://gravatar.duoshuo.com/avatar/"
default:
GravatarSource = "//1.gravatar.com/avatar/"
}
DisableGravatar = Cfg.MustBool("picture", "DISABLE_GRAVATAR") DisableGravatar = Cfg.MustBool("picture", "DISABLE_GRAVATAR")
MaxGitDiffLines = Cfg.MustInt("git", "MAX_GITDIFF_LINES", 10000) MaxGitDiffLines = Cfg.MustInt("git", "MAX_GITDIFF_LINES", 10000)

View file

@ -0,0 +1,5 @@
// Copyright 2014 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package v1

View file

@ -1 +1 @@
0.5.8.1114 Beta 0.5.8.1116 Beta