Commit Graph

872 Commits

Author SHA1 Message Date
JC Brand
bd0d7ace04 Remove old, deprecated API methods. updates #46 2015-02-27 21:19:16 +01:00
JC Brand
387bb6f3a4 Bugfix. Custom status message form does not submit/disappear. 2015-02-27 18:32:23 +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
5839e38fc0 Performance fix. updates #151
_.pluck was being called inside the form loop.
2015-02-08 20:58:37 +01:00
JC Brand
0407826057 Two websocket related changes. updates #204
* Handle case where no websocket url is specified.
* Update the documentation w.r.t. websockets
2015-02-08 20:02:53 +01:00
JC Brand
3e9994e01c Websocket support. closes #204 2015-02-07 16:54:58 +01:00
JC Brand
95bc55c1c3 Merge branch 'master' into amd-strophe 2015-02-07 14:10:32 +01:00
JC Brand
e5e8539f2b Fix the non-AMD usecase. 2015-02-03 22:39:03 +01:00
JC Brand
f283f6bce5 Fix failing tests after introducing AMD version of Strophe 2015-02-01 16:15:34 +01:00
JC Brand
8eabf93cec Fix typo 2015-01-30 15:54:59 +01:00
JC Brand
b7643eaba0 Initial work on letting converse.js use the AMD version of strophe.js 2015-01-27 15:10:58 +01:00
Guillermo Bonvehí
fe03940f53 Fix issue #305, show=online presence sent
setStatusMessage was modified to send the presence using
sendPresence method which skips show tag when type is 'online'
Added getStatus helper method
2015-01-23 11:16:16 -03:00
Guillermo Bonvehí
5cd28ff71b Strophe.log and .error now calls converse.log, this honors converse.debug flag 2015-01-22 17:38:36 -03:00
JC Brand
c646e93a9b Don't set out message carbons IQ stanza on each page load. 2015-01-17 13:24:05 +01:00
JC Brand
8478b432c3 Lazily call parseJSON on translation data.
Also, moved locales.js to ./src folder.
Add it as dependency to utils.js and remove it from the deps scripts
2015-01-16 22:33:18 +01:00
JC Brand
31cb3d4b6e Fix the non-AMD case. 2015-01-16 22:07:27 +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
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
JC Brand
3175bddc46 Initial work on adding support for sending <paused> and <gone> chat states. 2015-01-01 05:52:10 +01:00
JC Brand
1c3b61274c Bugfix. Don't trim the newly opened (and only current) chat. 2014-12-31 17:07:02 +01:00
JC Brand
516def29cb Styling for the minimized chats list. 2014-12-31 16:58:15 +01:00
JC Brand
96d904f38e Merge branch 'master' into skeleton 2014-12-31 11:34:34 +01:00
JC Brand
35a542da83 Bugfix. Translate method called before it was defined. 2014-12-31 11:28:52 +01:00
JC Brand
640a344ee2 Make sure placeholder is also translateable 2014-12-20 11:57:03 +01:00
JC Brand
fadbf2d159 JSHint bitching about wrapped or statements 2014-12-20 10:17:20 +01:00
JC Brand
970fed4d29 Rename button to clarify 2014-12-13 00:14:35 +01:00
JC Brand
cbfd8d8e90 Merge pull request #288 from arsh-co/master
Set immediate to true when calling _.debounce
2014-12-12 15:37:21 +01:00
Mohammad Javad Naderi
5424e301ff Set immediate to true when calling _.debounce
When clicking on restore button for a minimized chat, the page's hash will change to `#`. It may cause problems for web apps that listen to changes in page's hash.

