thedesk/app/js/emoji/default-emoji.js

85 lines
2.7 KiB
JavaScript
Raw Normal View History

2019-11-25 00:26:19 +11:00
'use strict'
2019-05-19 17:39:30 +10:00
var defaultemojiList = ["activity", "flag", "food", "nature", "object", "people", "place", "symbol"];
var defaultemoji = {
activity: activity,
flag: flag,
food: food,
nature: nature,
object: object,
people: people,
place: place,
symbol: symbol
2018-03-13 04:41:38 +11:00
};
2019-05-19 17:39:30 +10:00
if (lang == "ja") {
var defaultemojiname = {
activity: "活動",
flag: "国旗",
food: "食べ物",
nature: "自然",
object: "もの",
people: "ひと",
place: "場所",
symbol: "記号"
2018-07-29 17:37:54 +10:00
};
2019-05-19 17:39:30 +10:00
} else {
var defaultemojiname = {
activity: "Activities",
flag: "Flags",
food: "Foods",
nature: "Nature",
object: "Tools",
people: "People",
place: "Places",
symbol: "Symbols"
2018-07-29 17:37:54 +10:00
};
}
2019-05-19 17:39:30 +10:00
function defaultEmoji(target) {
var json = defaultemoji[target];
var emojis = "";
Object.keys(json).forEach(function (key) {
2018-03-18 02:00:53 +11:00
var emoji = json[key];
2019-05-19 17:39:30 +10:00
emojis = emojis + '<a onclick="defEmoji(\'' + emoji["shortcode"] + '\')" class="pointer"><span style="width: 20px; height: 20px; display: inline-block; background-image: url(\'../../img/sheet.png\'); background-size: 4900%; background-position: ' + emoji["css"] + ';"></span></a>';
2018-03-18 02:00:53 +11:00
});
$("#emoji-list").html(emojis);
2019-05-19 17:39:30 +10:00
$("#now-emoji").text(lang.lang_defaultemojis_text.replace("{{cat}}", defaultemojiname[target]));
2018-03-13 04:41:38 +11:00
$(".emoji-control").addClass("hide");
}
2019-05-19 17:39:30 +10:00
function customEmoji() {
2018-03-20 15:55:25 +11:00
$("#emoji-suggest").val("");
2018-03-13 04:41:38 +11:00
$(".emoji-control").removeClass("hide");
emojiList('home')
2018-03-14 05:31:31 +11:00
}
2019-05-19 17:39:30 +10:00
function defEmoji(target) {
2019-08-20 00:09:34 +10:00
var selin = $("#textarea").prop('selectionStart');
if (!selin) {
selin = 0;
}
2019-05-19 17:39:30 +10:00
var emojiraw = newpack.filter(function (item, index) {
if (item.short_name == target) return true;
2018-09-14 02:25:43 +10:00
});
2019-05-19 17:39:30 +10:00
var hex = emojiraw[0].unified.split("-");
if (hex.length === 2) {
emoji = twemoji.convert.fromCodePoint(hex[0]) + twemoji.convert.fromCodePoint(hex[1]);
} else {
emoji = twemoji.convert.fromCodePoint(hex[0]);
2019-05-03 01:51:10 +10:00
}
2018-03-27 13:39:35 +11:00
var now = $("#textarea").val();
2019-08-20 00:09:34 +10:00
var before = now.substr(0, selin);
var after = now.substr(selin, now.length);
newt = before + emoji + after;
2019-05-19 17:39:30 +10:00
$("#textarea").val(newt);
$("#textarea").focus();
2018-03-31 13:39:06 +11:00
}
2019-05-19 17:39:30 +10:00
function faicon() {
var json = faicons;
var emojis = "";
Object.keys(json).forEach(function (key) {
2018-03-31 13:39:06 +11:00
var emoji = json[key];
2019-05-19 17:39:30 +10:00
var eje = emoji.replace(/fa-/g, "");
emojis = emojis + '<a onclick="emojiInsert(\'[faicon]' + eje + '[/faicon]\')" class="pointer white-text" style="font-size:24px"><i class="fa ' + emoji + '"></i></a>';
2018-03-31 13:39:06 +11:00
});
$("#emoji-list").html(emojis);
$("#now-emoji").text("faicon");
$(".emoji-control").addClass("hide");
2018-03-13 04:41:38 +11:00
}