Commit Graph

7836 Commits (0efe27b1f20c8d6f55feae08974e4a170723da37)

Author SHA1 Message Date
Julian Lam 4fb271c684
System chat messages ()
* fix: removed duplicate checkContent call in addMessage

addMessage is called in one place (sendMessage), and the checks
are already contained there. addMessage is the lower level call
and so should be called only from within core itself.

* feat:  chat system messages for join, leave, rename

* fix: add back content checking in .addMessage();

* fix: tests, and added .addSystemMessage() method

Tests were relying on message indices that changed due to the
new system messages.

* feat: add tests for system chat messages

* refactor: rewrite half of src/messaging/rooms.js, fix tests

* feat:  messaging/room.js

* fix: tests for messaging/room.js, 

* fix: trying to fix tests

* fix: omg :rage2:
Misty (Bot) 879104ccde Latest translations and fallbacks
Misty (Bot) 382a9c4187 Latest translations and fallbacks
Misty (Bot) acad245b4a Latest translations and fallbacks
Julian Lam 0e8ee31b90 fix: removed check for another user when sending messages
This is an old check back when the sorted set that messages were
appended to depended on what users were in the chat room. Once
messages were refactored (in 2017) to use roomIds, this is no
longer a limitation of the platform and users should be free to
talk to themselves all they want.
Misty (Bot) 93862e9e66 Latest translations and fallbacks
Misty (Bot) 7f54a24438 Latest translations and fallbacks
Misty (Bot) 239195d8a9 Latest translations and fallbacks
Baris Usakli 9f78bd7a12 fix: sitemap ajaxify
Barış Soner Uşaklı 53e1b349ae
Change post owner ()
* feat: , allow array of keys for setObject

* feat: sortedSetRemoveBulk

* feat: test for bulk remove

* feat: , ability to change post ownership

* feat: , fix tid:<tid>:posters

* feat: , front end

* fix: , psql methods

* fix: add missing await

* fix: maybe psql
Barış Soner Uşaklı 2b70e86f21 fix: , make necro separator a partial
Barış Soner Uşaklı 4170abfd6b feat: add utils.promiseParallel
Julian Lam 16aae51726 fix: private upload img replacement should happen before img wrapping
Julian Lam 49e3a368f8 fix: private uploads are linked to login page, for guests
Julian Lam 8a6a58ee43
feat: added new admin option newbiePostEditDuration ()
* feat: added new admin option newbiePostEditDuration

Also:
  - Grammar-checked a couple language strings
  - Moved a couple form inputs around in new user restrictions
  - Added a test for the new option
  - fix: 'defore' typo
Barış Soner Uşaklı bd640a1107
Topic await errors ()
* feat: derp await

* feat: restore user.getSettings

* feat: cleanup

* feat: make tid const

* feat: cleanup

* fix: tests

* feat: deprecate filter:controllers.topic.get

* feat: rewrite post-index logic

* feat: change calculation to match others

* fix: use .async

* feat: remove try/catch wrapper
Misty (Bot) 11b5eb6481 Latest translations and fallbacks
Misty (Bot) 76910ad5b6 Latest translations and fallbacks
Misty (Bot) 9e9a2a5048 Latest translations and fallbacks
Julian Lam a0c0ef1ba4
feat: ACP analytics API route ()
* feat: added API route for retrieving analytics via REST API

* feat: sets is now optional, can pass in multiple sets

* fix: moved expand and added json button to panel header

* fix: matching api params to socket method

* fix: update json api button url on graph change

* fix: updated default counts based on passed in units
Baris Usakli a5de54f877 fix: indents
Baris Usakli ee4d78cae3 feat: closes
Julian Lam af17c6e31c fix: remove debug code that should not have made it in
Julian Lam 69fae1a7e4 fix: output span in buildAvatar helper instead of div
In not-so-rare circumstances, the avatar generated is wrapped in
an anchor so that when clicked, it goes to the user profile.

Unfortunately, html 4 spec doesn't like block level elements
inside anchors (since an anchor is an inline element), and even
though we define html5 doctype, browsers still reorder the div
and anchor, beats me as to why.

