JC Brand
6c262f7213
Various small changes to reduce (non-critical) errors during testing
2017-06-14 20:14:45 +02:00
JC Brand
8191d5e83a
muc: Rename `createChatRoom
to
openChatRoom
`
...
It doesn't always create a new room.
2017-06-13 18:22:19 +02:00
JC Brand
a128a70d41
Discriminate between which unread messages to indicate per tab
2017-06-07 00:55:57 +02:00
JC Brand
f897fbb7c0
Show number of unread mesages on the "Contacts" tab
2017-06-05 21:42:25 +02:00
JC Brand
5949ca9e36
Show number of unread messages on the "Rooms" tab
2017-06-05 14:52:24 +02:00
JC Brand
ebc8d243fa
roomslist: also test that indicators are removed upon maximization
2017-05-24 09:07:07 +02:00
JC Brand
c83026e5a8
muc: Differentiate between generally unread messages and unread mentions
2017-05-24 08:40:09 +02:00
JC Brand
3e5beaaf64
Add test to check that the open rooms list shows unread messages
2017-05-23 20:42:12 +02:00
JC Brand
a4284e48f7
Use proper message handler. Fix typo
2017-05-23 18:49:04 +02:00
JC Brand
bae06922fc
fixup
2017-05-23 18:40:55 +02:00
JC Brand
184f08157c
Test the hide_open_bookmarks
setting.
2017-05-23 14:59:37 +02:00
JC Brand
67257b0ae4
Test that room can be closed from rooms' list
2017-05-23 14:39:35 +02:00
JC Brand
6b2ca629cc
roomslist: expand tests
2017-05-22 13:40:07 +02:00
JC Brand
095606a824
roomslist: Add initial test spec for converse-roomslist
.
2017-05-16 12:00:43 +02:00
JC Brand
e49fbc457d
bookmarks: Don't duplicate bookmarks in list.
2017-05-15 18:04:28 +02:00
JC Brand
0c61a5d791
core: Refactor common code into restoreBOSHSession
2017-05-11 10:42:10 +02:00
JC Brand
d50992b130
bookmarks: Fix remaining broken tests.
2017-05-09 09:45:12 +02:00
JC Brand
07dbf14a7d
bookmarks: enable registration of spy on the mock connection during init
...
We need this because when the plugin listens to a promise, we can't trigger it
again later (after adding our spy), we instead need to add the spy beforehand.
2017-05-08 21:28:56 +02:00
JC Brand
b32a8c5391
Update and simplify HTML/CSS for choosing status
...
Should also fix some of the issues mentioned in #847
2017-05-08 21:25:22 +02:00
Novokreshchenov Konstantin
7c057910a8
Inconsistent unread messages count updating #873 ( #874 )
...
* Consistent unread messages count updating on ChatBoxView, Minimized ChatBoxView, RosterView and page's title
* Add tests for checking unread messages count updates in different GUI parts
* Update docs/CHANGES.md
* document windowStateChanged event in events.rst
2017-05-03 09:06:28 +02:00
Novokreshchenov Konstantin
4b46ec3f8c
#591 Unread message counter is reset when the chatbox is closed ( #867 )
...
* chatview: disable handling onMessageAdded when fetching messages during initialization
* update CHANGES.md
2017-05-01 13:05:58 +02:00
JC Brand
c81599931c
Fix failing tests based on recent unread message changes
2017-04-24 15:57:22 +02:00
Novokreshchenov Konstantin
bf1e612768
support opening chat in minimized mode initially ( #855 )
2017-04-23 15:38:48 +02:00
JC Brand
6af4480c14
Render disconnect message via template and add padding.
2017-04-21 18:26:59 +02:00
JC Brand
f3373c44fd
Fixes #850 . .where
method doesn't match numbers.
2017-04-21 18:06:28 +02:00
JC Brand
ee8f37b4fc
Bump waiting time to avoid test failures
2017-04-19 14:41:42 +02:00
JC Brand
d2eadbdce4
Use classList API
2017-04-06 23:21:52 +02:00
JC Brand
0c43e4b87c
Upgrade to Jasmine 2.5.3
2017-04-06 11:31:05 +02:00
JC Brand
ecdb3a12be
Merge image loading tests. Updates #814
2017-04-04 14:06:24 +00:00
Novokreshchenov Konstantin
0b50c0c8c8
Fix #814 : Images from URLs with query strings aren't being rendered. ( #832 )
...
* unescape html characters in URL before checking whether it targets to image
* update docs/CHANGES.md
* test image's URL with query string which contains html-escaped characters
* utils.js: following code conventions
* split test url with query string to separate test
2017-04-04 16:05:50 +02:00
JC Brand
9fc61d9302
Bugfix. Endless spinner when trying to log in
...
after rendering the registration form.
2017-03-31 01:54:42 +00:00
JC Brand
6e94e11dcc
Fixes #820 . Inconsistency in displaying room features
2017-03-19 18:23:02 +00:00
Soumit Bose
c976f3f079
Fixed typing status for typing from different devices ( #802 )
2017-03-16 16:28:59 +01:00
JC Brand
a2cea678fe
Shut eslint up and fix test
2017-03-15 12:41:04 +00:00
Soumit Bose
2c5ecd7120
Make messages' time format configurable ( #797 )
...
Fixes #675
* Made time format configurable
* Made changes to values of time_format
* Removed user restrictions on time format
* Added documentation for time-format config
* Edited changes.md
* Edited config doc
* Modified time-format explanation
* Added link to moment
* Added test to check rendered time
* Edited CHANGES and removeunncessary lines from time format checking spec
* Removed unncessary spaces
2017-03-12 11:32:38 +01:00
Anshul Singhal
40da1d688e
Fixes #628 . Bug in displaying chat status during private chat with carbons. (PR #801 )
...
* Fixes the bug in displaying chat status during private chat(message carbons)
* Adds fix#628 to ChangeLog
* Changes Log added to version 3.0.1
* Makes the string alphanumeric
* Orders the logs with ticket number
2017-03-09 12:38:54 +01:00
Anshul Singhal
3dd6ff1751
Fixes the duplication bug in adding contact and adds test for the same
2017-03-08 15:33:43 +01:00
JC Brand
f24e7c0905
Remove scrollDownMessageHeight. Fix failing test
2017-03-03 15:12:48 +01:00
JC Brand
c7de70052c
Fix failing test
2017-02-28 07:17:30 +00:00
JC Brand
f2f05ff484
MUC: Don't show duplicate join
messages.
2017-02-28 05:02:36 +00:00
JC Brand
f8d9368163
MUC: only render and listen to 'scroll' event...
...
after the cached messages have been fetched.
2017-02-27 21:09:17 +00:00
JC Brand
946a240080
Make sure to show the invite widget
...
when the room features change.
2017-02-27 17:56:40 +00:00
JC Brand
cfb0cd0970
New defaults
2017-02-27 10:41:46 +00:00
JC Brand
f60b4fc268
auto_away
shouldn't change the user's status if it's set to dnd
...
Fixes #620
2017-02-25 09:52:31 +00:00
JC Brand
0d48929bb3
Show join/leave messages in chat rooms. Updates #365
2017-02-24 17:54:45 +00:00
JC Brand
e140eb84c8
updated to use initConverse
2017-02-24 17:13:38 +00:00
JC Brand
b15c107e4e
Don't show notifications for full JID headline messages if...
...
allow_non_roster_messaging is false.
2017-02-24 17:13:38 +00:00
JC Brand
5c445a0268
Don't show headlines from full JID if allow_non_roster_messaging is false
2017-02-24 17:13:38 +00:00
JC Brand
fe2a925c88
Fix failing test.
2017-02-23 10:25:29 +00:00
JC Brand
8a63813f5e
Add the ability to set the presence priority.
...
Fixes #745
2017-02-22 22:13:23 +01:00
JC Brand
17e0e70e4e
Support for XEP-0203 delayed delivery of presence stanzas
2017-02-21 23:30:11 +01:00
JC Brand
4aa123d557
Add timestamps to resources
...
So that when a higher priority resource goes offline, we can fall back to the
right chat status if at the next priority level there are multiple resources.
789654d54e (comments)
2017-02-21 22:15:08 +01:00
JC Brand
29add969a6
Shut eslint up
2017-02-21 09:00:56 +00:00
JC Brand
7ae2e46925
Expand tests and found a bug in the process.
...
updates #785
2017-02-20 22:37:06 +01:00
JC Brand
789654d54e
Updates #785 and #787
...
Improve upon the previous implementation.
If the resource with the highest priority goes offline or becomes unavailable,
then the chat status of the contact must fall back to that of the resource with
the next highest priority.
In your example from #785 , if the resource with priority 1 goes offline or
becomes unavailable, then in your implementation the chat status would stay at
online, although it must actually go to xa.
The solution is to update the resources attribute on the contact to not just be
an array or strings, but instead to be a map of resources to priorities and
statuses and to use that data structure.
2017-02-20 22:29:13 +01:00
JC Brand
3aa5a83d02
Add a test case based on #785
2017-02-20 20:47:08 +01:00
JC Brand
441f7a2a15
Show the chatroom occupants JID in the tooltip
...
if you're allowed to see it.
2017-02-19 01:08:08 +00:00
JC Brand
10a85336cc
Show the description in the heading, not the subject
2017-02-19 00:20:21 +00:00
JC Brand
51fc401a24
Fix failing tests due to new defaults.
2017-02-17 09:45:34 +00:00
JC Brand
65fa39dd81
Properly fix and test the /me command
2017-02-15 21:03:02 +00:00
JC Brand
a033899946
Fix leaky abstraction of MUC
2017-02-15 20:30:32 +00:00
JC Brand
ba9d3c36d5
Refactored converse-otr.js
...
- Removed password encryption of the key.
It never properly worked and bloated the build through extra dependencies.
- Store the key and instance tag on the ChatBox model.
2017-02-15 11:15:03 +00:00
JC Brand
e52a775430
Bugfix. See below.
...
"TypeError: this.sendConfiguration(...).then is not a function" when a room is created
2017-02-14 16:55:32 +00:00
JC Brand
bc8e3e1a01
Return a Backbone.View object instead of a wrapper
...
When returning chat boxes via the API.
We can do this now because these API methods are only available to
(whitelisted) plugins.
2017-02-14 15:10:46 +00:00
JC Brand
fe6a9ca748
Merge converse-api and converse-core
...
Otherwise `require('converse-core')` can be called, exposing the inner converse
object.
2017-02-14 14:35:52 +00:00
JC Brand
d3bdcd865e
Fix failing test
2017-02-14 13:39:22 +00:00
JC Brand
33fad75154
Workaround to get tests on phantomjs to pass
2017-02-14 12:52:03 +00:00
JC Brand
d2227c8d44
Replace typeahead with awesomplete.
...
Much smaller library.
No dependence on jQuery.
Updates #779
2017-02-14 12:26:56 +01:00
JC Brand
85f6a75fed
Escape user-generated input to avoid injection attacks
2017-02-13 13:41:37 +00:00
JC Brand
6d2a38a7c1
Fixes #486 Update docs and fix failing test.
2017-02-12 19:01:07 +00:00
JC Brand
63888dd454
Fix failing tests
2017-02-02 21:55:05 +00:00
JC Brand
0424df9edc
Rename the closured converse object to _converse
...
to indicate that it's private and to differentiate it from the outer "global"
converse object.
2017-02-02 20:43:48 +00:00
JC Brand
a30cf931b8
Split API into public and private (plugin only) parts.
2017-02-02 20:09:52 +00:00
JC Brand
1476ffeb77
Fix tests failing on phantomjs
2017-02-02 19:28:50 +00:00
JC Brand
83feebb229
Two plugins changes
...
- Remove the `plugins.remove` API method.
- Throw an error when attempting to register multiple plugins with the same name.
2017-02-02 18:54:15 +00:00
JC Brand
b7b9711296
Rename the closured converse object to _converse
...
to indicate that it's private and to differentiate it from the outer "global"
converse object.
2017-02-02 18:34:13 +00:00
JC Brand
4dcb855562
Split API into public and private (plugin only) parts.
2017-02-02 18:30:59 +00:00
JC Brand
3494691286
Fix failing tests
...
after allowing chatting with pending/requesting contacts
2017-02-02 16:37:41 +01:00
JC Brand
bcbeb8da6c
Case-insensitive matching of moderation commands.
...
Also add `/subject` as alias to `/topic`
2017-02-02 14:56:56 +01:00
JC Brand
081f075aa9
Add eslint with lodash checking and apply its suggestions
2017-02-01 14:02:18 +01:00
Richard Icke
343e5777d1
first attempt to replace underscore with lodash
2017-02-01 14:00:38 +01:00
JC Brand
25d9880f9e
Add config setting allow_non_roster_messaging
...
- Add a test case.
- Don't allow passing of `attrs` to `chats.open`. Not sure yet of the
implications of this.
2017-02-01 10:49:13 +00:00
JC Brand
e81eaf323e
Prevent forging of messages via carbons.
2017-02-01 10:49:13 +00:00
JC Brand
0cf9903726
Fix failing tests.
2017-02-01 10:49:13 +00:00
JC Brand
035f5d683a
Add unit tests for how the affiliations delta is computed.
2016-12-08 12:44:18 +00:00
JC Brand
b2240cfe94
Use $.when to keep track of all outgoing promises
...
Now that we are sending multiple IQ stanzas when setting affiliations.
We now again have a sendAffiliation method, so we use that.
2016-12-08 07:34:01 +00:00
JC Brand
54371f0e7d
Remove setAffiliation
and use the more general purpose setAffiliations
2016-12-07 11:45:51 +00:00
JC Brand
77d3e64f42
Specify the reason (if given) when setting someone's affiliation
...
This changed required me to go back to an array of maps instead of a single map
to store jids and affiliations.
2016-12-07 11:45:51 +00:00
JC Brand
c6767bcdaa
Refactor to send out 3 affiliation request stanzas.
...
One for each affiliation (member, owner, admin).
Unfortunately Prosody doesn't give you correct results if you query for all
three affiliations in one stanza.
We'll have to see whether setting all three in one stanza actually works.
2016-12-06 18:34:54 +00:00
JC Brand
6c725409c2
converse-muc: Only send the delta when setting the member list.
...
As required by XEP-0045.
This requires that we first fetch the existing member list, compute the delta
and then send that if there is one.
2016-12-06 15:18:33 +00:00
JC Brand
c877f63bf0
polyfill startsWith, to make the tests pass.
2016-12-05 18:55:11 +00:00
JC Brand
376c50fbc8
When inviting to a members-only room, first add to user to the member-list
2016-12-05 15:06:20 +00:00
JC Brand
7ad39cfdb9
Fetch the room information before opening the room.
2016-12-05 06:07:01 +00:00
JC Brand
67cdf5daf2
converse-muc: Expand the room configuration test
2016-12-04 18:06:11 +00:00
JC Brand
d109ed9416
converse-muc: Fix failing test.
...
No need to manually call `renderChatArea`.
2016-12-04 14:40:50 +01:00
JC Brand
fbf2e56be4
converse-muc: Cache the room configuration on the Backbone.Model object
2016-12-04 14:40:20 +01:00
JC Brand
5e1b094881
Expand upon rooms.open
testcase to test configuration
2016-12-02 21:35:56 +01:00
JC Brand
910e9bddcd
Refactoring in MUC
...
What started as an attempt to fix a bug in parseXUserElement, turned into
another large refactoring of MUC code, and it's not clear how to break this up
into multiple atomic commits. So I'm just pushing it all.
At least there are two new tests added to the suite.
2016-12-02 18:41:05 +01:00
JC Brand
de07b6a529
No need for two AMD-load cycles.
2016-11-30 12:18:58 +00:00
JC Brand
a5f76abcf1
Updates #729 . Minimized chat boxes don't stay hidden
...
Bug got introduced during fix for #677
Eventually had to do a significant refactoring, to more consistently use the
`hidden` class instead of `display: None`. (relevant for #695 )
2016-11-22 17:42:58 +01:00
JC Brand
c3b2a913bb
Don't open the controlbox on requesting contacts.
...
Can get annoying very quickly
2016-11-22 17:41:57 +01:00
JC Brand
c670893058
Bugfix. Arrays in configuration settings were ignored.
2016-11-22 08:55:52 +00:00
JC Brand
5a72466c45
Rename variables to adhere to coding style.
2016-11-22 08:54:17 +00:00
JC Brand
5e9e685219
Mention the actor (if available) when removed from room
2016-11-21 13:10:36 +00:00
JC Brand
e02c044ae4
Refactored notification code
...
responsible for showing messages based on the extended presence information.
- Use DOM API instead of jQuery
- Make info messages overridable (allows also for disabling them)
- Break up large function with inline callbacks into smaller ones
2016-11-21 12:57:22 +00:00
JC Brand
9bf00241de
Updates #721 Restore sessions when logging in anonymously
...
together with keepalive.
2016-11-07 18:48:49 +01:00
JC Brand
27035d47dc
Remember toggle state of bookmarks list.
2016-11-03 15:33:56 +00:00
JC Brand
64b5755d10
Add a quick test for remembering of open tab.
2016-11-03 14:10:08 +00:00
JC Brand
a2f4acdcee
All tests suites now updated and isolated.
2016-11-03 13:59:05 +00:00
JC Brand
50275cce64
Remove shared state between tests
...
Only a small subset of tests currently working with this.
2016-11-03 13:59:05 +00:00
JC Brand
6f1ac50893
Move leaky MUC abstractions out of converse-chatview.js
...
In the process also updated `updateSettings` to allow merging.
2016-10-27 14:56:31 +02:00
JC Brand
01c3a50cc2
Add code to generically and recursively update user settings.
...
Also moved chatview specific settings.
2016-10-26 14:14:49 +02:00
JC Brand
1de2f7145c
Let bookmarks list use same markup/css as the available rooms list
2016-10-18 11:34:46 +02:00
JC Brand
f60ee4d640
Refactor rooms to have separate handlers for presence and message stanzas
2016-10-13 18:22:37 +02:00
JC Brand
43ae702c7a
Only fetch bookmarks once chatboxes can be handled.
2016-10-13 18:08:59 +02:00
JC Brand
fc48e02937
More lazily render the bookmarks list
...
Could still be improved.
2016-10-06 13:21:59 +02:00
JC Brand
ee6c5dbf49
Add overflow for very long bookmark names
2016-10-06 12:48:16 +02:00
JC Brand
0020be34d7
Show a list of current bookmarks in the "Rooms" panel
2016-10-06 12:05:25 +02:00
JC Brand
c3456eeede
Test fixes.
...
- Call `_initialize` after tests have run
Since the tests call `teardDown`, which removes all chatboxes.
- Open controlbox when navigating to panel
2016-10-06 09:00:57 +02:00
JC Brand
e39999f3ec
Check bookmarks for nicks when joining rooms
2016-10-05 23:15:42 +02:00
JC Brand
7319ebf087
Use 'connected' event instead of 'initialized' which has been deprecated
2016-10-05 23:15:42 +02:00
JC Brand
6972066076
Bookmarked rooms will now be automatically opened
...
If configured for it.
2016-10-05 23:15:42 +02:00
JC Brand
e80f001b35
Allow bookmarks to be removed from rooms
...
Refactored the code a bit in the process.
2016-10-05 23:15:42 +02:00
JC Brand
7ca7943706
Indicate whether a chatroom has been bookmarked.
2016-10-05 23:15:42 +02:00
JC Brand
3e77deee26
Bugfix in format of IQ stanza to save bookmarks.
2016-10-05 23:15:42 +02:00
JC Brand
052dd19252
Initial work on adding chatroom bookmarks.
2016-10-05 23:15:42 +02:00
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
JC Brand
5124c05f65
Fix (some) tests.
2014-09-16 10:26:24 +02:00
JC Brand
dfb130fb32
Test that user is properly informed when kicked out of a room
2014-09-06 12:46:24 +02:00
JC Brand
9e5dc21aa4
Refactor showing of chat room status messages.
...
onChatRoomPresence and showStatusMessages have been refactored to give more
detailed information and to also show the reasons given to actions taken by
moderators.
2014-09-06 12:25:37 +02:00
JC Brand
9d886a9f1d
Add a test for the onInvite method. refs #215
2014-09-02 20:01:49 +02:00
JC Brand
18cbe06d58
Add some initial tests for the room invite feature. updates #215
2014-08-31 22:48:26 +02:00
JC Brand
ff32866f21
Mention live filter bugfix and add tests for it. updates #212
2014-08-31 21:20:28 +02:00
JC Brand
37255a2692
updates #215 , see below.
...
* Filter by both fullname and jid when searching for users to invite.
* Combine the confirm and prompt popups into a single confirm popup.
* Bugfix in groups filter. Make sure to show group that were previously filtered out.
2014-08-31 19:44:05 +02:00
JC Brand
278c2c428d
Add tests for the live filter functionality. updates #212
2014-08-18 22:39:24 +02:00
JC Brand
e7d563b34b
Let tests pass again
2014-08-08 22:06:01 +02:00
JC Brand
cdf0a0d279
Make sure contacts added to a collapsed group header are hidden.
...
updates #83
2014-08-04 18:48:48 +02:00
JC Brand
9a3104cb21
"is_last" property no longer used.
2014-08-04 18:00:30 +02:00
JC Brand
6a28420d09
Fix linting errors
2014-08-03 23:07:48 +02:00
JC Brand
33d84a0c8e
Store roster on converse obj.
...
Storing it on the rosterview causes race conditions.
2014-08-03 23:05:36 +02:00
JC Brand
ce0096de33
Remember toggle state of group headers. updates #83
2014-08-03 20:48:49 +02:00
JC Brand
219d5c8a30
Major refactor.
...
The RosterView view is now an overview of RosterGroup objects.
RosterGroup objects each have their own collection of contacts which fall under that group.
Additionally, the RosterView has a collection of all contacts.
The comparator of RosterContacts is now used to correctly position roster
contacts and we therefore no longer need to explicitly sort them afterwards.
updates #83
updates #151
2014-08-02 19:31:53 +02:00
JC Brand
ca260f7b4f
Add support for separe group objects and collection
2014-08-02 14:25:24 +02:00
JC Brand
fdd0583a0c
Rename RosterItem to RosterContact
2014-08-02 11:35:03 +02:00
JC Brand
76a18bae0d
Finish the test which checks that contacts can appear in more than one group
2014-08-01 21:36:20 +02:00
JC Brand
2b927f21be
Big refactor. The RosterView is no longer an overview.
...
This is because we can no longer assume a one to one mapping between roster
contacts and their views. Roster contacts can belong to more than one group,
each group needs to show the contact, which means we need a view for each group
the contact belongs to.
updates #83
2014-08-01 21:31:21 +02:00
JC Brand
6a82c087c3
Refactor to eventually allow buddies to belong to multiple groups.
...
In order to make group values non-distinct, (i.e. buddies can be in multiple
groups), we can't assume there's one view per roster item.
This means we cannot manage the rosterview as an overview (since it makes this
assumption).
2014-07-31 21:50:34 +02:00
JC Brand
d0f07f26a5
Check that users are sorted per group and that groups are in the correct order.
...
updates #83
2014-07-31 20:52:38 +02:00
JC Brand
64580bfd3d
Refactor to make more manageable
2014-07-31 18:20:20 +02:00
JC Brand
9b65b57024
Ensure that group headings appear in alphabetical order.
...
updates #83
2014-07-30 19:20:38 +02:00
JC Brand
303041a980
Test for more variance within group names. updates #83
2014-07-30 09:11:28 +02:00
JC Brand
3984aadb9f
More work (with tests) on showing roster items under groups.
...
updates #83
2014-07-29 19:53:57 +02:00
JC Brand
be76156292
All tests pass \o/
2014-07-25 10:18:59 +02:00
JC Brand
cfa55896a5
Trying to use a document fragment for the roster view
2014-07-25 09:58:42 +02:00
JC Brand
0640dd5ae5
Clean up the initialize method of RosterView
...
by moving event handers out
2014-07-25 08:59:38 +02:00
JC Brand
434e21d046
Some sorting optimizations
...
* Differentiate between adding new roster items and rendering existing ones.
* Also, only sort pending and requesting contacts once they've all been added
(similar to what was already being done with existing contacts)
2014-07-24 20:48:52 +02:00
JC Brand
ce617f1f31
Some refactoring of RosterView and skeleton for groups test
2014-07-20 22:44:50 +02:00
JC Brand
0f6d1f9edb
Add tests for toggleable headings. updates #83
2014-07-20 20:45:59 +02:00
JC Brand
3236d251e5
JShint doesn't like functions inside loops
2014-07-20 19:36:53 +02:00
JC Brand
04d2b3aefd
Some initial refactoring to support roster groups. updates #83
...
Made sure that the non-group usecase is still covered.
2014-07-19 23:45:21 +02:00
JC Brand
0be33b81ef
Fix tests
2014-07-19 15:26:30 +02:00
JC Brand
df91f17894
Fix tests. Emitted events weren't yet renamed in the tests.
2014-07-14 23:29:08 +02:00
JC Brand
38b26784b6
trimmed views are minimized by default
2014-07-06 11:00:43 +02:00
JC Brand
c25f33b181
Add proper separation between controlbox tests
2014-07-04 21:18:28 +02:00
JC Brand
5034ae33f2
Work on getting proper separation between tests.
2014-06-30 20:26:45 +02:00
JC Brand
718f75a464
Make sure sessionStorage is cleared
2014-06-30 19:55:26 +02:00
JC Brand
4950bb9120
Fixing tests after latest refactoring
2014-06-30 19:21:16 +02:00
JC Brand
75a94fb2b7
Merge branch 'master' of https://github.com/derek-wangpch/converse.js into derek-wangpch-master
2014-06-30 18:59:49 +02:00
JC Brand
180d175e54
Fix tests. Make sure the min chats toggle gets updated
2014-06-29 18:30:01 +02:00
JC Brand
27cce2c229
Refactor to store number of unread messages
2014-06-29 15:59:39 +02:00
JC Brand
4b8196cd7e
Add more tests around minimized chats.
2014-06-21 23:01:56 +02:00
JC Brand
c3dcbbc660
Fix last failing tests.
2014-06-21 11:46:23 +02:00
JC Brand
f0091c9c9c
Control box toggle's class has been changed.
2014-06-21 11:32:05 +02:00
JC Brand
1bea7a1a97
Fix trimming/minimize tests broken after recent refactor
2014-06-16 00:03:34 +02:00
JC Brand
c9d7e17a10
Fix test failures due to previous commit
2014-06-14 22:03:04 +02:00
JC Brand
e2d494f0ad
Unread chat messages now appear on the minimized chat view.
2014-06-04 09:32:40 +02:00
JC Brand
0d3c101cbf
Start fixing message count bugs
2014-06-02 21:51:30 +02:00
JC Brand
c6a32b847e
Fix chatroom tests
2014-06-02 05:13:53 +02:00
JC Brand
6e5bf44ada
This branch marks the start of a significant conceptual change.
...
Instead of differentiating between trimmed chats and minimized chats, the two
are now combined into the same thing.
This commit contains some initial work, but functionality is still impaired.
2014-06-01 20:09:09 +02:00
JC Brand
88d20d0372
Add test for restoring of trimmed chats
2014-06-01 18:16:32 +02:00
JC Brand
c594e5a1e9
Add new test for trimmed chats
2014-06-01 17:57:03 +02:00
JC Brand
eb424a9dbe
Check that chat boxes are created to the right
...
of any existing ones, but left of the control box.
2014-06-01 16:26:51 +02:00
JC Brand
b84fb41341
Trimmed chats can now be restored.
2014-05-27 22:51:11 +02:00
JC Brand
38e0668372
Fix tests.
2014-05-27 19:18:02 +02:00
JC Brand
ad51e1c0f7
More working on trimming chats. (still very buggy)
...
More flesh on the view and superview for trimmed chats.
Add event handlers.
Renamed some methods to make them shorter, more consistent.
2014-05-27 18:34:22 +02:00
Derek Wang
fffc0213c4
Fix format
2014-05-19 22:12:55 +08:00
Derek Wang
f0bb123e7f
Fix a bug that emoticon of '<3' and '>:)' cannot be displayed correctly in the message
2014-05-19 22:06:11 +08:00
JC Brand
aa52ba5b94
Add method trimOpenChats. Updates #61
2014-04-26 06:55:52 +02:00
JC Brand
b307d5170b
Date handling is now done with moment.js
2014-04-25 23:44:10 +02:00
JC Brand
dec674fae2
Bugfix. Opened chatboxes weren't focused...
...
...when clicking on a contact in the roster
2014-04-24 20:55:07 +02:00
JC Brand
4937fafea4
Add tests for new "clear" button.
2014-04-24 19:21:38 +02:00
JC Brand
14d90bc99c
Upgrade dependencies to their latest versions
2014-04-19 05:12:24 +02:00
JC Brand
bf6474ff6d
Upgrade jquery to 1.11.0 and add jquery.browser
2014-04-19 01:52:44 +02:00
JC Brand
7d472eb26d
Add new dependency moment.js
...
Use it to better compare dates when trying to determine whether a message falls
on a different day.
Also upgraded some dependencies' versions.
2014-04-19 01:30:48 +02:00
JC Brand
b88113c246
Fixed some failing tests.
...
Some of the tests were failing because they didn't expect the controlbox to be
returned from localStorage.
It's too long ago that I've looked at this branch for me to say whether this is
a legitimate bug or not.
Will have to investigate further.
2014-04-18 17:42:35 +02:00
JC Brand
3cfcb2ae34
2 controlbox bugfixes and spec typo.
...
* Save controlbox to containing collection
* Call refreshWebkit after closing controlbox
2014-03-15 05:52:00 +02:00
JC Brand
6290f954a7
Add toggle test for chatrooms
2014-03-14 21:35:43 +02:00
JC Brand
bb0f49cf4d
Add a counter to show unread msgs when chat is minimized
2014-03-09 13:31:01 +02:00
JC Brand
9849daacf9
Merge branch 'master' into 0.8
...
Conflicts:
bower.json
converse.js
docs/CHANGES.rst
spec/chatbox.js
tests/utils.js
tests_main.js
2014-03-09 08:18:00 +02:00
JC Brand
8001444a1c
Add another URL test with double quotes.
2014-03-09 05:51:21 +02:00
JC Brand
74779afd66
Ensure that URLs in messages are properly escaped
2014-03-05 08:03:52 +02:00
JC Brand
34fa05888d
Add (currently still disabled) test for...
...
message counter for minimized chats
2014-03-05 02:10:29 +02:00
JC Brand
25cc229019
Refactor message handling
...
- use the same method for both normal and OTR messages
- fix /me actions for OTR messages
- rename messaging methods to minimize ambiguity
Conflicts:
converse.js
tests/utils.js
2014-03-05 01:46:19 +02:00
JC Brand
317ab95cd8
Refactor message handling
...
- use the same method for both normal and OTR messages
- fix /me actions for OTR messages
- rename messaging methods to minimize ambiguity
2014-03-05 01:23:45 +02:00
JC Brand
c2b7caaedf
Add a test for chatbox toggling.
2014-03-04 20:16:39 +02:00
JC Brand
b14538b441
Rename ChatBoxesView to ChatBoxViews
2014-03-04 15:54:36 +02:00
JC Brand
1567b212c3
Add closure get/set methods for rosteritem views
2014-03-04 15:49:02 +02:00
JC Brand
d20ca10638
Add closured get/set methods for views from chatboxesview
2014-03-04 15:09:16 +02:00
JC Brand
ac0042fdf9
Extend the "close chat" test with a normal chatbox usecase
2014-03-04 13:22:49 +02:00
JC Brand
11b59b31d3
Fix tests after all the refactoring...
2014-03-01 01:57:20 +02:00
JC Brand
1ce7620b88
Merge remote-tracking branch 'origin' into 0.8
...
Conflicts:
converse.js
docs/CHANGES.rst
index.html
2014-02-23 02:54:35 +02:00
JC Brand
18d6a91881
Add API method to retrieve the SID. Fixes #93
2014-02-12 12:37:39 +02:00
JC Brand
30f3114c7c
Add method to get the latest RID. Updates #93
2014-02-12 12:19:12 +02:00
JC Brand
62d59ff3e4
Refactor some OTR code into a Backbone model and adapt tests.
2014-02-12 07:12:00 +02:00
JC Brand
398142c7de
Add a test for the passphrase storage. Updates #111
2014-02-12 02:02:45 +02:00
JC Brand
e3b8a8f9dd
Move event emitter tests out into their own spec
2014-02-12 02:02:25 +02:00
JC Brand
18cacdc94b
More templates refactored into separate files.
2014-01-19 11:22:56 +02:00
JC Brand
4e9dc08b0b
Clean up after running tests, by closing chatboxes.
2014-01-19 07:02:18 +02:00
Pete Nicholls
6002e0fdf9
Use converse.emit to dispatch call button event
2013-12-19 12:26:11 +13:00
Pete Nicholls
db60894834
Add optional call button to chat box toolbar
2013-12-19 12:26:07 +13:00
JC Brand
4186bf3ca3
Throw event onRosterViewUpdated whenever the roster HTML changes. Fixes #101
2013-12-18 16:30:19 +02:00
JC Brand
8633d23738
Sanitize text messages to disable Javascript injection attacks.
...
Thanks to hejsan.
2013-12-18 13:51:59 +02:00
JC Brand
c8bf0491c8
Add new spec to test converse.js's API. Fixes #48
2013-12-16 20:00:21 +02:00
JC Brand
326e5a188b
Rename the spec files
2013-12-16 20:00:15 +02:00
JC Brand
d1bf5b8466
Add event emitter tests for chatrooms. Updates #48
2013-12-16 19:19:25 +02:00
JC Brand
cdc350f592
Add more tests for events emitting. Updates #48
2013-12-16 15:27:07 +02:00
JC Brand
1939ddac23
Test events emitted when own status or status message is changed. Updates #48
2013-12-15 18:13:39 +02:00
JC Brand
7a5bc7fe65
'ask' attribute of 'subscribe' is only for 'pending out' requests.
...
Did more investigation with regards to subscription requests.
As far as I can tell, roster updates will only show ask='request' for 'pending
out' requests.
For 'pending in' requests (what converse.js calls requesting contacts), roster
updates are not used and instead a presence stanza with type 'subscribe' is
used.
This makes sense. When sending a presence with type 'subscribe', we need a way
to keep track of our outgoing subscriptions. The XMPP server helps us do this by
adding a user to our roster with ask='request' and subscription='none'.
When our contact receives our presence with type 'subscribe', they have the
information they need. If they go offline and online again, the XMPP server
will resend the presence with type 'subscribe'. So a roster item is not needed.
In convere.js's internal representation of the roster (via the RosterItems backbone
object) we need to add roster items for 'pending in' contacts so that we can
render them and we need to know whether they are 'pending in' or 'pending out'.
We already know they're 'pending out' when ask='subscribe' and
subscription='none'. For 'pending in', since these roster items are only stored
locally and not on the XMPP server (because 'pending in' requests are handled
via <presence> stanzas and not the roster) we add a special attribute
'requesting'.
2013-11-06 09:54:58 +02:00
JC Brand
fb8e2cde72
Roster item 'ask' property is always 'subscribe' for subscription requests
...
* 'pending' state is denoted by subscription='none', ask='subscribe'
* 'requesting' state is denoted by subscription='from', ask='subscribe'
Reference: http://xmpp.org/rfcs/rfc3921.html#int
I'm not yet 100% sure with regards to the 'requesting' state, I can't find
anything about it in the above mentioned reference, but apparantly that's what
prosody's roster response looks like (e.g. <item jid='XYZ' ask='subscribe'
subscription='from'/> ).
With ejabberd I haven't yet received such a roster response and contact
requests are always handled via presence stanzas.
updates #81
2013-11-06 09:04:44 +02:00
JC Brand
fc3a08400e
Add tests for the chat toolbar.
...
Including the emoticon menu and the OTR menu.
More tests needed for OTR in particular.
2013-11-03 22:28:44 +02:00
JC Brand
00e0782576
Add a test that checks for delayed messages. Fixes #76
...
Messages older than one day do indicate it.
2013-11-03 13:24:18 +02:00
JC Brand
d7d8948eba
Refactor ChatRoom tests (move code to utils.js)
2013-11-03 12:02:25 +02:00
JC Brand
13babe4fae
Refactored chatbox tests to be run independently
2013-11-03 11:38:48 +02:00
JC Brand
44fe406a34
Refactored tests.
...
Split MainSpec out into ChatBoxSpec and ControlBoxSpec.
Part of trying to have looser coupling between tests so that they can be run
independently.
2013-11-02 13:37:38 +02:00
JC Brand
b0f12d0f79
$.proxy can be used to pass in extra args, no need for fn.bind
2013-11-02 12:03:57 +02:00
JC Brand
ff345dcf51
Move mock.js to tests dir. Add utils.js
...
Both changes from tests-refactor branch
2013-11-02 11:32:52 +02:00
JC Brand
38c26013d0
Simplify the boilerplate HTML require even more.
...
Use id 'conversejs' instead of 'chatpanel'.
The controlbox toggle is now generated via a backbone view, you don't need to
manually include it in your markup.
2013-10-20 22:42:34 +02:00
JC Brand
0deb8be9e7
Fix tests. sendPresence is now sent out at a different place
2013-10-15 21:05:07 +02:00
JC Brand
e883d137fc
Bugfixes. RosterItemView didn't rebind events. Undefined vars in onConnect.
...
When using show_only_online_users, roster item DOM elements are removed from
the DOM if their status changed from 'online' to something else.
When their status changed to 'online' again, they were re-added.
Their views (RosterItemView) instances however didn't listen to events anymore.
Calling delegateEvents on the view after calling $.remove() fixed this.
2013-10-07 09:16:26 +02:00
JC Brand
6d026f010e
Fix tests that were broken after vCard changes
...
Conflicts:
tests_main.js
2013-10-03 13:51:29 +02:00
JC Brand
7f4bdb4098
Don't use id for controlbox panes
2013-10-03 13:45:50 +02:00
JC Brand
be66284748
Add a test for /clear functionality
2013-09-13 12:18:49 +02:00
JC Brand
cc37d6a183
The xa chat state wasn't being handled properly
2013-09-13 10:57:53 +02:00
JC Brand
b34a706132
We didn't have an icon for unavailable state.
...
Also, the status description was not translation aware
2013-09-13 10:35:37 +02:00
JC Brand
0a1a837391
Three more tests for pending contacts.
...
Trying to flesh out the bug where in certain instances the 'pending contacts'
header doesn't get removed after the last pending contact is removed.
2013-08-24 15:33:06 +02:00
JC Brand
bc0e200cee
Fixed tests
2013-08-24 03:13:25 +02:00
JC Brand
304b275714
Fix tests. removeRoom method doesn't exist anymore
2013-08-20 22:03:46 +02:00
JC Brand
2d4a14ac2d
Don't expose the Strophe connection object globally.
...
Instead, expose only the initialize and onConnected functions.
Updated the tests to work with this.
2013-08-05 09:25:29 +02:00
JC Brand
c5192f8ade
Bugfix. Updates #32
...
Users without roster contacts didn't have XMPPStatus.initStatus called and
therefore had a default status of offline.
Fixed this by setting the status to online from the start. The fetch command
will get the true status from localStorage (if available).
Made sure that the rest of converse's onConnected code is called in the
callback from fetch (so that we know the user's status is correct).
Updated and fixed tests.
2013-08-04 15:39:46 +02:00
JC Brand
18565e7977
Remove trailing whitespace
2013-07-25 09:45:35 +02:00
JC Brand
4c0d4f2ac5
bugfix. Fixes #26 . Only the first minute digit was shown.
2013-07-24 22:58:53 +02:00
JC Brand
8293bd0da5
Bugfix in jquery element query
2013-06-02 22:32:33 +02:00
JC Brand
b350efa646
Fix tests
2013-05-31 21:13:01 +02:00
JC Brand
49b99d9693
Refactored status message rendering code
...
As a result we now implement more status codes from the spec.
Specifically the codes related to forced removal form the room
Also fixed a bug related to wrong authentication when logging in.
2013-05-30 21:25:54 +02:00
JC Brand
33d85cd955
Fix tests after adding nick input field
2013-05-21 16:49:10 +02:00
JC Brand
d83ffde08d
Fix tests after status widget changes
2013-05-21 13:55:42 +02:00
JC Brand
b35d71e22f
Test chatroom message
2013-05-14 23:20:59 +02:00
JC Brand
2a7031b504
Make the spec independently testable
2013-05-14 22:45:21 +02:00
JC Brand
d568d90a3a
Work to make the individual tests independent
2013-05-14 22:39:13 +02:00
JC Brand
feb3695ebe
Tweak the error message styling
2013-05-14 22:13:05 +02:00
JC Brand
946bb7730b
Fix tests
2013-05-14 09:43:49 +02:00
JC Brand
cc28f7e827
Add a test to check that moderators are highlighted
2013-05-11 14:34:36 +02:00
JC Brand
6d9fe68a25
Split ChatRooms tests out into their own spec file
2013-05-11 14:20:07 +02:00
JC Brand
7c1a9242d5
Add logic to parse error messages when trying to enter a room
2013-05-11 09:59:32 +02:00
JC Brand
dc6c78331f
Bugfix in tests, make sure message counter is cleared
2013-05-09 17:12:51 +02:00
JC Brand
c66c7c3f26
Merge branch 'master' of https://github.com/witekdev/converse.js into witekdev-master
...
Conflicts:
spec/MainSpec.js
2013-05-08 18:01:03 +02:00
witek
b84d4519a9
add tests for message counter functionality
2013-05-08 17:42:19 +02:00
JC Brand
be9cd59951
Add chatroom test concerning localstorage
2013-05-08 17:29:18 +02:00
JC Brand
743eb1daf3
Reinstate chatpanel tests and add two chatroom tests
2013-05-08 16:53:50 +02:00
JC Brand
fb468f27fb
Fix tests and disable chatroom tests for now
2013-04-26 14:45:32 +02:00
JC Brand
58241cbb74
Make converse.js more modular
...
- Removed the $(document).ready handler. Instead, converse.initialize must be
called manually together with settings data.
- As a result the Plone specific event listeners are now also gone.
- Update tests and index.html to deal wit these changes
2013-04-20 11:32:54 +02:00
JC Brand
1cae33b06b
Globally rename xmppchat to converse
2013-04-20 10:41:10 +02:00
JC Brand
71f4cdb931
Initial work towards decoupling contact adding
...
New conf variable in converse.js to indicate how contacts are added (either via
XHR or directly).
2013-04-20 00:38:54 +02:00
JC Brand
286b716300
Add initial chatroom tests.
2013-04-19 22:11:40 +02:00
JC Brand
9b445f8455
Small tweaks to tests to provide better visual feedback
2013-04-19 21:03:26 +02:00
JC Brand
3fe3d3546f
Bugfix in tests
...
Controlbox's status widget was being overwritten
2013-04-19 20:17:54 +02:00
JC Brand
abe85c8b90
Update tests
...
The chat toggle element is now determined by class, not id.
2013-04-19 00:32:46 +02:00
JC Brand
6aed43818c
Add XMPP Status Widget tests
2013-04-18 22:13:28 +02:00
JC Brand
3be0f2d89b
Tests update
...
Add empty specs for status widget
Fixed roster localStorage spec to not break the xmppstatus view
2013-04-18 00:10:28 +02:00
JC Brand
fc129c20e4
Add test for message sending
2013-04-17 23:51:00 +02:00
JC Brand
9cc2f2339d
Use fewer contacts to make visual output clearer
2013-04-17 12:07:50 +02:00
JC Brand
b1ecdfdadc
Found a bug in jasmine
...
which after being fixed removes the need for the sleep() command because you
can set the execution speed via jasmine's updateInterval attr
2013-04-17 12:00:14 +02:00
JC Brand
da095caa38
Finish the test for receiving messages.
2013-04-17 00:09:16 +02:00
JC Brand
1cfbe0cc8d
Add more tests for chat messages
2013-04-16 21:41:28 +02:00
JC Brand
524bda3c47
Two more tests: accept/decline of contact requests
2013-04-15 09:57:46 +02:00
JC Brand
567cfd3501
Reordered the tests
...
So that we have test suites for each type of contact
- Pending
- Existing
- Requesting
2013-04-15 09:12:42 +02:00
JC Brand
29a6e1d9f1
Move requesting contacts after pending/current.
2013-04-14 03:06:30 +02:00
JC Brand
f4c2327e94
Add sleep funtion to slow down tests
...
Allows one to visually follow whats going on.
2013-04-14 02:38:27 +02:00
JC Brand
7852f67a03
Split the contacts up into distinct groups.
...
This reduces some hoops that had to be jumped through to get the proper indexes
to retrieve contacts
2013-04-14 02:00:30 +02:00
JC Brand
e8a55145b9
Call the new initialize method instead of doing setup manually
2013-04-14 01:09:26 +02:00
JC Brand
c0095d4d15
New test
...
Test that chatboxes are removed from localStorage when closed
2013-04-14 00:03:04 +02:00
JC Brand
66dde5e986
Add another test
...
Test that chatboxes can also be closed.
2013-04-13 01:24:55 +02:00
JC Brand
acf3f75b7d
Test that chatboxes are stored to localStorage
2013-04-13 01:13:30 +02:00
JC Brand
0f0599d5a0
Extended the test
2013-04-13 01:09:25 +02:00
JC Brand
8525ee506e
Rename RosterSpec.js to MainSpec.js
2013-04-13 01:00:15 +02:00
JC Brand
ed86b22fe6
Add a new test
...
Check that a chatbox is created when a roster item is clicked.
2013-04-13 00:56:53 +02:00
JC Brand
7b2dbf9ba4
Add a new test to check that roster items are saved to localstorage
...
Also renamed some other tests to make them shorter and more legible
2013-04-13 00:16:50 +02:00
JC Brand
2593dd7099
Improve the test names
2013-04-12 23:20:31 +02:00
JC Brand
add9cc8554
Fixed all Roster tests \o/
2013-04-12 23:08:30 +02:00
JC Brand
367cc14213
Preliminary work to get jasmine tests working again
2013-04-12 20:31:05 +02:00
JC Brand
d7cb92c7af
Merge pull request #3 from ichim-david/master
...
Optimize actions done in RosterView.
2013-02-28 00:31:46 -08:00
ichim-david
732f941e20
Fixed first jasmine test for visibility of xmpp-roster
2013-02-28 07:48:06 +02:00
Alexandru Ghica
b6af624b14
Code clean up
...
Cleaned up unnecessary spaces, replaced tabs with spaces and fixed line
terminators.
2013-02-22 15:42:35 +02:00
JC Brand
39c0823f2a
Alphabetically sort roster contacts according to type and status
...
Also added a new jasmine spec for this as well as jquery.tinysort to do the
sorting.
2012-12-09 19:55:23 +02:00
JC Brand
624ab458d0
Improve suite names. Use toMatch matcher
2012-12-09 19:54:26 +02:00
JC Brand
0edc57107d
Add spec dir with jasmine.js test for ClientStorage
2012-12-08 07:22:40 +02:00