Julian Lam
849049765b
fix : #9636 , sanitize all attributes in meta and link tags
4 years ago
Barış Soner Uşaklı
2fe30b6fa0
feat: #9628 , allow setting custom icon names
4 years ago
Barış Soner Uşaklı
be19f27f40
feat: add filter:categories.categorySearch
4 years ago
psychobunny
93598982f9
fix: stripTags for editing sorted list items as well
4 years ago
psychobunny
b5ce8d257c
style: eslint
4 years ago
psychobunny
75073c0ed3
fix: stripHTMLTags for sorted list entries
4 years ago
psychobunny
1ad1787eaa
fix: thumb count not updated when uploading multiple thumbs at a time
4 years ago
Barış Soner Uşaklı
344575dde1
feat: add hooks to language loading ( #9426 )
...
and flushNamespace method
4 years ago
gasoved
a3e95e798f
feat: allow adding sorted-list items from forms outside of modal
4 years ago
gasoved
077330b764
feat: scheduled topics ( #9399 )
...
* feat: scheduled topics
* refactor: linting fixes
* fix: tests
* fix(test): race condition
* fix: make a single request
4 years ago
Julian Lam
d9e2029074
fix: hooks for alert animate, no more fadein/fadeout for reconnect alert
4 years ago
Barış Soner Uşaklı
3c4e93a3c1
fix : #9411
4 years ago
Barış Soner Uşaklı
93c595d95e
fix : #9406 , update flag post tools
4 years ago
Julian Lam
d1685600d3
refactor: deprecate action:script.load, use filter:script.load instead
4 years ago
Barış Soner Uşaklı
03e306349c
fix : #9387 , don't try to load undefined images
4 years ago
Barış Soner Uşaklı
52082e1296
feat: add resolve flag to post tools
4 years ago
Julian Lam
8472513093
fix: change notification updateCount to use client-side hooks
4 years ago
Barış Soner Uşaklı
e787e6ea22
fix: if no in passed use "titles" to match header search
4 years ago
psychobunny
66196d2caf
feat: allow for settings.save/settings.load on client side
...
w/ optional data-socket-get / data-socket-set params on form element for custom calls
4 years ago
Julian Lam
1e579428e7
fix: bug where fallback window trigger was not firing if there were no hook listeners attached
...
... so in essence the backwards compatibility was not working at all.
closes nodebb/nodebb-plugin-composer-default#147
4 years ago
Julian Lam
7d391d4789
feat: new client-side hook `filter:api.options` to allow plugins to modify api requests
4 years ago
preetykumar
2826c6986c
Update taskbar.js ( #9314 )
...
* Update taskbar.js
add aria-label to make the link text discernible to screen readers.
* place quotes around attribute value
Co-authored-by: Peter Jaszkowiak <p.jaszkow@gmail.com>
4 years ago
Julian Lam
d0136074b6
feat: allow hook unregistration, and temporary page-based hooks
...
Temporary hooks automatically unregister themselves on the next ajaxify, making them perfect for in-page events.
4 years ago
Peter Jaszkowiak
0d59fe3d2b
fix( #9315 ): api v3 post, put, del JSON
...
also allow `app.alertError` to be called without an argument
also fix `./nodebb build --dev` to actually build in dev mode
4 years ago
Julian Lam
c96fd3b19b
feat: pass user picture object into change_picture_modal
4 years ago
Julian Lam
28f6931e16
refactor: move picture change client-side logic to its own rjs module
4 years ago
Julian Lam
b4c0b32b26
fix: use root context if buildAvatar context is undefined
4 years ago
Barış Soner Uşaklı
9ce6f8ad93
feat: add tag filter to getSortedTopics
4 years ago
Julian Lam
7223074f1d
feat: ability to re-order topic thumbnails
4 years ago
Julian Lam
db027170a8
feat: add close button to topic thumbnail modal
4 years ago
Julian Lam
36e8d251c8
fix: use of removed URL to get post data
4 years ago
Peter Jaszkowiak
cc9d6fd08b
chore: eslint max-len
4 years ago
Peter Jaszkowiak
62869bae3d
chore: eslint function-paren-newline
4 years ago
Julian Lam
16610b2dca
fix: pass jquery object in to action:notifications.loaded hook
4 years ago
Julian Lam
7edc8f458d
feat: new notifications load/loaded hooks on client side
...
refactored `toggleTimeagoShorthand` code to be inside of a hook listener
4 years ago
Barış Soner Uşaklı
cfa0d42390
fix: don't use global bootbox obj
4 years ago
Barış Soner Uşaklı
a4878a5b22
fix: markread selector
4 years ago
Barış Soner Uşaklı
47299ea587
Categories refactor ( #9257 )
...
* feat: wip categories pagination
* feat: add subCategoriesPerPage setting
* feat: add load more sub categories button to category page
* fix: openapi spec
* feat: show sub categories left on category page
hide button when no more categories left
* breaking: rename categories to allCategories on /search
categories contains the search results
* fix: spec
* refactor: remove cidsPerPage
* fix: tests
* feat: use component for subcategories
* fix: prevent negative subCategoriesLeft
* feat: new category filter/search WIP
* feat: remove categories from /tag
* fix: dont load all categories when showing move modal
* feat: allow adding custom categories to list
* breaking: dont load entire category tree on post queue
removed unused code
add hooks to filter/selector
add options to filter/selector
* feat: make selector modal work again
* feat: replace old search module
* fix: topic move selector
* feat: dont load all categories on create category modal
* fix: fix more categorySelectors
* feat: dont load entire category tree on group details page
* feat: dont load all categories on home page and user settings page
* feat: add pagination to /user/:userslug/categories
* fix: update schemas
* fix: more tests
* fix: test
* feat: flags page, dont return entire category tree
* fix: flag test
* feat: categories manage page
dont load all categories
allow changing root category
clear caches properly
* fix: spec
* feat: admins&mods page
dont load all categories
* fix: spec
* fix: dont load all children when opening dropdown
* fix: on search results dont return all children
* refactor: pass all options, rename options.cids to options.selectedCids
* fix : #9266
* fix: index 0
* fix: spec
* feat: #9265 , add setObjectBulk
* refactor: shoter updateOrder
* feat: selectors on categories/category
* fix: tests and search filter
* fix: category update test
* feat: pagination on acp categories page
show order in set order modal
* fix: allow drag&drop on pages > 1 in /admin/manage/categories
* fix: teasers for deep nested categories
fix sub category display on /category page
* fix: spec
* refactor: use eslint-disable-next-line
* refactor: shorter
4 years ago
gasoved
53e0d4d2e0
feat: banned-users group
4 years ago
Julian Lam
501441b736
feat: add .delete() method to api module
4 years ago
Julian Lam
5131eb6b90
fix: `action:admin.settingsLoaded` to use new hooks lib
4 years ago
Julian Lam
b0f5d5a594
fix: crash on firing action hook that had no listeners registered
4 years ago
Julian Lam
1a04ec6419
fix: bug where `action:settings.sorted-list.loaded` fired early
...
The hook was fired before the elements had been added to the DOM.
Also, I updated it to use the new hooks lib.
4 years ago
Julian Lam
4029ec3713
fix: multiple sorted-lists do not save to the correct set
4 years ago
Julian Lam
efff8e2ae2
fix(hooks): bug where hook firing would fail if there were no listeners
4 years ago
Julian Lam
e7bd038db1
refactor(hooks): better error handling
...
Hook listeners can both throw and reject, and it will be handled appropriately (e.g. filters won't fail)
4 years ago
Julian Lam
1d77572117
feat(hooks): update action:ajaxify.end to use new hooks module
4 years ago
Julian Lam
412d285850
fix(hooks): fallback handling for core invocations of hooks.fire
...
+ .on() which is the same as .register()
4 years ago
Julian Lam
01c9b1847e
feat(hooks): client-side hooks module
...
Similar to server-side, comes with three hook types, filter, action, and static. Behaviour also mimics server-side.
4 years ago
Barış Soner Uşaklı
1590cdf19f
fix : #9206 , fix double escaped arguments
4 years ago
Barış Soner Uşaklı
0a471b76b5
fix: use max
4 years ago
Barış Soner Uşaklı
c30b40abe7
fix: keep 60 topics minimum on topic list
4 years ago
Barış Soner Uşaklı
072a0e32d8
feat: #8813 , faster category search dropdown
...
when you have 4k+ categories manipulating DOM becomes very slow
clone the list and manipulate it outside of DOM, replace list on DOM when search is done
add utils.debounce so list is updated slower
4 years ago
Barış Soner Uşaklı
a15ef53c70
feat: add new client side hooks
4 years ago
Julian Lam
a30c8ab5c8
feat: clent-side modal for managing topic thumbs
...
closes #9087
4 years ago
Julian Lam
cb7e4cda2a
feat: helper method to get thumbs by pid
4 years ago
Julian Lam
41379e27c8
fix: hack uploader to handle a response from v3 write api
4 years ago
Julian Lam
ef10b6b70d
fix: missing file added
4 years ago
Barış Soner Uşaklı
ff2aa17bbc
fix: show errors when user delete fails
4 years ago
Barış Soner Uşaklı
74274b60ed
feat: allow clicks on navigator, clean dupe code
4 years ago
Barış Soner Uşaklı
a389a31b4a
fix: timeago in navigation
4 years ago
Barış Soner Uşaklı
163d1a39ce
fix: navigation fixes
4 years ago
Barış Soner Uşaklı
73d2f51d7a
fix: cache some jquery objects
4 years ago
Barış Soner Uşaklı
63d0839550
fix: add ev.cancelable
4 years ago
Barış Soner Uşaklı
6669496dba
Navigator ( #9049 )
...
* feat: navigator changes
* fix: remove extra code
* feat: add lang keys
4 years ago
Barış Soner Uşaklı
7e867cf95e
fix : #7597 , fix progress bar of cover/profile uploads
...
send big cover images in chunks
4 years ago
Barış Soner Uşaklı
7e6427bca7
fix: dont go back after delete account actions
4 years ago
Julian Lam
a0b7a82350
feat(api): account deletion routes for the Write API ( #8881 )
...
* feat(api): account deletion routes for the Write API
* refactor: rewrite client-side calls to account deletion to use api
* style: apply DRY
4 years ago
Opliko
6e43086558
resolve #8444 - Allow nested objects in translations ( #8793 )
...
* feat: #8444 Allow nested objects in translations
* feat: #8444 Allow nested objects in translations
* style: don't change formatting
* fix: don't use the first string match if key isn't finished
* feat: #8444 Allow nested objects in translations
* feat: #8444 Allow nested objects in translations
* style: don't change formatting
* fix: don't use the first string match if key isn't finished
* feat: add nested translations test
4 years ago
Julian Lam
d83eb7f89e
refactor: client-side handlers for user invitations
...
DRY
4 years ago
Barış Soner Uşaklı
9f7902efdf
fix: remove some unnecessary jquery wrappers
4 years ago
Peter Jaszkowiak
e128264b66
refactor: change Benchpress.parse to .render ( #8856 )
...
It has been deprecated with no warning message for a while
Changing these over before enabling the warning message to reduce spam
4 years ago
Julian Lam
d263192271
feat: group exists API call in write api
4 years ago
Julian Lam
1446cec77f
feat: user exist route in write api
4 years ago
Barış Soner Uşaklı
78ee83324c
fix : #8838 , fix chat dropdown timestamps
...
use shorthand like notification dropdown
4 years ago
Julian Lam
aa8faf58a0
refactor: remove /users/{uid}/settings/{setting} route
...
@baris Also, I am now allowing the following properties to be saved in User.saveSettings:
- categoryTopicSort
- topicPostSort
- setCategorySort
- setTopicSort
4 years ago
Barış Soner Uşaklı
9082062e90
fix: sort setting not using correct field name
4 years ago
Barış Soner Uşaklı
a512d99472
refactor: remove unnecessary wrapper
4 years ago
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
4 years ago
Julian Lam
c26f2b6599
feat(writeapi): user settings API
4 years ago
Barış Soner Uşaklı
85cfe49d65
fix: autocomplete.user on search page
4 years ago
Barış Soner Uşaklı
c107649b40
fix : #8732
4 years ago
Barış Soner Uşaklı
d9a16855d0
refactor: posts api
4 years ago
Barış Soner Uşaklı
2279e37261
refactor: deprecate socket.emit('users.search') use api route
4 years ago
Julian Lam
20bb9c7ec8
fix: csrf token only on non-GET routes
4 years ago
Barış Soner Uşaklı
3673accdb8
refactor: api module
...
only return promise if callback is undefined
dont append baseUrl if url already starts with api
correctly handle writeapi readapi response for data/error
remove unused onError
dont append empty ? to url for get routes
4 years ago
Julian Lam
a784d10fff
refactor: api module returns promise, error-first cb if cb passed in
...
no more separate onSuccess onError callbacks
/cc @baris
4 years ago
Julian Lam
1e07886f30
feat: require csrf token if not using bearer token
4 years ago
Barış Soner Uşaklı
dc29f4dca2
refactor: switch to using slugify module
4 years ago
Barış Soner Uşaklı
bddfcb5867
feat: #8734 , add slugify module, deprecate utils.slugify
4 years ago
Barış Soner Uşaklı
75c9668656
fix: admin jquerui requires
4 years ago
Barış Soner Uşaklı
8c019a6a3b
fix: timeago locale switch
4 years ago
Barış Soner Uşaklı
3b231360d3
feat: load jquery-form before using
4 years ago
Barış Soner Uşaklı
9c157de05d
feat: #8734 , move tinycon to package.json
4 years ago
Barış Soner Uşaklı
f259063f08
fix : #8728 , dont add admins to table
4 years ago
Julian Lam
3ea1aa4780
refactor(writeapi): update route prefix to api/v3, default error option
4 years ago
Julian Lam
49652e6f1b
feat: management of API tokens via ACP
4 years ago
Julian Lam
a905d7f022
refactor: rewrite modules/api.js in AMD style
4 years ago
Julian Lam
d044c3223e
feat(writeapi): abstracted ajax calls out to new api module
4 years ago
Julian Lam
fc603a5368
fix: use app.parseAndTranslate instead of benchpress.parse
4 years ago