So I can trick the browser by using a span. The css already styles
it as inline-block so no further fixes are required.
Barış Soner Uşaklı f24c14d712 feat: ability to sort watched topics, closes
Misty (Bot) 5738ebeb54 Latest translations and fallbacks
Barış Soner Uşaklı a39f0ef592 fix: , create per category user post zsets
Aziz Khoury 13efbc9967 feat: change widget-* to data-widget-* ()
* change widget-* to data-widget-*, original pr#5444 but backward compatible

* lint
Barış Soner Uşaklı e1c05e59c9 fix: restrict drag drop to pin icon, closes
https://github.com/NodeBB/NodeBB/issues/6081
Barış Soner Uşaklı b53a60c278 feat: show best & latest posts on profile
Julian Lam 289dada5f7 fix(deps): update to eslint@6
Misty (Bot) 54e6ac2a99 Latest translations and fallbacks
Misty (Bot) 91a2e1a90e Latest translations and fallbacks
Barış Soner Uşaklı 25ea634787 fix: add option to change cookie link url
Julian Lam 1894cd9b81 fix: middle vertical-align for .avatar elements
Julian Lam 2523889990
refactor: replace avatar conditional code with buildAvatar helper ()
* feat: helper for building avatars

* feat: benchpress truefalse globals, componentPrefix in buildAvatar

* refactor: remove componentPrefix

* feat: changes to buildAvatar helper

- removed extra .avatar-xl class in generics.less
- added support for component override
- "size" can be a number now

* fix: prevent overflow of alt text in avatars

* fix: update doc on buildAvatar helper
Aziz Khoury a6436716ea feat: hooks can now return promise or call callbacks
* hooks can now return promise or call callbacks, either way works

* cleanups

* moar cleanups and fix callback 1st null arg

* rm unnessesary spread
Misty (Bot) 232b35f938 Latest translations and fallbacks
Misty (Bot) 23502c9074 Latest translations and fallbacks
Misty (Bot) 8ee5d32d4f Latest translations and fallbacks
Barış Soner Uşaklı 5fa5e999f8
Plugin metrics ()
* feat: add enable/disable checkbox for plugin usage

* feat: submit plugin data to packages.nodebb.org

only submit in production mode
submit once every 24 hours
dont submit for plugins that have "private": true in plugin.json
enabled on new installs
disabled on existing installs

* fix: hash not working after first send

fix statusCode

* fix: remove url

* feat: show compatibilty

* feat: add install question for submit plugin usage
Misty (Bot) 25d289c6f6 Latest translations and fallbacks
Misty (Bot) 86da15bedd Latest translations and fallbacks
Misty (Bot) 99120676bb feat: fallback strings for ACP events
Julian Lam c7f95ccecc
feat: design revamp of ACP events page ()
* feat: design revamp of ACP events page

- minor UX changes
- new filter controls, filters moved to sidebar
- form usable without js
- start/end filters NOT programmed yet

* feat: events ACP limit by date and perPage

* feat: pre-fill applied filters on template render

* fix: missing translation for ACP events perPage filter

* fix: added some comments to explain setHours behaviour

* fix: stop - start + 1

* fix: socket tests

* fix: +inf, not just inf

* fix: tests, because I am an idiot
Barış Soner Uşaklı 4b843ba16f fix: , allow invite and approval at the same time
Misty (Bot) a097b19293 Latest translations and fallbacks
Julian Lam 868dedd194 revert: accidental removal of some needed translation source strings
Barış Soner Uşaklı 8aef689f05 fix: no need for moderate bit for global mods and admins
Barış Soner Uşaklı 035f624758
Remove implicit mod privs. closes ()
* feat: add upgrade script to give mods privs

* feat: give all privileges when making a moderator

* feat: remove implicit privs

* feat: give global mods default privs

* feat: more priv fixes

* feat: use lodash

* fix: remove implicit mod priv from topic delete

* fix: more privs

* fix: posts.canEdit

* fix: canDelete and canEdit

* fix: tests, remove console.log

* feat: shorter functions

* feat: add tests

* fix: uids

