Archived
1
0
This repository has been archived on 2020-12-10. You can view files and clone it, but cannot push or open issues or pull requests.
old/assets/js/tinymce/plugins/wordcount/plugin.min.js
2018-10-16 18:28:42 +02:00

29 lines
1.3 KiB
JavaScript

tinymce.PluginManager.add("wordcount", function (a) {
function b() {
a.theme.panel.find("#wordcount").text(["Words: {0}", e.getCount()])
}
var c, d, e = this;
c = a.getParam("wordcount_countregex", /[\w\u2019\x27\-\u00C0-\u1FFF]+/g), d = a.getParam("wordcount_cleanregex", /[0-9.(),;:!?%#$?\x27\x22_+=\\\/\-]*/g), a.on("init", function () {
var c = a.theme.panel && a.theme.panel.find("#statusbar")[0];
c && tinymce.util.Delay.setEditorTimeout(a, function () {
c.insert({
type: "label",
name: "wordcount",
text: ["Words: {0}", e.getCount()],
classes: "wordcount",
disabled: a.settings.readonly
}, 0), a.on("setcontent beforeaddundo", b), a.on("keyup", function (a) {
32 == a.keyCode && b()
})
}, 0)
}), e.getCount = function () {
var b = a.getContent({format: "raw"}), e = 0;
if (b) {
b = b.replace(/\.\.\./g, " "), b = b.replace(/<.[^<>]*?>/g, " ").replace(/&nbsp;|&#160;/gi, " "), b = b.replace(/(\w+)(&#?[a-z0-9]+;)+(\w+)/i, "$1$3").replace(/&.+?;/g, " "), b = b.replace(d, "");
var f = b.match(c);
f && (e = f.length)
}
return e
}
});