|
@@ -21,6 +21,79 @@ import (
|
|
|
"github.com/gogits/gogs/modules/setting"
|
|
|
)
|
|
|
|
|
|
+var Funcs template.FuncMap = map[string]interface{}{
|
|
|
+ "GoVer": func() string {
|
|
|
+ return strings.Title(runtime.Version())
|
|
|
+ },
|
|
|
+ "AppName": func() string {
|
|
|
+ return setting.AppName
|
|
|
+ },
|
|
|
+ "AppSubUrl": func() string {
|
|
|
+ return setting.AppSubUrl
|
|
|
+ },
|
|
|
+ "AppVer": func() string {
|
|
|
+ return setting.AppVer
|
|
|
+ },
|
|
|
+ "AppDomain": func() string {
|
|
|
+ return setting.Domain
|
|
|
+ },
|
|
|
+ "DisableGravatar": func() bool {
|
|
|
+ return setting.DisableGravatar
|
|
|
+ },
|
|
|
+ "LoadTimes": func(startTime time.Time) string {
|
|
|
+ return fmt.Sprint(time.Since(startTime).Nanoseconds()/1e6) + "ms"
|
|
|
+ },
|
|
|
+ "AvatarLink": base.AvatarLink,
|
|
|
+ "Safe": Safe,
|
|
|
+ "Str2html": Str2html,
|
|
|
+ "TimeSince": base.TimeSince,
|
|
|
+ "RawTimeSince": base.RawTimeSince,
|
|
|
+ "FileSize": base.FileSize,
|
|
|
+ "Subtract": base.Subtract,
|
|
|
+ "Add": func(a, b int) int {
|
|
|
+ return a + b
|
|
|
+ },
|
|
|
+ "ActionIcon": ActionIcon,
|
|
|
+ "DateFmtLong": func(t time.Time) string {
|
|
|
+ return t.Format(time.RFC1123Z)
|
|
|
+ },
|
|
|
+ "DateFmtShort": func(t time.Time) string {
|
|
|
+ return t.Format("Jan 02, 2006")
|
|
|
+ },
|
|
|
+ "List": List,
|
|
|
+ "Mail2Domain": func(mail string) string {
|
|
|
+ if !strings.Contains(mail, "@") {
|
|
|
+ return "try.gogs.io"
|
|
|
+ }
|
|
|
+
|
|
|
+ return strings.SplitN(mail, "@", 2)[1]
|
|
|
+ },
|
|
|
+ "SubStr": func(str string, start, length int) string {
|
|
|
+ if len(str) == 0 {
|
|
|
+ return ""
|
|
|
+ }
|
|
|
+ end := start + length
|
|
|
+ if length == -1 {
|
|
|
+ end = len(str)
|
|
|
+ }
|
|
|
+ if len(str) < end {
|
|
|
+ return str
|
|
|
+ }
|
|
|
+ return str[start:end]
|
|
|
+ },
|
|
|
+ "DiffTypeToStr": DiffTypeToStr,
|
|
|
+ "DiffLineTypeToStr": DiffLineTypeToStr,
|
|
|
+ "Sha1": Sha1,
|
|
|
+ "ShortSha": base.ShortSha,
|
|
|
+ "Md5": base.EncodeMd5,
|
|
|
+ "ActionContent2Commits": ActionContent2Commits,
|
|
|
+ "ToUtf8": ToUtf8,
|
|
|
+ "EscapePound": func(str string) string {
|
|
|
+ return strings.Replace(strings.Replace(str, "%", "%25", -1), "#", "%23", -1)
|
|
|
+ },
|
|
|
+ "RenderCommitMessage": RenderCommitMessage,
|
|
|
+}
|
|
|
+
|
|
|
func Safe(raw string) template.HTML {
|
|
|
return template.HTML(raw)
|
|
|
}
|
|
@@ -119,81 +192,6 @@ func RenderCommitMessage(msg, urlPrefix string) template.HTML {
|
|
|
return template.HTML(fullMessage)
|
|
|
}
|
|
|
|
|
|
-var Funcs template.FuncMap = map[string]interface{}{
|
|
|
- "GoVer": func() string {
|
|
|
- return strings.Title(runtime.Version())
|
|
|
- },
|
|
|
- "AppName": func() string {
|
|
|
- return setting.AppName
|
|
|
- },
|
|
|
- "AppSubUrl": func() string {
|
|
|
- return setting.AppSubUrl
|
|
|
- },
|
|
|
- "AppVer": func() string {
|
|
|
- return setting.AppVer
|
|
|
- },
|
|
|
- "AppDomain": func() string {
|
|
|
- return setting.Domain
|
|
|
- },
|
|
|
- "DisableGravatar": func() bool {
|
|
|
- return setting.DisableGravatar
|
|
|
- },
|
|
|
- "LoadTimes": func(startTime time.Time) string {
|
|
|
- return fmt.Sprint(time.Since(startTime).Nanoseconds()/1e6) + "ms"
|
|
|
- },
|
|
|
- "AvatarLink": base.AvatarLink,
|
|
|
- "Safe": Safe,
|
|
|
- "Str2html": Str2html,
|
|
|
- "TimeSince": base.TimeSince,
|
|
|
- "RawTimeSince": base.RawTimeSince,
|
|
|
- "FileSize": base.FileSize,
|
|
|
- "Subtract": base.Subtract,
|
|
|
- "Add": func(a, b int) int {
|
|
|
- return a + b
|
|
|
- },
|
|
|
- "ActionIcon": ActionIcon,
|
|
|
- "DateFmtLong": func(t time.Time) string {
|
|
|
- return t.Format(time.RFC1123Z)
|
|
|
- },
|
|
|
- "DateFmtShort": func(t time.Time) string {
|
|
|
- return t.Format("Jan 02, 2006")
|
|
|
- },
|
|
|
- "List": List,
|
|
|
- "Mail2Domain": func(mail string) string {
|
|
|
- if !strings.Contains(mail, "@") {
|
|
|
- return "try.gogs.io"
|
|
|
- }
|
|
|
-
|
|
|
- return strings.SplitN(mail, "@", 2)[1]
|
|
|
- },
|
|
|
- "SubStr": func(str string, start, length int) string {
|
|
|
- if len(str) == 0 {
|
|
|
- return ""
|
|
|
- }
|
|
|
- end := start + length
|
|
|
- if length == -1 {
|
|
|
- end = len(str)
|
|
|
- }
|
|
|
- if len(str) < end {
|
|
|
- return str
|
|
|
- }
|
|
|
- return str[start:end]
|
|
|
- },
|
|
|
- "DiffTypeToStr": DiffTypeToStr,
|
|
|
- "DiffLineTypeToStr": DiffLineTypeToStr,
|
|
|
- "Sha1": Sha1,
|
|
|
- "ShortSha": base.ShortSha,
|
|
|
- "Md5": base.EncodeMd5,
|
|
|
- "ActionContent2Commits": ActionContent2Commits,
|
|
|
- "Oauth2Icon": Oauth2Icon,
|
|
|
- "Oauth2Name": Oauth2Name,
|
|
|
- "ToUtf8": ToUtf8,
|
|
|
- "EscapePound": func(str string) string {
|
|
|
- return strings.Replace(strings.Replace(str, "%", "%25", -1), "#", "%23", -1)
|
|
|
- },
|
|
|
- "RenderCommitMessage": RenderCommitMessage,
|
|
|
-}
|
|
|
-
|
|
|
type Actioner interface {
|
|
|
GetOpType() int
|
|
|
GetActUserName() string
|
|
@@ -251,35 +249,3 @@ func DiffLineTypeToStr(diffType int) string {
|
|
|
}
|
|
|
return "same"
|
|
|
}
|
|
|
-
|
|
|
-func Oauth2Icon(t int) string {
|
|
|
- switch t {
|
|
|
- case 1:
|
|
|
- return "fa-github-square"
|
|
|
- case 2:
|
|
|
- return "fa-google-plus-square"
|
|
|
- case 3:
|
|
|
- return "fa-twitter-square"
|
|
|
- case 4:
|
|
|
- return "fa-qq"
|
|
|
- case 5:
|
|
|
- return "fa-weibo"
|
|
|
- }
|
|
|
- return ""
|
|
|
-}
|
|
|
-
|
|
|
-func Oauth2Name(t int) string {
|
|
|
- switch t {
|
|
|
- case 1:
|
|
|
- return "GitHub"
|
|
|
- case 2:
|
|
|
- return "Google+"
|
|
|
- case 3:
|
|
|
- return "Twitter"
|
|
|
- case 4:
|
|
|
- return "腾讯 QQ"
|
|
|
- case 5:
|
|
|
- return "Weibo"
|
|
|
- }
|
|
|
- return ""
|
|
|
-}
|