* fix: redis random test fail
Barış Soner Uşaklı ebb32e7891 fix: attribute name so it works for both templates
Barış Soner Uşaklı 0721bee146 feat: on category search reveal children and parents
Barış Soner Uşaklı 6cebc7f069 feat: , close chat on ajaxify on mobile
Julian Lam 5cd9e1bf86 fix:
Misty (Bot) 1d26aac8b8 Latest translations and fallbacks
Misty (Bot) b09749ff00 Latest translations and fallbacks
Misty (Bot) 64a20f5616 Latest translations and fallbacks
Barış Soner Uşaklı 157b921e14 fix: , make strip exif configurable
Barış Soner Uşaklı e65ddc98b5 fix: https://github.com/barisusakli/nodebb-plugin-dbsearch/issues/53
Misty (Bot) 4da9a1eb38 Latest translations and fallbacks
Julian Lam a97e97b9c3 fix: incorrect pathname format for app.previousUrl
Barış Soner Uşaklı 106d52a47f fix: , use notice element instead of alert
Misty (Bot) d95e644720 Latest translations and fallbacks
Misty (Bot) c6449c106b Latest translations and fallbacks
Misty (Bot) b692dd87cd Latest translations and fallbacks
Julian Lam 7e5cb72a59 fix: save pathname into app.previousUrl ins. of entire url
Julian Lam f552cea523
fix: , removing nbsp from email CTAs ()
* fix: , removing nbsp from email CTAs

* fix: added right arrow to CTA button
Julian Lam b32da57faf
fix: shortened CTA text and added custom text for some notifs ()
* fix:  shortened CTA text and added custom text for some notifs

Specifically, new-reply and new-chat have different CTA text as they
do not go to the forum home like other email templates send users to.

* fix: minor optimization as suggested by @barisusakli
Julian Lam a41769e61c
feat: update meta tags on ajaxify (), fixes
* feat: wip -- refresh meta tags on ajaxify

* feat: wrapped up meta tags update on ajaxify feature

* fix: removed commented-out line

* fix: removed another commented-out line
Misty (Bot) f6ce0e655d Latest translations and fallbacks
Barış Soner Uşaklı dfab231afd
Copy group privs ()
* feat: ability to copy a groups privileges

ability to copy a group's privileges to all categories, or children of current category

* feat: switch to dropdown

added copy from category to groups

* fix: indents
Misty (Bot) 05a6413e44 Latest translations and fallbacks
Misty (Bot) 58311b6cf6 Latest translations and fallbacks
Julian Lam 4f0dc44307 fix: updated chat and post edit and delete timeout labels in ACP
yossizahn 1703233f48 fix: , switchTimeagoLanguage shouldn't discriminate against languages w/o shorthands
Baris Usakli cf5aeace6b feat: closes
Misty (Bot) 31f347daad Latest translations and fallbacks
Misty (Bot) c838ad153d Latest translations and fallbacks
Misty (Bot) 69d14cc6dd Latest translations and fallbacks
Barış Soner Uşaklı bf6fc502c4 fix:
Barış Soner Uşaklı c940a73359 fix:
Barış Soner Uşaklı 9385c8e3ee feat:
Misty (Bot) ed79f37b3e Latest translations and fallbacks
Misty (Bot) edc26a5b66 Latest translations and fallbacks
Barış Soner Uşaklı 32cf07d732 fix:
Barış Soner Uşaklı f86d74d8b9 fix:
Barış Soner Uşaklı 09681e6ccf fix:
Misty (Bot) a876c53b55 Latest translations and fallbacks
Misty (Bot) 81f3fbdcfc Latest translations and fallbacks
Misty (Bot) 0fe954816f Latest translations and fallbacks
Misty (Bot) 35618de1a7 Latest translations and fallbacks
Misty (Bot) 3a35b77d5f Latest translations and fallbacks
Julian Lam c38db4f765 feat:
This reverts commit 81f8cfe3da.
Misty (Bot) c87ebc93c7 Latest translations and fallbacks
Barış Soner Uşaklı 81f8cfe3da Revert "feat: #7515"
This reverts commit ac889db16b.
Barış Soner Uşaklı ac889db16b feat:
Misty (Bot) 8cd3d43322 Latest translations and fallbacks
Misty (Bot) 4de53d5316 Latest translations and fallbacks
Misty (Bot) 4f303a85ce Latest translations and fallbacks
Misty (Bot) a8627d33c4 Latest translations and fallbacks
Julian Lam 3871a02ccc fix: resolve CORS error on uploading via URL
On uploading a new profile picture via URL, a CORS error presents
itself during the .toDataUrl() call due to misconfigured CORS
handling in the library. The change here allows cropper.js to
check crossorigin attribute in image and handle appropriately.

