JC Brand
6ac4f2601d
Fixes #677 Chatbox does not open after close
...
Problem was a race condition between hide and show methods.
Solution was to not hide the chat box during the initialize method.
2016-08-12 20:38:39 +00:00
JC Brand
fe46f2ee77
Chat state notifications are now also sent out from chat rooms.
2016-08-12 12:52:33 +00:00
JC Brand
462a43b891
Add new config option muc_nickname_from_jid
...
which if set to `true` will let converse.js automatically take the node part of
a user's JID as their nickname when entering a room.
If there is a nickname clash, then the nickname will be disambiguated by adding
integers to it.
For example, john will become john-1, then john-2 and so forth.
2016-08-11 12:02:35 +00:00
JC Brand
561c138edd
Bugfix. Allow multiple MAM queries to be made simultaneously.
2016-07-28 18:01:37 +02:00
JC Brand
a1e24c95c9
Add nickname to chat message when clicking on room occupant.
...
Allows you to easily mention someone in your message.
2016-07-26 09:31:23 +00:00
JC Brand
172ce7e0ce
Remove the members-list work and keep the nickname form stuff
...
It's not stable yet and XMPP server support is very patchy.
However, the nickname form work can be merged into master.
2016-07-26 07:14:22 +00:00
JC Brand
be47ceaab5
In case of a nickname conflict, enable the user to choose a new one
2016-07-26 07:12:56 +00:00
JC Brand
dcd1a847bd
Fix failing tests.
...
We now need to mock some extra XMPP stanzas being received when a user enters a chat
room in tests.
2016-07-26 07:12:56 +00:00
JC Brand
f56b85cff7
Check whether the user has a reserved nickname
...
when they enter a chat room. If they have, we'll use that, otherwise we render
a form where they can specify their nick.
Some chat room tests now fail and still need to be fixed.
2016-07-26 07:12:56 +00:00
JC Brand
5ffebda8c2
Fix failing tests
2016-07-26 07:12:56 +00:00
JC Brand
71381e2f22
Show requesting contacts when filtering by chat state.
...
Also add an initial test case for filtering by chat state.
2016-07-18 08:42:07 +00:00
JC Brand
be122af3ed
Add tests for rendering of error messages.
2016-06-23 08:56:15 +02:00
JC Brand
9cfec0ba8c
Show requesting contacts at the top of the roster view.
2016-06-21 17:48:18 +00:00
JC Brand
705c043852
Fixes concerning tab visibility
2016-06-17 09:30:47 +00:00
JC Brand
62c170273e
Allow plugins to have optional dependencies.
...
This change refactors out the plugin code from converse-core into
src/converse-puggable.js
Additionally, plugins now have an optional attribute `optional_dependencies`
which is an array of dependencies which are "nice-to-have" but not essential.
Work has also been done to ensure that a plugins' dependencies are first loaded
before the plugin itself.
2016-06-10 08:26:29 +00:00
JC Brand
6c99c51c74
New API method converse.rooms.close()
.
2016-06-03 08:41:13 +00:00
JC Brand
a050015e61
Add processing hints to chat state notifications
...
So that they're not stored in MAM.
2016-05-30 16:53:31 +00:00
JC Brand
bd23a7751a
Add processing hints to OTR messages
...
so that they're not stored in MAM and not forwarded.
updates #553
2016-05-30 16:52:26 +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
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
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
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
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
3246cb45a4
Another test case for headlines
2016-04-07 14:12:31 +00:00
JC Brand
d0c13ea91c
Small translation tweaks and then compiled i18n files
2016-04-07 10:42:27 +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
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
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
Viktor Liu
eec2a4f5e9
Fix tests for #609
2016-03-23 23:27:25 +01: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
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
JC Brand
08222182c5
Move VCard functionality into separate plugin
2016-03-16 11:21:27 +00:00
JC Brand
bf9929b1e3
Fix failing tests after adding rel="noopener"
2016-03-16 09:06:44 +00:00
JC Brand
1676258c38
Move the MAM features to a separate plugin.
2016-03-14 14:04:36 +00:00
JC Brand
da72be8f3e
Fix intermittent browser test failures
2016-03-14 14:04:36 +00:00
JC Brand
0746f2aa68
Fix failing tests.
2016-03-09 11:16:15 +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
f7725943f8
Emit an event 'contactRequest' when a subscription request is received
2016-03-01 21:57:49 +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
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
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
0db447a585
Add some tests for the ping feature.
2016-02-19 13:02:42 +00:00
JC Brand
da0c858fe0
Used debounce ineffectually. Fixed now.
...
The ChatBox.show() method was being called for every invocation, 100ms after
the fact, instead of it being called only once.
Fixed that and also changed to call it at the start.
2016-02-16 07:47:16 +00:00
JC Brand
f779b9a3c0
Fixes #535 . Room doesn't get opened when mixed-case JID is used.
2016-01-15 08:49:19 +00:00
JC Brand
ea701f3865
updates #493
...
Compare bare JID of from attr in roster update. @teseo's fix was too specific
and tailored for a misbehaving server (servers shouldn't be sending from the
full JID in a roster push).
2015-11-04 18:00:44 +00:00
JC Brand
dfcebeb621
Rename participants to occupants.
2015-10-31 16:48:50 +00:00
JC Brand
3dfa36c2cb
Fix tests after small markup change
2015-10-30 17:44:24 +00:00
JC Brand
7ad3c385aa
Rename chat-message-* class to chat-msg-*
2015-10-28 08:52:19 +00:00
JC Brand
ca2b40f79c
More css refactoring.
2015-10-28 08:49:28 +00:00
JC Brand
8b3ede9e56
Remove unused parts from Gruntfile
...
Wouldn't mind getting rid of grunt completely.
2015-10-27 09:11:36 +00:00
JC Brand
e835a25184
Add jshint checking and fix errors.
2015-10-25 17:55:18 +00:00
JC Brand
ff2910b9ce
Fix CSS and horizontal dragresize for chat rooms.
...
- Rename .chat-body to .chatroom-body
- Upate SASS for chat rooms
- Hide the room occupants view by toggling the class "hidden"
- The chatroom chat area and occupants list are now shown as table cells.
2015-10-24 20:46:58 +00:00
JC Brand
6344703cb8
Merge pull request #500 from 1st8/master
...
Fix #467
2015-10-12 16:53:23 +02:00
JC Brand
81391ff4a2
Ensure that tests execute with 'en' locale. refs #501
2015-10-12 14:43:20 +00:00
JC Brand
12d6785d02
Fixes #472 Cannot read property 'splitOnce' of undefined
2015-10-12 14:24:22 +00:00
Christoph
e20018961f
Fix outgoing chat messages not having a msgid when being put into sessionStorage, fixes #467
2015-10-12 11:06:12 +02:00
JC Brand
e3cb6f3fc7
Use .bind instead of $.proxy
2015-10-07 09:05:53 +00:00
JC Brand
0d4cf15f0e
Move changelog entry to right version and add test case.
2015-09-09 10:17:46 +02:00
JC Brand
2cc76c3af7
Type attribute on data forms is mandatory. updates #306
...
See here:
https://github.com/strophe/strophejs-plugins/pull/65
2015-07-29 14:35:07 +02:00
JC Brand
f0df6df219
Add a test for serviceDiscovered event.
2015-07-21 23:24:05 +02:00
JC Brand
1dbe0ed8de
Trying to work around timezone issues.
...
Causing tests to fail on Travis.
2015-07-21 23:18:03 +02:00
JC Brand
5eea22f245
More work on showing archived chatroom messages.
...
updates #306
2015-07-21 20:10:31 +02:00
JC Brand
e8fba4a7d0
Refactored showNewDay to indicate day changes between messages.
...
updates #306
2015-07-19 13:43:26 +02:00
JC Brand
99c7b9cb95
Add a new emitted event: serviceDiscovered.
...
Gets thrown every time converse learns of a supported server service.
Useful when 3rd party code wants to use API methods that depend on the service
being discovered first.
2015-07-17 20:34:48 +02:00
JC Brand
087718d7f0
Expand a test case to also check for received archived messages.
...
updates #306
2015-07-13 23:16:21 +02:00
JC Brand
1a9771c717
Test code which receives archived messages and calls callback
...
updates #306
2015-07-12 23:58:07 +02:00
JC Brand
27afd32aeb
Test that archive.query takes a Strophe.RSM object.
...
updates #306
2015-07-12 22:00:32 +02:00
JC Brand
69de033cea
Write documentation for the archive API. Also add another test.
...
update #306
2015-07-12 21:27:22 +02:00
JC Brand
9abbd1e8f0
Allow a Strophe.RSM object to be passed in to archive.query.
...
updates #306
2015-07-11 14:55:02 +02:00
JC Brand
1261a2525d
Use Strophe.RSM for result set management.
2015-07-11 12:03:20 +02:00
JC Brand
b77d76b364
Started adding the API for querying archived messages.
2015-07-11 06:36:44 +02:00
JC Brand
eeeaddbe04
Add the ability to read and set MAM preferences.
2015-07-10 15:24:13 +02:00
JC Brand
eae706690f
Renamed some methods and added docstrings, for clarity.
2015-07-04 10:24:00 +02:00
JC Brand
6736a5bce4
Test carbons of user's own sent messages.
...
Found and fixed a bug in the process.
2015-07-03 11:55:13 +02:00
JC Brand
0afa7ec188
Don't carbon copy OTR messages.
2015-07-03 11:41:14 +02:00
JC Brand
0fdf28625b
Add a test for forwarded carbon messages.
2015-07-03 11:36:30 +02:00
JC Brand
c2ccb2c693
New test and fixes to the message handler. updates #431
2015-07-02 11:23:52 +02:00
JC Brand
b47069b4f6
Add, test and document an API method for setting the user's status.
...
fixes #367
2015-06-27 21:21:27 +02:00
JC Brand
c745e1ebff
Cherry-pick only those languages from Moment which we support in converse.js
2015-06-22 22:20:02 +02:00
JC Brand
868435173f
Decouple automatic away and XEP-0352 support.
...
- Add new config option csi_waiting_time for CSI support.
- The auto_away and auto_xa options won't send out CSI stanzas if csi_waiting_time is 0
- Update docs and add tests for both features.
2015-06-22 00:01:31 +02:00
JC Brand
785244f15e
Add a styleguide to the documentation.
...
Also update the contributor guidelines to mention the styleguide.
2015-06-16 00:20:28 +02:00
JC Brand
3afc0e58bc
Bugfixes to make profiling work again.
2015-05-01 14:34:20 +02:00
JC Brand
848c13eb62
Merge branch 'master' into roster_refactor
...
Conflicts:
dev.html
2015-04-21 16:51:15 +02:00
Guillermo Bonvehí
8934043d79
Submit registration form as xform or legacy
...
Support to send the registration form as legacy or xform, we
use the same variable form_type that was already being used when
calling render
Added submission tests
2015-04-21 11:05:03 -03:00
Guillermo Bonvehí
b08776a1ab
Added form_type setting tests
...
Two tests were created to see if RegisterPanel.form_type is set
to correctly to legacy or xform when receiving server registration
form.
2015-04-21 10:22:48 -03:00
JC Brand
f399c5f681
Add more protocol tests.
...
* Unsubscribing
* Incoming subscription requests.
Noticed that it's not necessary to call "unauthorize" when setting
subscription="remove".
2015-04-10 16:30:04 +02:00
JC Brand
1ce328783c
Also add tests for case where contact declines request.
...
Did a bit of renaming and fixed a bug in updateContact where a user wasn't
created when it should have been.
2015-04-10 13:01:31 +02:00
JC Brand
827efab093
Fix and expand broken tests after recent refactor
2015-04-10 01:23:33 +02:00
JC Brand
ade08104a2
Finish tests for the "happy path" of the add/subscribe protocol
2015-04-09 10:35:51 +02:00
JC Brand
c05d17ca25
Expand the protocol tests.
...
* Fixed a bug in the process which prevented "to" contacts from being shown as
existing.
* Add "to" or "both" as classes on the contacts to indicate their
subscription status.
* Delete roster handlers in tearDown method to avoid them being registered
multiple times.
2015-04-08 19:51:33 +02:00
JC Brand
c7bf1713d8
Add new spec protocol for testing the XMPP protocol.
...
Already testing the first 3 sections of RFC-3921 section 8.2 "User subscribes to contact".
2015-04-08 10:35:14 +02:00
JC Brand
7aba5b2af5
Fix test after refactoring.
2015-04-08 10:34:14 +02:00
JC Brand
330b1434bd
Completely remove strophe.roster as a dependency.
2015-04-06 20:55:38 +02:00
JC Brand
1ea770c79a
Add the ability to reject presence subscriptions.
...
Still part of the refactoring of strophe.roster.
2015-04-06 12:26:08 +02:00
JC Brand
f380e11851
Initial refactoring of roster and presence subscriptions.
...
The goal being to be able to remove strophe.roster completely.
2015-04-06 11:10:05 +02:00
JC Brand
df0c55ed4d
Merge branch 'master' into anon_login
2015-04-04 11:32:22 +02:00
JC Brand
5a488333ec
Add a test and changelog entry for #359
...
updates #359
2015-04-04 11:25:50 +02:00
JC Brand
a2be2567d2
Allow auto_login also with a provided jid and password.
...
* Update the docs to mention the new ``authentication`` option.
* Update failing tests due to ``prebind`` being replaced with ``authentication``.
* Rename 'manual' value for authentication to 'login' since it's used in both manual and auto cases.
2015-04-02 13:07:59 +02:00
JC Brand
a2d27ee971
Merge branch 'master' into anon_login
...
Conflicts:
converse.js
2015-04-02 12:23:13 +02:00
JC Brand
5ec7c67b50
Don't automatically show a chat box when creating it. updates #357
...
This caused a bug whereby a chat box would open only on chat state
notifications.
Also refactored the chats.open and chats.get methods so that they now reuse the
same map function and so that chats.get can now return any chat box and not
just already open ones.
Updated the tests to properly test this and updated the docs.
2015-04-02 02:01:53 +02:00
JC Brand
4646944327
Add some auth tests.
2015-03-31 16:06:33 +02:00
JC Brand
14c09c509e
Add some consistency to how errors are thrown.
...
Add tests for contacts.add API method and make it a bit more compact.
Add entry in changelog.
update #354
2015-03-31 15:29:41 +02:00
JC Brand
9dae305c23
Fix the failing test.
2015-03-22 12:52:54 +01:00
JC Brand
d0b8a3870b
Add a test to check that notifications are properly sent in chat rooms.
2015-03-16 17:27:26 +01:00
JC Brand
db44a297cb
Remove the last calls to connection.muc. updates #307
2015-03-04 22:27:11 +01:00
JC Brand
762e2bac04
Write a test for rooms listing.
2015-03-01 19:09:10 +01:00
JC Brand
c7d5b8b13f
Refactor to no longer call muc.listRooms. updates #307
2015-03-01 13:32:53 +01:00
JC Brand
79a5121219
Also test for users leaving a room. updates #307
2015-03-01 13:28:24 +01:00
JC Brand
6c31f76406
Refactor other tests. All tests pass now again. updates #307
2015-03-01 11:58:07 +01:00
JC Brand
405351058a
Rename the nick changed tests. updates #307
...
Test from a lower level (stanza request received by strophe) and also test the
case where the server automatically changed the nick.
2015-03-01 11:22:37 +01:00
JC Brand
5e1a4bd9f4
Remove tests for old deprecated API methods.
2015-02-27 21:42:40 +01:00
JC Brand
c70561b898
Some API changes:
...
* Let contacts.get() return all roster contacts.
* Also, add "open" method for the chats API.
* chats.get will now only return a chat box if it's already open.
2015-02-25 18:31:09 +01:00
JC Brand
04912c5c5a
Merge branch 'master' into amd-strophe
...
Conflicts:
docs/CHANGES.rst
2015-02-22 12:53:18 +01:00
JC Brand
b31261f6fd
Expand the API to allow configuration settings to...
...
be set on the fly.
2015-02-11 15:08:10 +01:00
JC Brand
95bc55c1c3
Merge branch 'master' into amd-strophe
2015-02-07 14:10:32 +01:00
JC Brand
f283f6bce5
Fix failing tests after introducing AMD version of Strophe
2015-02-01 16:15:34 +01:00
Guillermo Bonvehí
fc0a1d9dbd
Added test case for #305 and updated CHANGES.rst
2015-01-23 12:06:10 -03:00
JC Brand
cea68e5af0
Merge branch 'chat_states'
...
Conflicts:
docs/CHANGES.rst
2015-01-16 20:06:53 +01:00
JC Brand
607c2a81c9
Instead of GONE, set chat_state to INACTIVE when a box is closed.
...
Also, fixed all broken tests.
2015-01-09 10:48:36 +01:00
JC Brand
b4d53aaa94
Some refactoring of chat states work. updates #292
...
- Don't add a timeout for the GONE state.
- Change state to GONE when the user closes the chat box.
- Change the state to inactive when the user minimizes the chat box.
- Change the state to active when the users maximizes the chat box.
- Add more tests for chat states.
2015-01-09 09:09:49 +01:00
Guillermo Bonvehi
4843f7efc2
Add fullname and jid to contact's tooltip in roster
...
It seems title attributes are limited to 512 chars, we will have
to live with that unless a custom tooltip is used.
2015-01-05 03:43:53 -03:00
JC Brand
bb468ae0a3
Add better support for XEP-0085. closes #292
...
Converse.js will now send chat state notifications of <paused>, <inactive> and
<gone> when the user has stopped typing for 30 seconds, 2 minutes and 10 minutes
respectively.
2015-01-01 22:59:10 +01:00
Guillermo Bonvehí
00af792899
Unified pending/requesting checking
2014-12-10 22:42:09 -03:00
Guillermo Bonvehí
2354a27832
Always show pending/requesting users in roster
...
Even if show_only_online_users or hide_offline_users
are set, show users that are pending or requesting
2014-12-10 21:32:59 -03:00
JC Brand
03ec659b50
Add another test and another template. refs #117
2014-12-01 20:31:01 +01:00
JC Brand
702cddd89b
Add tests for account registration.
2014-11-27 11:16:06 +01:00
JC Brand
6100aaf114
Refactor the API. updates #46
...
API methods now consist of simple accessors and mutators that are logically
grouped.
2014-11-09 13:06:09 +01:00
JC Brand
147e62d000
Don't increment unread msgs counter for <paused> chat state.
...
Also update release notes. updates #267
2014-10-30 11:48:58 +01:00
JC Brand
55e32c735d
Fix tests
2014-10-27 23:06:11 +01:00
JC Brand
d03a9a0192
bugfix in positionGroup.
...
Index must always be 0 if there aren't any group elements in the dom yet.
2014-10-26 23:13:04 +01:00
JC Brand
902e833dec
Some refactoring. Add showInRoster method
...
which checks if a contact should appear in the roster (depends on
show_only_online_users setting)
2014-10-26 23:10:43 +01:00
JC Brand
015367af62
Add another profiling method for adding users without groups
2014-10-26 17:12:59 +01:00
JC Brand
3d32bfefc3
Don't add test users alphabetically, but rather randomly
2014-10-25 12:33:08 +02:00
JC Brand
f4ff6370b9
Performance fix. Debounce the update method on the roster.
2014-10-25 09:57:05 +02:00
JC Brand
6088417df7
Add an outline to the profiling tests.
2014-10-24 22:24:05 +02:00
JC Brand
cdb86788a3
Fix tests.
...
In the previous commit, the mock connection object was refactored to use a real
Strophe.Connection object.
This caused a test in spec/controlbox.js to fail (due to a method that was now
no longer mocked).
Added a quick workaround (via monkeypatch) for now.
2014-10-24 21:45:48 +02:00
JC Brand
5e4d6bd3b2
Initial work on adding profiling tests.
2014-10-24 18:58:42 +02:00
JC Brand
4a89d28e38
Fix tests by depending on jquery obj.
...
Also fixed groupchat test by getting and including correct msg id.
2014-10-15 19:16:02 +02:00
JC Brand
5b46e27c41
Add 2 new API methods. updates #46
...
Added openChatBox and getChatBox.
2014-10-12 10:34:33 +02:00
JC Brand
8843910d52
Add API method to retrieve buddy attributes. fixes #223
2014-09-22 15:03:57 +02:00
JC Brand
297259fdb7
Remember toggle state of control box. updates #222
2014-09-22 13:08:56 +02:00
JC Brand
7b6dfff99d
Fix tests.
...
Elements in chat rooms are now hidden, instead of removed. Update tests to
reflect this.
2014-09-21 00:47:36 +02:00