Commit Graph

1165 Commits

Author SHA1 Message Date
JC Brand
b5eea12d49 Refactor so that message attributes are parsed early
It's better to parse an incoming message stanza early, than to have
all kinds of methods throughout the codebase that does querySelector
etc.

Firstly, it allows us to catch and report errors and malicious stanzas early on.
It also simplifies programming because you don't need to try and
remember how to properly parse a stanza, all the work is done upfront
for you.
2020-04-27 16:34:37 +02:00
JC Brand
bad815b429 Bugfix. Don't create multiple RosterContactView objects 2020-04-27 16:30:33 +02:00
JC Brand
958379682a muc: Render role change messages as ephemeral notifications 2020-04-23 15:11:36 +02:00
JC Brand
4b270359f6 Use Karma as test runner 2020-04-23 11:55:51 +02:00
JC Brand
7e23adf26f Remove the need for require.js to run tests 2020-04-22 12:10:39 +02:00
JC Brand
c1efb0d2b4 Add an external API for sending presences 2020-04-19 09:41:38 +02:00
JC Brand
8a7b25584d Show error messages via objects
Instead of injecting them directly into the DOM.
2020-04-19 08:03:44 +02:00
JC Brand
60b3f7ae25 Add an autocomplete component 2020-04-17 11:01:44 +02:00
Dele Olajide
f97d827280
fix #1963 - Mentions are visually incorrect when used in message replies (#1968)
* fix #1963 - Mentions are visually incorrect when used in message replies
2020-04-15 12:25:53 +02:00
JC Brand
c9084e4ed5 muc-views: Present challenge to destroy confirmation
And also allow the user to specify the JID to where the conversation has
moved to.
2020-04-15 09:30:10 +02:00
JC Brand
df9612f937 Add support for XEP-0317 MUC Hats 2020-04-13 22:57:29 +02:00
JC Brand
a1d5563963 Move OMEMO-related message parsing to utils/stanza.js 2020-04-13 17:44:47 +02:00
JC Brand
e91a38547a MUC: create role/affiliation change message objects
in @converse/headless instead of injecting HTML via the view
2020-04-13 11:21:40 +02:00
JC Brand
4ef5363024 Fix failing tests 2020-04-10 16:59:34 +02:00
JC Brand
4425c3dde7 Always show a new topic, even if the previous one was hidden 2020-04-08 14:31:18 +02:00
JC Brand
bc4d016557 Don't show duplicate topic change notifications 2020-04-08 13:08:15 +02:00
JC Brand
5fd316816d MUC: Don't show topic change notification for old changes.
Also, show topic by creating a message object, instead of directly
inserting HTML into the DOM. This is a necessary precursor to being able
to render chat messages via lit-html/lit-element.
2020-04-07 11:49:12 +02:00
JC Brand
e18fe5e212 Use the getHeadingButtons hook instead of overrides 2020-04-07 10:20:43 +02:00
JC Brand
531ebf335c Properly test and fix show/hide of MUC topic 2020-04-06 15:27:32 +02:00
JC Brand
bb9e394e93 muc: handle join/leave notifications similarly to CSNs
Remove the `muc_show_join_leave_status` config setting.
We don't show the optional statuses at all now.
2020-04-01 14:34:11 +02:00
JC Brand
c20dbbbbbd Store in user settings whether a MUC topic is hidden or not 2020-03-31 22:57:22 +02:00
JC Brand
6391cc0803 Rename applyUserSettings to applySiteSettings 2020-03-31 14:08:34 +02:00
JC Brand
631b9bb438 Use the settings API for setting and getting config settings
This is an initial step towards no longer storing and accessing settings
directly via the `_converse` object
2020-03-31 11:57:03 +02:00
JC Brand
321a54323e Allow moderators to retract their own messages...
when retractions are restricted to mods only
2020-03-26 10:35:08 +01:00
JC Brand
6865a73f46 Fix failing tests 2020-03-25 12:18:19 +01:00
JC Brand
e3bd7b45f5 Distinguish between chat content and messages content.
Fixes a bug that prevented scrolling from working correctly
2020-03-24 14:34:57 +01:00
JC Brand
7812d4e7b6 Show chat state notifications inside the scrollable area
Rename CSS class to conform to convention
2020-03-24 11:28:50 +01:00
JC Brand
5e27579ebe Don't ignore groupchat messages that also contain a CSN 2020-03-23 20:54:27 +01:00
JC Brand
57709b2e78 Sort modtools search results by nickname 2020-03-23 18:06:36 +01:00
JC Brand
00cac6d250 Add the ability to filter the results in the modtools modal 2020-03-23 14:34:19 +01:00
JC Brand
b215c59bd0 Add more XSS tests 2020-03-21 21:43:29 +01:00
JC Brand
540a85e8db Move XSS tests into a separate spec 2020-03-21 21:12:36 +01:00
JC Brand
b5d57f0ef8 Handle and render chat state notifications separately from messages 2020-03-21 17:21:53 +01:00
JC Brand
ca012d4479 Update to newer Skeletor.js
`.forEach` on a Collection no longer returns the models, so need to
update some tests.
2020-03-12 15:24:29 +01:00
JC Brand
c9f29f76e5 Use lit-html to render URLs 2020-03-06 12:24:23 +01:00
JC Brand
366dee0aa5 Bugfix. Allow moderators to retract their own messages 2020-03-05 13:42:58 +01:00
JC Brand
a7f28cd61d When creating message objects, wait for confirmation from storage
Queue messages and handle them sequentially, each time waiting for promises to
resolve before handling the next message.

Updates #1899, which likely happens because an error message is received
before messages have been fetched.
2020-03-04 15:14:57 +01:00
Lance Stout
a6aaf3f595 Update chat state notifications when message is edited. 2020-03-03 15:24:15 +01:00
JC Brand
f34cc63d4c Log out before running test
To avoid one test which times out, causing subsequent tests to not be
run (and therefore also time out).
2020-03-03 15:12:20 +01:00
JC Brand
831e59c1a7 controlbox: Wait when saving while closing
Otherwise we run into race conditions while testing
2020-03-03 14:38:29 +01:00
JC Brand
8aaa1a6417 core: Make clearSession a synchronous event
In order to give plugins time to properly clear data from the browser storage.
2020-03-03 10:23:46 +01:00
JC Brand
9295850789 controlbox Only call show/hide callback when the action was actually done 2020-03-03 08:21:55 +01:00
JC Brand
2af93f4492 modtools: settings for which roles/affiliations may be queried or assigned 2020-02-22 23:16:22 +01:00
JC Brand
e5341d54a9 Bugfix. Dangling moderation messages not applied 2020-02-22 22:59:30 +01:00
JC Brand
61e86a3c23 Fixes #1535
Add option to destroy MUC in the dropdown context menu.
Also add a confirmation dialog.
2020-02-22 20:22:02 +01:00
JC Brand
3c9ec96350 MUC: create references for nicks gathered from messages 2020-02-21 12:30:40 +01:00
JC Brand
d361d1d0a3 MUC: Include nicks from messages in the mentions auto-complete list 2020-02-20 19:14:34 +01:00
JC Brand
62ef18a027 muc_fetch_members now accepts an array of affiliations 2020-02-20 18:39:56 +01:00
JC Brand
49817a850f MUC: Queue messages received before we're ready 2020-02-20 07:13:04 +01:00
JC Brand
0137eb88ae Smacks: Handle MUC messages received before the MUC exists 2020-02-19 13:39:07 +01:00