Commit 339d8a8f authored by Emmanuel Gil Peyrot's avatar Emmanuel Gil Peyrot Committed by JC Brand

Add XHTML compatibility

This is mainly a testing tool, which makes a mode where all HTML bugs
which could slightly mess up the rendering will trigger proper errors in
the browser.

Fixes #1131.
parent 88e74975
...@@ -75470,10 +75470,12 @@ _converse_core__WEBPACK_IMPORTED_MODULE_6__["default"].plugins.add('converse-muc ...@@ -75470,10 +75470,12 @@ _converse_core__WEBPACK_IMPORTED_MODULE_6__["default"].plugins.add('converse-muc
this.occupants.reset(); this.occupants.reset();
const disco_entity = _converse.disco_entities.get(this.get('jid')); if (_converse.disco_entities) {
const disco_entity = _converse.disco_entities.get(this.get('jid'));
if (disco_entity) { if (disco_entity) {
disco_entity.destroy(); disco_entity.destroy();
}
} }
if (_converse.connection.connected) { if (_converse.connection.connected) {
...@@ -100837,17 +100839,17 @@ module.exports = function(o) { ...@@ -100837,17 +100839,17 @@ module.exports = function(o) {
var __t, __p = '', __e = _.escape; var __t, __p = '', __e = _.escape;
__p += '<!-- src/templates/add_chatroom_modal.html -->\n<div class="modal fade" id="add-chatroom-modal" tabindex="-1" role="dialog" aria-labelledby="add-chatroom-modal-label" aria-hidden="true">\n <div class="modal-dialog" role="document">\n <div class="modal-content">\n <div class="modal-header">\n <h5 class="modal-title"\n id="add-chatroom-modal-label">' + __p += '<!-- src/templates/add_chatroom_modal.html -->\n<div class="modal fade" id="add-chatroom-modal" tabindex="-1" role="dialog" aria-labelledby="add-chatroom-modal-label" aria-hidden="true">\n <div class="modal-dialog" role="document">\n <div class="modal-content">\n <div class="modal-header">\n <h5 class="modal-title"\n id="add-chatroom-modal-label">' +
__e(o.heading_new_chatroom) + __e(o.heading_new_chatroom) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close">\n <span aria-hidden="true">&times;</span>\n </button>\n </div>\n <div class="modal-body">\n <form class="converse-form add-chatroom">\n <div class="form-group">\n <label for="chatroom">' + '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close">\n <span aria-hidden="true">×</span>\n </button>\n </div>\n <div class="modal-body">\n <form class="converse-form add-chatroom">\n <div class="form-group">\n <label for="chatroom">' +
__e(o.label_room_address) + __e(o.label_room_address) +
':</label>\n <input type="text" required="required" name="chatroom" class="form-control" placeholder="' + ':</label>\n <input type="text" required="required" name="chatroom" class="form-control" placeholder="' +
__e(o.chatroom_placeholder) + __e(o.chatroom_placeholder) +
'">\n </div>\n <div class="form-group">\n <label for="nickname">' + '"/>\n </div>\n <div class="form-group">\n <label for="nickname">' +
__e(o.label_nickname) + __e(o.label_nickname) +
':</label>\n <input type="text" name="nickname" value="' + ':</label>\n <input type="text" name="nickname" value="' +
__e(o.nick) + __e(o.nick) +
'" class="form-control">\n </div>\n <input type="submit" class="btn btn-primary" name="join" value="' + '" class="form-control"/>\n </div>\n <input type="submit" class="btn btn-primary" name="join" value="' +
__e(o.label_join) + __e(o.label_join) +
'">\n </form>\n </div>\n </div>\n </div>\n</div>\n'; '"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n';
return __p return __p
}; };
...@@ -100866,7 +100868,7 @@ var __t, __p = '', __e = _.escape, __j = Array.prototype.join; ...@@ -100866,7 +100868,7 @@ var __t, __p = '', __e = _.escape, __j = Array.prototype.join;
function print() { __p += __j.call(arguments, '') } function print() { __p += __j.call(arguments, '') }
__p += '<!-- src/templates/add_contact_modal.html -->\n<!-- Add contact Modal -->\n<div class="modal fade" id="add-contact-modal" tabindex="-1" role="dialog" aria-labelledby="addContactModalLabel" aria-hidden="true">\n <div class="modal-dialog" role="document">\n <div class="modal-content">\n <div class="modal-header">\n <h5 class="modal-title" id="addContactModalLabel">' + __p += '<!-- src/templates/add_contact_modal.html -->\n<!-- Add contact Modal -->\n<div class="modal fade" id="add-contact-modal" tabindex="-1" role="dialog" aria-labelledby="addContactModalLabel" aria-hidden="true">\n <div class="modal-dialog" role="document">\n <div class="modal-content">\n <div class="modal-header">\n <h5 class="modal-title" id="addContactModalLabel">' +
__e(o.heading_new_contact) + __e(o.heading_new_contact) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>\n </div>\n <form class="converse-form add-xmpp-contact">\n <div class="modal-body">\n <div class="form-group '; '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>\n </div>\n <form class="converse-form add-xmpp-contact">\n <div class="modal-body">\n <div class="form-group ';
if (o._converse.xhr_user_search_url) { ; if (o._converse.xhr_user_search_url) { ;
__p += ' hidden '; __p += ' hidden ';
} ; } ;
...@@ -100927,13 +100929,13 @@ __p += '<!-- src/templates/alert_modal.html -->\n<div class="modal" tabindex="-1 ...@@ -100927,13 +100929,13 @@ __p += '<!-- src/templates/alert_modal.html -->\n<div class="modal" tabindex="-1
__e(o.type) + __e(o.type) +
'">\n <h5 class="modal-title">' + '">\n <h5 class="modal-title">' +
__e(o.title) + __e(o.title) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close">\n <span aria-hidden="true">&times;</span>\n </button>\n </div>\n <div class="modal-body">'; '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close">\n <span aria-hidden="true">×</span>\n </button>\n </div>\n <div class="modal-body">';
o.messages.forEach(function (message) { ; o.messages.forEach(function (message) { ;
__p += '\n <p>' + __p += '\n <p>' +
__e(message) + __e(message) +
'</p>\n '; '</p>\n ';
}) ; }) ;
__p += '\n </div>\n </div>\n </div>\n</div>\n'; __p += '\n </div>\n </div>\n </div>\n</div>\n';
return __p return __p
}; };
...@@ -101022,7 +101024,7 @@ __e(o.jid) + ...@@ -101022,7 +101024,7 @@ __e(o.jid) +
__e(o.name) + __e(o.name) +
'"\n title="' + '"\n title="' +
__e(o.info_remove_bookmark) + __e(o.info_remove_bookmark) +
'" href="#">&nbsp;</a>\n</div>\n'; '" href="#"></a>\n</div>\n';
return __p return __p
}; };
...@@ -101074,35 +101076,35 @@ __p += '<!-- src/templates/chat_status_modal.html -->\n<!-- Change status Modal ...@@ -101074,35 +101076,35 @@ __p += '<!-- src/templates/chat_status_modal.html -->\n<!-- Change status Modal
__e(o.modal_title) + __e(o.modal_title) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' + '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' +
__e(o.label_close) + __e(o.label_close) +
'">\n <span aria-hidden="true">&times;</span>\n </button>\n </div>\n <div class="modal-body">\n <form class="converse-form set-xmpp-status" id="set-xmpp-status">\n <div class="form-group">\n <div class="custom-control custom-radio">\n <input '; '">\n <span aria-hidden="true">×</span>\n </button>\n </div>\n <div class="modal-body">\n <form class="converse-form set-xmpp-status" id="set-xmpp-status">\n <div class="form-group">\n <div class="custom-control custom-radio">\n <input ';
if (o.status === 'online') { ; if (o.status === 'online') { ;
__p += ' checked="checked" '; __p += ' checked="checked" ';
} ; } ;
__p += '\n type="radio" id="radio-online" value="online" name="chat_status" class="custom-control-input">\n <label class="custom-control-label" for="radio-online">\n <span class="fa fa-circle chat-status chat-status--online"></span>&nbsp;' + __p += '\n type="radio" id="radio-online" value="online" name="chat_status" class="custom-control-input"/>\n <label class="custom-control-label" for="radio-online">\n <span class="fa fa-circle chat-status chat-status--online"></span>' +
__e(o.label_online) + __e(o.label_online) +
'</label>\n </div>\n <div class="custom-control custom-radio">\n <input '; '</label>\n </div>\n <div class="custom-control custom-radio">\n <input ';
if (o.status === 'busy') { ; if (o.status === 'busy') { ;
__p += ' checked="checked" '; __p += ' checked="checked" ';
} ; } ;
__p += '\n type="radio" id="radio-busy" value="dnd" name="chat_status" class="custom-control-input">\n <label class="custom-control-label" for="radio-busy">\n <span class="fa fa-minus-circle chat-status chat-status--busy"></span>&nbsp;' + __p += '\n type="radio" id="radio-busy" value="dnd" name="chat_status" class="custom-control-input"/>\n <label class="custom-control-label" for="radio-busy">\n <span class="fa fa-minus-circle chat-status chat-status--busy"></span>' +
__e(o.label_busy) + __e(o.label_busy) +
'</label>\n </div>\n <div class="custom-control custom-radio">\n <input '; '</label>\n </div>\n <div class="custom-control custom-radio">\n <input ';
if (o.status === 'away') { ; if (o.status === 'away') { ;
__p += ' checked="checked" '; __p += ' checked="checked" ';
} ; } ;
__p += '\n type="radio" id="radio-away" value="away" name="chat_status" class="custom-control-input">\n <label class="custom-control-label" for="radio-away">\n <span class="fa fa-circle chat-status chat-status--away"></span>&nbsp;' + __p += '\n type="radio" id="radio-away" value="away" name="chat_status" class="custom-control-input"/>\n <label class="custom-control-label" for="radio-away">\n <span class="fa fa-circle chat-status chat-status--away"></span>' +
__e(o.label_away) + __e(o.label_away) +
'</label>\n </div>\n <div class="custom-control custom-radio">\n <input '; '</label>\n </div>\n <div class="custom-control custom-radio">\n <input ';
if (o.status === 'xa') { ; if (o.status === 'xa') { ;
__p += ' checked="checked" '; __p += ' checked="checked" ';
} ; } ;
__p += '\n type="radio" id="radio-xa" value="xa" name="chat_status" class="custom-control-input">\n <label class="custom-control-label" for="radio-xa">\n <span class="far fa-circle chat-status chat-status--xa"></span>&nbsp;' + __p += '\n type="radio" id="radio-xa" value="xa" name="chat_status" class="custom-control-input"/>\n <label class="custom-control-label" for="radio-xa">\n <span class="far fa-circle chat-status chat-status--xa"></span>' +
__e(o.label_xa) + __e(o.label_xa) +
'</label>\n </div>\n </div>\n <div class="form-group">\n <div class="btn-group w-100">\n <input name="status_message" type="text" class="form-control" \n value="' + '</label>\n </div>\n </div>\n <div class="form-group">\n <div class="btn-group w-100">\n <input name="status_message" type="text" class="form-control" \n value="' +
__e(o.status_message) + __e(o.status_message) +
'" placeholder="' + '" placeholder="' +
__e(o.placeholder_status_message) + __e(o.placeholder_status_message) +
'">\n <span class="clear-input fa fa-times '; '"/>\n <span class="clear-input fa fa-times ';
if (!o.status_message) { ; if (!o.status_message) { ;
__p += ' hidden '; __p += ' hidden ';
} ; } ;
...@@ -101150,7 +101152,7 @@ __p += '<!-- src/templates/chatbox.html -->\n<div class="flyout box-flyout">\n ...@@ -101150,7 +101152,7 @@ __p += '<!-- src/templates/chatbox.html -->\n<div class="flyout box-flyout">\n
if (o.show_send_button) { ; if (o.show_send_button) { ;
__p += 'chat-content-sendbutton'; __p += 'chat-content-sendbutton';
} ; } ;
__p += '"></div>\n <div class="message-form-container"/>\n </div>\n</div>\n'; __p += '"></div>\n <div class="message-form-container"></div>\n </div>\n</div>\n';
return __p return __p
}; };
...@@ -101183,9 +101185,9 @@ __p += '\n </a>\n '; ...@@ -101183,9 +101185,9 @@ __p += '\n </a>\n ';
} ; } ;
__p += '\n <p class="user-custom-message">' + __p += '\n <p class="user-custom-message">' +
__e( o.status ) + __e( o.status ) +
'</p>\n </div>\n </div>\n </div>\n <div class="chatbox-buttons row no-gutters">\n <a class="chatbox-btn close-chatbox-button fa fa-times" title=' + '</p>\n </div>\n </div>\n </div>\n <div class="chatbox-buttons row no-gutters">\n <a class="chatbox-btn close-chatbox-button fa fa-times" title="' +
__e(o.info_close) + __e(o.info_close) +
'></a>\n <a class="chatbox-btn show-user-details-modal fa fa-id-card" title="' + '"></a>\n <a class="chatbox-btn show-user-details-modal fa fa-id-card" title="' +
__e(o.info_details) + __e(o.info_details) +
'"></a>\n </div>\n</div>\n'; '"></a>\n </div>\n</div>\n';
return __p return __p
...@@ -101218,7 +101220,7 @@ __p += '\n <input type="text" placeholder="' + ...@@ -101218,7 +101220,7 @@ __p += '\n <input type="text" placeholder="' +
if (!o.composing_spoiler) { ; if (!o.composing_spoiler) { ;
__p += ' hidden '; __p += ' hidden ';
} ; } ;
__p += ' spoiler-hint"/>\n\n <div class="suggestion-box">\n <ul class="suggestion-box__results suggestion-box__results--above" hidden></ul>\n <textarea\n type="text"\n class="chat-textarea suggestion-box__input\n '; __p += ' spoiler-hint"/>\n\n <div class="suggestion-box">\n <ul class="suggestion-box__results suggestion-box__results--above" hidden=""></ul>\n <textarea\n type="text"\n class="chat-textarea suggestion-box__input\n ';
if (o.show_send_button) { ; if (o.show_send_button) { ;
__p += ' chat-textarea-send-button '; __p += ' chat-textarea-send-button ';
} ; } ;
...@@ -101391,7 +101393,7 @@ __p += '<!-- src/templates/chatroom_details_modal.html -->\n<div class="modal fa ...@@ -101391,7 +101393,7 @@ __p += '<!-- src/templates/chatroom_details_modal.html -->\n<div class="modal fa
__e(o.display_name) + __e(o.display_name) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' + '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' +
__e(o.label_close) + __e(o.label_close) +
'"><span aria-hidden="true">&times;</span></button>\n </div>\n <div class="modal-body">\n <div class="room-info">\n <p class="room-info"><strong>' + '"><span aria-hidden="true">×</span></button>\n </div>\n <div class="modal-body">\n <div class="room-info">\n <p class="room-info"><strong>' +
__e(o.__('Name')) + __e(o.__('Name')) +
'</strong>: ' + '</strong>: ' +
__e(o.name) + __e(o.name) +
...@@ -101863,13 +101865,13 @@ __p += '<!-- src/templates/client_info_modal.html -->\n<!-- Change status Modal ...@@ -101863,13 +101865,13 @@ __p += '<!-- src/templates/client_info_modal.html -->\n<!-- Change status Modal
__e(o.modal_title) + __e(o.modal_title) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' + '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' +
__e(o.label_close) + __e(o.label_close) +
'">\n <span aria-hidden="true">&times;</span>\n </button>\n </div>\n <div class="modal-body">\n <div class="container brand-heading-container">\n <h6 class="brand-heading"><i class="icon-conversejs"></i>Converse</h6>\n <p class="brand-subtitle">' + '">\n <span aria-hidden="true">×</span>\n </button>\n </div>\n <div class="modal-body">\n <div class="container brand-heading-container">\n <h6 class="brand-heading"><i class="icon-conversejs"></i>Converse</h6>\n <p class="brand-subtitle">' +
__e(o.version_name) + __e(o.version_name) +
'</p>\n <p class="brand-subtitle">' + '</p>\n <p class="brand-subtitle">' +
((__t = (o.first_subtitle)) == null ? '' : __t) + ((__t = (o.first_subtitle)) == null ? '' : __t) +
'</a> </p>\n <p class="brand-subtitle">' + '</p>\n <p class="brand-subtitle">' +
((__t = (o.second_subtitle)) == null ? '' : __t) + ((__t = (o.second_subtitle)) == null ? '' : __t) +
'</p>\n <div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'; '</p>\n </div>\n </div>\n </div>\n </div>\n</div>\n';
return __p return __p
}; };
...@@ -102132,7 +102134,7 @@ __e(o.name) + ...@@ -102132,7 +102134,7 @@ __e(o.name) +
if (o.required) { ; if (o.required) { ;
__p += ' class="required" '; __p += ' class="required" ';
} ; } ;
__p += ' >\n\n\n'; __p += ' />\n\n\n';
return __p return __p
}; };
...@@ -102159,7 +102161,7 @@ __e(o.checked) + ...@@ -102159,7 +102161,7 @@ __e(o.checked) +
if (o.required) { ; if (o.required) { ;
__p += ' required '; __p += ' required ';
} ; } ;
__p += ' >\n <label class="form-check-label" for="' + __p += ' />\n <label class="form-check-label" for="' +
__e(o.id) + __e(o.id) +
'">' + '">' +
__e(o.label) + __e(o.label) +
...@@ -102210,7 +102212,7 @@ __p += '\n '; ...@@ -102210,7 +102212,7 @@ __p += '\n ';
if (o.required) { ; if (o.required) { ;
__p += ' required '; __p += ' required ';
} ; } ;
__p += ' >\n</div>\n'; __p += ' />\n</div>\n';
return __p return __p
}; };
...@@ -102404,7 +102406,7 @@ __p += '<!-- src/templates/image.html -->\n<a href="' + ...@@ -102404,7 +102406,7 @@ __p += '<!-- src/templates/image.html -->\n<a href="' +
__e(o.url) + __e(o.url) +
'" target="_blank" rel="noopener"><img class="chat-image img-thumbnail" src="' + '" target="_blank" rel="noopener"><img class="chat-image img-thumbnail" src="' +
__e(o.url) + __e(o.url) +
'"></a>\n'; '"/></a>\n';
return __p return __p
}; };
...@@ -102473,7 +102475,7 @@ module.exports = function(o) { ...@@ -102473,7 +102475,7 @@ module.exports = function(o) {
var __t, __p = '', __e = _.escape; var __t, __p = '', __e = _.escape;
__p += '<!-- src/templates/inverse_brand_heading.html -->\n<div class="row">\n <div class="container brand-heading-container">\n <h1 class="brand-heading"><i class="icon-conversejs"></i>Converse</h1>\n <p class="brand-subtitle">' + __p += '<!-- src/templates/inverse_brand_heading.html -->\n<div class="row">\n <div class="container brand-heading-container">\n <h1 class="brand-heading"><i class="icon-conversejs"></i>Converse</h1>\n <p class="brand-subtitle">' +
__e(o.version_name) + __e(o.version_name) +
'</p>\n <p class="brand-subtitle"><a target="_blank" rel="nofollow" href="https://conversejs.org">Open Source</a> XMPP chat client brought to you by <a target="_blank" rel="nofollow" href="https://opkode.com">Opkode</a> </p>\n <p class="brand-subtitle"><a target="_blank" rel="nofollow" href="https://hosted.weblate.org/projects/conversejs/#languages">Translate</a> it into your own language</p>\n <div>\n</div>\n'; '</p>\n <p class="brand-subtitle"><a target="_blank" rel="nofollow" href="https://conversejs.org">Open Source</a> XMPP chat client brought to you by <a target="_blank" rel="nofollow" href="https://opkode.com">Opkode</a> </p>\n <p class="brand-subtitle"><a target="_blank" rel="nofollow" href="https://hosted.weblate.org/projects/conversejs/#languages">Translate</a> it into your own language</p>\n </div>\n</div>\n';
return __p return __p
}; };
...@@ -102491,15 +102493,15 @@ module.exports = function(o) { ...@@ -102491,15 +102493,15 @@ module.exports = function(o) {
var __t, __p = '', __e = _.escape; var __t, __p = '', __e = _.escape;
__p += '<!-- src/templates/list_chatrooms_modal.html -->\n<div class="modal fade" id="list-chatrooms-modal" tabindex="-1" role="dialog" aria-labelledby="list-chatrooms-modal-label" aria-hidden="true">\n <div class="modal-dialog" role="document">\n <div class="modal-content">\n <div class="modal-header">\n <h5 class="modal-title"\n id="list-chatrooms-modal-label">' + __p += '<!-- src/templates/list_chatrooms_modal.html -->\n<div class="modal fade" id="list-chatrooms-modal" tabindex="-1" role="dialog" aria-labelledby="list-chatrooms-modal-label" aria-hidden="true">\n <div class="modal-dialog" role="document">\n <div class="modal-content">\n <div class="modal-header">\n <h5 class="modal-title"\n id="list-chatrooms-modal-label">' +
__e(o.heading_list_chatrooms) + __e(o.heading_list_chatrooms) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close">\n <span aria-hidden="true">&times;</span>\n </button>\n </div>\n <div class="modal-body">\n <form class="converse-form list-chatrooms">\n <div class="form-group">\n <label for="chatroom">' + '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="Close">\n <span aria-hidden="true">×</span>\n </button>\n </div>\n <div class="modal-body">\n <form class="converse-form list-chatrooms">\n <div class="form-group">\n <label for="chatroom">' +
__e(o.label_server_address) + __e(o.label_server_address) +
':</label>\n <input type="text" value="' + ':</label>\n <input type="text" value="' +
__e(o.muc_domain) + __e(o.muc_domain) +
'" required="required" name="server" class="form-control" placeholder="' + '" required="required" name="server" class="form-control" placeholder="' +
__e(o.server_placeholder) + __e(o.server_placeholder) +
'">\n </div>\n <input type="submit" class="btn btn-primary" name="join" value="' + '"/>\n </div>\n <input type="submit" class="btn btn-primary" name="join" value="' +
__e(o.label_query) + __e(o.label_query) +
'">\n </form>\n <ul class="available-chatrooms list-group"></ul>\n </div>\n </div>\n </div>\n</div>\n'; '"/>\n </form>\n <ul class="available-chatrooms list-group"></ul>\n </div>\n </div>\n </div>\n</div>\n';
return __p return __p
}; };
...@@ -102540,13 +102542,13 @@ __p += '\n <div class="form-group">\n <label f ...@@ -102540,13 +102542,13 @@ __p += '\n <div class="form-group">\n <label f
__e(o.__("XMPP Username:")) + __e(o.__("XMPP Username:")) +
'</label>\n <input id="converse-login-jid" class="form-control" autofocus required="required" type="text" name="jid" placeholder="' + '</label>\n <input id="converse-login-jid" class="form-control" autofocus required="required" type="text" name="jid" placeholder="' +
__e(o.placeholder_username) + __e(o.placeholder_username) +
'">\n </div>\n '; '"/>\n </div>\n ';
if (o.authentication !== o.EXTERNAL) { ; if (o.authentication !== o.EXTERNAL) { ;
__p += '\n <div class="form-group">\n <label for="converse-login-password">' + __p += '\n <div class="form-group">\n <label for="converse-login-password">' +
__e(o.__("Password:")) + __e(o.__("Password:")) +
'</label>\n <input id="converse-login-password" class="form-control" required="required" type="password" name="password" placeholder="' + '</label>\n <input id="converse-login-password" class="form-control" required="required" type="password" name="password" placeholder="' +
__e(o.__('password')) + __e(o.__('password')) +
'">\n </div>\n '; '"/>\n </div>\n ';
} ; } ;
__p += '\n '; __p += '\n ';
if (o.show_trust_checkbox) { ; if (o.show_trust_checkbox) { ;
...@@ -102554,7 +102556,7 @@ __p += '\n <div class="form-group form-check login-trusted">\ ...@@ -102554,7 +102556,7 @@ __p += '\n <div class="form-group form-check login-trusted">\
if (o._converse.config.get('trusted')) { ; if (o._converse.config.get('trusted')) { ;
__p += ' checked="checked" '; __p += ' checked="checked" ';
} ; } ;
__p += '>\n <label for="converse-login-trusted" class="form-check-label login-trusted__desc">' + __p += '/>\n <label for="converse-login-trusted" class="form-check-label login-trusted__desc">' +
__e(o.__('This is a trusted device')) + __e(o.__('This is a trusted device')) +
'</label>\n <i class="fa fa-info-circle" data-toggle="popover"\n data-title="Trusted device?"\n data-content="' + '</label>\n <i class="fa fa-info-circle" data-toggle="popover"\n data-title="Trusted device?"\n data-content="' +
__e(o.__('To improve performance, we cache your data in this browser. Uncheck this box if this is a public computer or if you want your data to be deleted when you log out. It\'s important that you explicitly log out, otherwise not all cached data might be deleted. Please note, when using an untrusted device, OMEMO encryption is NOT available.')) + __e(o.__('To improve performance, we cache your data in this browser. Uncheck this box if this is a public computer or if you want your data to be deleted when you log out. It\'s important that you explicitly log out, otherwise not all cached data might be deleted. Please note, when using an untrusted device, OMEMO encryption is NOT available.')) +
...@@ -102562,7 +102564,7 @@ __e(o.__('To improve performance, we cache your data in this browser. Uncheck th ...@@ -102562,7 +102564,7 @@ __e(o.__('To improve performance, we cache your data in this browser. Uncheck th
} ; } ;
__p += '\n\n <fieldset class="buttons">\n <input class="btn btn-primary" type="submit" value="' + __p += '\n\n <fieldset class="buttons">\n <input class="btn btn-primary" type="submit" value="' +
__e(o.__('Log in')) + __e(o.__('Log in')) +
'">\n </fieldset>\n '; '"/>\n </fieldset>\n ';
} ; } ;
__p += '\n '; __p += '\n ';
if (o.authentication == o.ANONYMOUS) { ; if (o.authentication == o.ANONYMOUS) { ;
...@@ -102655,7 +102657,7 @@ __p += '<div class="chat-msg__body">'; ...@@ -102655,7 +102657,7 @@ __p += '<div class="chat-msg__body">';
} ; } ;
__p += '\n '; __p += '\n ';
if (o.received) { ; if (o.received) { ;
__p += ' <span class="fa fa-check chat-msg__receipt">&nbsp;</span> '; __p += ' <span class="fa fa-check chat-msg__receipt"></span> ';
} ; } ;
__p += '\n '; __p += '\n ';
if (o.edited) { ; if (o.edited) { ;
...@@ -102687,7 +102689,7 @@ __p += '\n '; ...@@ -102687,7 +102689,7 @@ __p += '\n ';
if (o.type !== 'headline' && !o.is_me_message && o.sender === 'me') { ; if (o.type !== 'headline' && !o.is_me_message && o.sender === 'me') { ;
__p += '\n <div class="chat-msg__actions">\n <button class="chat-msg__action chat-msg__action-edit fa fa-pencil-alt" title="' + __p += '\n <div class="chat-msg__actions">\n <button class="chat-msg__action chat-msg__action-edit fa fa-pencil-alt" title="' +
__e(o.__('Edit this message')) + __e(o.__('Edit this message')) +
'">&nbsp;</button>\n </div>\n '; '"></button>\n </div>\n ';
} ; } ;
__p += '\n\n '; __p += '\n\n ';
if (!o.is_me_message) { ; if (!o.is_me_message) { ;
...@@ -102714,13 +102716,13 @@ __p += '<!-- src/templates/message_versions_modal.html -->\n<div class="modal fa ...@@ -102714,13 +102716,13 @@ __p += '<!-- src/templates/message_versions_modal.html -->\n<div class="modal fa
__e(o.__('Message versions')) + __e(o.__('Message versions')) +
'</h4>\n <button type="button" class="close" data-dismiss="modal" aria-label="' + '</h4>\n <button type="button" class="close" data-dismiss="modal" aria-label="' +
__e(o.label_close) + __e(o.label_close) +
'"><span aria-hidden="true">&times;</span></button>\n </div>\n <div class="modal-body">\n <h4>Older versions</h4>\n '; '"><span aria-hidden="true">×</span></button>\n </div>\n <div class="modal-body">\n <h4>Older versions</h4>\n ';
o.older_versions.forEach(function (text) { ; o.older_versions.forEach(function (text) { ;
__p += ' <p class="older-msg">' + __p += ' <p class="older-msg">' +
__e(text) + __e(text) +
'</p> '; '</p> ';
}); ; }); ;
__p += '\n <hr>\n <h4>Current version</h4>\n <p>' + __p += '\n <hr/>\n <h4>Current version</h4>\n <p>' +
__e(o.message) + __e(o.message) +
'</p>\n </div>\n <div class="modal-footer">\n <button type="button" class="btn btn-secondary" data-dismiss="modal">' + '</p>\n </div>\n <div class="modal-footer">\n <button type="button" class="btn btn-secondary" data-dismiss="modal">' +
__e(o.__('Close')) + __e(o.__('Close')) +
...@@ -102742,7 +102744,7 @@ module.exports = function(o) { ...@@ -102742,7 +102744,7 @@ module.exports = function(o) {
var __t, __p = '', __e = _.escape; var __t, __p = '', __e = _.escape;
__p += '<!-- src/templates/new_day.html -->\n<div class="message date-separator" data-isodate="' + __p += '<!-- src/templates/new_day.html -->\n<div class="message date-separator" data-isodate="' +
__e(o.isodate) + __e(o.isodate) +
'">\n <hr class="separator">\n <time class="separator-text" datetime="' + '">\n <hr class="separator"/>\n <time class="separator-text" datetime="' +
__e(o.isodate) + __e(o.isodate) +
'"><span>' + '"><span>' +
__e(o.datestring) + __e(o.datestring) +
...@@ -102891,7 +102893,7 @@ __p += '<!-- src/templates/profile_modal.html -->\n<div class="modal fade" id="u ...@@ -102891,7 +102893,7 @@ __p += '<!-- src/templates/profile_modal.html -->\n<div class="modal fade" id="u
__e(o.heading_profile) + __e(o.heading_profile) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' + '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' +
__e(o.label_close) + __e(o.label_close) +
'"><span aria-hidden="true">&times;</span></button>\n </div>\n <div class="modal-body">\n '; '"><span aria-hidden="true">×</span></button>\n </div>\n <div class="modal-body">\n ';
if (o._converse.pluggable.plugins['converse-omemo'].enabled(o._converse)) { ; if (o._converse.pluggable.plugins['converse-omemo'].enabled(o._converse)) { ;
__p += '\n <ul class="nav nav-pills justify-content-center">\n <li role="presentation" class="nav-item">\n <a class="nav-link active" id="profile-tab" href="#profile-tabpanel" aria-controls="profile-tabpanel" role="tab" data-toggle="tab">Profile</a>\n </li>\n <li role="presentation" class="nav-item">\n <a class="nav-link" id="omemo-tab" href="#omemo-tabpanel" aria-controls="omemo-tabpanel" role="tab" data-toggle="tab">OMEMO</a>\n </li>\n </ul>\n '; __p += '\n <ul class="nav nav-pills justify-content-center">\n <li role="presentation" class="nav-item">\n <a class="nav-link active" id="profile-tab" href="#profile-tabpanel" aria-controls="profile-tabpanel" role="tab" data-toggle="tab">Profile</a>\n </li>\n <li role="presentation" class="nav-item">\n <a class="nav-link" id="omemo-tab" href="#omemo-tabpanel" aria-controls="omemo-tabpanel" role="tab" data-toggle="tab">OMEMO</a>\n </li>\n </ul>\n ';
} ; } ;
...@@ -102909,7 +102911,7 @@ __p += '\n '; ...@@ -102909,7 +102911,7 @@ __p += '\n ';
if (!o.image) { ; if (!o.image) { ;
__p += '\n <canvas class="avatar" height="100px" width="100px"></canvas>\n '; __p += '\n <canvas class="avatar" height="100px" width="100px"></canvas>\n ';
} ; } ;
__p += '\n </a>\n <input class="hidden" name="image" type="file">\n </div>\n <div class="col">\n <div class="form-group">\n <label class="col-form-label">' + __p += '\n </a>\n <input class="hidden" name="image" type="file"/>\n </div>\n <div class="col">\n <div class="form-group">\n <label class="col-form-label">' +
__e(o.label_jid) + __e(o.label_jid) +
':</label>\n <div>' + ':</label>\n <div>' +
__e(o.jid) + __e(o.jid) +
...@@ -102917,23 +102919,23 @@ __e(o.jid) + ...@@ -102917,23 +102919,23 @@ __e(o.jid) +
__e(o.label_fullname) + __e(o.label_fullname) +
':</label>\n <input id="vcard-fullname" type="text" class="form-control" name="fn" value="' + ':</label>\n <input id="vcard-fullname" type="text" class="form-control" name="fn" value="' +
__e(o.fullname) + __e(o.fullname) +
'">\n </div>\n <div class="form-group">\n <label for="vcard-nickname" class="col-form-label">' + '"/>\n </div>\n <div class="form-group">\n <label for="vcard-nickname" class="col-form-label">' +
__e(o.label_nickname) + __e(o.label_nickname) +
':</label>\n <input id="vcard-nickname" type="text" class="form-control" name="nickname" value="' + ':</label>\n <input id="vcard-nickname" type="text" class="form-control" name="nickname" value="' +
__e(o.nickname) + __e(o.nickname) +
'">\n </div>\n <div class="form-group">\n <label for="vcard-url" class="col-form-label">' + '"/>\n </div>\n <div class="form-group">\n <label for="vcard-url" class="col-form-label">' +
__e(o.label_url) + __e(o.label_url) +
':</label>\n <input id="vcard-url" type="url" class="form-control" name="url" value="' + ':</label>\n <input id="vcard-url" type="url" class="form-control" name="url" value="' +
__e(o.url) + __e(o.url) +
'">\n </div>\n <div class="form-group">\n <label for="vcard-email" class="col-form-label">' + '"/>\n </div>\n <div class="form-group">\n <label for="vcard-email" class="col-form-label">' +
__e(o.label_email) + __e(o.label_email) +
':</label>\n <input id="vcard-email" type="email" class="form-control" name="email" value="' + ':</label>\n <input id="vcard-email" type="email" class="form-control" name="email" value="' +
__e(o.email) + __e(o.email) +
'">\n </div>\n <div class="form-group">\n <label for="vcard-role" class="col-form-label">' + '"/>\n </div>\n <div class="form-group">\n <label for="vcard-role" class="col-form-label">' +
__e(o.label_role) + __e(o.label_role) +
':</label>\n <input id="vcard-role" type="text" class="form-control" name="role" value="' + ':</label>\n <input id="vcard-role" type="text" class="form-control" name="role" value="' +
__e(o.role) + __e(o.role) +
'" aria-describedby="vcard-role-help">\n <small id="vcard-role-help" class="form-text text-muted">' + '" aria-describedby="vcard-role-help"/>\n <small id="vcard-role-help" class="form-text text-muted">' +
__e(o.label_role_help) + __e(o.label_role_help) +
'</small>\n </div>\n <hr/>\n <div class="form-group">\n <button type="submit" class="save-form btn btn-primary">' + '</small>\n </div>\n <hr/>\n <div class="form-group">\n <button type="submit" class="save-form btn btn-primary">' +
__e(o.__('Save and close')) + __e(o.__('Save and close')) +
...@@ -102957,7 +102959,7 @@ __p += '\n <ul class="list-group fingerprints ...@@ -102957,7 +102959,7 @@ __p += '\n <ul class="list-group fingerprints
__e(o.__('Select all')) + __e(o.__('Select all')) +
'"\n aria-label="' + '"\n aria-label="' +
__e(o.__('Checkbox to select fingerprints of all other OMEMO devices')) + __e(o.__('Checkbox to select fingerprints of all other OMEMO devices')) +
'">\n ' + '"/>\n ' +
__e(o.__('Other OMEMO-enabled devices')) + __e(o.__('Other OMEMO-enabled devices')) +
'\n </label>\n </li>\n '; '\n </label>\n </li>\n ';
o._.forEach(o.view.other_devices, function (device) { ; o._.forEach(o.view.other_devices, function (device) { ;
...@@ -102967,7 +102969,7 @@ __p += '\n <li class="fingerprint-rem ...@@ -102967,7 +102969,7 @@ __p += '\n <li class="fingerprint-rem
__e(device.get('id')) + __e(device.get('id')) +
'"\n aria-label="' + '"\n aria-label="' +
__e(o.__('Checkbox for selecting the following fingerprint')) + __e(o.__('Checkbox for selecting the following fingerprint')) +
'">\n <span class="fingerprint">' + '"/>\n <span class="fingerprint">' +
__e(o.utils.formatFingerprint(device.get('bundle').fingerprint)) + __e(o.utils.formatFingerprint(device.get('bundle').fingerprint)) +
'</span>\n </label>\n </li>\n '; '</span>\n </label>\n </li>\n ';
} else {; } else {;
...@@ -102975,7 +102977,7 @@ __p += '\n <li class="fingerprint-rem ...@@ -102975,7 +102977,7 @@ __p += '\n <li class="fingerprint-rem
__e(device.get('id')) + __e(device.get('id')) +
'"\n aria-label="' + '"\n aria-label="' +
__e(o.__('Checkbox for selecting the following fingerprint')) + __e(o.__('Checkbox for selecting the following fingerprint')) +
'">\n <span>' + '"/>\n <span>' +
__e(o.__('Device without a fingerprint')) + __e(o.__('Device without a fingerprint')) +
'</span>\n </label>\n </li>\n '; '</span>\n </label>\n </li>\n ';
} ; } ;
...@@ -103093,12 +103095,10 @@ __e(o.__("Please enter the XMPP provider to register with:")) + ...@@ -103093,12 +103095,10 @@ __e(o.__("Please enter the XMPP provider to register with:")) +
__p += '\n ' + __p += '\n ' +
__e(o.default_domain) + __e(o.default_domain) +
'\n </div>\n '; '\n </div>\n ';
} ; } else { ;
__p += '\n ';
if (!o.default_domain) { ;
__p += '\n <input class="form-control" autofocus="autofocus" required="required" type="text" name="domain" placeholder="' + __p += '\n <input class="form-control" autofocus="autofocus" required="required" type="text" name="domain" placeholder="' +
__e(o.domain_placeholder) + __e(o.domain_placeholder) +
'">\n <p class="form-text text-muted">' + '"/>\n <p class="form-text text-muted">' +
__e(o.help_providers) + __e(o.help_providers) +
' <a href="' + ' <a href="' +
__e(o.href_providers) + __e(o.href_providers) +
...@@ -103106,13 +103106,13 @@ __e(o.href_providers) + ...@@ -103106,13 +103106,13 @@ __e(o.href_providers) +
__e(o.help_providers_link) + __e(o.help_providers_link) +
'</a>.</p>\n </div>\n <fieldset class="buttons">\n <input class="btn btn-primary" type="submit" value="' + '</a>.</p>\n </div>\n <fieldset class="buttons">\n <input class="btn btn-primary" type="submit" value="' +
__e(o.label_register) + __e(o.label_register) +
'">\n <div class="switch-form">\n <p>' + '"/>\n <div class="switch-form">\n <p>' +
__e( o.__("Already have a chat account?") ) + __e( o.__("Already have a chat account?") ) +
'</p>\n <p><a class="login-here toggle-register-login" href="#converse/login">' + '</p>\n <p><a class="login-here toggle-register-login" href="#converse/login">' +
__e(o.__("Log in here")) + __e(o.__("Log in here")) +
'</a></p>\n </div>\n </fieldset>\n '; '</a></p>\n </div>\n </fieldset>\n ';
} ; } ;
__p += '\n </div>\n </form>\n</div>\n'; __p += '\n <!--</div>-->\n </form>\n</div>\n';
return __p return __p
}; };
...@@ -103336,7 +103336,7 @@ __e(o.name) + ...@@ -103336,7 +103336,7 @@ __e(o.name) +
__e(o.jid) + __e(o.jid) +
'"\n title="' + '"\n title="' +
__e(o.info_title) + __e(o.info_title) +
'" href="#">&nbsp;</a>\n </div>\n</li>\n'; '" href="#"></a>\n </div>\n</li>\n';
return __p return __p
}; };
...@@ -103446,19 +103446,19 @@ __p += ' ' + ...@@ -103446,19 +103446,19 @@ __p += ' ' +
__e(o.info_add_bookmark) + __e(o.info_add_bookmark) +
' '; ' ';
} ; } ;
__p += '"\n href="#">&nbsp;</a>\n'; __p += '"\n href="#"></a>\n';
} ; } ;
__p += '\n\n<a class="list-item-action room-info fa fa-info-circle" data-room-jid="' + __p += '\n\n<a class="list-item-action room-info fa fa-info-circle" data-room-jid="' +
__e(o.jid) + __e(o.jid) +
'"\n title="' + '"\n title="' +
__e(o.info_title) + __e(o.info_title) +
'" href="#">&nbsp;</a>\n\n<a class="list-item-action fa fa-times close-room"\n data-room-jid="' + '" href="#"></a>\n\n<a class="list-item-action fa fa-times close-room"\n data-room-jid="' +
__e(o.jid) + __e(o.jid) +
'"\n data-room-name="' + '"\n data-room-name="' +
__e(o.name || o.jid) + __e(o.name || o.jid) +
'"\n title="' + '"\n title="' +
__e(o.info_leave_room) + __e(o.info_leave_room) +
'" href="#">&nbsp;</a>\n\n</div>\n'; '" href="#"></a>\n\n</div>\n';
return __p return __p
}; };
...@@ -103476,7 +103476,7 @@ module.exports = function(o) { ...@@ -103476,7 +103476,7 @@ module.exports = function(o) {
var __t, __p = '', __e = _.escape; var __t, __p = '', __e = _.escape;
__p += '<!-- src/templates/rooms_results.html -->\n<li class="list-group-item active">' + __p += '<!-- src/templates/rooms_results.html -->\n<li class="list-group-item active">' +
__e( o.feedback_text ) + __e( o.feedback_text ) +
'</dt>\n'; '</li>\n';
return __p return __p
}; };
...@@ -103536,7 +103536,7 @@ __p += ' hidden '; ...@@ -103536,7 +103536,7 @@ __p += ' hidden ';
} ; } ;
__p += '"\n placeholder="' + __p += '"\n placeholder="' +
__e(o.placeholder) + __e(o.placeholder) +
'">\n <span class="clear-input fa fa-times '; '"/>\n <span class="clear-input fa fa-times ';
if (!o.filter_text || o.filter_type === 'state') { ; if (!o.filter_text || o.filter_type === 'state') { ;
__p += ' hidden '; __p += ' hidden ';
} ; } ;
...@@ -103739,7 +103739,7 @@ __p += ' fa-eye '; ...@@ -103739,7 +103739,7 @@ __p += ' fa-eye ';
} ; } ;
__p += '"\n title="' + __p += '"\n title="' +
((__t = ( o.label_toggle_spoiler )) == null ? '' : __t) + ((__t = ( o.label_toggle_spoiler )) == null ? '' : __t) +
'"></a>\n</li>\n'; '">\n</li>\n';
return __p return __p
}; };
...@@ -103871,7 +103871,7 @@ module.exports = function(o) { ...@@ -103871,7 +103871,7 @@ module.exports = function(o) {
var __t, __p = '', __e = _.escape; var __t, __p = '', __e = _.escape;
__p += '<!-- src/templates/toolbar_fileupload.html -->\n<li class="upload-file">\n <a class="fa fa-paperclip" title="' + __p += '<!-- src/templates/toolbar_fileupload.html -->\n<li class="upload-file">\n <a class="fa fa-paperclip" title="' +
__e(o.tooltip_upload_file) + __e(o.tooltip_upload_file) +
'"></a>\n <input type="file" class="fileupload" multiple style="display:none"/>\n</li> \n'; '"></a>\n <input type="file" class="fileupload" multiple="" style="display:none"/>\n</li> \n';
return __p return __p
}; };
...@@ -103944,7 +103944,7 @@ __p += '<!-- src/templates/user_details_modal.html -->\n<div class="modal fade" ...@@ -103944,7 +103944,7 @@ __p += '<!-- src/templates/user_details_modal.html -->\n<div class="modal fade"
__e(o.display_name) + __e(o.display_name) +
'</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' + '</h5>\n <button type="button" class="close" data-dismiss="modal" aria-label="' +
__e(o.__('Close')) + __e(o.__('Close')) +
'"><span aria-hidden="true">&times;</span></button>\n </div>\n <div class="modal-body">\n '; '"><span aria-hidden="true">×</span></button>\n </div>\n <div class="modal-body">\n ';
if (o.image) { ; if (o.image) { ;
__p += '\n <img alt="' + __p += '\n <img alt="' +
__e(o.__('The User\'s Profile Image')) + __e(o.__('The User\'s Profile Image')) +
...@@ -103958,13 +103958,13 @@ __p += '\n '; ...@@ -103958,13 +103958,13 @@ __p += '\n ';
if (o.fullname) { ; if (o.fullname) { ;
__p += '\n <p><label>' + __p += '\n <p><label>' +
__e(o.__('Full Name:')) + __e(o.__('Full Name:')) +
'</label>&nbsp;' + '</label> ' +
__e(o.fullname) + __e(o.fullname) +
'</p>\n '; '</p>\n ';
} ; } ;
__p += '\n <p><label>' + __p += '\n <p><label>' +
__e(o.__('XMPP Address:')) + __e(o.__('XMPP Address:')) +
'</label>&nbsp;<a href="xmpp:' + '</label> <a href="xmpp:' +
__e(o.jid) + __e(o.jid) +
'">' + '">' +
__e(o.jid) + __e(o.jid) +
...@@ -103972,7 +103972,7 @@ __e(o.jid) + ...@@ -103972,7 +103972,7 @@ __e(o.jid) +
if (o.nickname) { ; if (o.nickname) { ;
__p += '\n <p><label>' + __p += '\n <p><label>' +
__e(o.__('Nickname:')) + __e(o.__('Nickname:')) +
'</label>&nbsp;' + '</label> ' +
__e(o.nickname) + __e(o.nickname) +
'</p>\n '; '</p>\n ';
} ; } ;
...@@ -103980,7 +103980,7 @@ __p += '\n '; ...@@ -103980,7 +103980,7 @@ __p += '\n ';
if (o.url) { ; if (o.url) { ;
__p += '\n <p><label>' + __p += '\n <p><label>' +
__e(o.__('URL:')) + __e(o.__('URL:')) +
'</label>&nbsp;<a target="_blank" rel="noopener" href="' + '</label> <a target="_blank" rel="noopener" href="' +
__e(o.url) + __e(o.url) +
'">' + '">' +
__e(o.url) + __e(o.url) +
...@@ -103990,7 +103990,7 @@ __p += '\n '; ...@@ -103990,7 +103990,7 @@ __p += '\n ';
if (o.email) { ; if (o.email) { ;
__p += '\n <p><label>' + __p += '\n <p><label>' +
__e(o.__('Email:')) + __e(o.__('Email:')) +
'</label>&nbsp;<a href="mailto:' + '</label> <a href="mailto:' +
__e(o.email) + __e(o.email) +
'">' + '">' +
__e(o.email) + __e(o.email) +
...@@ -104000,13 +104000,13 @@ __p += '\n '; ...@@ -104000,13 +104000,13 @@ __p += '\n ';
if (o.role) { ; if (o.role) { ;
__p += '\n <p><label>' + __p += '\n <p><label>' +
__e(o.__('Role:')) + __e(o.__('Role:')) +
'</label>&nbsp;' + '</label> ' +
__e(o.role) + __e(o.role) +
'</p>\n '; '</p>\n ';
} ; } ;
__p += '\n\n '; __p += '\n\n ';
if (o._converse.pluggable.plugins['converse-omemo'].enabled(o._converse)) { ; if (o._converse.pluggable.plugins['converse-omemo'].enabled(o._converse)) { ;
__p += '\n <hr>\n <ul class="list-group fingerprints">\n <li class="list-group-item active">' + __p += '\n <hr/>\n <ul class="list-group fingerprints">\n <li class="list-group-item active">' +
__e(o.__('OMEMO Fingerprints')) + __e(o.__('OMEMO Fingerprints')) +
'</li>\n '; '</li>\n ';
if (!o.view.devicelist.devices) { ; if (!o.view.devicelist.devices) { ;
...@@ -104030,7 +104030,7 @@ __e(device.get('id')) + ...@@ -104030,7 +104030,7 @@ __e(device.get('id')) +
if (device.get('trusted') !== -1) { ; if (device.get('trusted') !== -1) { ;
__p += ' checked="checked" '; __p += ' checked="checked" ';
} ; } ;
__p += '>' + __p += '/>' +
__e(o.__('Trusted')) + __e(o.__('Trusted')) +
'\n </label>\n <label class="btn btn--small '; '\n </label>\n <label class="btn btn--small ';
if (device.get('trusted') === -1) { ; if (device.get('trusted') === -1) { ;
...@@ -104044,7 +104044,7 @@ __e(device.get('id')) + ...@@ -104044,7 +104044,7 @@ __e(device.get('id')) +
if (device.get('trusted') === -1) { ; if (device.get('trusted') === -1) { ;
__p += ' checked="checked" '; __p += ' checked="checked" ';
} ; } ;
__p += '>' + __p += '/>' +
__e(o.__('Untrusted')) + __e(o.__('Untrusted')) +
'\n </label>\n </div>\n <span class="fingerprint">' + '\n </label>\n </div>\n <span class="fingerprint">' +
__e(o.utils.formatFingerprint(device.get('bundle').fingerprint)) + __e(o.utils.formatFingerprint(device.get('bundle').fingerprint)) +
...@@ -289,9 +289,11 @@ converse.plugins.add('converse-muc', { ...@@ -289,9 +289,11 @@ converse.plugins.add('converse-muc', {
*/ */
this.occupants.browserStorage._clear(); this.occupants.browserStorage._clear();
this.occupants.reset(); this.occupants.reset();
const disco_entity = _converse.disco_entities.get(this.get('jid')); if (_converse.disco_entities) {
if (disco_entity) { const disco_entity = _converse.disco_entities.get(this.get('jid'));
disco_entity.destroy(); if (disco_entity) {
disco_entity.destroy();
}
} }
if (_converse.connection.connected) { if (_converse.connection.connected) {
this.sendUnavailablePresence(exit_msg); this.sendUnavailablePresence(exit_msg);
......
...@@ -5,20 +5,20 @@ ...@@ -5,20 +5,20 @@
<h5 class="modal-title" <h5 class="modal-title"
id="add-chatroom-modal-label">{{{o.heading_new_chatroom}}}</h5> id="add-chatroom-modal-label">{{{o.heading_new_chatroom}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"> <button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span> <span aria-hidden="true">×</span>
</button> </button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form class="converse-form add-chatroom"> <form class="converse-form add-chatroom">
<div class="form-group"> <div class="form-group">
<label for="chatroom">{{{o.label_room_address}}}:</label> <label for="chatroom">{{{o.label_room_address}}}:</label>
<input type="text" required="required" name="chatroom" class="form-control" placeholder="{{{o.chatroom_placeholder}}}"> <input type="text" required="required" name="chatroom" class="form-control" placeholder="{{{o.chatroom_placeholder}}}"/>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="nickname">{{{o.label_nickname}}}:</label> <label for="nickname">{{{o.label_nickname}}}:</label>
<input type="text" name="nickname" value="{{{o.nick}}}" class="form-control"> <input type="text" name="nickname" value="{{{o.nick}}}" class="form-control"/>
</div> </div>
<input type="submit" class="btn btn-primary" name="join" value="{{{o.label_join}}}"> <input type="submit" class="btn btn-primary" name="join" value="{{{o.label_join}}}"/>
</form> </form>
</div> </div>
</div> </div>
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title" id="addContactModalLabel">{{{o.heading_new_contact}}}</h5> <h5 class="modal-title" id="addContactModalLabel">{{{o.heading_new_contact}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button> <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
</div> </div>
<form class="converse-form add-xmpp-contact"> <form class="converse-form add-xmpp-contact">
<div class="modal-body"> <div class="modal-body">
......
...@@ -4,13 +4,13 @@ ...@@ -4,13 +4,13 @@
<div class="modal-header {{{o.type}}}"> <div class="modal-header {{{o.type}}}">
<h5 class="modal-title">{{{o.title}}}</h5> <h5 class="modal-title">{{{o.title}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"> <button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span> <span aria-hidden="true">×</span>
</button> </button>
</div> </div>
<div class="modal-body">{[o.messages.forEach(function (message) { ]} <div class="modal-body">{[o.messages.forEach(function (message) { ]}
<p>{{{message}}}</p> <p>{{{message}}}</p>
{[ }) ]} {[ }) ]}
</div> </div>
</div> </div>
</div> </div>
</div> </div>
...@@ -2,5 +2,5 @@ ...@@ -2,5 +2,5 @@
<a class="list-item-link open-room w-100" data-room-jid="{{{o.jid}}}" title="{{{o.open_title}}}" href="#">{{{o.name}}}</a> <a class="list-item-link open-room w-100" data-room-jid="{{{o.jid}}}" title="{{{o.open_title}}}" href="#">{{{o.name}}}</a>
<a class="list-item-action remove-bookmark fa fa-bookmark align-self-center {[ if (o.bookmarked) { ]} button-on {[ } ]}" <a class="list-item-action remove-bookmark fa fa-bookmark align-self-center {[ if (o.bookmarked) { ]} button-on {[ } ]}"
data-room-jid="{{{o.jid}}}" data-bookmark-name="{{{o.name}}}" data-room-jid="{{{o.jid}}}" data-bookmark-name="{{{o.name}}}"
title="{{{o.info_remove_bookmark}}}" href="#">&nbsp;</a> title="{{{o.info_remove_bookmark}}}" href="#"></a>
</div> </div>
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title" id="changeStatusModalLabel">{{{o.modal_title}}}</h5> <h5 class="modal-title" id="changeStatusModalLabel">{{{o.modal_title}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"> <button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}">
<span aria-hidden="true">&times;</span> <span aria-hidden="true">×</span>
</button> </button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
...@@ -13,33 +13,33 @@ ...@@ -13,33 +13,33 @@
<div class="form-group"> <div class="form-group">
<div class="custom-control custom-radio"> <div class="custom-control custom-radio">
<input {[ if (o.status === 'online') { ]} checked="checked" {[ } ]} <input {[ if (o.status === 'online') { ]} checked="checked" {[ } ]}
type="radio" id="radio-online" value="online" name="chat_status" class="custom-control-input"> type="radio" id="radio-online" value="online" name="chat_status" class="custom-control-input"/>
<label class="custom-control-label" for="radio-online"> <label class="custom-control-label" for="radio-online">
<span class="fa fa-circle chat-status chat-status--online"></span>&nbsp;{{{o.label_online}}}</label> <span class="fa fa-circle chat-status chat-status--online"></span>{{{o.label_online}}}</label>
</div> </div>
<div class="custom-control custom-radio"> <div class="custom-control custom-radio">
<input {[ if (o.status === 'busy') { ]} checked="checked" {[ } ]} <input {[ if (o.status === 'busy') { ]} checked="checked" {[ } ]}
type="radio" id="radio-busy" value="dnd" name="chat_status" class="custom-control-input"> type="radio" id="radio-busy" value="dnd" name="chat_status" class="custom-control-input"/>
<label class="custom-control-label" for="radio-busy"> <label class="custom-control-label" for="radio-busy">
<span class="fa fa-minus-circle chat-status chat-status--busy"></span>&nbsp;{{{o.label_busy}}}</label> <span class="fa fa-minus-circle chat-status chat-status--busy"></span>{{{o.label_busy}}}</label>
</div> </div>
<div class="custom-control custom-radio"> <div class="custom-control custom-radio">
<input {[ if (o.status === 'away') { ]} checked="checked" {[ } ]} <input {[ if (o.status === 'away') { ]} checked="checked" {[ } ]}
type="radio" id="radio-away" value="away" name="chat_status" class="custom-control-input"> type="radio" id="radio-away" value="away" name="chat_status" class="custom-control-input"/>
<label class="custom-control-label" for="radio-away"> <label class="custom-control-label" for="radio-away">
<span class="fa fa-circle chat-status chat-status--away"></span>&nbsp;{{{o.label_away}}}</label> <span class="fa fa-circle chat-status chat-status--away"></span>{{{o.label_away}}}</label>
</div> </div>
<div class="custom-control custom-radio"> <div class="custom-control custom-radio">
<input {[ if (o.status === 'xa') { ]} checked="checked" {[ } ]} <input {[ if (o.status === 'xa') { ]} checked="checked" {[ } ]}
type="radio" id="radio-xa" value="xa" name="chat_status" class="custom-control-input"> type="radio" id="radio-xa" value="xa" name="chat_status" class="custom-control-input"/>
<label class="custom-control-label" for="radio-xa"> <label class="custom-control-label" for="radio-xa">
<span class="far fa-circle chat-status chat-status--xa"></span>&nbsp;{{{o.label_xa}}}</label> <span class="far fa-circle chat-status chat-status--xa"></span>{{{o.label_xa}}}</label>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<div class="btn-group w-100"> <div class="btn-group w-100">
<input name="status_message" type="text" class="form-control" <input name="status_message" type="text" class="form-control"
value="{{{o.status_message}}}" placeholder="{{{o.placeholder_status_message}}}"> value="{{{o.status_message}}}" placeholder="{{{o.placeholder_status_message}}}"/>
<span class="clear-input fa fa-times {[ if (!o.status_message) { ]} hidden {[ } ]}"></span> <span class="clear-input fa fa-times {[ if (!o.status_message) { ]} hidden {[ } ]}"></span>
</div> </div>
</div> </div>
......
<div class="flyout box-flyout"> <div class="flyout box-flyout">
<div class="chat-body"> <div class="chat-body">
<div class="chat-content {[ if (o.show_send_button) { ]}chat-content-sendbutton{[ } ]}"></div> <div class="chat-content {[ if (o.show_send_button) { ]}chat-content-sendbutton{[ } ]}"></div>
<div class="message-form-container"/> <div class="message-form-container"></div>
</div> </div>
</div> </div>
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
</div> </div>
</div> </div>
<div class="chatbox-buttons row no-gutters"> <div class="chatbox-buttons row no-gutters">
<a class="chatbox-btn close-chatbox-button fa fa-times" title={{{o.info_close}}}></a> <a class="chatbox-btn close-chatbox-button fa fa-times" title="{{{o.info_close}}}"></a>
<a class="chatbox-btn show-user-details-modal fa fa-id-card" title="{{{o.info_details}}}"></a> <a class="chatbox-btn show-user-details-modal fa fa-id-card" title="{{{o.info_details}}}"></a>
</div> </div>
</div> </div>
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
class="{[ if (!o.composing_spoiler) { ]} hidden {[ } ]} spoiler-hint"/> class="{[ if (!o.composing_spoiler) { ]} hidden {[ } ]} spoiler-hint"/>
<div class="suggestion-box"> <div class="suggestion-box">
<ul class="suggestion-box__results suggestion-box__results--above" hidden></ul> <ul class="suggestion-box__results suggestion-box__results--above" hidden=""></ul>
<textarea <textarea
type="text" type="text"
class="chat-textarea suggestion-box__input class="chat-textarea suggestion-box__input
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title" id="room-details-modal-label">{{{o.display_name}}}</h5> <h5 class="modal-title" id="room-details-modal-label">{{{o.display_name}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"><span aria-hidden="true">&times;</span></button> <button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"><span aria-hidden="true">×</span></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<div class="room-info"> <div class="room-info">
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title" id="room-registration-modal-label">{{{o.display_name}}}</h5> <h5 class="modal-title" id="room-registration-modal-label">{{{o.display_name}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"><span aria-hidden="true">&times;</span></button> <button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"><span aria-hidden="true">×</span></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form class="converse-form"> <form class="converse-form">
......
...@@ -5,16 +5,15 @@ ...@@ -5,16 +5,15 @@
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title" id="changeStatusModalLabel">{{{o.modal_title}}}</h5> <h5 class="modal-title" id="changeStatusModalLabel">{{{o.modal_title}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"> <button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}">
<span aria-hidden="true">&times;</span> <span aria-hidden="true">×</span>
</button> </button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<div class="container brand-heading-container"> <div class="container brand-heading-container">
<h6 class="brand-heading"><i class="icon-conversejs"></i>Converse</h6> <h6 class="brand-heading"><i class="icon-conversejs"></i>Converse</h6>
<p class="brand-subtitle">{{{o.version_name}}}</p> <p class="brand-subtitle">{{{o.version_name}}}</p>
<p class="brand-subtitle">{{o.first_subtitle}}</a> </p> <p class="brand-subtitle">{{o.first_subtitle}}</p>
<p class="brand-subtitle">{{o.second_subtitle}}</p> <p class="brand-subtitle">{{o.second_subtitle}}</p>
<div>
</div> </div>
</div> </div>
</div> </div>
......
...@@ -4,6 +4,6 @@ ...@@ -4,6 +4,6 @@
</label> </label>
{[ } ]} {[ } ]}
<img src="data:{{{o.type}}};base64,{{{o.data}}}"> <img src="data:{{{o.type}}};base64,{{{o.data}}}">
<input name="{{{o.name}}}" type="text" {[ if (o.required) { ]} class="required" {[ } ]} > <input name="{{{o.name}}}" type="text" {[ if (o.required) { ]} class="required" {[ } ]} />
<div class="form-group"> <div class="form-group">
<input id="{{{o.id}}}" name="{{{o.name}}}" type="checkbox" {{{o.checked}}} {[ if (o.required) { ]} required {[ } ]} > <input id="{{{o.id}}}" name="{{{o.name}}}" type="checkbox" {{{o.checked}}} {[ if (o.required) { ]} required {[ } ]} />
<label class="form-check-label" for="{{{o.id}}}">{{{o.label}}}</label> <label class="form-check-label" for="{{{o.id}}}">{{{o.label}}}</label>
</div> </div>
...@@ -5,5 +5,5 @@ ...@@ -5,5 +5,5 @@
<input class="form-control" name="{{{o.name}}}" type="{{{o.type}}}" id="{{{o.id}}}" <input class="form-control" name="{{{o.name}}}" type="{{{o.type}}}" id="{{{o.id}}}"
{[ if (o.placeholder) { ]} placeholder="{{{o.placeholder}}}" {[ } ]} {[ if (o.placeholder) { ]} placeholder="{{{o.placeholder}}}" {[ } ]}
{[ if (o.value) { ]} value="{{{o.value}}}" {[ } ]} {[ if (o.value) { ]} value="{{{o.value}}}" {[ } ]}
{[ if (o.required) { ]} required {[ } ]} > {[ if (o.required) { ]} required {[ } ]} />
</div> </div>
<a href="{{{o.url}}}" target="_blank" rel="noopener"><img class="chat-image img-thumbnail" src="{{{o.url}}}"></a> <a href="{{{o.url}}}" target="_blank" rel="noopener"><img class="chat-image img-thumbnail" src="{{{o.url}}}"/></a>
...@@ -4,5 +4,5 @@ ...@@ -4,5 +4,5 @@
<p class="brand-subtitle">{{{o.version_name}}}</p> <p class="brand-subtitle">{{{o.version_name}}}</p>
<p class="brand-subtitle"><a target="_blank" rel="nofollow" href="https://conversejs.org">Open Source</a> XMPP chat client brought to you by <a target="_blank" rel="nofollow" href="https://opkode.com">Opkode</a> </p> <p class="brand-subtitle"><a target="_blank" rel="nofollow" href="https://conversejs.org">Open Source</a> XMPP chat client brought to you by <a target="_blank" rel="nofollow" href="https://opkode.com">Opkode</a> </p>
<p class="brand-subtitle"><a target="_blank" rel="nofollow" href="https://hosted.weblate.org/projects/conversejs/#languages">Translate</a> it into your own language</p> <p class="brand-subtitle"><a target="_blank" rel="nofollow" href="https://hosted.weblate.org/projects/conversejs/#languages">Translate</a> it into your own language</p>
<div> </div>
</div> </div>
...@@ -5,16 +5,16 @@ ...@@ -5,16 +5,16 @@
<h5 class="modal-title" <h5 class="modal-title"
id="list-chatrooms-modal-label">{{{o.heading_list_chatrooms}}}</h5> id="list-chatrooms-modal-label">{{{o.heading_list_chatrooms}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close"> <button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span> <span aria-hidden="true">×</span>
</button> </button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<form class="converse-form list-chatrooms"> <form class="converse-form list-chatrooms">
<div class="form-group"> <div class="form-group">
<label for="chatroom">{{{o.label_server_address}}}:</label> <label for="chatroom">{{{o.label_server_address}}}:</label>
<input type="text" value="{{{o.muc_domain}}}" required="required" name="server" class="form-control" placeholder="{{{o.server_placeholder}}}"> <input type="text" value="{{{o.muc_domain}}}" required="required" name="server" class="form-control" placeholder="{{{o.server_placeholder}}}"/>
</div> </div>
<input type="submit" class="btn btn-primary" name="join" value="{{{o.label_query}}}"> <input type="submit" class="btn btn-primary" name="join" value="{{{o.label_query}}}"/>
</form> </form>
<ul class="available-chatrooms list-group"></ul> <ul class="available-chatrooms list-group"></ul>
</div> </div>
......
...@@ -10,17 +10,17 @@ ...@@ -10,17 +10,17 @@
{[ if (o.authentication == o.LOGIN || o.authentication == o.EXTERNAL) { ]} {[ if (o.authentication == o.LOGIN || o.authentication == o.EXTERNAL) { ]}
<div class="form-group"> <div class="form-group">
<label for="converse-login-jid">{{{o.__("XMPP Username:")}}}</label> <label for="converse-login-jid">{{{o.__("XMPP Username:")}}}</label>
<input id="converse-login-jid" class="form-control" autofocus required="required" type="text" name="jid" placeholder="{{{o.placeholder_username}}}"> <input id="converse-login-jid" class="form-control" autofocus required="required" type="text" name="jid" placeholder="{{{o.placeholder_username}}}"/>
</div> </div>
{[ if (o.authentication !== o.EXTERNAL) { ]} {[ if (o.authentication !== o.EXTERNAL) { ]}
<div class="form-group"> <div class="form-group">
<label for="converse-login-password">{{{o.__("Password:")}}}</label> <label for="converse-login-password">{{{o.__("Password:")}}}</label>
<input id="converse-login-password" class="form-control" required="required" type="password" name="password" placeholder="{{{o.__('password')}}}"> <input id="converse-login-password" class="form-control" required="required" type="password" name="password" placeholder="{{{o.__('password')}}}"/>
</div> </div>
{[ } ]} {[ } ]}
{[ if (o.show_trust_checkbox) { ]} {[ if (o.show_trust_checkbox) { ]}
<div class="form-group form-check login-trusted"> <div class="form-group form-check login-trusted">
<input id="converse-login-trusted" type="checkbox" class="form-check-input" name="trusted" {[ if (o._converse.config.get('trusted')) { ]} checked="checked" {[ } ]}> <input id="converse-login-trusted" type="checkbox" class="form-check-input" name="trusted" {[ if (o._converse.config.get('trusted')) { ]} checked="checked" {[ } ]}/>
<label for="converse-login-trusted" class="form-check-label login-trusted__desc">{{{o.__('This is a trusted device')}}}</label> <label for="converse-login-trusted" class="form-check-label login-trusted__desc">{{{o.__('This is a trusted device')}}}</label>
<i class="fa fa-info-circle" data-toggle="popover" <i class="fa fa-info-circle" data-toggle="popover"
data-title="Trusted device?" data-title="Trusted device?"
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
{[ } ]} {[ } ]}
<fieldset class="buttons"> <fieldset class="buttons">
<input class="btn btn-primary" type="submit" value="{{{o.__('Log in')}}}"> <input class="btn btn-primary" type="submit" value="{{{o.__('Log in')}}}"/>
</fieldset> </fieldset>
{[ } ]} {[ } ]}
{[ if (o.authentication == o.ANONYMOUS) { ]} {[ if (o.authentication == o.ANONYMOUS) { ]}
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
{[ if (o.is_encrypted) { ]}<span class="fa fa-lock"></span>{[ } ]} {[ if (o.is_encrypted) { ]}<span class="fa fa-lock"></span>{[ } ]}
</span> </span>
{[ if (!o.is_me_message) { ]}<div class="chat-msg__body">{[ } ]} {[ if (!o.is_me_message) { ]}<div class="chat-msg__body">{[ } ]}
{[ if (o.received) { ]} <span class="fa fa-check chat-msg__receipt">&nbsp;</span> {[ } ]} {[ if (o.received) { ]} <span class="fa fa-check chat-msg__receipt"></span> {[ } ]}
{[ if (o.edited) { ]} <i title="{{{o.__('This message has been edited')}}}" class="fa fa-edit chat-msg__edit-modal"></i> {[ } ]} {[ if (o.edited) { ]} <i title="{{{o.__('This message has been edited')}}}" class="fa fa-edit chat-msg__edit-modal"></i> {[ } ]}
{[ if (!o.is_me_message) { ]}<div class="chat-msg__message">{[ } ]} {[ if (!o.is_me_message) { ]}<div class="chat-msg__message">{[ } ]}
{[ if (o.is_spoiler) { ]} {[ if (o.is_spoiler) { ]}
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
{[ if (!o.is_me_message) { ]}</div>{[ } ]} {[ if (!o.is_me_message) { ]}</div>{[ } ]}
{[ if (o.type !== 'headline' && !o.is_me_message && o.sender === 'me') { ]} {[ if (o.type !== 'headline' && !o.is_me_message && o.sender === 'me') { ]}
<div class="chat-msg__actions"> <div class="chat-msg__actions">
<button class="chat-msg__action chat-msg__action-edit fa fa-pencil-alt" title="{{{o.__('Edit this message')}}}">&nbsp;</button> <button class="chat-msg__action chat-msg__action-edit fa fa-pencil-alt" title="{{{o.__('Edit this message')}}}"></button>
</div> </div>
{[ } ]} {[ } ]}
......
...@@ -3,12 +3,12 @@ ...@@ -3,12 +3,12 @@
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h4 class="modal-title" id="message-versions-modal-label">{{{o.__('Message versions')}}}</h4> <h4 class="modal-title" id="message-versions-modal-label">{{{o.__('Message versions')}}}</h4>
<button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"><span aria-hidden="true">&times;</span></button> <button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"><span aria-hidden="true">×</span></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<h4>Older versions</h4> <h4>Older versions</h4>
{[o.older_versions.forEach(function (text) { ]} <p class="older-msg">{{{text}}}</p> {[ }); ]} {[o.older_versions.forEach(function (text) { ]} <p class="older-msg">{{{text}}}</p> {[ }); ]}
<hr> <hr/>
<h4>Current version</h4> <h4>Current version</h4>
<p>{{{o.message}}}</p> <p>{{{o.message}}}</p>
</div> </div>
......
<div class="message date-separator" data-isodate="{{{o.isodate}}}"> <div class="message date-separator" data-isodate="{{{o.isodate}}}">
<hr class="separator"> <hr class="separator"/>
<time class="separator-text" datetime="{{{o.isodate}}}"><span>{{{o.datestring}}}</span></time> <time class="separator-text" datetime="{{{o.isodate}}}"><span>{{{o.datestring}}}</span></time>
</div> </div>
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
{[ o._.forEach(o.providers, function (provider) { ]} {[ o._.forEach(o.providers, function (provider) { ]}
<p class="oauth-provider"> <p class="oauth-provider">
<a class="oauth-login" href="#" data-id="{{provider.id}}"> <a class="oauth-login" href="#" data-id="{{provider.id}}">
<i class="fa {{ provider.class}}"></i>{{provider.login_text}}</span> <i class="fa {{ provider.class}}"></i>{{provider.login_text}}
</a> </a>
</p> </p>
{[ }); ]} {[ }); ]}
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title" id="user-profile-modal-label">{{{o.heading_profile}}}</h5> <h5 class="modal-title" id="user-profile-modal-label">{{{o.heading_profile}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"><span aria-hidden="true">&times;</span></button> <button type="button" class="close" data-dismiss="modal" aria-label="{{{o.label_close}}}"><span aria-hidden="true">×</span></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
{[ if (o._converse.pluggable.plugins['converse-omemo'].enabled(o._converse)) { ]} {[ if (o._converse.pluggable.plugins['converse-omemo'].enabled(o._converse)) { ]}
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
<canvas class="avatar" height="100px" width="100px"></canvas> <canvas class="avatar" height="100px" width="100px"></canvas>
{[ } ]} {[ } ]}
</a> </a>
<input class="hidden" name="image" type="file"> <input class="hidden" name="image" type="file"/>
</div> </div>
<div class="col"> <div class="col">
<div class="form-group"> <div class="form-group">
...@@ -40,23 +40,23 @@ ...@@ -40,23 +40,23 @@
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="vcard-fullname" class="col-form-label">{{{o.label_fullname}}}:</label> <label for="vcard-fullname" class="col-form-label">{{{o.label_fullname}}}:</label>
<input id="vcard-fullname" type="text" class="form-control" name="fn" value="{{{o.fullname}}}"> <input id="vcard-fullname" type="text" class="form-control" name="fn" value="{{{o.fullname}}}"/>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="vcard-nickname" class="col-form-label">{{{o.label_nickname}}}:</label> <label for="vcard-nickname" class="col-form-label">{{{o.label_nickname}}}:</label>
<input id="vcard-nickname" type="text" class="form-control" name="nickname" value="{{{o.nickname}}}"> <input id="vcard-nickname" type="text" class="form-control" name="nickname" value="{{{o.nickname}}}"/>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="vcard-url" class="col-form-label">{{{o.label_url}}}:</label> <label for="vcard-url" class="col-form-label">{{{o.label_url}}}:</label>
<input id="vcard-url" type="url" class="form-control" name="url" value="{{{o.url}}}"> <input id="vcard-url" type="url" class="form-control" name="url" value="{{{o.url}}}"/>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="vcard-email" class="col-form-label">{{{o.label_email}}}:</label> <label for="vcard-email" class="col-form-label">{{{o.label_email}}}:</label>
<input id="vcard-email" type="email" class="form-control" name="email" value="{{{o.email}}}"> <input id="vcard-email" type="email" class="form-control" name="email" value="{{{o.email}}}"/>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="vcard-role" class="col-form-label">{{{o.label_role}}}:</label> <label for="vcard-role" class="col-form-label">{{{o.label_role}}}:</label>
<input id="vcard-role" type="text" class="form-control" name="role" value="{{{o.role}}}" aria-describedby="vcard-role-help"> <input id="vcard-role" type="text" class="form-control" name="role" value="{{{o.role}}}" aria-describedby="vcard-role-help"/>
<small id="vcard-role-help" class="form-text text-muted">{{{o.label_role_help}}}</small> <small id="vcard-role-help" class="form-text text-muted">{{{o.label_role_help}}}</small>
</div> </div>
<hr/> <hr/>
...@@ -87,7 +87,7 @@ ...@@ -87,7 +87,7 @@
<li class="list-group-item nopadding active"> <li class="list-group-item nopadding active">
<label> <label>
<input type="checkbox" class="select-all" title="{{{o.__('Select all')}}}" <input type="checkbox" class="select-all" title="{{{o.__('Select all')}}}"
aria-label="{{{o.__('Checkbox to select fingerprints of all other OMEMO devices')}}}"> aria-label="{{{o.__('Checkbox to select fingerprints of all other OMEMO devices')}}}"/>
{{{o.__('Other OMEMO-enabled devices')}}} {{{o.__('Other OMEMO-enabled devices')}}}
</label> </label>
</li> </li>
...@@ -96,7 +96,7 @@ ...@@ -96,7 +96,7 @@
<li class="fingerprint-removal-item list-group-item nopadding"> <li class="fingerprint-removal-item list-group-item nopadding">
<label> <label>
<input type="checkbox" value="{{{device.get('id')}}}" <input type="checkbox" value="{{{device.get('id')}}}"
aria-label="{{{o.__('Checkbox for selecting the following fingerprint')}}}"> aria-label="{{{o.__('Checkbox for selecting the following fingerprint')}}}"/>
<span class="fingerprint">{{{o.utils.formatFingerprint(device.get('bundle').fingerprint)}}}</span> <span class="fingerprint">{{{o.utils.formatFingerprint(device.get('bundle').fingerprint)}}}</span>
</label> </label>
</li> </li>
...@@ -104,7 +104,7 @@ ...@@ -104,7 +104,7 @@
<li class="fingerprint-removal-item list-group-item nopadding"> <li class="fingerprint-removal-item list-group-item nopadding">
<label> <label>
<input type="checkbox" value="{{{device.get('id')}}}" <input type="checkbox" value="{{{device.get('id')}}}"
aria-label="{{{o.__('Checkbox for selecting the following fingerprint')}}}"> aria-label="{{{o.__('Checkbox for selecting the following fingerprint')}}}"/>
<span>{{{o.__('Device without a fingerprint')}}}</span> <span>{{{o.__('Device without a fingerprint')}}}</span>
</label> </label>
</li> </li>
......
...@@ -9,19 +9,18 @@ ...@@ -9,19 +9,18 @@
{[ if (o.default_domain) { ]} {[ if (o.default_domain) { ]}
{{{o.default_domain}}} {{{o.default_domain}}}
</div> </div>
{[ } ]} {[ } else { ]}
{[ if (!o.default_domain) { ]} <input class="form-control" autofocus="autofocus" required="required" type="text" name="domain" placeholder="{{{o.domain_placeholder}}}"/>
<input class="form-control" autofocus="autofocus" required="required" type="text" name="domain" placeholder="{{{o.domain_placeholder}}}">
<p class="form-text text-muted">{{{o.help_providers}}} <a href="{{{o.href_providers}}}" class="url" target="_blank" rel="noopener">{{{o.help_providers_link}}}</a>.</p> <p class="form-text text-muted">{{{o.help_providers}}} <a href="{{{o.href_providers}}}" class="url" target="_blank" rel="noopener">{{{o.help_providers_link}}}</a>.</p>
</div> </div>
<fieldset class="buttons"> <fieldset class="buttons">
<input class="btn btn-primary" type="submit" value="{{{o.label_register}}}"> <input class="btn btn-primary" type="submit" value="{{{o.label_register}}}"/>
<div class="switch-form"> <div class="switch-form">
<p>{{{ o.__("Already have a chat account?") }}}</p> <p>{{{ o.__("Already have a chat account?") }}}</p>
<p><a class="login-here toggle-register-login" href="#converse/login">{{{o.__("Log in here")}}}</a></p> <p><a class="login-here toggle-register-login" href="#converse/login">{{{o.__("Log in here")}}}</a></p>
</div> </div>
</fieldset> </fieldset>
{[ } ]} {[ } ]}
</div> <!--</div>-->
</form> </form>
</div> </div>
...@@ -7,6 +7,6 @@ ...@@ -7,6 +7,6 @@
href="#">{{{o.name}}}</a> href="#">{{{o.name}}}</a>
<a class="right room-info icon-room-info" <a class="right room-info icon-room-info"
data-room-jid="{{{o.jid}}}" data-room-jid="{{{o.jid}}}"
title="{{{o.info_title}}}" href="#">&nbsp;</a> title="{{{o.info_title}}}" href="#"></a>
</div> </div>
</li> </li>
...@@ -13,15 +13,15 @@ ...@@ -13,15 +13,15 @@
<a class="list-item-action fa {[ if (o.bookmarked) { ]} fa-bookmark remove-bookmark button-on {[ } else { ]} add-bookmark fa-bookmark-o {[ } ]}" <a class="list-item-action fa {[ if (o.bookmarked) { ]} fa-bookmark remove-bookmark button-on {[ } else { ]} add-bookmark fa-bookmark-o {[ } ]}"
data-room-jid="{{{o.jid}}}" data-bookmark-name="{{{o.name}}}" data-room-jid="{{{o.jid}}}" data-bookmark-name="{{{o.name}}}"
title="{[ if (o.bookmarked) { ]} {{{o.info_remove_bookmark}}} {[ } else { ]} {{{o.info_add_bookmark}}} {[ } ]}" title="{[ if (o.bookmarked) { ]} {{{o.info_remove_bookmark}}} {[ } else { ]} {{{o.info_add_bookmark}}} {[ } ]}"
href="#">&nbsp;</a> href="#"></a>
{[ } ]} {[ } ]}
<a class="list-item-action room-info fa fa-info-circle" data-room-jid="{{{o.jid}}}" <a class="list-item-action room-info fa fa-info-circle" data-room-jid="{{{o.jid}}}"
title="{{{o.info_title}}}" href="#">&nbsp;</a> title="{{{o.info_title}}}" href="#"></a>
<a class="list-item-action fa fa-times close-room" <a class="list-item-action fa fa-times close-room"
data-room-jid="{{{o.jid}}}" data-room-jid="{{{o.jid}}}"
data-room-name="{{{o.name || o.jid}}}" data-room-name="{{{o.name || o.jid}}}"
title="{{{o.info_leave_room}}}" href="#">&nbsp;</a> title="{{{o.info_leave_room}}}" href="#"></a>
</div> </div>
<li class="list-group-item active">{{{ o.feedback_text }}}</dt> <li class="list-group-item active">{{{ o.feedback_text }}}</li>
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<div class="btn-group"> <div class="btn-group">
<input {[ if (o.filter_text) { ]} value="{{{o.filter_text}}}" {[ } ]} <input {[ if (o.filter_text) { ]} value="{{{o.filter_text}}}" {[ } ]}
class="roster-filter form-control {[ if (o.filter_type === 'state') { ]} hidden {[ } ]}" class="roster-filter form-control {[ if (o.filter_type === 'state') { ]} hidden {[ } ]}"
placeholder="{{{o.placeholder}}}"> placeholder="{{{o.placeholder}}}"/>
<span class="clear-input fa fa-times {[ if (!o.filter_text || o.filter_type === 'state') { ]} hidden {[ } ]}"></span> <span class="clear-input fa fa-times {[ if (!o.filter_text || o.filter_type === 'state') { ]} hidden {[ } ]}"></span>
</div> </div>
......
<li class="toggle-compose-spoiler fa {[ if (o.composing_spoiler) { ]} fa-eye-slash {[ } ]} {[ if (!o.composing_spoiler) { ]} fa-eye {[ } ]}" <li class="toggle-compose-spoiler fa {[ if (o.composing_spoiler) { ]} fa-eye-slash {[ } ]} {[ if (!o.composing_spoiler) { ]} fa-eye {[ } ]}"
title="{{ o.label_toggle_spoiler }}"></a> title="{{ o.label_toggle_spoiler }}">
</li> </li>
<li class="upload-file"> <li class="upload-file">
<a class="fa fa-paperclip" title="{{{o.tooltip_upload_file}}}"></a> <a class="fa fa-paperclip" title="{{{o.tooltip_upload_file}}}"></a>
<input type="file" class="fileupload" multiple style="display:none"/> <input type="file" class="fileupload" multiple="" style="display:none"/>
</li> </li>
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title" id="user-details-modal-label">{{{o.display_name}}}</h5> <h5 class="modal-title" id="user-details-modal-label">{{{o.display_name}}}</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="{{{o.__('Close')}}}"><span aria-hidden="true">&times;</span></button> <button type="button" class="close" data-dismiss="modal" aria-label="{{{o.__('Close')}}}"><span aria-hidden="true">×</span></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
{[ if (o.image) { ]} {[ if (o.image) { ]}
...@@ -12,24 +12,24 @@ ...@@ -12,24 +12,24 @@
height="100" width="100" src="data:{{{o.image_type}}};base64,{{{o.image}}}"/> height="100" width="100" src="data:{{{o.image_type}}};base64,{{{o.image}}}"/>
{[ } ]} {[ } ]}
{[ if (o.fullname) { ]} {[ if (o.fullname) { ]}
<p><label>{{{o.__('Full Name:')}}}</label>&nbsp;{{{o.fullname}}}</p> <p><label>{{{o.__('Full Name:')}}}</label> {{{o.fullname}}}</p>
{[ } ]} {[ } ]}
<p><label>{{{o.__('XMPP Address:')}}}</label>&nbsp;<a href="xmpp:{{{o.jid}}}">{{{o.jid}}}</a></p> <p><label>{{{o.__('XMPP Address:')}}}</label> <a href="xmpp:{{{o.jid}}}">{{{o.jid}}}</a></p>
{[ if (o.nickname) { ]} {[ if (o.nickname) { ]}
<p><label>{{{o.__('Nickname:')}}}</label>&nbsp;{{{o.nickname}}}</p> <p><label>{{{o.__('Nickname:')}}}</label> {{{o.nickname}}}</p>
{[ } ]} {[ } ]}
{[ if (o.url) { ]} {[ if (o.url) { ]}
<p><label>{{{o.__('URL:')}}}</label>&nbsp;<a target="_blank" rel="noopener" href="{{{o.url}}}">{{{o.url}}}</a></p> <p><label>{{{o.__('URL:')}}}</label> <a target="_blank" rel="noopener" href="{{{o.url}}}">{{{o.url}}}</a></p>
{[ } ]} {[ } ]}
{[ if (o.email) { ]} {[ if (o.email) { ]}
<p><label>{{{o.__('Email:')}}}</label>&nbsp;<a href="mailto:{{{o.email}}}">{{{o.email}}}</a></p> <p><label>{{{o.__('Email:')}}}</label> <a href="mailto:{{{o.email}}}">{{{o.email}}}</a></p>
{[ } ]} {[ } ]}
{[ if (o.role) { ]} {[ if (o.role) { ]}
<p><label>{{{o.__('Role:')}}}</label>&nbsp;{{{o.role}}}</p> <p><label>{{{o.__('Role:')}}}</label> {{{o.role}}}</p>
{[ } ]} {[ } ]}
{[ if (o._converse.pluggable.plugins['converse-omemo'].enabled(o._converse)) { ]} {[ if (o._converse.pluggable.plugins['converse-omemo'].enabled(o._converse)) { ]}
<hr> <hr/>
<ul class="list-group fingerprints"> <ul class="list-group fingerprints">
<li class="list-group-item active">{{{o.__('OMEMO Fingerprints')}}}</li> <li class="list-group-item active">{{{o.__('OMEMO Fingerprints')}}}</li>
{[ if (!o.view.devicelist.devices) { ]} {[ if (!o.view.devicelist.devices) { ]}
...@@ -43,11 +43,11 @@ ...@@ -43,11 +43,11 @@
<div class="btn-group btn-group-toggle"> <div class="btn-group btn-group-toggle">
<label class="btn btn--small {[ if (device.get('trusted') !== -1) { ]} btn-primary active {[ } else { ]} btn-secondary {[ } ]}"> <label class="btn btn--small {[ if (device.get('trusted') !== -1) { ]} btn-primary active {[ } else { ]} btn-secondary {[ } ]}">
<input type="radio" name="{{{device.get('id')}}}" value="1" <input type="radio" name="{{{device.get('id')}}}" value="1"
{[ if (device.get('trusted') !== -1) { ]} checked="checked" {[ } ]}>{{{o.__('Trusted')}}} {[ if (device.get('trusted') !== -1) { ]} checked="checked" {[ } ]}/>{{{o.__('Trusted')}}}
</label> </label>
<label class="btn btn--small {[ if (device.get('trusted') === -1) { ]} btn-primary active {[ } else { ]} btn-secondary {[ } ]}"> <label class="btn btn--small {[ if (device.get('trusted') === -1) { ]} btn-primary active {[ } else { ]} btn-secondary {[ } ]}">
<input type="radio" name="{{{device.get('id')}}}" value="-1" <input type="radio" name="{{{device.get('id')}}}" value="-1"
{[ if (device.get('trusted') === -1) { ]} checked="checked" {[ } ]}>{{{o.__('Untrusted')}}} {[ if (device.get('trusted') === -1) { ]} checked="checked" {[ } ]}/>{{{o.__('Untrusted')}}}
</label> </label>
</div> </div>
<span class="fingerprint">{{{o.utils.formatFingerprint(device.get('bundle').fingerprint)}}}</span> <span class="fingerprint">{{{o.utils.formatFingerprint(device.get('bundle').fingerprint)}}}</span>
......
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