JC Brand
848126638e
Make the new msg indicator clickable
2016-05-28 12:25:44 +00:00
JC Brand
b6fcc9b79d
Don't render unescaped urls.
2016-05-28 11:28:32 +00:00
JC Brand
5a1b308edd
Render images from URLs
2016-05-28 11:13:49 +00:00
JC Brand
c738d085c4
Indicate to the user when there are unread messages
...
further down in the chat box.
2016-05-28 10:07:11 +00:00
JC Brand
82ee7f694e
Don't ignore messages sent to different resource
...
But make this behavior configurable. Updates #647
2016-05-28 06:36:24 +00:00
Kamran
b82e0f3136
Fix for issue #648 ( #649 )
...
* Updated onDisconnected method to fire disconnected event. Issue #648
* Updated docs/CHANGES.md
2016-05-28 00:31:58 +02:00
JC Brand
619d970f25
Scroll down on <subject> messages.
...
Also, don't call scrollDown unnecessarily in showStatusMessages
2016-05-27 12:53:07 +00:00
JC Brand
032fe0d417
always scroll down when user sends a message
2016-05-27 12:42:31 +00:00
JC Brand
bbc23764e7
Initial work on keeping track whether the user scrolled
...
so that we don't scroll down while the user is reading messages further up.
2016-05-27 10:07:43 +00:00
JC Brand
e923fbf2d1
Set i18n to empty obj in cases where there's no locales
...
This lets variable interpolation still work (if Jed is loaded)
2016-05-26 13:02:53 +02:00
JC Brand
22041b3d7f
Bugfix, room subject wasn't being shown. Also added a test for it.
2016-05-25 09:22:27 +00:00
JC Brand
7b006f31d4
Fix failing test.
...
When sending a MUC message, fullname should be the user's nick in the chat room.
2016-05-25 09:00:25 +00:00
JC Brand
2473fb133a
On 2nd thought, don't query the msg text
...
I'm afraid it might get very expensive.
2016-05-25 08:31:35 +00:00
JC Brand
29c2a96481
Bot message doesn't appear when it has the same id as its command
2016-05-25 07:54:58 +00:00
JC Brand
aaaacf2513
Also show the day for the first received messages.
...
Until now, new days were only indicated for messages received on different days
*after* the day's messages.
2016-05-25 06:24:42 +00:00
JC Brand
cb288341fb
Bugfix. Login form doesn't render after logging out
...
when auto_reconnect = false
2016-05-24 09:03:41 +00:00
JC Brand
6550544b41
Bugfix. Bind to right context.
2016-05-24 08:41:59 +00:00
JC Brand
c8e4ae13ea
No need to explicitly send unavailable presence, Strophe does it for us.
2016-05-24 08:06:38 +00:00
JC Brand
0d2e49a976
Bugfix. Don't hide the roster filter when it's actually being used
...
The filter was being hidden if the roster was not big enough to require a
scrollbar, but the roster might not be big enough because the roster is
actually being applied.
2016-05-24 07:58:54 +00:00
JC Brand
a2e465f49f
Send presence of type 'unavailable' when logging out.
2016-05-23 09:48:51 +00:00
JC Brand
e0c6626c6f
Add deprecation warnings for events that will be removed.
2016-05-23 09:48:26 +00:00
JC Brand
277527e9b7
Fix a typo.
2016-05-19 13:35:51 +00:00
JC Brand
af89109670
Bugfix. Flush connection just after connection.
...
Solves a weird problem I've encountered with PubSub and Prosody, whereby a
returned HTTP response is not received by the browser. Underlying cause is
still unknown, but is BOSH related and it appears to be that the HTTP request
being responded to by Prosody is no longer open/valid.
2016-05-11 09:10:27 +00:00
JC Brand
c243aba98f
Add jid
method to converse API, to retrieve the user's JID.
2016-05-10 08:08:42 +00:00
JC Brand
218000551d
Add the ability to replay transcripts of chat logs.
2016-04-28 14:58:09 +00:00
JC Brand
09457d8461
Properly handle notifications for groupchat messages
2016-04-28 14:58:09 +00:00
José María Rubio Moral
902cf0720e
Feature/add catalan language ( #634 )
...
* feature add catalan language
* feature add catalan language
2016-04-14 11:05:22 +02:00
JC Brand
d2ee62da71
Make sure that there is a valid connection when login API is called
...
In the process I had to refactor some methods which required the mock
connection of tests to be changed as well.
2016-04-13 15:11:50 +00:00
JC Brand
a969d010cb
Don't try to reconnect on auth fail.
2016-04-13 12:09:16 +00:00
JC Brand
e09328df6a
Add login
API method.
2016-04-13 11:52:28 +00:00
JC Brand
0564f0f592
Handle case were connection is not defined.
2016-04-13 10:09:47 +00:00
JC Brand
aee232421c
Properly tear down when logging out or disconnecting.
...
Remove interval handler and the user activity handler.
Make sure the connection is reset when logging out.
Also removed the reconnectTimeout, instead debounce the reconnect method by 1 second.
2016-04-08 09:02:06 +00:00
JC Brand
f4c1e0916e
Debounce so that it doesn't get called for each fetched contact
2016-04-07 10:42:35 +00:00
JC Brand
d0c13ea91c
Small translation tweaks and then compiled i18n files
2016-04-07 10:42:27 +00:00
JC Brand
cd3cc412d9
Move updateOnlineCount to controlbox, where it belongs.
2016-04-06 13:14:38 +00:00
JC Brand
6d766f684f
Scroll down when maximizing a chat
...
Otherwise maximized chats are scrolled to the top, showing the oldest messages.
Ideally we'd probably like to remember the scroll position, and show that, but
this would require some significant refactoring.
2016-04-05 11:54:50 +00:00
JC Brand
38322c7795
Hide the minimized chats toggle immediately
...
Otherwise the hide event can prevent a consecutive show event.
This bug becomes apparent when maximizing a minimized chat in a screen with not
enough space.
Another box will have to be minimized, which causes first a hide and then a
show event on the minimized chats toggle.
2016-04-05 11:49:34 +00:00
JC Brand
94693f2d02
Some refactoring to fix issues with how/when chat rooms are shown
...
- Don't call show in a room's initialize method (instead let the code be more
similar to normal chats, in that it should listen to the "show" trigger).
- Rename chatBoxShouldBeShown to chatBoxMayBeShown
- Implement auto_join for rooms only once boxes have been fetched already.
2016-04-05 11:23:16 +00:00
JC Brand
64eb5d2f4a
Fix grammar
2016-04-04 10:34:23 +00:00
JC Brand
8e0f8f0a6d
Add the ability to filter contacts by chat state.
...
The roster filter is now also remembered across page loads.
2016-04-02 11:30:54 +00:00
JC Brand
885c553e2e
Bugfix. Login panel wasn't being rendered after logging out
2016-04-02 03:43:04 +00:00
JC Brand
3787a34435
Create a mobile-specific build of converse.js
...
This build doesn't include the converse-minimize and converse-dragresize
components.
Also regenerated the other builds.
2016-04-01 13:37:53 +00:00
JC Brand
a6c3b46237
Move the drag-resize code into a separate component.
2016-04-01 12:46:19 +00:00
JC Brand
a9a9368439
Bugifx. rooms weren't shown if converse-minimize was disabled.
2016-03-31 15:01:27 +00:00
JC Brand
1fbc7e0f3b
Use attemptNonPreboundSession for reconnections.
...
Fixes reconnects for certain usecases not yet covered.
2016-03-31 13:11:31 +00:00
JC Brand
e0d1a32fdb
Attempt to reconnect when authfail happens
...
and auto_login is true and credentials_url is set.
Trying to handle the case where tokens are used for credentials_url (and the
token is expired).
Not yet 100% happy with this implementation.
2016-03-31 12:32:11 +00:00
JC Brand
6b3fbc9998
Give feedback of error messages via Desktop notifications
2016-03-31 12:25:38 +00:00
JC Brand
1c375d5821
Cleaner separation between converse-mam and converse-chatview
...
Also add the ability to disable MAM for certain chats (such as the headlines chat).
2016-03-31 09:17:39 +00:00
JC Brand
ea9665df4b
Add the option sticky_controlbox, to disable closing it.
...
updates #622
2016-03-31 09:17:32 +00:00
JC Brand
a477970428
Ignore type error messages as headline messages.
2016-03-31 08:54:09 +00:00
JC Brand
4c6bd1f49c
Cleaner separation between minimize/trimming feature and core
...
One visible effect is that when this component is now removed,
minimize buttons are not visible on the chat boxes.
updates #622
2016-03-31 08:40:25 +00:00
JC Brand
2cbf20c6db
Add the ability to fetch credentials for auto_login
...
via the new config option credentials_url
2016-03-31 08:38:43 +00:00
JC Brand
8e3c97ae61
Some fixes to minimization of chats. Updates #622
...
Don't call trimChats in onChatBoxAdded event. Reduntant because it will be
called after maximization and after being shown.
Add new method getShownChats and don't trim if only one or zero chats are being
shown.
Don't trim chats when in responsive mode.
Don't call trimChats unnecessarily in the render method of the trimmed chats
thingy.
2016-03-30 12:18:45 +00:00
JC Brand
868aacb2fc
Controlbox fix. Make sure to initialize the view again.
2016-03-29 15:41:27 +00:00
JC Brand
bd576c74d2
Fix. Looks like it's better to have it a function.
2016-03-29 15:41:06 +00:00
JC Brand
3815d77cc1
Make 'connected' an attribute.
2016-03-29 13:57:33 +00:00
JC Brand
a6b6ad5e9e
Add 'connection' API grouping and 'connected' API method.
2016-03-29 13:41:10 +00:00
JC Brand
556d264747
Remove "optimization" code no longer used or relevant.
2016-03-29 11:50:50 +00:00
JC Brand
2eb727f9f1
Bugfix. stanza name is passed in separately.
2016-03-29 09:48:49 +00:00
JC Brand
2869485c1e
Fixes to trimming of chats.
...
- Don't trim if not connected.
- Move trimChats call to converse-minimized
- Immediately hide view to avoid race conditions.
2016-03-28 14:59:23 +00:00
JC Brand
8f601e8c94
Found more stuff in core that should go to converse-minimize
2016-03-28 14:08:50 +00:00
JC Brand
ed4b9a85cc
Remove ChatBox views when they get closed.
...
Previously views were only hidden, but not removed. This was an unnecessary
"optimization" which introduced unnecessary complexity.
Problem solved was that closing minimized chats didn't dereference the model
for hidden "normal" chat views, causing an exception to be raised when trying
to log out.
2016-03-28 12:23:36 +00:00
JC Brand
f353fe8611
Bugfix for headline messages.
...
Couldn't handle messages with no "from" attribute.
Some refactoring to add code that checks if a messages is a headline to the
utils module.
Updated tests. Add sinon so that we can test returned value of spy.
2016-03-28 10:51:32 +00:00
JC Brand
b3e9a177e2
Merge pull request #617 from lixmal/master
...
Remove split of fullname. Fixes #609
2016-03-28 10:28:38 +02:00
JC Brand
95b81f13c1
Add support for showing headline messages in notifications
2016-03-22 08:45:54 +00:00
JC Brand
946e9fed5d
Add new MUC option auto_join_rooms
.
...
Fixes #156
2016-03-22 08:15:52 +00:00
JC Brand
fc7f50887a
Refactored MUC plugin to not have to override ChatBoxes collection.
...
Instead we use event handlers.
2016-03-22 07:49:25 +00:00
JC Brand
1f2840035b
Bugfix. contact is a map, not a Backbone.Model
2016-03-22 07:15:48 +00:00
JC Brand
b18059fc04
Bugfix. We no longer use the 'chatroom' bool
2016-03-21 11:33:34 +00:00
JC Brand
d3c97486dd
Work around Prosody not properly setting type for headline messages
2016-03-21 10:40:52 +00:00
JC Brand
a4c4d6d2d3
Don't break when roster is not defined
2016-03-21 10:40:47 +00:00
JC Brand
2d846961c2
Use 'type' = 'chatroom' instead of 'chatroom' boolean.
2016-03-21 10:00:15 +00:00
JC Brand
3aefba3200
Change ping plugin to not have to use overrides.
...
Had to add a `reconnect` event to core.
2016-03-21 10:00:15 +00:00
JC Brand
82aa9fec2c
Support for showing headline messages.
2016-03-21 10:00:10 +00:00
Viktor Liu
ad036ea75f
Remove split of fullname. Fixes #609
2016-03-20 01:47:51 +01:00
JC Brand
8e18d736b4
fixed indentation of comments
2016-03-19 22:16:00 +00:00
JC Brand
fa69bb1b0a
trimChats called in converse-minimize. Return the view.
2016-03-19 21:56:55 +00:00
JC Brand
55593245f3
converse-otr should depend on converse-minimize
...
Also generated new dist files.
updates #616
2016-03-19 13:34:03 +00:00
JC Brand
ae6a7f4b02
Option to ignore certain JIDs' chat state notifications
2016-03-18 09:11:43 +00:00
JC Brand
9a449e3615
comment indentation
2016-03-18 08:49:32 +00:00
JC Brand
a2b8d04d84
Move config settings to the relevant plugins
2016-03-18 08:12:23 +00:00
JC Brand
37001a9bc6
Also send out presence stanza when setting it via API
2016-03-17 05:38:52 +00:00
JC Brand
d3767426f6
Allow stanza listener to be registered without options obj
2016-03-16 18:31:55 +00:00
JC Brand
36a875a402
Add stanza-specific event listener.
...
Therefore removing the `presence` event again.
2016-03-16 18:12:11 +00:00
JC Brand
1c961ab4d1
Emit an event presence
when a presence stanza is received.
2016-03-16 15:59:07 +00:00
JC Brand
302c8d42d8
Move VCard stuff from converse-rosterview to converse-vcard
2016-03-16 13:50:52 +00:00
JC Brand
6506d4745a
Call initialized
event once everything in core has been set up
2016-03-16 13:50:35 +00:00
JC Brand
2173359718
Set dataType JSON of ajax request of prebind_url
2016-03-16 12:56:11 +00:00
JC Brand
e461b22ff9
disconnect and reset before attempting to reconnect.
2016-03-16 12:44:59 +00:00
JC Brand
08222182c5
Move VCard functionality into separate plugin
2016-03-16 11:21:27 +00:00
JC Brand
5651f76373
Bugfix. onConnected overrides need to return promise.
2016-03-16 10:10:50 +00:00
JC Brand
6618d694b1
No need to override ChatBoxView with MUC-specific method
2016-03-16 09:03:00 +00:00
JC Brand
2fa39f2150
Move dependencies to the plugins that actually use them
2016-03-16 09:02:12 +00:00
JC Brand
df99fa8c0d
Use rel=noopener
with links that contain target=_blank
...
...
to prevent potential phishing attacks.
More info here: https://mathiasbynens.github.io/rel-noopener
2016-03-16 08:52:45 +00:00
JC Brand
3fd2225fae
Don't try to restore if rid, jid and sid are passed in.
...
Fixes an issue whereby those tokens are passed in but not used and instead
converse attempts to restore the session (and then totally ignores the tokens
when it fails).
Makes sense to me that you'd want your passed in tokens to be used always, even
when there are restorable tokens.
2016-03-15 18:09:50 +00:00
JC Brand
49d58d321c
Fix timing bug with minimized_chats not being available in time
2016-03-14 17:20:21 +00:00
JC Brand
eff2335624
Bugfix. Wrong function signature
2016-03-14 17:07:01 +00:00
JC Brand
80c26e708c
Add new option strict_plugin_dependencies
2016-03-14 17:03:48 +00:00
JC Brand
45bc7f1180
Remove the need to depend on converse-controlbox and converse-chatview
2016-03-14 17:03:14 +00:00
JC Brand
9d9f64b2c3
declare namespace in relevant plugin
2016-03-14 16:46:04 +00:00
JC Brand
7039dbe01b
Move chat minimization to a separate plugin
2016-03-14 16:38:43 +00:00
JC Brand
fc251db59e
Let MUC plugin override the chatbox wrapper.
2016-03-14 16:02:43 +00:00
JC Brand
82107c0d96
Don't ever remove the _super obj
2016-03-14 15:59:33 +00:00
JC Brand
e87731f6b3
Remove unused var declarations
2016-03-14 14:31:03 +00:00
JC Brand
1676258c38
Move the MAM features to a separate plugin.
2016-03-14 14:04:36 +00:00
JC Brand
df3bcad0b3
Move roster view code into a separate plugin
2016-03-14 14:04:36 +00:00
JC Brand
f55b593791
Use the new plugin helper method updateSettings
2016-03-14 14:04:36 +00:00
JC Brand
fe47773c7f
Move ChatView into separate plugin.
2016-03-14 14:04:36 +00:00
JC Brand
a1b31cd1ed
Initial work on adding support for headline messages.
2016-03-14 14:04:31 +00:00
JC Brand
8b459c68b1
Call trimChats in the show method of the box view
...
Not in the onAdded handler.
2016-03-09 11:03:06 +00:00
JC Brand
d192b34919
onChatBoxFetched renamed to onChatBoxesFetched
2016-03-09 10:54:50 +00:00
JC Brand
6eb08bd42f
Bugfix. show method must be debounced per instance
...
Otherwise it gets debounced for multiple instances and certain chat boxes will
then not get shown.
2016-03-09 10:53:39 +00:00
JC Brand
d893d9782a
Improvement in when trimChats gets called
...
Don't call trimChats when the box is minimized or maximized, instead call it
only when the minimized chats toggle appears or disappears, since that's the
element that adds/removes space.
Also, a fix. 'onShow' has been renamed to 'onMaximized'
2016-03-09 10:26:14 +00:00
JC Brand
7484259024
Bugfix, need to return the chatbox
2016-03-09 10:01:20 +00:00
JC Brand
8b30c60592
Call minimize() not hide() when minimizing
2016-03-09 10:00:28 +00:00
JC Brand
ce9008a56a
Rename onShow to onMaximized and add onMinimized
2016-03-09 09:59:25 +00:00
JC Brand
7b2f75ec72
Updated trimChats slightly.
2016-03-09 09:58:22 +00:00
JC Brand
2dbe2fc5a3
Bugfix. Need to set the context when calling a _super method
2016-03-09 08:39:04 +00:00
JC Brand
c793b846fb
Only ask for permission once the user is already logged in
...
updates #443
2016-03-08 22:36:13 +00:00
JC Brand
02faa555bb
Recreate dist files. fixes #443
2016-03-08 12:16:26 +00:00
JC Brand
550f7827bf
Bugfix. Contact wasn't being sent. updates #443
2016-03-08 12:11:35 +00:00
JC Brand
d92645c8d3
Show a desktop notification when a contact request is received
...
updates #443
2016-03-08 11:04:10 +00:00
JC Brand
0aa0c02124
Add tests for src/converse-notification.js. updates #443
...
In the process refactored the code being tested.
- Move notifications code in MUC to src/converse-notification.js
- Trigger the 'contactStatusChanged' event in RosterContact and not in
ChatBoxView (which might not exist).
2016-03-08 10:44:27 +00:00
JC Brand
9aed64d4bf
updates #603 .
...
prevous fix wasn't correct. Rename handlers to make it clear which methods are
the event handlers, put them together and make sure docstrings are relevant.
2016-03-08 08:44:45 +00:00
JC Brand
d4c127e196
Fixes #608
...
The no-jquery build was broken
2016-03-07 17:52:36 +00:00
JC Brand
fd0c9cecb7
Log the err and call with null, then return.
2016-03-07 17:26:31 +00:00
JC Brand
efa4a9ff23
Fixes #577 Add a timeout config var for MAM
2016-03-07 17:16:57 +00:00
JC Brand
4a9146460d
Fix random fails in FF due to different module loading times
...
According to the require.js documentation, if you are using "require" in HTML,
then the data-main attribute should not be used.
http://www.requirejs.org/docs/api.html#data-main
So merged main.js into converse.js, which appears to solve the problem.
2016-03-07 16:35:08 +00:00
JC Brand
4624cc2dc7
Fixes #603
...
Method has new arg signature now that it's an event handler
2016-03-07 16:10:27 +00:00
JC Brand
c2212833a1
Fixes #607 , view.model is undefined.
2016-03-07 14:29:45 +00:00
JC Brand
3690d1c205
Fix. Used the wrong listenere.
2016-03-01 22:40:19 +00:00
JC Brand
23a1dc4f2b
Some fixes concerning event emitting.
...
Don't make the event "this" context the protected converse object.
Can't trigger multiple data parameters, need to pass an object if there are
multiple values to be sent.
2016-03-01 22:39:45 +00:00
JC Brand
f7725943f8
Emit an event 'contactRequest' when a subscription request is received
2016-03-01 21:57:49 +00:00
JC Brand
8665c0ac1c
Bugfix in converse-ping. this
was wrong context.
2016-03-01 21:40:49 +00:00
JC Brand
bc42d50a86
Update docs to mention desktop notifications. updates #443
2016-03-01 09:43:44 +00:00
JC Brand
26cb98d963
Move playing of sounds to the notification plugin.
...
Also add a config setting for the icon shown in HTML5 notificatins.
updates #443
2016-03-01 08:58:36 +00:00
JC Brand
9cce0ff6ae
Add plugin settings to default settings.
...
So that they are retrievable via the API.
2016-03-01 08:57:57 +00:00
JC Brand
14c66ff755
Also show HTML5 notifications for chat state changes.
...
updates #443
2016-02-29 21:59:56 +00:00
JC Brand
578ca540b3
Move RosterContact and RosterContacts back into core.
...
They're independent of the controlbox and used by other core functions.
2016-02-29 21:29:05 +00:00
JC Brand
7f5962a177
Add plugin for HTML5 notifications. updates #443
2016-02-29 20:59:11 +00:00
JC Brand
cd731ed699
Some refactoring to make plugins easier.
...
- Refactored sound notification to make it a bit more generic
- Split up onMessage
2016-02-29 20:54:34 +00:00
JC Brand
4ebed3c995
We still need the roster in core, so set it there.
...
Still have to move the roster code out of src/converse-controlbox.js
2016-02-29 20:05:01 +00:00
JC Brand
9fb1c2383e
Bugfix. Restore code to get locale from browser.
2016-02-29 20:03:45 +00:00
JC Brand
dcd090ff31
Rip out the controlbox code and put it in src/converse-controlbox.js
...
Also fixed an issue w.r.t the plugin architecture. Previously infinite
recursion would happen when more than one plugin was overriding a method.
Resolved now by using a wrapper function that lazily sets the correct super
method.
2016-02-29 16:40:51 +00:00
JC Brand
9ae2f71747
Found more chatroom specific code in converse-core.js
2016-02-29 16:40:51 +00:00
JC Brand
c0c4cd9272
Rename builds directory to dist
...
To conform with how many other projects name their directories.
2016-02-28 09:00:22 +00:00
JC Brand
9f9b38f852
Some i18n fixes
...
The __ translate method should only be run *after* converse.js has been
initialized and we know what the actual desired language is
Also fix bug in src/locales.js where wrong langs were assigned to wrong keys.
2016-02-28 08:45:36 +00:00
JC Brand
c370b3e989
Remove the config file for the no-OTR build.
...
Custom builds like this should rather be done by removing components in
converse.js and then running `make build`
2016-02-28 08:29:23 +00:00
JC Brand
d00f2d1c3d
Figured out how to exclude the locales from the no deps build
2016-02-28 00:53:44 +00:00
JC Brand
fb2e5e27c7
Let the utils work without Jed available.
2016-02-28 00:37:38 +00:00