From 76d28c7e58740db6f5bb70a2c1e55fa99e069bbd Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Fri, 22 Dec 2023 15:36:17 +0000 Subject: [PATCH 01/19] chore: incrementing version number - v3.6.1 --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index c4e60cf54f..a28c43414e 100644 --- a/install/package.json +++ b/install/package.json @@ -2,7 +2,7 @@ "name": "nodebb", "license": "GPL-3.0", "description": "NodeBB Forum", - "version": "3.6.0", + "version": "3.6.1", "homepage": "https://www.nodebb.org", "repository": { "type": "git", From 1e4abdbfd29edfde8e2c9830435341bcebe7b7e6 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Fri, 22 Dec 2023 15:36:18 +0000 Subject: [PATCH 02/19] chore: update changelog for v3.6.1 --- CHANGELOG.md | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 84f0853701..1d0b8e2fc1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,47 @@ +#### v3.6.1 (2023-12-22) + +##### Chores + +* incrementing version number - v3.6.0 (4cdf85f8) +* update changelog for v3.6.0 (eb92cee6) +* incrementing version number - v3.5.3 (ed0e8783) +* incrementing version number - v3.5.2 (52fbb2da) +* incrementing version number - v3.5.1 (4c543488) +* incrementing version number - v3.5.0 (d06fb4f0) +* incrementing version number - v3.4.3 (5c984250) +* incrementing version number - v3.4.2 (3f0dac38) +* incrementing version number - v3.4.1 (01e69574) +* incrementing version number - v3.4.0 (fd9247c5) +* incrementing version number - v3.3.9 (5805e770) +* incrementing version number - v3.3.8 (a5603565) +* incrementing version number - v3.3.7 (b26f1744) +* incrementing version number - v3.3.6 (7fb38792) +* incrementing version number - v3.3.4 (a67f84ea) +* incrementing version number - v3.3.3 (f94d239b) +* incrementing version number - v3.3.2 (ec9dac97) +* incrementing version number - v3.3.1 (151cc68f) +* incrementing version number - v3.3.0 (fc1ad70f) +* incrementing version number - v3.2.3 (b06d3e63) +* incrementing version number - v3.2.2 (758ecfcd) +* incrementing version number - v3.2.1 (20145074) +* incrementing version number - v3.2.0 (9ecac38e) +* incrementing version number - v3.1.7 (0b4e81ab) +* incrementing version number - v3.1.6 (b3a3b130) +* incrementing version number - v3.1.5 (ec19343a) +* incrementing version number - v3.1.4 (2452783c) +* incrementing version number - v3.1.3 (3b4e9d3f) +* incrementing version number - v3.1.2 (40fa3489) +* incrementing version number - v3.1.1 (40250733) +* incrementing version number - v3.1.0 (0cb386bd) +* incrementing version number - v3.0.1 (26f6ea49) +* incrementing version number - v3.0.0 (224e08cd) + +##### Bug Fixes + +* #12243, don' set process.env.config if it doesnt exist (788404c1) +* lang key for move notification closes #12241 (48a2b5f7) +* dont send topic notification to poster (e72b26f5) + #### v3.6.0 (2023-12-20) ##### Chores From 0a3a2e0e69bd31e3ed18cb73055c8a644d466813 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Fri, 22 Dec 2023 19:58:55 -0500 Subject: [PATCH 03/19] remove body short from subject --- src/categories/topics.js | 1 - src/topics/tags.js | 1 - 2 files changed, 2 deletions(-) diff --git a/src/categories/topics.js b/src/categories/topics.js index a8396a4ab2..64248890c0 100644 --- a/src/categories/topics.js +++ b/src/categories/topics.js @@ -236,7 +236,6 @@ module.exports = function (Categories) { const notification = await notifications.create({ type: 'new-topic-in-category', nid: `new_topic:tid:${postData.topic.tid}:uid:${exceptUid}`, - subject: bodyShort, bodyShort: bodyShort, bodyLong: postData.content, pid: postData.pid, diff --git a/src/topics/tags.js b/src/topics/tags.js index 2df6701171..6cbe54b646 100644 --- a/src/topics/tags.js +++ b/src/topics/tags.js @@ -620,7 +620,6 @@ module.exports = function (Topics) { const notification = await notifications.create({ type: 'new-topic-with-tag', nid: `new_topic:tid:${postData.topic.tid}:uid:${exceptUid}`, - subject: bodyShort, bodyShort: bodyShort, bodyLong: postData.content, pid: postData.pid, From 563e03b6ae5cbf627c713f1e02ed0eca101cbc6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Sat, 23 Dec 2023 00:16:19 -0500 Subject: [PATCH 04/19] perf: dont load all followed tids on unread/recent?filter=watched --- src/topics/sorted.js | 13 ++++++++++++- src/topics/unread.js | 16 +++++++--------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/topics/sorted.js b/src/topics/sorted.js index a1d809fb48..8348f4ceaa 100644 --- a/src/topics/sorted.js +++ b/src/topics/sorted.js @@ -49,7 +49,7 @@ module.exports = function (Topics) { tids = await Topics.filterWatchedTids(tids, params.uid); } } else if (params.filter === 'watched') { - tids = await db.getSortedSetRevRange(`uid:${params.uid}:followed_tids`, 0, -1); + tids = await getWatchedTopics(params); } else if (params.cids) { tids = await getCidTids(params); } else if (params.tags.length) { @@ -63,6 +63,17 @@ module.exports = function (Topics) { return tids; } + async function getWatchedTopics(params) { + const sortSet = ['recent', 'old'].includes(params.sort) ? 'topics:recent' : `topics:${params.sort}`; + const method = params.sort === 'old' ? 'getSortedSetIntersect' : 'getSortedSetRevIntersect'; + return await db[method]({ + sets: [sortSet, `uid:${params.uid}:followed_tids`], + weights: [1, 0], + start: 0, + stop: meta.config.recentMaxTopics - 1, + }); + } + async function getTagTids(params) { const sets = [ params.sort === 'old' ? diff --git a/src/topics/unread.js b/src/topics/unread.js index 9c54445233..bb8e207163 100644 --- a/src/topics/unread.js +++ b/src/topics/unread.js @@ -210,15 +210,13 @@ module.exports = function (Topics) { } async function getFollowedTids(params) { - let tids = await db.getSortedSetMembers(`uid:${params.uid}:followed_tids`); - const filterCids = params.cid && params.cid.map(cid => parseInt(cid, 10)); - if (filterCids) { - const topicData = await Topics.getTopicsFields(tids, ['tid', 'cid']); - tids = topicData.filter(t => filterCids.includes(t.cid)).map(t => t.tid); - } - const scores = await db.sortedSetScores('topics:recent', tids); - const data = tids.map((tid, index) => ({ value: String(tid), score: scores[index] })); - return data.filter(item => item.score > params.cutoff); + const keys = params.cid ? + params.cid.map(cid => `cid:${cid}:tids:lastposttime`) : + 'topics:recent'; + + const recentTopicData = await db.getSortedSetRevRangeByScoreWithScores(keys, 0, -1, '+inf', params.cutoff); + const isFollowed = await db.isSortedSetMembers(`uid:${params.uid}:followed_tids`, recentTopicData.map(t => t.tid)); + return recentTopicData.filter((t, i) => isFollowed[i]); } async function filterTidsThatHaveBlockedPosts(params) { From 24265fce5abdc7b0d5717d0861fcd2597ff1a0a1 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Sat, 23 Dec 2023 09:18:17 +0000 Subject: [PATCH 05/19] Latest translations and fallbacks --- public/language/nb/admin/admin.json | 12 +++++------ public/language/nb/admin/settings/user.json | 2 +- public/language/nb/category.json | 2 +- public/language/nb/notifications.json | 10 ++++----- public/language/nb/pages.json | 4 ++-- public/language/nb/topic.json | 24 ++++++++++----------- public/language/nb/user.json | 20 ++++++++--------- public/language/nb/users.json | 2 +- 8 files changed, 38 insertions(+), 38 deletions(-) diff --git a/public/language/nb/admin/admin.json b/public/language/nb/admin/admin.json index df7e3493a5..a920002d3a 100644 --- a/public/language/nb/admin/admin.json +++ b/public/language/nb/admin/admin.json @@ -4,15 +4,15 @@ "acp-title": "%1 | NodeBB Admin Kontrollpanel", "settings-header-contents": "Innhold", - "changes-saved": "Changes Saved", + "changes-saved": "Endringer lagret", "changes-saved-message": "Your changes to the NodeBB configuration have been saved.", "changes-not-saved": "Endringer ikke lagret", "changes-not-saved-message": "NodeBB støtte på et problem ved lagring av endringer. (%1)", - "save-changes": "Save changes", + "save-changes": "Lagre endringer", "min": "Min:", "max": "Max:", - "view": "View", - "edit": "Edit", - "add": "Add", - "select-icon": "Select Icon" + "view": "Se", + "edit": "Rediger", + "add": "Legg til", + "select-icon": "Velg ikon" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/user.json b/public/language/nb/admin/settings/user.json index 7003c8ec3e..3f30cf6625 100644 --- a/public/language/nb/admin/settings/user.json +++ b/public/language/nb/admin/settings/user.json @@ -79,7 +79,7 @@ "follow-replied-topics": "Følg tråder du svarer på", "default-notification-settings": "Standard varslingsinnstillinger", "categoryWatchState": "Default category watch state", - "categoryWatchState.tracking": "Tracking", + "categoryWatchState.tracking": "Sporing", "categoryWatchState.notwatching": "Overvåker ikke", "categoryWatchState.ignoring": "Ignorerer", "restrictions-new": "Nye brukerbegrensninger ", diff --git a/public/language/nb/category.json b/public/language/nb/category.json index a55e20d5ce..3f96a2e6d1 100644 --- a/public/language/nb/category.json +++ b/public/language/nb/category.json @@ -10,7 +10,7 @@ "watch": "Overvåk", "ignore": "Ignorer", "watching": "Følger", - "tracking": "Tracking", + "tracking": "Sporing", "not-watching": "Følger ikke", "ignoring": "Ignorerer", "watching.description": "Notify me of new topics.
Show topics in unread & recent", diff --git a/public/language/nb/notifications.json b/public/language/nb/notifications.json index cccf2fcb23..29752bf30d 100644 --- a/public/language/nb/notifications.json +++ b/public/language/nb/notifications.json @@ -13,14 +13,14 @@ "all": "Alle", "topics": "Emner", "tags": "Tags", - "categories": "Categories", + "categories": "Kategorier", "replies": "Svar", "chat": "Samtaler", "group-chat": "Gruppesamtaler", "public-chat": "Public Chats", "follows": "Følger", "upvote": "Oppstemmer", - "awards": "Awards", + "awards": "Tildelninger", "new-flags": "Nye flagg", "my-flags": "Flagg som er tildelt til meg", "bans": "Forbud", @@ -56,7 +56,7 @@ "user-posted-topic-with-tag-dual": "%1 has posted a new topic with tags %2 and %3", "user-posted-topic-with-tag-triple": "%1 has posted a new topic with tags %2, %3 and %4", "user-posted-topic-with-tag-multiple": "%1 has posted a new topic with tags %2", - "user-posted-topic-in-category": "%1 has posted a new topic in %2", + "user-posted-topic-in-category": "%1 har publisert et nytt innlegg i %2", "user-started-following-you": "%1 begynte å følge deg.", "user-started-following-you-dual": "%1 og 2% har begynt å følge deg.", "user-started-following-you-triple": "%1, %2 and %3 started following you.", @@ -83,7 +83,7 @@ "notificationType-upvote": "Når noen stemmer opp innlegget ditt", "notificationType-new-topic": "Når noen du følger følger legger ut et emne", "notificationType-new-topic-with-tag": "When a topic is posted with a tag you follow", - "notificationType-new-topic-in-category": "When a topic is posted in a category you are watching", + "notificationType-new-topic-in-category": "Når et emne er lagt ut i en kategori du ser på", "notificationType-new-reply": "Når et nytt svar er lagt ut i et emne du overvåker", "notificationType-post-edit": "Når et innlegg er redigert i et emne du overvåker", "notificationType-follow": "Når noen starter å følge deg", @@ -97,5 +97,5 @@ "notificationType-post-queue": "Når et nytt innlegg er satt i kø", "notificationType-new-post-flag": "Når ett nytt innlegg er flagget", "notificationType-new-user-flag": "Når en bruker er flagget", - "notificationType-new-reward": "When you earn a new reward" + "notificationType-new-reward": "Når du får en ny tildelning " } \ No newline at end of file diff --git a/public/language/nb/pages.json b/public/language/nb/pages.json index 26b7cbf6d8..9c194d3689 100644 --- a/public/language/nb/pages.json +++ b/public/language/nb/pages.json @@ -48,7 +48,7 @@ "account/topics": "Emner opprettet av %1", "account/groups": "%1 sine grupper", "account/watched-categories": "%1's overvåkede kategorier", - "account/watched-tags": "%1's Watched Tags", + "account/watched-tags": "%1's overvåkede tagger", "account/bookmarks": "%1's bokmerkede innlegg", "account/settings": "Brukerinnstillinger", "account/settings-of": "Changing settings of %1", @@ -62,7 +62,7 @@ "account/uploads": "Opplastninger av %1", "account/sessions": "Påloggingsøkter", "confirm": "E-post bekreftet", - "maintenance.text": "%1 is currently undergoing maintenance.
Please come back another time.", + "maintenance.text": "%1 er for øyeblikket under vedlikehold.
Vennligst kom tilbake en annen gang.", "maintenance.messageIntro": "I tillegg har administratoren skrevet denne meldingen:", "throttled.text": "%1 er for øyeblikket ikke tilgjengelig på grunn av overdreven belastning. Kom tilbake en annen gang." } \ No newline at end of file diff --git a/public/language/nb/topic.json b/public/language/nb/topic.json index 40a60986bc..643a254e28 100644 --- a/public/language/nb/topic.json +++ b/public/language/nb/topic.json @@ -40,11 +40,11 @@ "copy-ip": "Kopier IP", "ban-ip": "Forby IP", "view-history": "Redigere historie", - "wrote-ago": "wrote ", - "wrote-on": "wrote on ", - "replied-to-user-ago": "replied to %3 ", - "replied-to-user-on": "replied to %3 on ", - "user-locked-topic-ago": "%1 locked this topic %2", + "wrote-ago": "skrev ", + "wrote-on": "skrev på ", + "replied-to-user-ago": "svarte på %3 ", + "replied-to-user-on": "svarte på %3", + "user-locked-topic-ago": "%1 låste dette emnet %2", "user-locked-topic-on": "%1 locked this topic on %2", "user-unlocked-topic-ago": "%1 unlocked this topic %2", "user-unlocked-topic-on": "%1 unlocked this topic on %2", @@ -123,14 +123,14 @@ "post-restore-confirm": "Er du sikker på at du vil gjenopprette dette innlegget?", "post-purge-confirm": "Er du sikker på at du vil renske dette innlegget?", "pin-modal-expiry": "Utløpsdato", - "pin-modal-help": "Du kan eventuelt angi en utløpsdato for de festede emnene her. Alternativt kan du la dette feltet stå tomt for å holde emnet festet til det manuelt løsnes.", + "pin-modal-help": "Du kan eventuelt angi en utløpsdato for de festede emne(ne) her. Alternativt kan du la dette feltet stå tomt for å holde emnet festet til det manuelt løsnes.", "load-categories": "Laster kategorier", "confirm-move": "Flytt", "confirm-fork": "Forgren", "bookmark": "Bokmerke", "bookmarks": "Bokmerker", "bookmarks.has-no-bookmarks": "Du har ikke bokmerket noen innlegg ennå.", - "copy-permalink": "Copy Permalink", + "copy-permalink": "Kopier permalink", "loading-more-posts": "Laster flere innlegg", "move-topic": "Flytt tård", "move-topics": "Flytt tråder", @@ -138,7 +138,7 @@ "post-moved": "Innlegg flyttet!", "fork-topic": "Forgren tråd", "enter-new-topic-title": "Tast inn tittel på emne", - "fork-topic-instruction": "Click the posts you want to fork, enter a title for the new topic and click fork topic", + "fork-topic-instruction": "Klikk på innleggene du vil dele, skriv inn en tittel for det nye emnet og klikk på emnet", "fork-no-pids": "Ingen innlegg valgt!", "no-posts-selected": "Ingen innlegg valgt.", "x-posts-selected": "%1 innlegg valgt", @@ -157,7 +157,7 @@ "change-owner-instruction": "Klikk på innleggene du vil tildele til en annen bruker", "composer.title-placeholder": "Skriv din tråd-tittel her", "composer.handle-placeholder": "Skriv inn navnet ditt / signatur her", - "composer.hide": "Hide", + "composer.hide": "Gjem", "composer.discard": "Forkast", "composer.submit": "Send", "composer.additional-options": "Ytterligere alternativer", @@ -204,7 +204,7 @@ "last-post": "Seneste innlegg", "go-to-my-next-post": "Gå til mitt neste innlegg", "no-more-next-post": "Du har ikke flere innlegg i dette emnet", - "post-quick-reply": "Quick reply", - "navigator.index": "Post %1 of %2", - "navigator.unread": "%1 unread" + "post-quick-reply": "Raskt svar", + "navigator.index": "Innlegg %1 av %2", + "navigator.unread": "%1 ulest" } \ No newline at end of file diff --git a/public/language/nb/user.json b/public/language/nb/user.json index 5be3ee4b59..f5a33e9593 100644 --- a/public/language/nb/user.json +++ b/public/language/nb/user.json @@ -22,7 +22,7 @@ "delete-account-confirm": "Er du sikker på at du vil anonymisere alle innleggene dine og slette brukerkonten?
Denne handlingen er irreversibel, og du vil ikke kunne gjenopprette noen av dataene dine

Skriv inn passordet ditt for å bekrefte at du ønsker å slette denne brukerkontoen.", "delete-this-account-confirm": "Er du sikker på at du vil slette denne brukerkontoen og la innholdet ligge igjen?
Denne handlingen er irreversibel, innlegg blir anonymisert, og du vil ikke kunne gjenopprette innleggsassosiasjoner med den slettede kontoen

", "delete-account-content-confirm": "Er du sikker på at du vil slette innholdet på denne brukerkontoen (innlegg / emner / opplastinger)?
Denne handlingen er irreversibel, og du vil ikke kunne gjenopprette data

", - "delete-all-confirm": "
Er du sikker på at du vil slette denne kontoen og alt innholdet (innlegg / emner / opplastinger)?Denne handlingen er irreversibel, og du vil ikke kunne gjenopprette data\n

", + "delete-all-confirm": "
Er du sikker på at du vil slette denne kontoen og alt innholdet (innlegg / emner / opplastinger)?Denne handlingen er irreversibel, og du vil ikke kunne gjenopprette data

", "account-deleted": "Konto slettet", "account-content-deleted": "Kontoinnhold slettet", "fullname": "Fullt navn", @@ -62,7 +62,7 @@ "change-picture": "Bytt bilde", "change-username": "Endre brukernavn", "change-email": "Endre e-post", - "email-updated": "Email Updated", + "email-updated": "E-post oppdatert", "email-same-as-password": "Skriv inn ditt nåværende passord for å fortsette – du har skrevet inn den nye e-posten din igjen", "edit": "Endre", "edit-profile": "Rediger profil", @@ -71,7 +71,7 @@ "upload-new-picture": "Last opp nytt bidle", "upload-new-picture-from-url": "Last opp nytt bilde fra URL", "current-password": "Gjeldende passord", - "new-password": "New Password", + "new-password": "Nytt passord", "change-password": "Endre passord", "change-password-error": "Ugyldig passord!", "change-password-error-wrong-current": "Ditt gjeldende passord er ikke korrekt!", @@ -119,8 +119,8 @@ "paginate-description": "Bruk sidevelger for tråder og innlegg istedet for uendelig scrolling", "topics-per-page": "Tråd per side", "posts-per-page": "Innlegg per side", - "category-topic-sort": "Category topic sort", - "topic-post-sort": "Topic post sort", + "category-topic-sort": "Kategorsortering", + "topic-post-sort": "Sortering av emneinnlegg", "max-items-per-page": "Maksimum %1", "acp-language": "Administrer sidespråk", "notifications": "Notifikasjoner", @@ -143,14 +143,14 @@ "group-order-help": "Velg en gruppe og bruk pilene for å gi titler", "no-group-title": "Ingen gruppetittel", "select-skin": "Velg et skin", - "default": "Default (%1)", - "no-skin": "No Skin", + "default": "Normalverdi (%1)", + "no-skin": "Ingen skin", "select-homepage": "Velg en hjemmeside", "homepage": "Hjemmeside", "homepage-description": "Velg en side du vil bruke som forumets hjemmeside, eller 'Ingen' for å bruke standardhjemmesiden.", "custom-route": "Tilpasset hjemmeside-rute", "custom-route-help": "Skriv inn et rutenavn her uten noen forrige skråstrek (f.eks. \"Nylig\" eller \"kategori / 2 / generell diskusjon\")", - "sso.title": "Single Sign-on Services", + "sso.title": "Enkel innloggingstjenester", "sso.associated": "Assosiert med", "sso.not-associated": "Klikk her for å assosiere med", "sso.dissociate": "Separer", @@ -176,8 +176,8 @@ "info.moderation-note.success": "Moderasjonsnotat ikke lagret", "info.moderation-note.add": "Legg til notat", "sessions.description": "Denne siden lar deg se alle aktivitetsøkter på dette forumet og tilbakekalle dem om nødvendig. Du kan tilbakekalle din egen økt ved å logge av brukerkontoen din.", - "revoke-session": "Revoke Session", - "browser-version-on-platform": "%1 %2 on %3", + "revoke-session": "Gjenopprett økten", + "browser-version-on-platform": "%1 %2 på %3", "consent.title": "Dine rettigheter & amp; Samtykke", "consent.lead": "Dette forumet samler inn og behandler dine personopplysninger.", "consent.intro": "Vi bruker kun denne informasjonen for å tilpasse brukeropplevelsen din i dette nettforumet, og for å knytte innleggene du lager til brukerkontoen din. Under registreringstrinnet i Felles brukerhåndtering ble du bedt om å oppgi fullt navn og en e-postadresse. Du kan også velge å oppgi tilleggsinformasjon for å fullføre brukerprofilen din på dette nettstedet.

Vi oppbevarer denne informasjonen så lenge brukerprofilen din er aktiv, og du kan når som helst trekke tilbake samtykke ved å slette kontoen din. Du kan når som helst be om en kopi av ditt bidrag til dette nettstedet, via dine rettigheter & Samtykkeside.

Hvis du har spørsmål eller bekymringer, oppfordrer vi deg til å ta kontakt med forumets administrative team.", diff --git a/public/language/nb/users.json b/public/language/nb/users.json index bfb1da44f2..173ea13547 100644 --- a/public/language/nb/users.json +++ b/public/language/nb/users.json @@ -1,5 +1,5 @@ { - "all-users": "All Users", + "all-users": "Alle brukere", "latest-users": "Seneste brukere", "top-posters": "Flest innlegg", "most-reputation": "Best omdømme", From a74b51415c41f8f50b696d74a1db731bd34e80dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Sat, 23 Dec 2023 17:58:03 -0500 Subject: [PATCH 06/19] fix: stricter selector for sort --- public/src/modules/sort.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/src/modules/sort.js b/public/src/modules/sort.js index c7e5e8900a..2fcbb67897 100644 --- a/public/src/modules/sort.js +++ b/public/src/modules/sort.js @@ -12,8 +12,8 @@ define('sort', ['components'], function (components) { currentSetting.find('i').addClass('fa-check'); $('body') - .off('click', '[component="thread/sort"] a') - .on('click', '[component="thread/sort"] a', function () { + .off('click', '[component="thread/sort"] a[data-sort]') + .on('click', '[component="thread/sort"] a[data-sort]', function () { const newSetting = $(this).attr('data-sort'); const urlParams = utils.params(); urlParams.sort = newSetting; From 8867f243e8ebb1712c16b5d9c154df7de3b97aa1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 27 Dec 2023 17:43:56 -0500 Subject: [PATCH 07/19] fix: closes #12246, direction is passed in as string as query param with new api call cid isn't necessary in query params since its in path --- public/src/client/category.js | 1 - src/api/categories.js | 2 +- src/socket.io/topics/infinitescroll.js | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/public/src/client/category.js b/public/src/client/category.js index c452273761..b4f0bb50cb 100644 --- a/public/src/client/category.js +++ b/public/src/client/category.js @@ -127,7 +127,6 @@ define('forum/category', [ hooks.fire('action:topics.loading'); const params = utils.params(); infinitescroll.loadMore(`/categories/${ajaxify.data.cid}/topics`, { - cid: ajaxify.data.cid, after: after, direction: direction, query: params, diff --git a/src/api/categories.js b/src/api/categories.js index 892c8e3d6a..db682fb245 100644 --- a/src/api/categories.js +++ b/src/api/categories.js @@ -128,7 +128,7 @@ categoriesAPI.getTopics = async (caller, data) => { let start = Math.max(0, parseInt(data.after || 0, 10)); - if (data.direction === -1) { + if (parseInt(data.direction, 10) === -1) { start -= infScrollTopicsPerPage; } diff --git a/src/socket.io/topics/infinitescroll.js b/src/socket.io/topics/infinitescroll.js index 2e9e95948e..cb0814d329 100644 --- a/src/socket.io/topics/infinitescroll.js +++ b/src/socket.io/topics/infinitescroll.js @@ -30,7 +30,7 @@ module.exports = function (SocketTopics) { parseInt(data.count, 10) || meta.config.postsPerPage || 20 )); - if (data.direction === -1) { + if (parseInt(data.direction, 10) === -1) { start -= infScrollPostsPerPage; } From c5730b36c28f36213d85ffb6bcc1d5a2e967a6e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 27 Dec 2023 18:31:56 -0500 Subject: [PATCH 08/19] feat: #12247 --- public/src/client/topic/events.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/public/src/client/topic/events.js b/public/src/client/topic/events.js index 7dd6b5c08f..e091dd69c8 100644 --- a/public/src/client/topic/events.js +++ b/public/src/client/topic/events.js @@ -10,7 +10,8 @@ define('forum/topic/events', [ 'components', 'translator', 'hooks', -], function (postTools, threadTools, posts, images, components, translator, hooks) { + 'helpers', +], function (postTools, threadTools, posts, images, components, translator, hooks, helpers) { const Events = {}; const events = { @@ -152,7 +153,7 @@ define('forum/topic/events', [ editorEl.replaceWith(html); postContainer.find('[component="post/edit-indicator"]') .removeClass('hidden') - .translateAttr('title', `[[global:edited-timestamp, ${editData.editedISO}]]`); + .translateAttr('title', `[[global:edited-timestamp, ${helpers.isoTimeToLocaleString(editData.editedISO, config.userLang)}]]`); postContainer.find('[component="post/editor"] .timeago').timeago(); hooks.fire('action:posts.edited', data); }); From 0af19afd2e1cb1d0e4443bfa91b548ecf3a381f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 27 Dec 2023 18:31:56 -0500 Subject: [PATCH 09/19] feat: #12247 --- public/src/client/topic/events.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/public/src/client/topic/events.js b/public/src/client/topic/events.js index 7dd6b5c08f..e091dd69c8 100644 --- a/public/src/client/topic/events.js +++ b/public/src/client/topic/events.js @@ -10,7 +10,8 @@ define('forum/topic/events', [ 'components', 'translator', 'hooks', -], function (postTools, threadTools, posts, images, components, translator, hooks) { + 'helpers', +], function (postTools, threadTools, posts, images, components, translator, hooks, helpers) { const Events = {}; const events = { @@ -152,7 +153,7 @@ define('forum/topic/events', [ editorEl.replaceWith(html); postContainer.find('[component="post/edit-indicator"]') .removeClass('hidden') - .translateAttr('title', `[[global:edited-timestamp, ${editData.editedISO}]]`); + .translateAttr('title', `[[global:edited-timestamp, ${helpers.isoTimeToLocaleString(editData.editedISO, config.userLang)}]]`); postContainer.find('[component="post/editor"] .timeago').timeago(); hooks.fire('action:posts.edited', data); }); From 980bfee88fdb1ac2280e76521ce843fe7179ed11 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 27 Dec 2023 18:34:07 -0500 Subject: [PATCH 10/19] chore: up themes --- install/package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/install/package.json b/install/package.json index a28c43414e..78f146d5c3 100644 --- a/install/package.json +++ b/install/package.json @@ -103,10 +103,10 @@ "nodebb-plugin-ntfy": "1.7.3", "nodebb-plugin-spam-be-gone": "2.2.0", "nodebb-rewards-essentials": "1.0.0", - "nodebb-theme-harmony": "1.1.105", - "nodebb-theme-lavender": "7.1.5", - "nodebb-theme-peace": "2.1.25", - "nodebb-theme-persona": "13.2.49", + "nodebb-theme-harmony": "1.1.106", + "nodebb-theme-lavender": "7.1.6", + "nodebb-theme-peace": "2.1.26", + "nodebb-theme-persona": "13.2.50", "nodebb-widget-essentials": "7.0.14", "nodemailer": "6.9.7", "nprogress": "0.2.0", From 16f0affa701fbc1b89745386d709c39179caca24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Fri, 29 Dec 2023 11:49:44 -0500 Subject: [PATCH 11/19] chore: up lavender --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 78f146d5c3..1049921402 100644 --- a/install/package.json +++ b/install/package.json @@ -104,7 +104,7 @@ "nodebb-plugin-spam-be-gone": "2.2.0", "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.1.106", - "nodebb-theme-lavender": "7.1.6", + "nodebb-theme-lavender": "7.1.7", "nodebb-theme-peace": "2.1.26", "nodebb-theme-persona": "13.2.50", "nodebb-widget-essentials": "7.0.14", From 9101caff32967b337a017f5d5942d3deba3c1b08 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 29 Dec 2023 11:52:10 -0500 Subject: [PATCH 12/19] fix(deps): update dependency terser-webpack-plugin to v5.3.10 (#12248) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 56cf8e92f3..2f4bf6f69f 100644 --- a/install/package.json +++ b/install/package.json @@ -135,7 +135,7 @@ "sortablejs": "1.15.1", "spdx-license-list": "6.8.0", "spider-detector": "2.0.1", - "terser-webpack-plugin": "5.3.9", + "terser-webpack-plugin": "5.3.10", "textcomplete": "0.18.2", "textcomplete.contenteditable": "0.1.1", "timeago": "1.6.7", From 1777ec4b9162568136e085691e8f1c61fb350826 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 29 Dec 2023 11:52:32 -0500 Subject: [PATCH 13/19] chore(deps): update dependency sass-embedded to v1.69.6 (#12249) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 2f4bf6f69f..dfdc749986 100644 --- a/install/package.json +++ b/install/package.json @@ -172,7 +172,7 @@ "smtp-server": "3.13.0" }, "optionalDependencies": { - "sass-embedded": "1.69.5" + "sass-embedded": "1.69.6" }, "resolutions": { "*/jquery": "3.7.1" From f8a0cb9ec49ce1d1e811028f8e52bd1320ae3607 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 29 Dec 2023 11:52:39 -0500 Subject: [PATCH 14/19] fix(deps): update dependency sass to v1.69.6 (#12250) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index dfdc749986..63c8edb936 100644 --- a/install/package.json +++ b/install/package.json @@ -124,7 +124,7 @@ "rss": "1.2.2", "rtlcss": "4.1.1", "sanitize-html": "2.11.0", - "sass": "1.69.5", + "sass": "1.69.6", "semver": "7.5.4", "serve-favicon": "2.5.0", "sharp": "0.33.1", From 505e859adfd69f429f641b2b448424112ebf9b46 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Sun, 31 Dec 2023 09:18:05 +0000 Subject: [PATCH 15/19] Latest translations and fallbacks --- public/language/de/error.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/language/de/error.json b/public/language/de/error.json index 3631a2ef53..94044aaa77 100644 --- a/public/language/de/error.json +++ b/public/language/de/error.json @@ -32,7 +32,7 @@ "folder-exists": "Ordner existiert", "invalid-pagination-value": "Ungültige Seitennummerierung, muss mindestens %1 und maximal %2 sein", "username-taken": "Der Benutzername ist bereits vergeben", - "email-taken": "Email address is already taken.", + "email-taken": "Die E-Mail-Adresse ist bereits vergeben.", "email-nochange": "Die eingegebene E-Mail ist die gleiche wie die bereits hinterlegte E-Mail.", "email-invited": "E-Mail wurde bereits eingeladen", "email-not-confirmed": "Das Schreiben von Beiträgen in einigen Kategorien oder Themen ist erst möglich, wenn Ihre E-Mail bestätigt wurde. Bitte klicken Sie hier, um eine Bestätigungs-E-Mail zu senden.", From c40b23225586c19bc3d0e4249c727d795cc2816c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 1 Jan 2024 18:38:47 -0500 Subject: [PATCH 16/19] fix(deps): update dependency ace-builds to v1.32.3 (#12252) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 63c8edb936..d96d2f908c 100644 --- a/install/package.json +++ b/install/package.json @@ -34,7 +34,7 @@ "@fortawesome/fontawesome-free": "6.5.1", "@isaacs/ttlcache": "1.4.1", "@popperjs/core": "2.11.8", - "ace-builds": "1.32.2", + "ace-builds": "1.32.3", "archiver": "6.0.1", "async": "3.2.5", "autoprefixer": "10.4.16", From c8007bf603c0d2bb97b02a44021408f40b380a1a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 1 Jan 2024 18:38:57 -0500 Subject: [PATCH 17/19] fix(deps): update dependency esbuild to v0.19.11 (#12253) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index d96d2f908c..285ca097f1 100644 --- a/install/package.json +++ b/install/package.json @@ -63,7 +63,7 @@ "csrf-sync": "4.0.3", "daemon": "1.1.0", "diff": "5.1.0", - "esbuild": "0.19.10", + "esbuild": "0.19.11", "express": "4.18.2", "express-session": "1.17.3", "express-useragent": "1.0.15", From 1953a635af3e8d361d84f2fdbe90349f84427e8a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 1 Jan 2024 18:39:05 -0500 Subject: [PATCH 18/19] fix(deps): update dependency nodemailer to v6.9.8 (#12254) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 285ca097f1..99593ac0ef 100644 --- a/install/package.json +++ b/install/package.json @@ -108,7 +108,7 @@ "nodebb-theme-peace": "2.1.26", "nodebb-theme-persona": "13.2.50", "nodebb-widget-essentials": "7.0.14", - "nodemailer": "6.9.7", + "nodemailer": "6.9.8", "nprogress": "0.2.0", "passport": "0.7.0", "passport-http-bearer": "1.0.1", From b6dbe1a6d68d9ea0fd9ee9681b2955a2efc2523c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 1 Jan 2024 21:22:51 -0500 Subject: [PATCH 19/19] chore: up harmony --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 1049921402..000a92b8c6 100644 --- a/install/package.json +++ b/install/package.json @@ -103,7 +103,7 @@ "nodebb-plugin-ntfy": "1.7.3", "nodebb-plugin-spam-be-gone": "2.2.0", "nodebb-rewards-essentials": "1.0.0", - "nodebb-theme-harmony": "1.1.106", + "nodebb-theme-harmony": "1.1.107", "nodebb-theme-lavender": "7.1.7", "nodebb-theme-peace": "2.1.26", "nodebb-theme-persona": "13.2.50",