JC Brand
c583678c86
Use _coverse.api.sendIQ
instead of _converse.connection.sendIQ
...
So that we know an event will be emitted when the stanza is sent.
2018-10-25 18:29:29 +02:00
Emmanuel Gil Peyrot
35b7dbe389
Convert a few functions to async/await.
2018-10-24 21:23:32 +02:00
JC Brand
7b2d64b066
Use _converse.api.send
instead of _converse.connection.send
...
so that we can emit an event when sending a stanza.
2018-10-23 16:06:43 +02:00
JC Brand
6904f9a897
Use es2015 modules instead of UMD
2018-10-23 12:25:58 +02:00
cmrd Senya
8ba8eb02fa
Update main converse.js package to use @converse/headless
...
* Update moved dependencies references to @converse/headless
* Remove unused webpack resolve aliases
2018-10-22 12:44:38 +02:00
JC Brand
e181aaf99b
Make the message view's render
method async
...
So that we first render dynamic content (e.g. images) before inserting
it into the chat.
Also, add the `show_images_inline` setting (which is the cause of this
whole change).
Updated tests to handle this new change and start using async/await
instead of promise callbacks.
2018-10-15 22:19:04 +02:00
JC Brand
e425f25753
Listen for xmpp:
URIs in all of Converse, not only chatrooms
...
updates #537
2018-10-13 20:55:05 +02:00
JC Brand
99c0687684
Fixes #537 Open xmpp: URIs inside Converse
2018-10-13 20:16:00 +02:00
JC Brand
d77802da86
Avoid showing notification messages twice
...
For example `This groupchat is not anonymous`
2018-10-13 14:41:16 +02:00
JC Brand
7270abb08b
Some refactoring of the code that collapses leave/join messages
...
Mostly to match any previous leave/join message from the same user
Fixes #1062
2018-10-13 13:23:55 +02:00
JC Brand
7b9c97dfd3
Also squash leave/join messages
...
And fix an HTML rendering bug for info messages and nicks that contain spaces
2018-10-11 19:04:06 +02:00
JC Brand
71cc98d6f6
Reduce join/leave clutter by removing subsequent ones
...
Previously we checked only if the last message was a join message from
the same person.
Now instead we check the last n messages that are join or leave
notifications.
2018-10-11 15:59:52 +02:00
JC Brand
cf75d37587
join/leave notification fixes.
...
* Don't show leave notification twice when someone leaves, joins and then leaves again
* Add a test case for a member joining and then leaving
2018-10-11 14:05:52 +02:00
JC Brand
aa50942400
Don't show join message for non-online occupants created from members list
...
Fixes #1169
2018-10-11 13:23:39 +02:00
JC Brand
8c772a7f71
We do actually want to show join/leave messages for members
2018-10-11 13:21:01 +02:00
JC Brand
dffcc13dea
Fixes #1140 Add support for destroyed chatrooms
2018-10-10 22:57:12 +02:00
JC Brand
7a612460da
Fixes #1063 Make URLs in topic clickable
2018-10-07 03:31:18 +02:00
JC Brand
5836e9d805
Formatting
2018-10-05 04:43:24 +02:00
JC Brand
c1106f3867
Bugfix. Handler not triggered when submitting password form 2nd time
2018-10-05 03:29:14 +02:00
JC Brand
31080bf2f9
Add a FormData polyfill for Edge comptaibility
...
Fixes #1220
2018-09-24 16:18:51 +02:00
JC Brand
ad9a840cb7
Avoid saving full MUC JID as domain
2018-09-14 10:31:58 +02:00
JC Brand
0a3a6222c6
Provide error feedback to the /register
command.
...
Also fix if/boolean bug when checking whether we should automatically
register
2018-09-13 12:39:50 +02:00
JC Brand
cd05b89726
Fix failing tests due to MUC disco refactoring
2018-09-13 10:52:25 +02:00
JC Brand
8806efce50
Include nick when registering someone as a member
...
This will cause their nick to be registered (if Prosody supports it).
2018-09-12 15:32:38 +02:00
JC Brand
f5b10ff6e8
Formatting
2018-09-12 15:32:37 +02:00
JC Brand
71370f5b45
Add the /register
command for registering yourself
2018-09-12 15:32:37 +02:00
JC Brand
6457bc765a
MUC: Use converse-disco to query for room features
...
By doing so we create a new DiscoEntity for the room, which allows us to
query for features via the disco API.
We also avoid duplication of functionality between converse-muc and
converse-disco
2018-09-12 12:36:14 +02:00
JC Brand
acef8feaaa
Refactoring of fetching of reserved nick
...
- Move `getDefaultNickName` to the model and rename to `getDefaultNick`
- Let `checkForReservedNick` return a promise and save `nick` once received
- Updated `openAndEnterChatRoom` to wait appropriately and remove presence-wrapper
- Update tests to wait appropriately
- Remove presence-wrapper in `getRoomFeatures`
2018-09-12 12:36:13 +02:00
JC Brand
2df9b24211
Add option to auto-register your nickname to a room
...
See https://xmpp.org/extensions/xep-0045.html#register
2018-09-12 12:36:13 +02:00
JC Brand
06352b67c1
Fix AttributeError
2018-09-07 14:49:11 +02:00
JC Brand
8cc88d9b17
Fixes #1152 CSN in MUC triggers rate limiting.
...
- Avoid registering `sendChatState` twice as handler.
- Avoid sending out a CSN right after sending out a message
2018-09-07 14:00:57 +02:00
JC Brand
999536365d
Fixes #1014 Don't show IRC gateway as MUC prefill
2018-09-07 13:14:36 +02:00
JC Brand
014354d075
Fixes #986 Affiliation changes aren't displayed in the chat
2018-09-07 11:54:29 +02:00
JC Brand
27378068c0
Fixes #1064 /topic without argument sets topic to "undefined"
2018-09-07 10:21:47 +02:00
JC Brand
572cc49498
Show room subject in heading, not description
2018-09-07 09:55:36 +02:00
JC Brand
023249f62e
Render profile avatar as canvas.
...
We now have uniform avatar rendering for the profile, messages and
chatboxes.
By rendering as canvas, we can avoid stretching the image.
In the process I also moved the ChatBoxViews collection into its own
plugin `converse-chatboxviews` and placed the AvatarAware views there.
fixes #1157
2018-09-06 15:33:13 +02:00
JC Brand
866f2737da
More JSDoc docstrings for API methods
2018-09-02 23:43:39 +02:00
JC Brand
bb6d4f75bf
Fade out enter/leave messages sooner and add check
2018-08-31 10:36:51 +02:00
JC Brand
1294d682e1
Automatically remove leave/enter and enter/leave messages
...
after 10 seconds.
2018-08-30 23:13:28 +02:00
JC Brand
f72ace506f
Replace the onChatBoxAdded override with event handlers
2018-08-28 15:08:38 +02:00
JC Brand
9f8d30dde3
Create a new store, _converse.config
to store trusted
...
The `_converse.session` store gets cleared after logout, but we want the
`trusted` flag to persist after logout.
Also update the documentation no that the `storage` config option has
been removed in favor of `trusted`.
2018-08-23 09:41:39 +02:00
JC Brand
9ed2ad631a
Store whether this is a trusted device in _converse.session
...
So that it persists across page loads. Otherwise storage falls back to
the default, causing records to be in both local- and sessionStorage.
Additionally, update singleton models to have the 'id' available as a getter.
Otherwise multiple records gets stored in browserStorage, causing random
results being returned.
2018-08-22 23:36:54 +02:00
JC Brand
e123c690f0
Add autocomplete support for occupants with only a JID
2018-08-16 17:11:04 +02:00
JC Brand
2db3db9bab
Add support for editing messages containing mentions
2018-08-16 15:17:54 +02:00
JC Brand
f2b017ec89
Add method to determine references from message text
2018-08-16 15:17:53 +02:00
JC Brand
cc3a158b57
Initial work on showing all options on @
2018-08-16 15:17:53 +02:00
JC Brand
b6f5cd2cc9
Use the auto_first setting
2018-08-16 15:17:53 +02:00
JC Brand
73deaf24c0
Make sure occupants toggle gets shown
2018-08-16 15:17:53 +02:00
JC Brand
2abd1c1db1
Get selection via up/down arrow to work
2018-08-16 15:17:53 +02:00
JC Brand
86fab99c54
Expand test case and improve code.
2018-08-16 15:17:53 +02:00
JC Brand
5ded3b6cb9
Make list an executable
2018-08-16 15:17:53 +02:00
JC Brand
b6f4f05b9e
Add converse-autocomplete and use that in the chat textarea
2018-08-16 15:17:53 +02:00
linkmauve
f0ad326e2e
Simplify an error message on MUC service shutdown ( #1161 )
2018-08-16 11:36:44 +02:00
JC Brand
daf470e311
Check permissions before attempting to execute action on behalf of user
2018-08-09 14:43:40 +02:00
JC Brand
2d05487862
More code reuse between chatboxview and chatroomview
2018-08-07 15:32:13 +02:00
JC Brand
08dce556f9
When correcting a message, also highlight the textarea.
2018-08-07 10:09:35 +02:00
JC Brand
27bc33ba09
Use nickname from global settings when entering a room
2018-08-07 10:09:35 +02:00
JC Brand
506aa33131
Wait for promises before opening chats in API methods
2018-08-01 11:12:00 +02:00
JC Brand
cb118b9cd0
Extract inline code into method
2018-08-01 11:10:43 +02:00
JC Brand
cbe6092c33
Handle case where chat content is empty
2018-08-01 11:10:43 +02:00
JC Brand
4cefc7cdf9
Fix failing tests due to renames
2018-07-25 12:05:09 +02:00
JC Brand
5abb9f8bb2
Found more instance of room
to be replaced with groupchat
2018-07-22 11:31:45 +02:00
JC Brand
84a10d77d9
Cancel message correction by pressing the down arrow
...
Also, add a class `correcting` to the message being corrected, to
provide a visual cue.
updates #421
2018-07-08 11:30:15 +02:00
JC Brand
a67fa6d4e5
Render URLs in the topic in the room details modal
2018-07-02 21:20:37 +02:00
JC Brand
d335173fd7
Bootstrap markup for auto-generated forms
2018-07-02 20:18:22 +02:00
JC Brand
e64edf19b4
Use "Groupchat" instead of "Chatroom"
2018-07-02 16:27:58 +02:00
JC Brand
4331f920cf
Fix failing tests
2018-07-02 15:23:49 +02:00
JC Brand
c6d7317bb2
Show the topic in the room info modal
2018-07-02 13:41:15 +02:00
JC Brand
1880b3f209
Nicer rendering of MUC disconnection messages
2018-07-02 12:52:19 +02:00
JC Brand
9a60b5bb15
Let api.disco.info
use api.sendIQ
(and therefore be promise based)
2018-06-30 14:01:47 +02:00
JC Brand
eed141b53e
Remove unnecessary path aliases from the webpack config
2018-06-06 11:04:23 +02:00
JC Brand
78d6d493d6
Add info icon in room header and show room details in modal
2018-06-04 19:54:11 +02:00
JC Brand
f7c3351e2b
Merge branch 'master' into webpack
2018-06-04 13:46:27 +02:00
JC Brand
bc872ee2cb
Fix various failing tests and update Makefile
2018-06-04 11:20:34 +02:00
JC Brand
74eed32e82
Add shims to webpack config and fix bugs in templates
2018-06-02 17:18:42 +02:00
JC Brand
8948be1d3d
In mobile view, add arrows to chat headings
...
so that you can navigate "back" to the controlbox.
2018-06-01 14:57:19 +02:00
JC Brand
5e97db95f9
Add a close button on the occupants sidebar
2018-05-30 16:55:28 +02:00
JC Brand
8c983ab2a3
Use different icon for adding a groupchat
...
Fixes #1072
2018-05-30 16:38:51 +02:00
JC Brand
d384c70929
Use double angle brackets as occupants toggle icon
...
updates #1072
2018-05-30 16:27:45 +02:00
JC Brand
6dc9e8edf1
Use webpack for module bundling
2018-05-25 14:23:32 +02:00
JC Brand
adad60e298
Refactor so that nick-deduplication takes VCard nick into account
...
Updates #968
2018-05-24 10:24:48 +02:00
JC Brand
e76dc01265
Use nickname from VCard when joining a room
...
updates #968
2018-05-24 10:15:58 +02:00
JC Brand
dd5f6f1025
Show join/leave notifications for members who go offline
...
updates #1094
2018-05-24 09:48:01 +02:00
JC Brand
d0a97fe3c2
Only inform new users that the room is not anonymous
...
instead of informing all users every time someone enters the room.
2018-05-15 10:29:56 +02:00
JC Brand
2a7c6142a5
Use newer classes
2018-05-14 13:49:04 +02:00
JC Brand
d871392039
updates #1094
...
Update the occupants list when occupants are added/removed from the
member lists.
2018-05-11 00:17:44 +02:00
JC Brand
859bc0616e
Fixes #1094
...
- Show users who are registered on the different members lists
- Show badges indicating user's roles and affiliations
2018-05-09 12:28:34 +02:00
JC Brand
b3619077f9
Remove dependency on the strophe disco plugin
...
And instead implement it ourselves.
This solves a bug with that plugin whereby the connection handlers are
added to early and are therefore never fired.
Also fixed a problem whereby entity items are queried for features
before the features have been fetched.
2018-05-07 18:06:50 +02:00
JC Brand
cb0d8c7d86
Found more MUC code that should be in the view module
2018-05-02 15:29:06 +02:00
JC Brand
53f5627b72
Add support for rendering avatars in groupchats
2018-05-01 18:18:02 +02:00
JC Brand
4f7c08b1da
Bail when in a callback for a hanging chatroom
2018-04-30 15:37:37 +02:00
JC Brand
3d42425083
Some UI improvements
...
- Render images as thumbnails
- Use the image.html template when rendering images from pasted URLs
- Update message and spoiler markup to render avatars
- Use the default avatar as fallback when user doesn't have one
- Instead of 'me' render own name or JID
2018-04-30 15:37:36 +02:00
JC Brand
6cce931086
Make sure show
is created on all chatbox types
2018-04-24 16:39:39 +02:00
JC Brand
71be72b50c
Automatically grow/shrink input as text is entered/removed
2018-04-24 14:33:00 +02:00
JC Brand
59a72efe1b
Refactor MUC message sending
...
To make it more similar to how messages are sent in private chats and to
reuse methods as far as possible.
Removed `sendChatRoomMessage` and `clearChatRoomMessages`
2018-04-24 11:09:36 +02:00
JC Brand
e0aaeb66ea
updates #161
...
* Fix typo which broke MUC file upload
* Remove unused method
* Move file input into li element
2018-04-24 07:49:37 +02:00
JC Brand
aacfe3b66b
Don't show MUC CSN if from myself. fixes #1026
2018-04-22 04:26:35 +02:00
JC Brand
74f9952b24
Move sendChatState
methods to the models
2018-04-22 04:25:05 +02:00
JC Brand
dad8eb2f48
Remove separate file converse-http-file-upload
...
It contained only `overrides` and some HTTP upload code was in other
modules.
Current thinking concerning overrides:
Usage of `overrides`, while useful in certain cases, should in general
be discouraged, since it's in essence "monkey patching" which makes it
more difficult to know whats executing at runtime and more difficult to
refactor.
Splitting modules up between XEPs is not always that useful. Some XEPs,
like HTTP Upload (and MAM comes to mind) have their functionality spread
out over single and group chats (and pubsub) and might for practical
purposes be considered "core" enough to not try and keep them in
separate modules (which inevitably requires overrides or a fundamentally
rethinking the architecture).
Where splitting code between modules makes a lot of sense is in keeping
Backbone Models and Views separate (so that alternative view libraries
like Vue could be used) and probably in keeping Single chats, MUC,
PubSub and MIX separate.
updates #161
2018-04-17 15:21:30 +02:00
JC Brand
de6ecbf07a
Render messages via a new MessageView view
...
updates #161
2018-04-17 15:21:26 +02:00
JC Brand
264e6830af
Remove references to unused parameters
...
updates #161
2018-04-17 15:21:21 +02:00
worlword
bf3e6f2363
some code-changes to align with the coding standard
2018-04-12 09:24:41 +02:00
worlword
7660dbfb31
merge httpFileUpload-Branch with master
2018-04-12 07:43:39 +02:00
JC Brand
3d29567ab6
Revert "Don't show typing from different device
CSN messages"
...
This reverts commit 7303e96cdb
.
Instead of dropping the feature entirely, we can check if the CSN is a
carbon message.
2018-04-11 18:46:50 +02:00
worlword
c9a9d01112
used code from 'http-file-upload' branch. Buttons are now added to the toolbars through converse-http-file-upload.js.
2018-04-11 17:09:32 +02:00
worlword
fa80749658
refactoring based on the review from jcbrand 06.Apr.2018
2018-04-11 15:29:41 +02:00
JC Brand
7303e96cdb
Don't show typing from different device
CSN messages
...
To avoid showing them erroneously would mean keeping track of used
message ids which seems like more work than justified by the feature.
Fixes #1026
2018-04-10 20:56:54 +02:00
JC Brand
9528d81c00
Move various MUC methods onto the Backbone.Model
...
To more cleanly separate views and models and to make MUC in headless
mode more viable.
Refs #1032
2018-04-10 18:59:02 +02:00
JC Brand
9a526d4194
Refactoring of the XEP-0085 Chat State Notifications code
...
* Distinguish between CSN messages and other types of messages
* Properly clear previous notifications
* Better handling of notifications from multiple users (in MUC)
* Rename methods to make clarify intent
2018-04-06 17:02:28 +02:00
worlword
7839f20846
fixed sendMessage for so that tests will work again
2018-04-05 08:45:58 +02:00
worlword
530e7f9d3f
fixed file-upload-button in MUC and added changes.md entry
2018-04-03 12:29:12 +02:00
worlword
b23712aec3
added httpFileUpload to converse.js
2018-04-03 11:20:57 +02:00
ChaosKid42
fce9ee0db9
replace geoURIs (e.g. from Convesations) by links to openstreetmap ( #1054 )
...
* replace geoURIs by link to openstreetmap
* Added testcase
2018-03-31 18:29:01 +02:00
JC Brand
ebfd0a8f77
Move various funcitons related to MUC member lists to utils
...
and out of the MUC views plugin.
Refs #1032
2018-03-30 14:23:39 +02:00
JC Brand
06141b3212
Move methods from MUC view to model
...
* checkForReservedNick
* parseRoomFeatures
* sendConfiguration
Refs #1032
2018-03-30 14:23:39 +02:00
JC Brand
b584f2efb3
Add a new config setting nickname
...
- for subscription requests
- when entering chat rooms
2018-03-30 14:22:53 +02:00
JC Brand
9799ecce10
Focus inputs inside modals
2018-03-30 14:22:52 +02:00
JC Brand
2580cafa76
Bugfix. Fix selector
2018-03-30 14:16:07 +02:00
JC Brand
044907e4fa
Looks like focus
parameter was never used.
2018-03-14 13:27:36 +00:00
JC Brand
ca141401a0
Fix failing tests
2018-03-13 13:42:00 +01:00
JC Brand
8bddd0d7f4
Some work on showing emoji in a dropdown
2018-03-09 11:46:50 +01:00
JC Brand
914a55707d
Replace col-
classes with Sass mixins
2018-03-09 10:12:05 +01:00
JC Brand
b3f2fafeea
Various smaller fixes and improvements
2018-03-07 14:36:19 +01:00
JC Brand
21e1b2694f
Bugfix from master.
2018-03-07 11:06:11 +01:00
JC Brand
2db4550b13
Update chat events markup.
2018-03-07 11:02:12 +01:00
JC Brand
181b1836b0
Update and further style toolbars
2018-03-06 15:26:05 +01:00
JC Brand
6bdf204be4
Show occupants sidebar again
2018-03-05 16:58:31 +01:00
JC Brand
d4d3d4c838
Merge branch 'split-muc' into bootstrap4
2018-03-05 16:51:33 +01:00
JC Brand
0013ee5506
Split MUC views into separate file/plugin
2018-03-05 16:32:13 +01:00
JC Brand
e344bf769a
New modal for adding contacts.
...
Remove the xhr_user_search and xhr_user_search_url options
Lazily create modals
2018-02-23 16:33:09 +01:00
JC Brand
b3409fd01b
Move common modal view code into a base class
2018-02-22 18:41:01 +01:00
JC Brand
4e508cfe88
Add a modal to list rooms
2018-02-22 17:40:01 +01:00
JC Brand
e143c88475
More work on the "add chatroom" modal. Working now.
2018-02-22 15:58:23 +01:00
JC Brand
d1d43edf52
Move MUC views into a new plugin
2018-02-21 22:40:30 +01:00