New config setting `allow_public_bookmarks`

This commit is contained in:
JC Brand 2018-02-08 15:39:27 +01:00
parent 4d77d0c0b3
commit 055c4d2104
3 changed files with 26 additions and 1 deletions

View File

@ -17,6 +17,10 @@ though they should be private._
### API changes
- New API method `_converse.disco.getIdentity` to check whether a JID has a given identity.
### New configuration settings
- New configuration setting [allow_public_bookmarks](https://conversejs.org/docs/html/configurations.html#allow-public-bookmarks)
## 3.3.2 (2018-01-29)
### Bugfixes

View File

@ -118,6 +118,8 @@ allow_bookmarks
Enables/disables chatroom bookmarks functionality.
This setting is only applicable if the ``converse-bookmarks`` plugin is loaded.
See also: `allow_public_bookmarks`_
allow_chat_pending_contacts
---------------------------
@ -190,6 +192,24 @@ allow_otr
Allow Off-the-record encryption of single-user chat messages.
allow_public_bookmarks
----------------------
* Default: ``false``
Some XMPP servers don't support private PEP/PubSub nodes, as required for
private bookmarks and outlined in `XEP-0223 <https://xmpp.org/extensions/xep-0223.html>`_.
Even though Converse.js asks for the bookmarks to be kept private (via the
`<publish-options>` XML node), the server simply ignores the privacy settings
and publishes the node contents under the default privacy setting, which makes
the information available to all roster contacts.
If your your XMPP server does not support `XEP-0223`'s ``#publish-options``
feature and you don't mind that your room bookmarks are visible to all
contacts, then you can set this setting to ``true``. Otherwise you won't be
able to have any room bookmarks at all for an account on that XMPP server.
allow_registration
------------------

View File

@ -218,6 +218,7 @@
// configuration settings.
_converse.api.settings.update({
allow_bookmarks: true,
allow_public_bookmarks: false,
hide_open_bookmarks: true
});
// Promises exposed by this plugin
@ -540,7 +541,7 @@
const identity = args[0],
options_support = args[1];
if (_.isNil(identity) || !options_support.supported) {
if (_.isNil(identity) || (!options_support.supported && !_converse.allow_public_bookmarks)) {
_converse.emit('bookmarksInitialized');
return;
}