Also, the error handling is improved so the error is caught on
Firefox, as it sends a different error message than on Chrome.
Misty (Bot) da2e0e78d2 Latest translations and fallbacks
Barış Soner Uşaklı 2ee2cd528f feat:
Misty (Bot) 6d8880db43 Latest translations and fallbacks
Barış Soner Uşaklı e906bea470 fix: escape search snippet closes
Misty (Bot) 8fb07f8131 Latest translations and fallbacks
Barış Soner Uşaklı 1f3554ff00 fix:
Julian Lam 63e16ec0a2 fix: , email throttling options set
Misty (Bot) af2663d6da Latest translations and fallbacks
Andrew Rodrigues 78e0b9834c fix:
Misty (Bot) 148ccb6165 Latest translations and fallbacks
Andrew Rodrigues 24dcae2193 feat: manual password expiry. closes
Julian Lam c289b904e6 fix:
Andrew Rodrigues c37b2f2ed3 fix:
Andrew Rodrigues dcdd41c7ce fix:
Andrew Rodrigues 962b7f73d3 fix:
Misty (Bot) 438d19bb64 Latest translations and fallbacks
Baris Usakli 7211dde7b9 feat:
Baris Usakli 777ca03264 fix:
Barış Soner Uşaklı 2b6f1a05bf feat: admin/groups style change
Misty (Bot) 593261293b Latest translations and fallbacks
Misty (Bot) eef456b864 Latest translations and fallbacks
Barış Soner Uşaklı db47753877 feat: add process cpu usage to admin
Misty (Bot) 2a6f18f656 Latest translations and fallbacks
Misty (Bot) d9697f8ff1 Latest translations and fallbacks
Misty (Bot) 5c18b299b1 Latest translations and fallbacks
Misty (Bot) d60514b09b Latest translations and fallbacks
Julian Lam 6f272e3474 fix: removed notification subheader translation string
Julian Lam d3a10628e7 fix: broken 50% border radius on emails, failing tests
Misty (Bot) 3f945c2b12 Latest translations and fallbacks
Julian Lam 3a7f1c192b fix: failing tests from revamped-emails branch
Barış Soner Uşaklı 03305db845 fix:
Julian Lam f32a992237
feat: revamp email templates to be more style agnostic ()
* feat: re-designed digest

Updated design, logic no longer shows "no topics", just doesn't
show the list at all, teaser re-retrieved for digest so that it
always grabs a teaser even if there is no reply, changed default
email background to a light grey.

* fix: minor padding issues in digest

* fix: banned template

* fix: invitation.tpl

* fix: removed unused notif_chat and notif_post email templates

* fix: notification template

* fix: registration_accepted template

* fix: reset tpl

* fix: test tpl

* fix: email verify tpl

* fix: reset notify tpl

* fix: welcome tpl

* fix: additional minor font fixes

* fix: removed unused email header image assets

* fix: internationalised 'your daily digest' string

* fix: broken url in digest 🤦

* feat: added RTL support for emailer

/cc @PostMidnight
Barış Soner Uşaklı fc830c0f41 feat: lower search timeout
Barış Soner Uşaklı 8a0e1280d6 feat: quick search
Misty (Bot) ea66fc3fa0 Latest translations and fallbacks
Julian Lam 158f68eb47 fix: search.api not working on subfolder
Baris Usakli d2b8396764 feat: make topic search a function
Julian Lam 57069a5c48 fix: better handling for errors in Adv>Databases
Barış Soner Uşaklı c01d43e01d feat: quick search
Misty (Bot) 4518198786 Latest translations and fallbacks
Barış Soner Uşaklı d5ece9a4c3 fix: don't refresh page when enabling/disabling categories
Barış Soner Uşaklı c2e7ae7f41 fix:
Julian Lam ab0e547d23 fix: autocomplete not triggered if chat switched
Julian Lam 6c2f48f189 fix:
Barış Soner Uşaklı 45c322aeb0 fix:
Julian Lam e8f3c25676 fix: re-introducing indeterminate checkbox state to ACP privs
Julian Lam 0fffcb3855 fix: , missing success alert on group name change in ACP
Julian Lam 91a7b9070a fix: , panel-header widget colours in ACP
Julian Lam 96b6ce1f3c fix: eslint failure from daadcc4889