1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-13 21:26:28 +02:00

[ticket/13713] Set mention-list class if needed

PHPBB3-13713
This commit is contained in:
Marc Alexander
2021-05-16 10:45:48 +02:00
parent 643bab44ea
commit 6eeb22cdb5
3 changed files with 26 additions and 11 deletions

View File

@ -626,6 +626,26 @@ function getCaretPosition(txtarea) {
});
}
/**
* Generate menu item HTML representation. Also ensures that mention-list
* class is set for unordered list in mention container
*
* @param {object} data Item data
* @returns {string} HTML representation of menu item
*/
function menuItemTemplate(data) {
const itemData = data;
const avatar = getAvatar(itemData.avatar, itemData.type);
const rank = (itemData.rank) ? "<span class='mention-rank'>" + itemData.rank + "</span>" : '';
const $mentionContainer = $('.' + tribute.current.collection.containerClass);
if (typeof $mentionContainer !== 'undefined' && $mentionContainer.children('ul').hasClass('mention-list') === false) {
$mentionContainer.children('ul').addClass('mention-list');
}
return "<span class='mention-media'>" + avatar + "</span><span class='mention-name'>" + itemData.name + rank + "</span>";
}
this.isEnabled = function() {
return $mentionDataContainer.length;
};
@ -637,12 +657,7 @@ function getCaretPosition(txtarea) {
containerClass: 'mention-container',
selectClass: 'is-active',
itemClass: 'mention-item',
menuItemTemplate: function (data) {
const itemData = data;
let avatar = getAvatar(itemData.avatar, itemData.type);
let rank = (itemData.rank) ? "<span class='mention-rank'>" + itemData.rank + "</span>" : '';
return "<span class='mention-media'>" + avatar + "</span><span class='mention-name'>" + itemData.name + rank + "</span>";
},
menuItemTemplate: menuItemTemplate,
selectTemplate: function (item) {
return '[mention=' + item.type + ':' + item.id + ']' + item.name + '[/mention]';
},