summaryrefslogtreecommitdiffstats
path: root/routers
diff options
context:
space:
mode:
authorJakobDev <jakobdev@gmx.de>2025-01-01 20:43:20 +0100
committerJakobDev <jakobdev@gmx.de>2025-01-01 20:43:20 +0100
commite99bf7f16d4503c4d2f40b11ce69ca062a208e93 (patch)
treed9c6ce18c929c13f4f52ec553bf5b794cf06a8be /routers
parentMerge pull request 'Make new table modal work when editing a issue' (#6431) f... (diff)
downloadforgejo-e99bf7f16d4503c4d2f40b11ce69ca062a208e93.tar.xz
forgejo-e99bf7f16d4503c4d2f40b11ce69ca062a208e93.zip
Rewrite OpenGraph Header
Diffstat (limited to 'routers')
-rw-r--r--routers/web/home.go3
-rw-r--r--routers/web/org/home.go6
-rw-r--r--routers/web/repo/commit.go4
-rw-r--r--routers/web/repo/issue.go3
-rw-r--r--routers/web/repo/view.go4
-rw-r--r--routers/web/repo/wiki.go3
-rw-r--r--routers/web/user/profile.go6
7 files changed, 29 insertions, 0 deletions
diff --git a/routers/web/home.go b/routers/web/home.go
index d4be0931e8..4ea961c055 100644
--- a/routers/web/home.go
+++ b/routers/web/home.go
@@ -61,6 +61,9 @@ func Home(ctx *context.Context) {
ctx.Data["PageIsHome"] = true
ctx.Data["IsRepoIndexerEnabled"] = setting.Indexer.RepoIndexerEnabled
+
+ ctx.Data["OpenGraphDescription"] = setting.UI.Meta.Description
+
ctx.HTML(http.StatusOK, tplHome)
}
diff --git a/routers/web/org/home.go b/routers/web/org/home.go
index 9ebefa334c..1b58d8fde9 100644
--- a/routers/web/org/home.go
+++ b/routers/web/org/home.go
@@ -47,6 +47,12 @@ func Home(ctx *context.Context) {
ctx.Data["PageIsUserProfile"] = true
ctx.Data["Title"] = org.DisplayName()
+ ctx.Data["OpenGraphTitle"] = ctx.ContextUser.DisplayName()
+ ctx.Data["OpenGraphType"] = "profile"
+ ctx.Data["OpenGraphImageURL"] = ctx.ContextUser.AvatarLink(ctx)
+ ctx.Data["OpenGraphURL"] = ctx.ContextUser.HTMLURL()
+ ctx.Data["OpenGraphDescription"] = ctx.ContextUser.Description
+
var orderBy db.SearchOrderBy
sortOrder := ctx.FormString("sort")
if _, ok := repo_model.OrderByFlatMap[sortOrder]; !ok {
diff --git a/routers/web/repo/commit.go b/routers/web/repo/commit.go
index a06da71429..2feb898224 100644
--- a/routers/web/repo/commit.go
+++ b/routers/web/repo/commit.go
@@ -419,6 +419,10 @@ func Diff(ctx *context.Context) {
}
}
+ ctx.Data["OpenGraphTitle"] = commit.Summary() + " ยท " + base.ShortSha(commitID)
+ ctx.Data["OpenGraphURL"] = fmt.Sprintf("%s/commit/%s", ctx.Repo.Repository.HTMLURL(), commitID)
+ _, ctx.Data["OpenGraphDescription"], _ = strings.Cut(commit.Message(), "\n")
+
ctx.HTML(http.StatusOK, tplCommitPage)
}
diff --git a/routers/web/repo/issue.go b/routers/web/repo/issue.go
index 779cbd4b6a..b537afdab5 100644
--- a/routers/web/repo/issue.go
+++ b/routers/web/repo/issue.go
@@ -2070,6 +2070,9 @@ func ViewIssue(ctx *context.Context) {
ctx.Data["RefEndName"] = git.RefName(issue.Ref).ShortName()
ctx.Data["NewPinAllowed"] = pinAllowed
ctx.Data["PinEnabled"] = setting.Repository.Issue.MaxPinned != 0
+ ctx.Data["OpenGraphTitle"] = issue.Title
+ ctx.Data["OpenGraphURL"] = issue.HTMLURL()
+ ctx.Data["OpenGraphDescription"] = issue.Content
ctx.Data["OpenGraphImageURL"] = issue.SummaryCardURL()
ctx.Data["OpenGraphImageAltText"] = ctx.Tr("repo.issues.summary_card_alt", issue.Title, issue.Repo.FullName())
diff --git a/routers/web/repo/view.go b/routers/web/repo/view.go
index fd8c1da058..9030b03a90 100644
--- a/routers/web/repo/view.go
+++ b/routers/web/repo/view.go
@@ -394,6 +394,10 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry) {
ctx.Data["FileName"] = blob.Name()
ctx.Data["RawFileLink"] = ctx.Repo.RepoLink + "/raw/" + ctx.Repo.BranchNameSubURL() + "/" + util.PathEscapeSegments(ctx.Repo.TreePath)
+ ctx.Data["OpenGraphTitle"] = ctx.Data["Title"]
+ ctx.Data["OpenGraphURL"] = fmt.Sprintf("%s%s", setting.AppURL, ctx.Data["Link"])
+ ctx.Data["OpenGraphNoDescription"] = true
+
if entry.IsLink() {
_, link, err := entry.FollowLinks()
// Errors should be allowed, because this shouldn't
diff --git a/routers/web/repo/wiki.go b/routers/web/repo/wiki.go
index 3d55afe294..070d07cdf3 100644
--- a/routers/web/repo/wiki.go
+++ b/routers/web/repo/wiki.go
@@ -535,6 +535,9 @@ func Wiki(ctx *context.Context) {
}
ctx.Data["Author"] = lastCommit.Author
+ ctx.Data["OpenGraphTitle"] = ctx.Data["Title"]
+ ctx.Data["OpenGraphURL"] = fmt.Sprintf("%s%s", setting.AppURL, ctx.Data["Link"])
+
ctx.HTML(http.StatusOK, tplWikiView)
}
diff --git a/routers/web/user/profile.go b/routers/web/user/profile.go
index 9cb392d878..de1c6850aa 100644
--- a/routers/web/user/profile.go
+++ b/routers/web/user/profile.go
@@ -63,6 +63,12 @@ func userProfile(ctx *context.Context) {
ctx.Data["Title"] = ctx.ContextUser.DisplayName()
ctx.Data["PageIsUserProfile"] = true
+ ctx.Data["OpenGraphTitle"] = ctx.ContextUser.DisplayName()
+ ctx.Data["OpenGraphType"] = "profile"
+ ctx.Data["OpenGraphImageURL"] = ctx.ContextUser.AvatarLink(ctx)
+ ctx.Data["OpenGraphURL"] = ctx.ContextUser.HTMLURL()
+ ctx.Data["OpenGraphDescription"] = ctx.ContextUser.Description
+
// prepare heatmap data
if setting.Service.EnableUserHeatmap {
data, err := activities_model.GetUserHeatmapDataByUser(ctx, ctx.ContextUser, ctx.Doer)