When `immediate` argument of `debounce` function is not set, `ev` is null and ev.preventDefault() will not be called.
2014-12-11 15:22:51 +03:30
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
e71cad8583 Add default avatar for users. 2014-12-07 13:44:27 +01:00
JC Brand
9f94d0f4ea Nicer styling for the chat room configuration form. 2014-12-07 12:23:53 +01:00
JC Brand
3bf5eeb4a8 Bugfix. Could not render chat room configuration form. 2014-12-07 11:13:50 +01:00
JC Brand
f893e94312 rid, jid and sid weren't being set. fixes #285 2014-12-06 19:05:50 +01:00
JC Brand
20e15b5623 Sphinx changes.
* Add buildout config for Sphinx
* Add new Sphinx theme
* Remove the built html theme files
2014-12-06 18:58:58 +01:00
JC Brand
e4307f7ab8 See below
* Fix login panel rendering bug
* Make registration form i18n aware.
* Make providers link configurable.
2014-12-06 18:58:14 +01:00
JC Brand
03ec659b50 Add another test and another template. refs #117 2014-12-01 20:31:01 +01:00
JC Brand
831faf7096 Show domain name in username field of the registration form. updates #117 2014-11-26 21:26:28 +01:00
JC Brand
329746d839 Merge branch 'register' 2014-11-25 10:51:06 +01:00
JC Brand
d690704f93 Fix tests and added a workaround...
so that we can use require config in main.js also in the tests.
2014-11-25 10:50:30 +01:00
JC Brand
e246335b03 Bugfix. JIDs not shown in chatrooms. fixes #282 2014-11-25 09:55:15 +01:00
JC Brand
a4dd5a2a46 Bugfixes around connection handling.
Properly disconnect after auth fail, so that we can log in again.
Don't reset the connection when logging out (not necessary).
2014-11-24 22:40:10 +01:00
JC Brand
7125bd1d67 Render form captcha. updates #117 2014-11-24 20:35:00 +01:00
JC Brand
89fa218c59 Some css tweaks. Center the controlpanel form elements 2014-11-24 18:57:28 +01:00
JC Brand
03c92b4487 Remove toLowerCase. JID resources are case sensitive. updates #234
We should perhaps still make the node part lower case, but I'd like to double
check first.
2014-11-24 18:37:03 +01:00
JC Brand
923056925f Show hardcoded urls. Some css width tweaks. updates #117 2014-11-23 22:26:38 +01:00
JC Brand
3dbcdd6171 More work on XEP-0077. updates #117
* On the registration form, show the xmpp.net badge for XMPP provider.
* More CSS and form improvements.
* New template registration_form.html
2014-11-20 11:51:12 +01:00
JC Brand
bfab4fb803 Better error handling, some handling of legacy forms and css fixes.
updates #117
2014-11-19 21:20:36 +01:00
JC Brand
ca552f3440 Bugfix. Don't save the session if we aren't authenticated.
Also, fixed reg form cancelation.
2014-11-19 10:09:46 +01:00
JC Brand
65d4137373 Remove reliance on strophe.register plugin. updates #117 2014-11-18 11:29:12 +01:00
JC Brand
185f2c2491 More work on in band registration. updates #117
User gets automatically logged in if possible. Otherwise load login panel.
2014-11-17 19:10:19 +01:00
JC Brand
f4096ea9fb More form handling code. updates #117 2014-11-17 13:55:52 +01:00
JC Brand
91afe09007 Make default height for chat boxes 400px 2014-11-17 10:48:58 +01:00
JC Brand
2afdcfac80 Avoid having to repeat whitelisted settings. 2014-11-17 09:50:00 +01:00
JC Brand
1c5b27bae7 Add utils method for turning HTTP DOM fields to XFORM fields.
Add registration method for in band registrations. updates #117
2014-11-17 09:44:42 +01:00
JC Brand
9a84e44db4 updates #234 Cannot send/receive messages when JIDs have mixed case 2014-11-16 22:23:24 +01:00
JC Brand
e9638e70c7 Initial work on allowing in band registrations. XEP 077 2014-11-16 22:16:42 +01:00
JC Brand
3f01e94b9b Fixes #177 Setting status to 'offline' does nothing in other clients. 2014-11-15 16:09:36 +01:00
JC Brand
efa56ffb33 Fixes #232 Always get full name from model. 2014-11-15 15:44:33 +01:00
JC Brand
52c3df7cb4 Fixes #260 Sent message carbons are not displayed. 2014-11-15 15:38:15 +01:00
JC Brand
ef8082a31d Fixes #262 Contact requests not shown if page reloaded. 2014-11-15 14:42:56 +01:00
JC Brand
60eb7552a8 Bugfix. Only show a roster group if it has contacts in it. 2014-11-15 14:15:07 +01:00
JC Brand
3d6d14c47d Fixes #274 Roster filtering results change with presence changes 2014-11-15 14:03:17 +01:00
JC Brand
6b88513f1d Move render method below initialize 2014-11-15 14:01:16 +01:00
JC Brand
d007339415 Fixes #275 Custom status message doesn't reset. 2014-11-15 13:28:11 +01:00
JC Brand
fdb80e3d2c Save the MUC domain to session storage.
Fixes #237
Fixes #238
2014-11-15 13:17:40 +01:00
JC Brand
6cdd793758 Update docs due to recent pull requests. 2014-11-15 11:04:33 +01:00
JC Brand
152d4886e8 Merge pull request #278 from Deuteu/message-counter-fixes
Multiple bind
2014-11-15 10:52:26 +01:00
JC Brand
0a57bb8a4b Merge pull request #279 from gbonvehi/support-muc-config
Add more field types to MUC config
2014-11-15 10:40:25 +01:00
Guillermo Bonvehí
6ab3a7cf6b hide_offline_users option
This will hide users with offline status, show_only_users still
takes precendence if enabled.
2014-11-14 15:42:27 -03:00
Guillermo Bonvehí
69ccdc9a85 Add more field types to MUC config
Added support for fixed, jid-multi and list-multi types.
2014-11-13 18:18:32 -03:00
Deuteu
9a8d1921c7 Multiple bind
Restoring a chatbox wasnt unbinding event then the unread counter for a chatbox was multiply by the time you minized it.
2014-11-13 10:56:52 +01:00
JC Brand
572b3e8d74 Use 'extend' instead of 'override'. updates #46 2014-11-09 21:27:08 +01:00
JC Brand
25b56e3538 Rename "buddy" to "contact". Fixes #226 2014-11-09 18:07: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
36db4c8b27 Merge branch 'master' into plugin-api 2014-11-08 16:59:25 +01:00
JC Brand
e1efb6042e Bugfix. Previous commit didn't take closed chat boxes into consideration 2014-11-08 16:58:42 +01:00
JC Brand
dc31057cb9 Bugfix. Don't show duplicate messages. 2014-11-08 15:53:29 +01:00
JC Brand
3ab1ad88dd Use namespace const 2014-11-08 15:34:12 +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
0f06902bf4 Merge pull request #267 from Deuteu/message-counter-fixes
Fix num_unread*2 on minimized chat
2014-10-30 11:06:26 +01:00
Guillermo Bonvehí
5620f007ea Fix locale set during initialize not being used in utils.translation 2014-10-29 13:13:54 -03:00
Deuteu
c9e031e1c6 Fix num_unread*2 on minimized chat
When chat was minimized the counter num_unread of unread message was increment when receiving a compose message so the number of unread messages was doubled.
2014-10-29 13:53:08 +01:00
JC Brand
52cabd0d23 Merge branch 'profiling' 2014-10-28 18:12:50 +01:00
JC Brand
682cc8471a Update main.js to work properly with mainConfigFile 2014-10-28 18:02:17 +01:00
JC Brand
55e32c735d Fix tests 2014-10-27 23:06:11 +01:00
JC Brand
37eefa67d0 Performance fix. Don't query for the roster on each page load.
Instead, just populate the roster from sessionStorage if available.
2014-10-27 21:53:05 +01:00
JC Brand
b2b4474439 Performance fix. Don't loop through whole roster when only one item changed. updates #151 2014-10-27 21:41:41 +01:00
JC Brand
c2063eb1a7 Keep on getting disconnected. This fixed it.
Seems like the RID gets incremented once too many (outside of upper bound of
expected window), and then server responds with item-not-found.

