Commit Graph

8466 Commits

Author SHA1 Message Date
JC Brand
fba9bcfde6 ChatBoxes are now saved and fetched from backbone.localStorage.
Also made some initial changes to save/fetch messages from
backbone.localStorage
2013-03-22 08:22:04 +02:00
JC Brand
48e4ed271e Big refactoring.
Removed ControlBox model, and instead only create ChatBox models inside
ChatBoxes collection (the Controlbox is now also a ChatBox).

This enables us to use backbone.localStorage for saving open chatboxes (saving
and fetching currently not implemented).

createChatBox now doesn't return a ChatBoxView instance anymore. In the case
where a view was needed (to append a message), we create the message on the
ChatBox and let the view update via an event trigger. This is much more Backbonic ;)

Also created a Message model. This will most likely enable us to in the future also
store messages via backbone.localStorage.
2013-03-21 14:11:45 +02:00
JC Brand
2fe7164df6 Add errbacks for getVCard 2013-03-21 12:29:59 +02:00
JC Brand
2ae4fabb4d Show ellipsis when contact name is too long 2013-03-21 12:29:15 +02:00
JC Brand
ee3da4e40e Show the controlbox toggle by default.
Also, make sure RosterItems localstorage is user specifici
2013-03-21 11:43:35 +02:00
JC Brand
df931af213 Re-implement the login dialog as part of the controlbox. 2013-03-21 10:54:41 +02:00
JC Brand
9f437cbc2c Remove dependency on underscore 2013-03-21 10:54:09 +02:00
JC Brand
e9916ec912 Cache vCard retrieval.
We still need a cache invalidation mechanism. Currently PEP event notifications look most promising.
http://xmpp.org/extensions/xep-0163.html
http://xmpp.org/extensions/xep-0292.html#self-pubsub
2013-03-20 11:34:54 +02:00
JC Brand
219089d261 Specify Chatboxes collection's contained models 2013-03-19 10:45:18 +02:00
JC Brand
f28e20dc41 Call render on the roster if an item is removed, to clear headings. 2013-03-15 07:22:37 +02:00
JC Brand
4eae6ae2aa Bugfix.
User wasn't being removed from the roster if their buddy unsubscribed.
2013-03-15 07:17:49 +02:00
JC Brand
7f26ddbee6 Bugfix.
User wasn't being removed from the roster if their buddy unsubscribed.
2013-03-15 07:12:08 +02:00
JC Brand
15093e7795 Call render on the roster if an item is removed, to clear headings. 2013-03-15 06:59:35 +02:00
JC Brand
a28b17bb14 Make sure the roster is shown when a user subscribes 2013-03-15 06:48:28 +02:00
JC Brand
e5c4491946 Bugfix.
When a user has no contacts, a subscribing contact doesn't appear (due to the roster being hidden).
2013-03-15 06:46:49 +02:00
JC Brand
a1f5c31967 Remove last vestiges of jquery-ui 2013-03-12 14:31:46 +02:00
JC Brand
8bdd973ffc Remove jquery.ui and underscore.string 2013-03-12 12:22:41 +02:00
JC Brand
728bdff12b Add backbone.localStorage.js 2013-03-12 12:22:32 +02:00
JC Brand
b7e191f2b7 Handle removal of roster items from the cache.
- Also, use the browser's confirm dialog, to remove the dependency on jquery.ui
2013-03-12 10:56:50 +02:00
JC Brand
db158876b2 Add initial support for caching roster items to localstorage
- Uses Backbone.localStorage
- Unsubscribing/removing contacts from this cache is not yet tested/implemented
2013-03-12 09:42:33 +02:00
JC Brand
112c8c612e More presencing and chat status fixes.
- Try to clear up the confusion between presence_type (i.e type attr) and
  chat_status (i.e <show> element).
