Commit Graph

670 Commits

Author SHA1 Message Date
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
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
JC Brand
fa2ff46cee Give chatroom's occupants view a ref to the chatroom view
and thereby fix bug with directInvites.
2014-09-12 19:31:53 +02:00
JC Brand
450ce04fd9 Refactor chat rooms.
When re-attaching to an existing session, chat rooms are fetched from
sessionStorage and we join them again.

However, unless we send a presence of type unavailable before reloading the
page, from the XMPP server's perspective we never left the chat room.

It therefore doesn't send us again the room occupants or room messages.

To send a presence of type unavailable is a hack and not desireable. Rather, we
want to stay in the room and just re-attach to it upon page reload.
In order to do this, we need some new functionality.

* Refactor the chat room sidebar into a new Backbone Model/View combo. (done).
* Store/fetch room occupants in/from sessionStorage (done).
* Store/fetch room messages in/from sessionStorage (not yet done).
* Instead of re-joining a chat room which we never left, just register the event handlers again. (not yet done).
2014-09-12 15:30:28 +02:00