See: http://xmpp.org/extensions/xep-0124.html
2014-10-27 21:35:25 +01:00
JC Brand
ec00a04068 Bugfix. .roster-group elements must be found relative to 2014-10-27 21:35:06 +01:00
JC Brand
8998a057da Make sure that subscribeToRosterSuggestions is ...
called sequentially with enough time between each call.
2014-10-27 18:48:54 +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
07186bcecd Performance fix. Set display "none" on the roster element. 2014-10-26 20:20:05 +01:00
JC Brand
695c8f441d Minimize debounce time for update method to 100ms. 2014-10-26 17:10:58 +01:00
Deuteu
30ccc0437c Remove unnecessary commas for ie8 compatibility 2014-10-26 15:52:27 +01:00
JC Brand
2f968f7095 More optimizations.
Don't sort the global ContactRosters collection (we only need to sort the
individual groups).
Only add the roster to the DOM once the users have been added.
2014-10-25 12:33:24 +02:00
JC Brand
f4ff6370b9 Performance fix. Debounce the update method on the roster. 2014-10-25 09:57:05 +02:00
JC Brand
7e42783c62 Don't remove requesting users when clearing the roster cache. updates #262 2014-10-24 18:55:32 +02:00
JC Brand
0963f5c4d5 Add 'override' method for overriding converse Views and Models. 2014-10-22 22:17:21 +02:00
JC Brand
bb54874f35 Add extra check before accepting a passed in connection.
No use in using a passed in connection that's not connected.
2014-10-19 20:41:16 +02:00
JC Brand
aa2c38548c Tweak participants' toggle so that widths don't need to be hardcoded. 2014-10-19 15:09:29 +02:00
JC Brand
35928308c8 Bugfix. "ev" isn't necessarily defined. 2014-10-15 22:56:45 +02:00
JC Brand
80b8fed6cd New method createChatRoomMessage 2014-10-15 22:28:43 +02:00
JC Brand
b93d43d2cb Also store message id for received messages. updates #240 2014-10-15 19:51:30 +02:00
JC Brand
a717cc464a bugfix. msgid should be string. 2014-10-15 19:35:03 +02:00
JC Brand
a88c786991 Instead of using a hash, use milliseconds since epoch for groupchat id.
That way, if need be, we could sort messages.
2014-10-15 19:15:28 +02:00
JC Brand
55c57a346d Move translation factory to utils
So that it can be used by plugins.
2014-10-13 22:02:55 +02:00
JC Brand
970da2acf0 Keep track of groupchat messages... fixes #240
by way of msgid attribute.
2014-10-13 21:15:25 +02:00
JC Brand
24cd78a78d Call plugins after Backbone models and views have been parsed. 2014-10-12 16:24:57 +02:00
JC Brand
490f26031e Add registerPlugin API method. 2014-10-12 14:49:45 +02:00
JC Brand
60367f82f7 Bugfix. Proxy methods to ensure proper context. updates #46 2014-10-12 11:11:28 +02:00
JC Brand
48dd0cc674 Trying to organize doc chapters a bit more logically. 2014-10-12 11:03:25 +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
8493b4f423 Add space between function name and brackets
to visually differentiate between function declarations and instantiations.
2014-10-10 11:05:16 +02:00
JC Brand
eaa18cc4c2 Merge branch 'master' of github.com:jcbrand/converse.js 2014-10-10 10:52:41 +02:00
Sergey Fedoseev
6e0c173f44 fix prebind reference error 2014-10-10 02:03:23 +06:00
Sergey Fedoseev
6addfdabb0 fix event prevention on chat restore 2014-10-09 20:32:24 +06:00
JC Brand
0c83ac4524 Explicitly set jQuery as a dependency of converse.js
Also in utils.js and otr.js (this will help reach to goal of having a private
jquery which doesn't pollute the global $ var).
2014-10-06 20:23:59 +02:00
JC Brand
5bad6b02b6 Clarify how one should use prebind and keepalive together. 2014-09-30 12:27:53 +02:00
JC Brand
64847bcb96 Add new event noResumeableSession 2014-09-26 17:20:52 +02:00
JC Brand
b803267555 Bugfix. Return after attaching with prebind data. 2014-09-24 10:57:07 +02:00
JC Brand
5bc1286a64 Take <gone> chat state into consideration. 2014-09-22 16:35:36 +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
e860343eb2 Bugfix. The chatroom was being joined twice, causing duplication. 2014-09-21 00:19:59 +02:00
JC Brand
dbd45397a3 Move password form for chatrooms to an external template. 2014-09-20 22:59:29 +02:00
JC Brand
0babac2b17 More fixes to properly tear down session after logout.
Fixed problem with Strophe handlers zombies.
Remove zombie handlers for minimized chats (caused duplicate minimized chats).
2014-09-20 15:08:53 +02:00
JC Brand
6f4ea8a5aa More session fixes.
* Make sure to rebroadcast presence when logging in after having just
logged out.
* Remove roster contacts when logging out, to avoid artifacts when logging in
with a different account.
2014-09-18 19:24:32 +02:00
JC Brand
26f6ec98c6 Merge branch 'session-issues' 2014-09-18 18:51:55 +02:00
JC Brand
041d5aca51 Fix issues with rendering login form after session crash. 2014-09-18 18:51:23 +02:00
JC Brand
108a57c53d keepalive should not be true by default.
Also, scrollDown after toggling occupants sidebar.
2014-09-18 09:33:51 +02:00
JC Brand
ce06e7d2d6 Initial attempt to sort out session issues. 2014-09-18 09:29:31 +02:00
JC Brand
9b0f701893 Need to configure _.templateSettings in converse.js
The tpl configuration in main.js is only for externally loaded templates, if we
use inline templates (as is the case with the room invite feature), we need to
configure _.templateSettings as well.
2014-09-17 23:05:17 +02:00
JC Brand
f26e709a4b Let prebinding take precedence over keepalive. 2014-09-17 22:07:58 +02:00
JC Brand
47e9e963fd Remember state of chat room sidebar. 2014-09-17 22:04:47 +02:00
JC Brand
ba6b72011c Show groupchat messages where user is mentioned in bold. 2014-09-17 21:40:19 +02:00
JC Brand
eefce8286e Fix tests but killing zombies. 2014-09-17 10:35:24 +02:00
JC Brand
9f251f729b Fix. Make sure that a user appears as pending once you've added them. 2014-09-15 23:28:07 +02:00
JC Brand
fdff512225 Bugfix. Make sure we fall back to jid if no fullname is set. 2014-09-15 23:09:04 +02:00
JC Brand
443ee80b6e Recreate the roster each time initRoster is called.
Otherwise we will reuse old/stale objects for which we receive no add events
(resulting in an empty roster).
2014-09-15 23:00:52 +02:00
JC Brand
60070b52d2 Some work on fixing the broken subscription flow.
Looks like the subsription flow was broken since the roster groups refactor.
Requesting and pending contacts weren't being properly added to (and removed
from) roster groups.

Requesting contacts are now properly added and remove. Next up, handling
outgoing requets (i.e. pending contacts).
2014-09-15 22:48:04 +02:00
JC Brand
597e3693c7 Call initRoster only after controlbox is connected. 2014-09-15 21:33:44 +02:00
JC Brand
3a30f30fb7 Bugfix concerning trimmed chats.
Chats were being trimmed even though there was enough room.
2014-09-15 20:08:13 +02:00
JC Brand
bab04a4d97 Fixed a timing issue with keepalive.
When loading a page with an existing session, the roster view's elements were
being added too early, resulting in event handlers not being properly
registered.
2014-09-15 20:04:36 +02:00
JC Brand
95a77e3f92 Chat room messages are now stored in browser storage. 2014-09-12 22:23:42 +02:00
JC Brand
c04ed35b65 Properly remove chat room occupants who leave. 2014-09-12 19:46:52 +02:00