- Properly set chat status and custom status message.
2013-03-06 11:42:53 +02:00
JC Brand
d3c7c04571 Remove hardcoded values 2013-03-06 11:40:15 +02:00
JC Brand
7f4206e9b2 Update changes 2013-03-05 22:59:30 +02:00
JC Brand
49fd8a7ecd Fix presence exchange.
- Added 'show' element
- 'busy' must be 'dnd'
2013-03-05 22:57:05 +02:00
JC Brand
dfc1b73d11 Refactor some code out of the presenceHandler.
Also, don't hide the controlbox in the beginning, no need to.
2013-03-05 19:18:40 +02:00
JC Brand
1966d5ab56 Fix RosterHandler through proper closure. 2013-03-05 18:35:06 +02:00
JC Brand
bd5269c232 Various fixes, see below:
- Don't do an ajax call when a user wants to subscribe. We wanted to get the
  user's fullname, but this is now handled via vCards
- openChat is now only for roster items. Call showChat for controlbox and
  createChatRoom for rooms.
2013-03-05 10:15:48 +02:00
JC Brand
8f697923f2 Replace another server call with VCard.
This time when a message is received for the first time.
2013-03-05 09:33:29 +02:00
JC Brand
121fab13a8 Add getVCard method (will be usefull for caching later) 2013-03-05 09:17:06 +02:00
JC Brand
e8e9718b01 Don't underline links 2013-03-04 23:05:23 +02:00
JC Brand
2791143508 Set the avatar image on the rosteritem obj 2013-03-04 23:05:01 +02:00
JC Brand
9fb409136f Add base.css for basic non-converse specific styles 2013-03-04 23:04:24 +02:00
JC Brand
4b670228ff Fix canvas image ratio (don't stretch or squash) 2013-03-03 20:30:07 +02:00
JC Brand
daa31794d7 Render the vCard profile picture 2013-03-03 20:14:11 +02:00
JC Brand
d9f8b957d0 More refinements. 2013-03-03 18:04:45 +02:00
JC Brand
0c8c4bf2cd Add missing images 2013-03-03 17:27:14 +02:00
JC Brand
4c1f857741 Fetch vCard when restoring a previously opened chat 2013-03-03 17:27:14 +02:00
JC Brand
4989b4295b Add strophe.vcard.js 2013-03-03 17:27:14 +02:00
JC Brand
e3fa8325b8 Add initial vcard support 2013-03-03 17:27:14 +02:00
JC Brand
65bbe800e2 Merge pull request #6 from ichim-david/master
More code optimizations
2013-03-03 07:24:44 -08:00
ichim-david
a9df31e184 Added changes.rst entry for this pull request 2013-03-02 09:38:41 +02:00
ichim-david
c4cafb8c4f Changed the following:
- Chain calls on initialize method of RosterView
- Moved dom insertion out of loops on initialize method of
  XMPPStatusView
2013-03-02 09:32:26 +02:00
ichim-david
d8e4f848b6 Wrap this with jQuery only once in subscribeToSuggestedItems; Same thing with presence in presenceHandler 2013-03-02 09:05:23 +02:00
ichim-david
58bbbe8b9d Cached message from attribute of messageReceived method 2013-03-02 08:54:41 +02:00
ichim-david
e635fb4fc4 Chain jQuery methods for show and render of onChatRoomMessage 2013-03-02 08:41:51 +02:00
ichim-david
5ee9a678c9 Changed the following:
- removed extra jQuerify wrapping of message at onChatRoomMessage
- Construct an array of strings and add it to onChatRoomRoster only
  after loop is done in order to have only 1 dom insertion
2013-03-02 08:36:47 +02:00
ichim-david
764a710158 Cached presence for onChatRoomPresence and removed length comparision to > 0 2013-03-02 08:28:50 +02:00
ichim-david
300b069a0e Use ; Do only one dom insertion in case of /help 2013-03-01 21:53:48 +02:00
ichim-david
6afb091d12 Cached available-chatrooms calls to avoid dom calls on updateRoomList 2013-03-01 21:46:02 +02:00
ichim-david
18f877b59c Changed the following:
- Chained call to render and show methods of ChatBoxView
- Cached target for subscribeToContact
- Removed check of length > 0
2013-03-01 21:38:47 +02:00