Add consultation module assets and libraries
This commit is contained in:
116
konsultasi/libs/Trumbowyg/plugins/mention/trumbowyg.mention.js
Normal file
116
konsultasi/libs/Trumbowyg/plugins/mention/trumbowyg.mention.js
Normal file
@@ -0,0 +1,116 @@
|
||||
/* ===========================================================
|
||||
* trumbowyg.mention.js v0.1
|
||||
* Mention plugin for Trumbowyg
|
||||
* http://alex-d.github.com/Trumbowyg
|
||||
* ===========================================================
|
||||
* Author : Viper
|
||||
* Github: https://github.com/Globulopolis
|
||||
* Website: http://киноархив.com
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
'use strict';
|
||||
|
||||
var defaultOptions = {
|
||||
source: [],
|
||||
formatDropdownItem: formatDropdownItem,
|
||||
formatResult: formatResult
|
||||
};
|
||||
|
||||
$.extend(true, $.trumbowyg, {
|
||||
langs: {
|
||||
// jshint camelcase:false
|
||||
en: {
|
||||
mention: 'Mention'
|
||||
},
|
||||
da: {
|
||||
mention: 'Nævn'
|
||||
},
|
||||
fr: {
|
||||
mention: 'Mentionner'
|
||||
},
|
||||
ru: {
|
||||
mention: 'Упомянуть'
|
||||
},
|
||||
tr: {
|
||||
mention: 'Bahset'
|
||||
},
|
||||
zh_tw: {
|
||||
mention: '標記'
|
||||
},
|
||||
pt_br: {
|
||||
mention: 'Menção'
|
||||
},
|
||||
ko: {
|
||||
mention: '언급'
|
||||
},
|
||||
// jshint camelcase:true
|
||||
},
|
||||
|
||||
plugins: {
|
||||
mention: {
|
||||
init: function (trumbowyg) {
|
||||
trumbowyg.o.plugins.mention = $.extend(true, {}, defaultOptions, trumbowyg.o.plugins.mention || {});
|
||||
|
||||
var btnDef = {
|
||||
dropdown: buildDropdown(trumbowyg.o.plugins.mention.source, trumbowyg)
|
||||
};
|
||||
|
||||
trumbowyg.addBtnDef('mention', btnDef);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Build dropdown list
|
||||
*
|
||||
* @param {Array} items Items
|
||||
* @param {object} trumbowyg Editor
|
||||
*
|
||||
* @return {Array}
|
||||
*/
|
||||
function buildDropdown(items, trumbowyg) {
|
||||
var dropdown = [];
|
||||
|
||||
$.each(items, function (i, item) {
|
||||
var btn = 'mention-' + i,
|
||||
btnDef = {
|
||||
hasIcon: false,
|
||||
text: trumbowyg.o.plugins.mention.formatDropdownItem(item),
|
||||
fn: function () {
|
||||
trumbowyg.execCmd('insertHTML', trumbowyg.o.plugins.mention.formatResult(item));
|
||||
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
trumbowyg.addBtnDef(btn, btnDef);
|
||||
dropdown.push(btn);
|
||||
});
|
||||
|
||||
return dropdown;
|
||||
}
|
||||
|
||||
/**
|
||||
* Format item in dropdown.
|
||||
*
|
||||
* @param {object} item Item object.
|
||||
*
|
||||
* @return {string}
|
||||
*/
|
||||
function formatDropdownItem(item) {
|
||||
return item.login;
|
||||
}
|
||||
|
||||
/**
|
||||
* Format result pasted in editor.
|
||||
*
|
||||
* @param {object} item Item object.
|
||||
*
|
||||
* @return {string}
|
||||
*/
|
||||
function formatResult(item) {
|
||||
return '@' + item.login + ' ';
|
||||
}
|
||||
})(jQuery);
|
||||
Reference in New Issue
Block a user