aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUnknwon <u@gogs.io>2017-02-11 00:03:10 -0500
committerUnknwon <u@gogs.io>2017-02-11 00:03:10 -0500
commit0958fe5a4eddeca1c005f5022c9aaeb61b097a00 (patch)
treed7735b146732021302dca72b3a6d760ae0d2a983
parent4a1dc29e233a5da5ebf4954b5ce15bb8fc98d974 (diff)
Improve Open Graph Meta tags (#3664)
-rw-r--r--models/user.go4
-rw-r--r--modules/context/repo.go2
-rw-r--r--routers/repo/release.go2
-rw-r--r--templates/base/head.tmpl26
4 files changed, 26 insertions, 8 deletions
diff --git a/models/user.go b/models/user.go
index 6a7365ab..91aff928 100644
--- a/models/user.go
+++ b/models/user.go
@@ -197,6 +197,10 @@ func (u *User) HomeLink() string {
return setting.AppSubUrl + "/" + u.Name
}
+func (u *User) HTMLURL() string {
+ return setting.AppUrl + u.Name
+}
+
// GenerateEmailActivateCode generates an activate code based on user information and given e-mail.
func (u *User) GenerateEmailActivateCode(email string) string {
code := base.CreateTimeLimitCode(
diff --git a/modules/context/repo.go b/modules/context/repo.go
index 8320afab..924898aa 100644
--- a/modules/context/repo.go
+++ b/modules/context/repo.go
@@ -242,7 +242,7 @@ func RepoAssignment(args ...bool) macaron.Handler {
tags, err := ctx.Repo.GitRepo.GetTags()
if err != nil {
- ctx.Handle(500, fmt.Sprintf("GetTags '%d'", ctx.Repo.Repository.RepoPath()), err)
+ ctx.Handle(500, fmt.Sprintf("GetTags '%s'", ctx.Repo.Repository.RepoPath()), err)
return
}
ctx.Data["Tags"] = tags
diff --git a/routers/repo/release.go b/routers/repo/release.go
index b233116a..f74fc7b6 100644
--- a/routers/repo/release.go
+++ b/routers/repo/release.go
@@ -55,7 +55,7 @@ func Releases(ctx *context.Context) {
rawTags, err := ctx.Repo.GitRepo.GetTags()
if err != nil {
- ctx.Handle(500, fmt.Sprintf("GetTags '%d'", ctx.Repo.Repository.RepoPath()), err)
+ ctx.Handle(500, fmt.Sprintf("GetTags '%s'", ctx.Repo.Repository.RepoPath()), err)
return
}
diff --git a/templates/base/head.tmpl b/templates/base/head.tmpl
index 3014b6ba..e0180114 100644
--- a/templates/base/head.tmpl
+++ b/templates/base/head.tmpl
@@ -4,7 +4,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="author" content="{{if .Repository}}{{.Owner.Name}}{{else}}Gogs - Go Git Service{{end}}" />
- <meta name="description" content="{{if .Repository}}{{.Repository.Name}}{{if .Repository.Description}} - {{.Repository.Description}}{{end}}{{else}}Gogs (Go Git Service) is a painless self-hosted Git service written in Go{{end}}" />
+ <meta name="description" content="{{if .Repository}}{{.Repository.Name}}{{if .Repository.Description}} - {{.Repository.Description}}{{end}}{{else}}Gogs (Go Git Service) is a painless self-hosted Git service{{end}}" />
<meta name="keywords" content="go, git, self-hosted, gogs">
<meta name="referrer" content="no-referrer" />
<meta name="_csrf" content="{{.CsrfToken}}" />
@@ -15,11 +15,25 @@
{{end}}
<!-- Open Graph Tags -->
- <meta property="og:image" content="{{AppUrl}}img/gogs-lg.png" />
- <meta property="og:image" content="{{AppUrl}}img/gogs-large-resize.png" />
- <meta property="og:title" content="{{if .Title}}{{.Title}} - {{end}}{{AppName}}">
- <meta property="og:site_name" content="{{AppName}}">
- <meta property="og:description" content="{{if .Repository}}{{.Repository.Name}}{{if .Repository.Description}} - {{.Repository.Description}}{{end}}{{else}}Gogs (Go Git Service) is a painless self-hosted Git service written in Go{{end}}">
+ {{if .PageIsUserProfile}}
+ <meta property="og:url" content="{{.Owner.HTMLURL}}" />
+ <meta property="og:type" content="profile" />
+ <meta property="og:title" content="{{.Owner.Name}}{{if .Owner.FullName}} ({{.Owner.FullName}}){{end}}">
+ <meta property="og:description" content="{{.Owner.Name}} has {{.Owner.NumFollowers}} followers and is following {{.Owner.NumFollowing}} people.">
+ <meta property="og:image" content="{{.Owner.AvatarLink}}" />
+ {{else if .Repository}}
+ <meta property="og:url" content="{{.Repository.HTMLURL}}" />
+ <meta property="og:type" content="object" />
+ <meta property="og:title" content="{{.Repository.FullName}}">
+ <meta property="og:description" content="{{.Repository.Description}}">
+ {{else}}
+ <meta property="og:url" content="{{AppUrl}}" />
+ <meta property="og:type" content="website" />
+ <meta property="og:title" content="{{AppName}}">
+ <meta property="og:description" content="Gogs (Go Git Service) is a painless self-hosted Git service.">
+ <meta property="og:image" content="{{AppUrl}}img/gogs-lg.png" />
+ <meta property="og:site_name" content="Gogs - Go Git Service">
+ {{end}}
<link rel="shortcut icon" href="{{AppSubUrl}}/img/favicon.png" />