Commit cbde2a1d authored by JC Brand's avatar JC Brand

Make the fetching of VCards optional. Updates #100

parent 7b2d16af
...@@ -87,6 +87,7 @@ ...@@ -87,6 +87,7 @@
this.show_only_online_users = false; this.show_only_online_users = false;
this.show_emoticons = true; this.show_emoticons = true;
this.show_toolbar = true; this.show_toolbar = true;
this.use_vcards = true;
this.xhr_custom_status = false; this.xhr_custom_status = false;
this.xhr_custom_status_url = ''; this.xhr_custom_status_url = '';
this.xhr_user_search = false; this.xhr_user_search = false;
...@@ -114,6 +115,7 @@ ...@@ -114,6 +115,7 @@
'show_only_online_users', 'show_only_online_users',
'show_toolbar', 'show_toolbar',
'sid', 'sid',
'use_vcards',
'xhr_custom_status', 'xhr_custom_status',
'xhr_custom_status_url', 'xhr_custom_status_url',
'xhr_user_search', 'xhr_user_search',
...@@ -205,6 +207,12 @@ ...@@ -205,6 +207,12 @@
}; };
this.getVCard = function (jid, callback, errback) { this.getVCard = function (jid, callback, errback) {
if (!this.use_vcards) {
if (callback) {
callback(jid, jid);
}
return;
}
converse.connection.vcard.get( converse.connection.vcard.get(
$.proxy(function (iq) { $.proxy(function (iq) {
// Successful callback // Successful callback
...@@ -242,7 +250,8 @@ ...@@ -242,7 +250,8 @@
if (errback) { if (errback) {
errback(iq); errback(iq);
} }
}); }
);
}; };
this.onConnect = function (status) { this.onConnect = function (status) {
...@@ -1384,16 +1393,7 @@ ...@@ -1384,16 +1393,7 @@
$input.addClass('error'); $input.addClass('error');
return; return;
} }
converse.getVCard( this.addContact(jid);
jid,
$.proxy(function (jid, fullname, image, image_type, url) {
this.addContact(jid, fullname);
}, this),
$.proxy(function (stanza) {
converse.log("An error occured while fetching vcard");
var jid = $(stanza).attr('from');
this.addContact(jid, jid);
}, this));
$('.search-xmpp').hide(); $('.search-xmpp').hide();
}, },
...@@ -1408,6 +1408,7 @@ ...@@ -1408,6 +1408,7 @@
}, },
addContact: function (jid, name) { addContact: function (jid, name) {
name = _.isEmpty(name)? jid: name;
converse.connection.roster.add(jid, name, [], function (iq) { converse.connection.roster.add(jid, name, [], function (iq) {
converse.connection.roster.subscribe(jid, null, converse.xmppstatus.get('fullname')); converse.connection.roster.subscribe(jid, null, converse.xmppstatus.get('fullname'));
}); });
......
...@@ -5,6 +5,7 @@ Changelog ...@@ -5,6 +5,7 @@ Changelog
------------------ ------------------
* #48 Add event emitter support and emit events. [jcbrand] * #48 Add event emitter support and emit events. [jcbrand]
* #100 Make the fetching of vCards optional (enabled by default). [jcbrand]
0.7.1 (2013-11-17) 0.7.1 (2013-11-17)
------------------ ------------------
......
...@@ -815,6 +815,15 @@ Default = ``false`` ...@@ -815,6 +815,15 @@ Default = ``false``
If set to ``true``, only online users will be shown in the contacts roster. If set to ``true``, only online users will be shown in the contacts roster.
Users with any other status (e.g. away, busy etc.) will not be shown. Users with any other status (e.g. away, busy etc.) will not be shown.
use_vcards
----------
Default = ``true``
Determines whether the XMPP server will be queried for roster contacts' VCards
or not. VCards contain extra personal information such as your fullname and
avatar image.
xhr_custom_status xhr_custom_status
----------------- -----------------
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment