Bugfix. Should be && not ||
This commit is contained in:
parent
0a3a6222c6
commit
93c956ba4b
4
dist/converse.js
vendored
4
dist/converse.js
vendored
@ -70894,9 +70894,9 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|||||||
return err_msg;
|
return err_msg;
|
||||||
}
|
}
|
||||||
|
|
||||||
const required_fields = _.map(sizzle('field required', iq), 'parentElement');
|
const required_fields = sizzle('field required', iq).map(f => f.parentElement);
|
||||||
|
|
||||||
if (required_fields.length > 1 || required_fields[0].getAttribute('var') !== 'muc#register_roomnick') {
|
if (required_fields.length > 1 && required_fields[0].getAttribute('var') !== 'muc#register_roomnick') {
|
||||||
return _converse.log(`Can't register the user register in the groupchat ${jid} due to the required fields`);
|
return _converse.log(`Can't register the user register in the groupchat ${jid} due to the required fields`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -60,6 +60,7 @@
|
|||||||
it("can be enabled for a MUC domain",
|
it("can be enabled for a MUC domain",
|
||||||
mock.initConverseWithPromises(null,
|
mock.initConverseWithPromises(null,
|
||||||
['rosterGroupsFetched'], {
|
['rosterGroupsFetched'], {
|
||||||
|
'enable_muc_push': true,
|
||||||
'push_app_servers': [{
|
'push_app_servers': [{
|
||||||
'jid': 'push-5@client.example',
|
'jid': 'push-5@client.example',
|
||||||
'node': 'yxs32uqsflafdk3iuqo'
|
'node': 'yxs32uqsflafdk3iuqo'
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
} (this, function (jasmine, mock, test_utils) {
|
} (this, function (jasmine, mock, test_utils) {
|
||||||
const _ = converse.env._,
|
const _ = converse.env._,
|
||||||
$iq = converse.env.$iq,
|
$iq = converse.env.$iq,
|
||||||
|
$pres = converse.env.$pres,
|
||||||
Strophe = converse.env.Strophe,
|
Strophe = converse.env.Strophe,
|
||||||
sizzle = converse.env.sizzle,
|
sizzle = converse.env.sizzle,
|
||||||
u = converse.env.utils;
|
u = converse.env.utils;
|
||||||
@ -80,10 +81,48 @@
|
|||||||
function (done, _converse) {
|
function (done, _converse) {
|
||||||
|
|
||||||
let view;
|
let view;
|
||||||
|
const IQ_stanzas = _converse.connection.IQ_stanzas;
|
||||||
const room_jid = 'coven@chat.shakespeare.lit';
|
const room_jid = 'coven@chat.shakespeare.lit';
|
||||||
test_utils.openAndEnterChatRoom(_converse, 'coven', 'chat.shakespeare.lit', 'romeo')
|
_converse.api.rooms.open(room_jid, {'nick': 'romeo'})
|
||||||
.then(() => {
|
.then(() => {
|
||||||
|
return test_utils.waitUntil(() => _.get(_.filter(
|
||||||
|
IQ_stanzas,
|
||||||
|
iq => iq.nodeTree.querySelector(
|
||||||
|
`iq[to="${room_jid}"] query[xmlns="http://jabber.org/protocol/disco#info"]`
|
||||||
|
)).pop(), 'nodeTree'));
|
||||||
|
}).then(stanza => {
|
||||||
|
const features_stanza = $iq({
|
||||||
|
'from': room_jid,
|
||||||
|
'id': stanza.getAttribute('id'),
|
||||||
|
'to': 'dummy@localhost/desktop',
|
||||||
|
'type': 'result'
|
||||||
|
}).c('query', { 'xmlns': 'http://jabber.org/protocol/disco#info'})
|
||||||
|
.c('identity', {
|
||||||
|
'category': 'conference',
|
||||||
|
'name': 'A Dark Cave',
|
||||||
|
'type': 'text'
|
||||||
|
}).up()
|
||||||
|
.c('feature', {'var': 'http://jabber.org/protocol/muc'}).up()
|
||||||
|
.c('feature', {'var': 'jabber:iq:register'});
|
||||||
|
_converse.connection._dataRecv(test_utils.createRequest(features_stanza));
|
||||||
view = _converse.chatboxviews.get('coven@chat.shakespeare.lit');
|
view = _converse.chatboxviews.get('coven@chat.shakespeare.lit');
|
||||||
|
return test_utils.waitUntil(() => (view.model.get('connection_status') === converse.ROOMSTATUS.CONNECTING));
|
||||||
|
}).then(stanza => {
|
||||||
|
// The user has just entered the room (because join was called)
|
||||||
|
// and receives their own presence from the server.
|
||||||
|
// See example 24: http://xmpp.org/extensions/xep-0045.html#enter-pres
|
||||||
|
const presence = $pres({
|
||||||
|
to: _converse.connection.jid,
|
||||||
|
from: room_jid,
|
||||||
|
id: u.getUniqueId()
|
||||||
|
}).c('x').attrs({xmlns:'http://jabber.org/protocol/muc#user'})
|
||||||
|
.c('item').attrs({
|
||||||
|
affiliation: 'owner',
|
||||||
|
jid: _converse.bare_jid,
|
||||||
|
role: 'moderator'
|
||||||
|
}).up()
|
||||||
|
.c('status').attrs({code:'110'});
|
||||||
|
_converse.connection._dataRecv(test_utils.createRequest(presence));
|
||||||
return test_utils.waitUntil(() => _.get(_.filter(
|
return test_utils.waitUntil(() => _.get(_.filter(
|
||||||
_converse.connection.IQ_stanzas,
|
_converse.connection.IQ_stanzas,
|
||||||
iq => sizzle(`iq[to="coven@chat.shakespeare.lit"][type="get"] query[xmlns="jabber:iq:register"]`, iq.nodeTree).length
|
iq => sizzle(`iq[to="coven@chat.shakespeare.lit"][type="get"] query[xmlns="jabber:iq:register"]`, iq.nodeTree).length
|
||||||
|
@ -836,8 +836,8 @@
|
|||||||
_converse.log(e, Strophe.LogLevel.ERROR);
|
_converse.log(e, Strophe.LogLevel.ERROR);
|
||||||
return err_msg;
|
return err_msg;
|
||||||
}
|
}
|
||||||
const required_fields = _.map(sizzle('field required', iq), 'parentElement');
|
const required_fields = sizzle('field required', iq).map(f => f.parentElement);
|
||||||
if (required_fields.length > 1 || required_fields[0].getAttribute('var') !== 'muc#register_roomnick') {
|
if (required_fields.length > 1 && required_fields[0].getAttribute('var') !== 'muc#register_roomnick') {
|
||||||
return _converse.log(`Can't register the user register in the groupchat ${jid} due to the required fields`);
|
return _converse.log(`Can't register the user register in the groupchat ${jid} due to the required fields`);
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
|
Loading…
Reference in New Issue
Block a user