Fix notification list bugs (#25781)

Fix #25627

1. `ctx.Data["Link"]` should use relative URL but not AppURL
2. The `data-params` is incorrect because it doesn't contain "page". JS
can simply use "window.location.search" to construct the AJAX URL
3. The `data-xxx` and `id` in notification_subscriptions.tmpl were
copied&pasted, they don't have affect.
This commit is contained in:
wxiaoguang 2023-07-10 02:42:31 +08:00 committed by GitHub
parent 321383db22
commit 84c78650cc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 4 additions and 4 deletions

View file

@ -186,7 +186,7 @@ func NotificationStatusPost(ctx *context.Context) {
if ctx.Written() {
return
}
ctx.Data["Link"] = setting.AppURL + "notifications"
ctx.Data["Link"] = setting.AppSubURL + "/notifications"
ctx.Data["SequenceNumber"] = ctx.Req.PostFormValue("sequence-number")
ctx.HTML(http.StatusOK, tplNotificationDiv)

View file

@ -1,4 +1,4 @@
<div role="main" aria-label="{{.Title}}" class="page-content user notification" id="notification_div" data-params="{{.Page.GetParams}}" data-sequence-number="{{.SequenceNumber}}">
<div role="main" aria-label="{{.Title}}" class="page-content user notification" id="notification_div" data-sequence-number="{{.SequenceNumber}}">
<div class="ui container">
{{$notificationUnreadCount := call .NotificationUnreadCount}}
<div class="gt-df gt-ac gt-sb gt-mb-4">

View file

@ -1,5 +1,5 @@
{{template "base/head" .}}
<div role="main" aria-label="{{.Title}}" class="page-content user notification" id="notification_subscriptions" data-params="{{.Page.GetParams}}" data-sequence-number="{{.SequenceNumber}}">
<div role="main" aria-label="{{.Title}}" class="page-content user notification">
<div class="ui container">
<div class="ui top attached tabular menu">
<a href="{{AppSubUrl}}/notifications/subscriptions" class="{{if eq .Status 1}}active {{end}}item">

View file

@ -165,7 +165,7 @@ async function updateNotificationTable() {
if (notificationDiv.length > 0) {
const data = await $.ajax({
type: 'GET',
url: `${appSubUrl}/notifications?${notificationDiv.data('params')}`,
url: `${appSubUrl}/notifications${window.location.search}`,
data: {
'div-only': true,
'sequence-number': ++notificationSequenceNumber,