Commit Graph

195 Commits

Author SHA1 Message Date
Barış Soner Uşaklı
933c18f4ac feat: add description and keywords to api/config 2025-01-29 16:01:22 -05:00
Barış Soner Uşaklı
ae9ef064ae Merge branch 'develop' of https://github.com/NodeBB/NodeBB into develop 2025-01-20 13:18:47 -05:00
Julian Lam
af4d07fba4 feat: fix activitypub toggler to be more complete; tests. #13054 2025-01-20 12:05:17 -05:00
Barış Soner Uşaklı
062c8ed39f Merge branch 'master' into develop 2025-01-16 12:55:08 -05:00
Barış Soner Uşaklı
25f1fa670e test: remove resizeImageWidth 2025-01-08 10:25:28 -05:00
Barış Soner Uşaklı
c3ddd704db Merge branch 'master' into develop 2024-12-28 15:44:01 -05:00
Barış Soner Uşaklı
a0e668166e refactor: check if useragent exists firt 2024-12-27 14:46:21 -05:00
Barış Soner Uşaklı
1327316d8f Merge branch 'develop' into activitypub 2024-11-14 10:53:51 -05:00
Julian Lam
1268ed50ca fix: naive checking to handle uploaded images whose filenames end with '-resized' 2024-11-07 12:11:00 -05:00
Julian Lam
f8729571db fix: #12883, activitypub probe timeout
- Added setting to disable probe completely
- Added setting to configure timeout
- Updated probe logic so that if probe times out, it retries in the background with 60s timeout for caching purposes
2024-10-30 10:59:05 -04:00
Barış Soner Uşaklı
8f486b1b99 refactor: add placeholders on demand
remove emptylines/whitespace from tpls
2024-06-16 22:56:21 -04:00
Barış Soner Uşaklı
1dadd16f4b perf: call getIconbackgrounds once
instead of 20x on topic/topic list load
2024-06-11 17:20:31 -04:00
Barış Soner Uşaklı
2d86552b85 refactor: #12623, add filter:config.get.admin
to add admin only config values
add /api/admin/config to retrieve config object with admin values included
2024-06-08 13:42:43 -04:00
Barış Soner Uşaklı
c51b772fae feat: add isACP to config, closes #12623 2024-06-08 12:30:26 -04:00
Barış Soner Uşaklı
2a9b0a3c9c feat: add new sorting option to categories
add new zset for category topics
fix sorting names
2024-03-04 16:06:04 -05:00
Barış Soner Uşaklı
844cb91beb feat: update all language keys to use - instead of _ (#12059)
* feat: update all language keys to use - instead of _

* refactor: update language keys
2023-10-05 12:48:50 -04:00
Barış Soner Uşaklı
731466e572 feat: #11949, show alert if posts is going to be queued 2023-08-23 23:36:18 -04:00
Opliko
b709ed9e63 feat: move to npm fontawesome dependency and support fa pro (#11820)
* feat: move to npm fontawesome dependency

* feat: move shims to a separate file

* fix: thin style prefix

* feat: proper style and FA pro handling in icon selector

* docs: add fontawesome properties to openAPI

* fix: default for styles

* feat: select all styles by default

Turns out browsers lazy-load fonts.
So since the actual CSS for each style is small, there is no perf reason for defaulting to free styles for FA pro users.
This means they'll have to only change one setting.

Still, the option to select styles remains for those who want it.

* fix: remove console.log
2023-07-31 11:22:09 -04:00
Barış Soner Uşaklı
556fd65d51 feat: custom skins panel in acp 2023-06-16 18:04:22 -04:00
Barış Soner Uşaklı
2edfe0ef3e feat: bring back noskin option
if forum sets a default skin there was no way for the user to go back to the no skin version
2023-06-10 11:55:59 -04:00
Barış Soner Uşaklı
5c26cb5888 fix: add composer:showHelpTab to api 2023-04-21 19:10:51 -04:00
Barış Soner Uşaklı
7ba70d1561 Bootstrap5 (#10894)
* chore: up deps

* chore: up composer

* fix(deps): bump 2factor to v7

* chore: up harmony

* chore: up harmony

* fix: missing await

* feat: allow middlewares to pass in template values via res.locals

* feat: buildAccountData middleware automatically added ot all account routes

* fix: properly allow values in res.locals.templateValues to be added to the template data

* refactor: user/blocks

* refactor(accounts): categories and consent

* feat: automatically 404 if exposeUid or exposeGroupName come up empty

* refactor: remove calls to getUserDataByUserSlug for most account routes, since it is populated via middleware now

* fix: allow exposeUid and exposeGroupName to work with slugs with mixed capitalization

* fix: move reputation removal check to accountHelpers method

* test: skip i18n tests if ref branch when present is not develop

* fix(deps): bump theme versions

* fix(deps): bump ntfy and 2factor

* chore: up harmony

* fix: add missing return

* fix: #11191, only focus on search input on md environments and up

* feat: allow file uploads on mobile chat

closes https://github.com/NodeBB/NodeBB/issues/11217

* chore: up themes

* chore: add lang string

* fix(deps): bump ntfy to 1.0.15

* refactor: use new if/each syntax

* chore: up composer

* fix: regression from user helper refactor

* chore: up harmony

* chore: up composer

* chore: up harmony

* chore: up harmony

* chore: up harmony

* chore: fix composer version

* feat: add increment helper

* chore: up harmony

* fix: #11228 no timestamps in future 

* chore: up harmony

* check config.theme as well

fire action:posts.loaded after processing dom

* chore: up harmony

* chore: up harmony

* chore: up harmony

* chore: up themes

* chore: up harmony

* remove extra class

* refactor: move these to core from harmony

* chore: up widgets

* chore: up widgets

* height auto

* fix: closes #11238

* dont focus inputs, annoying on mobile

* fix: dont focus twice, only focus on chat input on desktop

dont wrap widget footer in row

* chore: up harmony

* chore: up harmony

* update chat window

* chore: up themes

* fix cache buster for skins

* chat fixes

* chore: up harmony

* chore: up composer

* refactor: change hook logs to debug

* fix: scroll to post right after adding to dom

* fix: hash scrolling and highlighting correct post

* test: re-enable read API schema tests

* fix: add back schema changes for 179faa2270 and c3920ccb10

* fix: schema changes from 488f0978a4

* fix: schema changes for f4cf482a87

* fix: schema update for be6bbabd0e

* fix: schema changes for 69c96078ea

* fix: schema changes for d1364c3130

* fix: schema changes for 84ff1152f7

* fix: schema changes for b860c2605c

* fix: schema changes for 23cb67a112

* fix: schema changes for b916e42f40

* fix: schema change for a9bbb586fc

* fix: schema changes for 4b738c8cd3

* fix: schema changes for 58b5781cea

* fix: schema changes for 794bf01b21

* fix: schema changes for 80ea12c1c1, e368feef51, and 52ead114be

* fix: composer-default object in config?

* fix: schema changes for 9acdc6808c and 0930934200

* fix: schema changes for c0a52924f1

* fix: schema change for aba420a3f3, move loggedInUser to optional props

* fix: schema changes for 8c67031609

* fix: schema changes for 27e53b42f3

* fix: schema changes for 2835966518

* fix: breaking test for email confirmation API call

* fix: schema changes for refactored search page

* fix: schema changes for user object

* fix: schema changes for 9f531f957e

* fix: schema changes for c4042c70de and 23175110a2

* fix: schema changes for 9b3616b103

* fix: schema changes for 5afd5de07d

* fix: schema change for 1d7baf1217

* fix: schema changes for 57bfb37c55 and be6bbabd0e

* fix: schema changes for 6e86b4afa2 and 3efad2e13b and 68f66223e7

* fix: allowing optional qs prop in pagination keys (not sure why this didn't break before)

* fix: re-login on email change

* fix: schema changes for c926358d73

* fix: schema changes for 388a8270c9

* fix: schema change for 2658bcc821

* fix: no need to call account middlewares for chats routes

* fix: schema changes for 71743affc3

* fix: final schema changes

* test: support for anyOf and oneOf

* fix: check thumb

* dont scroll to top on back press

* remove group log

* fix: add top margin to merged and deleted alerts

* chore: up widgets

* fix: improve fix-lists mixin

* chore: up harmony/composer

* feat: allow hiding quicksearch results during search

* dont record searches made by composer

* chore: up 54

* chore: up spam be gone

* feat: add prev/next page and page count into mobile paginator

* chore: up harmony

* chore: up harmony

* use old style for IS

* fix: hide entire toolbar row if no posts or not singlePost

* fix: updated messaging for post-queue template, #11206

* fix: btn-sm on post queue back button

* fix: bump harmony, closes #11206

* fix: remove unused alert module import

* fix: bump harmony

* fix: bump harmony

* chore: up harmony

* refactor: IS scrolltop

* fix: update users:search-user-for-chat source string

* feat: support for mark-read toggle on chats dropdown and recent chats list

* feat: api v3 calls to mark chat read/unread

* feat: send event:chats.mark socket event on mark read or unread

* refactor: allow frontend to mark chats as unread, use new API v3 routes instead of socket calls, better frontend event handling

* docs: openapi schema updates for chat marking

* fix: allow unread state toggling in chats dropdown too

* fix: issue where repeated openings of the chats dropdown would continually add events for mark-read/unread

* fix: debug log

* refactor: move userSearch filter to a module

* feat(routes): allow remounting /categories (#11230)

* feat: send flags count to frontend on flags list page

* refactor: filter form client-side js to extract out some logic

* fix: applyFilters to not take any arguments, update selectedCids in updateButton instead of onHidden

* fix: use userFilter module for assignee, reporterId, targetUid

* fix(openapi): schema changes for updated flags page

* fix: dont allow adding duplicates to userFilter

* use same var

* remove log

* fix: closes #11282

* feat: lang key for x-topics

* chore: up harmony

* chore: up emoji

* chore: up harmony

* fix: update userFilter to allow new option `selectedBlock`

* fix: wrong block name passed to userFilter

* fix: https://github.com/NodeBB/NodeBB/issues/11283

* fix: chats, allow multiple dropdowns like in harmony

* chore: up harmony

* refactor: flag note adding/editing, closes #11285

* fix: remove old prepareEdit logic

* chore: add caveat about hacky code block in userFilter module

* fix: placeholders for userFilter module

* refactor: navigator so it works with multiple thumbs/navigators

* chore: up harmony

* fix: closes #11287, destroy quick reply autocomplete

on navigation

* fix: filter disabled categories on user categories page count

* chore: up harmony

* docs: update openapi spec to include info about passing in timestamps for topic creation, removing timestamp as valid request param for topic replying

* fix: send back null values on ACP search dashboard for startDate and endDate if not expicitly passed in, fix tests

* fix: tweak table order in ACP dash searches

* fix: only invoke navigator click drag on left mouse button

* feat: add back unread indicator to navigator

* clear bookmark on mark unread

* fix: navigator crash on ajaxify

* better thumb top calculation

* fix: reset user bookmark when topic is marked unread

* Revert "fix: reset user bookmark when topic is marked unread"

This reverts commit 9bcd85c2c6.

* fix: update unread indicator on scroll, add unread count

* chore: bump harmony

* fix: crash on navigator unread update when backing out of a topic

* fix: closes #11183

* fix: update topics:recent zset when rescheduling a topic

* fix: dupe quote button, increase delay, hide immediately on empty selection

* fix: navigator not showing up on first load

* refactor: remove glance

assorted fixes to navigator
dont reduce remaning count if user scrolls down and up quickly
only call topic.navigatorCallback when index changes

* more sanity checks for bookmark

dont allow setting bookmark higher than topic postcount

* closes #11218, 🚋

* Revert "fix: update topics:recent zset when rescheduling a topic"

This reverts commit 737973cca9.

* fix: #11306, show proper error if queued post doesn't exist

was showing no-privileges if someone else accepted the post

* https://github.com/NodeBB/NodeBB/issues/11307

dont use li

* chore: up harmony

* chore: bump version string

* fix: copy paste fail

* feat: closes #7382, tag filtering

add client side support for filtering by tags on /category, /recent and /unread

* chore: up harmony

* chore: up harmony

* Revert "fix: add back req.query fallback for backwards compatibility" [breaking]

This reverts commit cf6cc2c454.
This commit is no longer required as passing in a CSRF token via query parameter is no longer supported as of NodeBB v3.x

This is a breaking change.

* fix: pass csrf token in form data, re: NodeBB/NodeBB#11309

* chore: up deps

* fix: tests, use x-csrf-token query param removed

* test: fix csrf_token

* lint: remove unused

* feat: add itemprop="image" to avatar helper

* fix: get chat upload button in chat modal

* breaking: remove deprecated socket.io methods

* test: update messaging tests to not use sockets

* fix: parent post links

* fix: prevent post tooltip if mouse leaves before data/tpl is loaded

* chore: up harmony

* chore: up harmony

* chore: up harmony

* chore: up harmony

* fix: nested replies indices

* fix(deps): bump 2factor

* feat: add loggedIn user to all api routes

* chore: up themes

* refactor: audit admin v3 write api routes as per #11321

* refactor: audit category v3 write api routes as per #11321 [breaking]

docs: fix open api spec for #11321

* refactor: audit chat v3 write api routes as per #11321

* refactor: audit files v3 write api routes as per #11321

* refactor: audit flags v3 write api routes as per #11321

* refactor: audit posts v3 write api routes as per #11321

* refactor: audit topics v3 write api routes as per #11321

* refactor: audit users v3 write api routes as per #11321

* fix: lang string

* remove min height

* fix: empty topic/labels taking up space

* fix: tag filtering when changing filter to watched topics

or changing popular time limit to month

* chore: up harmony

* fix: closes #11354, show no post error if queued post already accepted/rejected

* test: #11354

* test: #11354

* fix(deps): bump 2factor

* fix: #11357 clear cache on thumb remove

* fix: thumb remove on windows, closes #11357

* test: openapi for thumbs

* test: fix openapi

---------

Co-authored-by: Julian Lam <julian@nodebb.org>
Co-authored-by: Opliko <opliko.reg@protonmail.com>
2023-03-17 11:58:31 -04:00
psibean
0b2dd4e367 Update csrf_token falee assignment to false 2023-02-17 14:58:04 -05:00
psibean
5a994290f2 Replace csurf with csrf-sync 2023-02-17 14:58:04 -05:00
Barış Soner Uşaklı
58b5781cea feat: closes #10296
asset_base_url in nconf
keep assetBaseUrl in config for backwards compat
2022-02-15 19:22:34 -05:00
Barış Soner Uşaklı
e368feef51 refactor: dont expost entire res._locals to client side 2021-11-17 22:11:24 -05:00
Julian Lam
80ea12c1c1 feat: new ACP option emailPrompt
... which allows administrators to disable the client-side prompt to
encourage users to enter or confirm their email addresses
2021-10-26 14:28:42 -04:00
Barış Soner Uşaklı
794bf01b21 feat: allow changing default search in 2021-08-18 20:35:39 -04:00
Julian Lam
69c96dd23c refactor(emails): more work in update email interstitial, interstitial skipping, email change on confirmation, deprecation of requireEmailConfirmation 2021-07-30 13:29:13 -04:00
psychobunny
05cc7ccb60 feat: make undoTimeout configurable, closes #9599 2021-06-07 14:44:12 -04:00
Barış Soner Uşaklı
f32ea1737a fix: #9466, don't call leaveRoom in maintenance mode 2021-04-07 14:10:15 -04:00
Julian Lam
955021247e feat(user): icon background selector in change picture modal 2021-02-19 11:38:48 -05:00
Peter Jaszkowiak
cc9d6fd08b chore: eslint max-len 2021-02-08 18:06:44 -05:00
Julian Lam
2ad0d0d0d8 chore: remove deprecated getObject routes [breaking]
`/api/post/pid/:pid`, `/api/topic/tid/:tid`, `/api/category/cid/:cid` have now been removed in favour of routes in the Write API (`/api/v3/(posts|topics|categories)/:id`)
2021-01-27 16:07:00 -05:00
Julian Lam
9ecfac9b68 feat(api): #9123, migrate rest of the getObject controllers to Write API 2020-12-29 10:32:01 -05:00
Julian Lam
cdff8d286a chore(api): add deprecation notices re: #9123 2020-12-29 10:32:01 -05:00
Julian Lam
e267f29584 feat(api): #9123, migrate /api/post/pid/:pid to Write API 2020-12-29 10:32:01 -05:00
Barış Soner Uşaklı
c1ecfd1ebf feat: #9135, don't try to reconnect forever 2020-12-28 11:44:14 -05:00
Julian Lam
d27815a8c0 fix: #9149, incorrect client-side disableChatMessageEditing value for admins/gmods 2020-12-28 09:51:28 -05:00
Julian Lam
a30c8ab5c8 feat: clent-side modal for managing topic thumbs
closes #9087
2020-12-09 10:42:41 -05:00
Julian Lam
6e2da9966e refactor: move plugin hook methods to plugin.hooks.* 2020-11-20 16:32:39 -05:00
Barış Soner Uşaklı
a05905f196 performance improvements (#8795)
* perf: nconf/winston/render

cache nconf.get calls
modify middleware.pageView to call next earlier
don't call winston.verbose on every hook see https://github.com/winstonjs/winston/issues/1669
translate header/footer separately and cache results for guests

* fix: copy paste fail

* refactor: style and fire hook only log in dev mode

* fix: cache key, header changes based on template

* perf: change replace

* fix: add missing await

* perf: category

* perf: lodash clone

* perf: remove escapeRegexChars
2020-10-26 10:43:18 -04:00
Julian Lam
9adaccd036 feat: +assetBaseUrl, -l10BaseUrl, -requireBaseUrl
Additional base URLs were necessary for benchpress and translator,
and in order to not clutter the API response with needless one-
time use base URLs, I decided to use a single base that is used
by all of the services, assetBaseUrl.
2020-08-10 10:23:52 -04:00
Julian Lam
def16f9e97 feat: introduce overridable l10nBaseUrl config value 2020-08-06 10:49:15 -04:00
Barış Soner Uşaklı
c4829fd8c2 feat: allow changing requirejs base url 2020-07-29 14:14:45 -04:00
Barış Soner Uşaklı
fd4c3cda42 fix: #4695, remove new notif alert 2020-07-27 21:34:21 -04:00
Barış Soner Uşaklı
5781a2dc65 feat: fix session mismatch errors by clearing cookie on logout (#8338)
* feat: fix session mismatch errors by clearing cookie on logout

* feat: remove app.upateHeader

ported from 2.0

* feat: handle if user doesn't click button and just refreshes page
2020-05-27 12:15:02 -04:00
Julian Lam
6f504c4142 Remove allowFileUploads ACP option (#8324)
* feat: allow awaitable upgrade scripts

* feat: allowFileUploads removal upgrade script

* refactor: remove unnecessary ACP option `allowFileUploads`

* fix: updated upgrade script template to not use callback arg

* fix: upgrade script as per @baris

* fix: add missing await

* fix: add missing await
2020-05-21 16:06:35 -04:00
Barış Soner Uşaklı
e06c1bfcd2 fix: escape config.userLang/acpLang, don't allow invalid language codes 2020-01-13 12:27:50 -05:00
Barış Soner Uşaklı
4eaa630b1c refactor: async/await controllers/api 2019-08-18 19:06:51 -04:00