Commit Graph

65 Commits

Author SHA1 Message Date
Sami Mazouz
976a03c9e5
fix: post mention notification errors with _no content_ subjects (#3493)
Co-authored-by: David Wheatley <hi@davwheat.dev>
2022-06-19 22:27:39 +01:00
Alexander Skvortsov
e9feb0aa58 chore: flarum-cli audit infra --fix 2022-01-20 03:45:09 -05:00
Ian Morland
0d9c95b096 [chore] Update JS imports (#80) 2022-01-08 16:57:13 -05:00
David Wheatley
140d6ea221 chore: format javascript 2021-11-28 15:56:30 +00:00
David Wheatley
f41d6bba7e fix: errors on texteditor re-use again (#78)
* fix: errors on texteditor re-use again

* fix: use arrow func to not alter `this`

* fix: more replacements
2021-11-23 21:38:28 +00:00
Gianni Guida
302d92aa47 feat: added compat exports and extensibility (#76)
* Added extensibility

* Corrected object export

* Exported the `insertMention` util

* Return a `Promise` in the `reply` util (for extensibility)

* Removed initialization utils

Co-authored-by: Rafael Horvat <rafael.horvat@glowingblue.com>
2021-11-23 20:44:46 +00:00
David Wheatley
69657f63b7 fix: autocomplete errors with TextEditor re-use (#77) 2021-11-13 21:58:52 +00:00
Sami Mazouz
056c79a908 fix: Cannot reply to posts by deleted authors (#75) 2021-11-05 20:04:20 +01:00
SychO9
ffd982df7f Merge branch 'v1.1.1'
# Conflicts:
#	js/dist/forum.js
#	js/dist/forum.js.map
2021-10-18 20:49:03 +01:00
Sami Mazouz
3437d7229e fix: Missing # from autocompleted user mention format (#74) 2021-10-18 20:17:22 +01:00
Alexander Skvortsov
a2832af01f Only search users via rest API if user has permission (#73)
Closes https://github.com/flarum/core/issues/3070

If the user doesn't have permission to search users, there will currently be browser errors, as the current implementation will still attempt to search and autocomplete. In this PR, we check for permission before searching. The dropdown will still support autocomplete of users currently participating in the discussion.
2021-10-13 14:57:45 -04:00
Alexander Skvortsov
2cb00d6773 Fix missing space after mentions inserted via post reply
Closes https://github.com/flarum/core/issues/3096
2021-10-06 16:30:45 -04:00
Alexander Skvortsov
84dcde4e85 Fix delayed mention search results
Fixes https://github.com/flarum/core/issues/3095
2021-10-06 16:22:04 -04:00
Alexander Skvortsov
03c6db4c8d Import function correctly
There was a typo in the function's name which broke mentions.
2021-10-06 16:15:01 -04:00
David Wheatley
6173c3d612 Minor refactors in frontend JS (#69)
* Add Prettier

* Update dependencies; add typescript setup

* Add tsconfig

* Rewrite some mentions frontend into TS

* Fix use of username instead of display name

* Change back to JS

* Remove commented code

* Update function name to match filename

* Update getMentionText.js

* Simplify condition

* Bump packages to stable versions; use prettier package

* Make functions use camel case

* Update js/package.json

Co-authored-by: Sami Mazouz <sychocouldy@gmail.com>

* Don't access data directly

* Update js/src/forum/addComposerAutocomplete.js

Co-authored-by: Alexander Skvortsov <38059171+askvortsov1@users.noreply.github.com>

* Update tsconfig.json

Co-authored-by: Sami Mazouz <sychocouldy@gmail.com>
Co-authored-by: Alexander Skvortsov <38059171+askvortsov1@users.noreply.github.com>
2021-09-20 18:42:38 +01:00
SychO9
cc62044e6f Support smart quotes in mentions format 2021-05-24 21:49:31 +01:00
SychO9
8ef8dee532 Use slug for user mentions page 2021-05-14 23:13:45 +01:00
Alexander Skvortsov
ae69dd25c7 Update for ICU MessageFormat 2021-05-12 19:27:13 -04:00
Sami Mazouz
3e596aaadf Move replies preview dropdown out of Post-footer (#55) 2021-05-12 20:42:33 +01:00
SychO9
02d3355989 Add space when inserting a post mention 2021-05-02 21:37:31 +01:00
Sami Mazouz
e407c66784 New mentions format, decouple usernames from mentions (#65)
* Convert user mentions to new `@"Display Name"#ID` format

* Handle deleted user's mentions

* Convert post mentions to `@"Display Name"#pID` format

* Handle deleted user's post mentions and deleted posts mentions

* Clean display name of `"#{letters}{numbers}` (replace with underscore _)

* Adapt integration tests to new mention formats

* Use a deleted attribute for user mentions

* Introduce cleanDisplayName util

* Detect new format with autocomplete

* Slug needed on rendering only

* Invalidate user mention tag when ID is invalid
This used to be implicitly done, when there was a username attribute configured, formatter would check that all attributes are available and if not invalidate.

since we now only have `displayname` and `id` attributes which are both available from the regex matching, formatter doesn't implicitly invalidate anymore and therefore validates ANY matches. So we explicitly invalidate the tag when the ID does not match a user.

* Allow username mention format with a setting

* Add tests for turning setting on/off

* Move setting check to tag filter
Because the configurator caches, changing the setting only takes effect after the cache is cleared.

* fix: showing autocomplete at the right moment

* Add dockblocks to explain unparsing process
2021-04-21 10:58:54 +01:00
Alexander Skvortsov
0ad97bb4ed Fix dropdown going off top of screen
The previous solution didn't properly account for document scroll, so when replying to posts, the parent offset would be extremely large, and it'd fall back to the top coordinate, which is out of bounds on small screens.
2021-03-01 23:32:30 -05:00
Alexander Skvortsov
d4db946c31 Update for Editor Drivers Abstraction (#61) 2021-02-26 16:20:07 -05:00
Alexander Skvortsov
eea694e021 Fix mention button in composer toolbar
It seems like we missed one `this.props` during the beta 14 rewrite
2020-12-10 23:49:26 -05:00
Sami Mazouz
367a1b2329 Check if event is cancelable before preventDefault (#54)
This recovers the initial wanted behavior of opening the post mention preview dropdown instead of directly going to the post on touchscreens.
2020-10-29 18:33:26 -04:00
Alexander Skvortsov
26c84b9e5b Use Link component instead of route patch 2020-10-02 20:19:10 -04:00
Alexander Skvortsov
ea56f39a53 Mithril 2 Update (#52)
Update for Mithril 2

- Please note that PostQuoteButton and AutocompleteDropdown are not Fragments, not Components. Accordingly, they have been moved to the components folder.

Co-authored-by: Matthew Kilgore <tankerkiller125@gmail.com>
Co-authored-by: Franz Liedke <franz@develophp.org>
2020-09-23 22:53:46 -04:00
Franz Liedke
1674e7a313 Fix extension to work with Composer state changes
Refs flarum/core#2162.
2020-09-04 18:19:27 +02:00
Franz Liedke
921db74fe4 Fix extension to work with Composer state changes
Refs flarum/core#2162.
2020-09-04 16:46:01 +02:00
Franz Liedke
ce039d3dd6 Fix extension to work with Composer state changes
Refs flarum/core#2162.
2020-09-04 16:42:07 +02:00
Alexander Skvortsov
68163d462a Stop mentions dropdown from jumping around (#48)
Cache the order in which users are returned by the API to stop the mentions list from jumping around
Only ping the api when 2 or more characters are entered
2020-07-01 17:08:31 -04:00
Matteo Contrini
af979f20ff Always show replies list on posts (#47)
Previously, if there was a single reply and it was adjacent to the post it wasn't shown.

See discussion on Discuss: https://discuss.flarum.org/d/23666-flarum-010-beta13-released/75
2020-06-09 20:13:24 -04:00
Toby Zerner
e2bb04ce34 Truncate notification excerpts 2018-12-03 09:37:01 +10:30
Toby Zerner
1f04c732a0 Fix cursor not being placed correctly after mention insertion 2018-11-14 13:36:21 +10:30
Toby Zerner
dd500ec54b Add mention button to text editor toolbar 2018-11-12 17:37:25 +10:30
Toby Zerner
4bd704c9c5 Trigger mention autocomplete on any kind of input 2018-11-06 19:11:25 +10:30
Toby Zerner
f11562f27b Fix user mentions page 2018-09-21 11:52:13 +09:30
Toby Zerner
8d67e6dcf5 Fix live preview 2018-09-21 11:41:32 +09:30
Toby Zerner
061a6cdafa Remove notification pluralization logic
Since we don't return an "unread count" in the API, this pluralization
logic is useless at the moment. Related to #643 and #716 but really
needs further thought in #868.
2018-09-21 11:28:11 +09:30
Toby Zerner
67c7b45dc8 Database changes (#34)
* Implement database changes

* Split foreign keys in to their own migrations; rename pivot tables

* Use whereColumn

* Update core attribute names
2018-09-16 20:50:16 +02:00
Franz Liedke
2e9c184b3b Fix positioning of mention dropdown
Previously, the positioning logic did not account for the case
when the textarea was already scrolled down a bit, thus often
rendering the dropdown off-screen.

Fixes flarum/core#1021.
2018-07-23 14:28:09 +02:00
Toby Zerner
d1f4d5a739 Webpack (#33)
See https://github.com/flarum/core/pull/1367

* Replace gulp with webpack and npm scripts for JS compilation
* Set up Travis CI to commit compiled JS
* Restructure `js` directory; only one instance of npm, forum/admin are "submodules"
* Restructure `less` directory
2018-06-20 13:35:33 +09:30
Toby Zerner
da25882280 Update for new API + TextFormatter 2015-07-23 14:28:39 +09:30
Toby Zerner
985ccc096e Update for component API 2015-06-26 19:09:56 +09:30
Toby Zerner
48ca774af9 Remove parentheses from around post number
They draw too much attention, kinda making it look like an ID or an
error code or something.
2015-06-25 10:11:46 +09:30
Franz Liedke
6ff446675d Include post number in mention notification 2015-06-24 22:46:01 +02:00
Toby Zerner
cf4074b3b8 Make mention previews work on touch devices 2015-06-24 11:47:30 +09:30
Toby Zerner
e53cc010e4 Add icon 2015-06-24 11:47:09 +09:30
Toby Zerner
880f3072ea Only show reply list if there are replies not adjacent 2015-06-23 10:27:42 +09:30
Toby Zerner
80474ec544 No need to query the API about nothing 2015-06-19 15:49:20 +09:30