【notice】新增消息模块开发,更新tinymce富文本编辑器。

问题: 1、全局过滤器会过滤掉富文本的html标签
      2、图片上传功能为实现,后台上传接口是否要统一实现
pull/65/head
hansson 2021-01-14 15:37:43 +08:00
parent eedbeb109e
commit d209613553
76 changed files with 13629 additions and 595 deletions

View File

@ -108,12 +108,6 @@
<version>1.0.0</version> <version>1.0.0</version>
</dependency> </dependency>
<dependency>
<groupId>cn.stylefeng.roses</groupId>
<artifactId>message-spring-boot-starter</artifactId>
<version>1.0.0</version>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId> <artifactId>spring-boot-starter-data-redis</artifactId>

View File

@ -0,0 +1,85 @@
package cn.stylefeng.guns.modular.notice.controller;
import cn.stylefeng.roses.kernel.resource.api.annotation.ApiResource;
import cn.stylefeng.roses.kernel.resource.api.annotation.GetResource;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
/**
*
*
* @author liuhanqing
* @date 2021/1/8 20:55
*/
@Controller
@Slf4j
@ApiResource(name = "通知管理界面")
public class NoticeViewController {
/**
*
*
* @author liuhanqing
* @date 2021/1/8 20:55
*/
@GetResource(name = "通知管理列表", path = "/view/notice")
public String roleIndex() {
return "/modular/system/notice/notice.html";
}
/**
*
*
* @author liuhanqing
* @date 2021/1/8 20:57
*/
@GetResource(name = "新增通知界面", path = "/view/notice/add")
public String roleAdd() {
return "/modular/system/notice/notice_add.html";
}
/**
*
*
* @author liuhanqing
* @date 2021/1/8 20:57
*/
@GetResource(name = "编辑通知界面", path = "/view/notice/edit")
public String roleEdit() {
return "/modular/system/notice/notice_edit.html";
}
/**
*
*
* @author liuhanqing
* @date 2021/1/8 20:57
*/
@GetResource(name = "修改数据范围界面", path = "/view/notice/editDataScope")
public String roleEditDataScope() {
return "/modular/system/notice/notice_edit_data_scope.html";
}
/**
*
*
* @author majianguo
* @date 2021/1/9 11:43
*/
@GetResource(name = "分配接口界面", path = "/view/notice/assignApi")
public String roleAssignApi() {
return "/modular/system/notice/notice_assign_api.html";
}
/**
*
*
* @author majianguo
* @date 2021/1/9 11:45
*/
@GetResource(name = "分配菜单界面", path = "/view/notice/assignMenuAndButtons")
public String roleAssignMenuButton() {
return "/modular/system/notice/notice_assign_menu_button.html";
}
}

File diff suppressed because one or more lines are too long

View File

@ -10,14 +10,15 @@
* @class tinymce.core.JqueryIntegration * @class tinymce.core.JqueryIntegration
* @private * @private
*/ */
!function(){var f,c,u,p,d,s=[];d="undefined"!=typeof global?global:window,p=d.jQuery;function v(){ !function(){var f,c,u,s=[],p="undefined"!=typeof global?global:window,d=p.jQuery,v=function(){
// Reference to tinymce needs to be lazily evaluated since tinymce // Reference to tinymce needs to be lazily evaluated since tinymce
// might be loaded through the compressor or other means // might be loaded through the compressor or other means
return d.tinymce}p.fn.tinymce=function(o){var e,t,i,l=this,r=""; return p.tinymce};d.fn.tinymce=function(o){var e,t,i,l=this,r="";
// No match then just ignore the call // No match then just ignore the call
if(!l.length)return l; if(!l.length)return l;
// Get editor instance // Get editor instance
if(!o)return v()?v().get(l[0].id):null;l.css("visibility","hidden");function n(){var a=[],c=0; if(!o)return v()?v().get(l[0].id):null;l.css("visibility","hidden");// Hide textarea to avoid flicker
var n,a=function(){var a=[],c=0;
// Apply patches to the jQuery object, only once // Apply patches to the jQuery object, only once
u||(m(),u=!0), u||(m(),u=!0),
// Create an editor instance for each matched node // Create an editor instance for each matched node
@ -36,56 +37,56 @@ r&&++c==a.length&&("string"==typeof t&&(e=-1===t.indexOf(".")?null:v().resolve(t
t.apply(e||v(),a))}))}), t.apply(e||v(),a))}))}),
// Render the editor instances in a separate loop since we // Render the editor instances in a separate loop since we
// need to have the full editors array used in the onInit calls // need to have the full editors array used in the onInit calls
p.each(a,function(e,t){t.render()})} d.each(a,function(e,t){t.render()})};
// Load TinyMCE on demand, if we need to // Load TinyMCE on demand, if we need to
if(d.tinymce||c||!(e=o.script_url)) return p.tinymce||c||!(e=o.script_url)?
// Delay the init call until tinymce is loaded // Delay the init call until tinymce is loaded
1===c?s.push(n):n();else{c=1,t=e.substring(0,e.lastIndexOf("/")), 1===c?s.push(a):a():(c=1,t=e.substring(0,e.lastIndexOf("/")),
// Check if it's a dev/src version they want to load then // Check if it's a dev/src version they want to load then
// make sure that all plugins, themes etc are loaded in source mode as well // make sure that all plugins, themes etc are loaded in source mode as well
-1!=e.indexOf(".min")&&(r=".min"), -1!=e.indexOf(".min")&&(r=".min"),
// Setup tinyMCEPreInit object this will later be used by the TinyMCE // Setup tinyMCEPreInit object this will later be used by the TinyMCE
// core script to locate other resources like CSS files, dialogs etc // core script to locate other resources like CSS files, dialogs etc
// You can also predefined a tinyMCEPreInit object and then it will use that instead // You can also predefined a tinyMCEPreInit object and then it will use that instead
d.tinymce=d.tinyMCEPreInit||{base:t,suffix:r}, p.tinymce=p.tinyMCEPreInit||{base:t,suffix:r},
// url contains gzip then we assume it's a compressor // url contains gzip then we assume it's a compressor
-1!=e.indexOf("gzip")&&(i=o.language||"en",e=e+(/\?/.test(e)?"&":"?")+"js=true&core=true&suffix="+escape(r)+"&themes="+escape(o.theme||"modern")+"&plugins="+escape(o.plugins||"")+"&languages="+(i||""), -1!=e.indexOf("gzip")&&(i=o.language||"en",e=e+(/\?/.test(e)?"&":"?")+"js=true&core=true&suffix="+escape(r)+"&themes="+escape(o.theme||"modern")+"&plugins="+escape(o.plugins||"")+"&languages="+(i||""),
// Check if compressor script is already loaded otherwise setup a basic one // Check if compressor script is already loaded otherwise setup a basic one
d.tinyMCE_GZ||(d.tinyMCE_GZ={start:function(){function n(e){v().ScriptLoader.markDone(v().baseURI.toAbsolute(e))} p.tinyMCE_GZ||(p.tinyMCE_GZ={start:function(){var n=function(e){v().ScriptLoader.markDone(v().baseURI.toAbsolute(e))};
// Add core languages // Add core languages
n("langs/"+i+".js"), n("langs/"+i+".js"),
// Add themes with languages // Add themes with languages
n("themes/"+o.theme+"/theme"+r+".js"),n("themes/"+o.theme+"/langs/"+i+".js"), n("themes/"+o.theme+"/theme"+r+".js"),n("themes/"+o.theme+"/langs/"+i+".js"),
// Add plugins with languages // Add plugins with languages
p.each(o.plugins.split(","),function(e,t){t&&(n("plugins/"+t+"/plugin"+r+".js"),n("plugins/"+t+"/langs/"+i+".js"))})},end:function(){}}));var a=document.createElement("script");a.type="text/javascript",a.onload=a.onreadystatechange=function(e){e=e||window.event,2===c||"load"!=e.type&&!/complete|loaded/.test(a.readyState)||(v().dom.Event.domLoaded=1,c=2, d.each(o.plugins.split(","),function(e,t){t&&(n("plugins/"+t+"/plugin"+r+".js"),n("plugins/"+t+"/langs/"+i+".js"))})},end:function(){}})),(n=document.createElement("script")).type="text/javascript",n.onload=n.onreadystatechange=function(e){e=e||window.event,2===c||"load"!=e.type&&!/complete|loaded/.test(n.readyState)||(v().dom.Event.domLoaded=1,c=2,
// Execute callback after mainscript has been loaded and before the initialization occurs // Execute callback after mainscript has been loaded and before the initialization occurs
o.script_loaded&&o.script_loaded(),n(),p.each(s,function(e,t){t()}))},a.src=e,document.body.appendChild(a)}return l}, o.script_loaded&&o.script_loaded(),a(),d.each(s,function(e,t){t()}))},n.src=e,document.body.appendChild(n)),l},
// Add :tinymce pseudo selector this will select elements that has been converted into editor instances // Add :tinymce pseudo selector this will select elements that has been converted into editor instances
// it's now possible to use things like $('*:tinymce') to get all TinyMCE bound elements. // it's now possible to use things like $('*:tinymce') to get all TinyMCE bound elements.
p.extend(p.expr[":"],{tinymce:function(e){var t;return!!(e.id&&"tinymce"in d&&(t=v().get(e.id))&&t.editorManager===v())}}); d.extend(d.expr[":"],{tinymce:function(e){var t;return!!(e.id&&"tinymce"in p&&(t=v().get(e.id))&&t.editorManager===v())}});
// This function patches internal jQuery functions so that if // This function patches internal jQuery functions so that if
// you for example remove an div element containing an editor it's // you for example remove an div element containing an editor it's
// automatically destroyed by the TinyMCE API // automatically destroyed by the TinyMCE API
var m=function(){function r(e){ var m=function(){
// Removes any child editor instances by looking for editor wrapper elements
var r=function(e){
// If the function is remove // If the function is remove
"remove"===e&&this.each(function(e,t){var n=u(t);n&&n.remove()}),this.find("span.mceEditor,div.mceEditor").each(function(e,t){var n=v().get(t.id.replace(/_parent$/,""));n&&n.remove()})}function o(i){var e,t=this; "remove"===e&&this.each(function(e,t){var n=l(t);n&&n.remove()}),this.find("span.mceEditor,div.mceEditor").each(function(e,t){var n=v().get(t.id.replace(/_parent$/,""));n&&n.remove()})},o=function(i){var e,t=this;
// Handle set value // Handle set value
/*jshint eqnull:true */if(null!=i)r.call(t), /*jshint eqnull:true */if(null!=i)r.call(t),
// Saves the contents before get/set value of textarea/div // Saves the contents before get/set value of textarea/div
t.each(function(e,t){var n;(n=v().get(t.id))&&n.setContent(i)});else if(0<t.length&&(e=v().get(t[0].id)))return e.getContent()}function l(e){return!!(e&&e.length&&d.tinymce&&e.is(":tinymce"))} t.each(function(e,t){var n;(n=v().get(t.id))&&n.setContent(i)});else if(0<t.length&&(e=v().get(t[0].id)))return e.getContent()},l=function(e){var t=null;return e&&e.id&&p.tinymce&&(t=v().get(e.id)),t},u=function(e){return!!(e&&e.length&&p.tinymce&&e.is(":tinymce"))},s={};
// Removes any child editor instances by looking for editor wrapper elements
var u=function(e){var t=null;return e&&e.id&&d.tinymce&&(t=v().get(e.id)),t},s={};
// Loads or saves contents from/to textarea if the value // Loads or saves contents from/to textarea if the value
// argument is defined it will set the TinyMCE internal contents // argument is defined it will set the TinyMCE internal contents
// Patch some setter/getter functions these will // Patch some setter/getter functions these will
// now be able to set/get the contents of editor instances for // now be able to set/get the contents of editor instances for
// example $('#editorid').html('Content'); will update the TinyMCE iframe instance // example $('#editorid').html('Content'); will update the TinyMCE iframe instance
p.each(["text","html","val"],function(e,t){var a=s[t]=p.fn[t],c="text"===t;p.fn[t]=function(e){var t=this;if(!l(t))return a.apply(t,arguments);if(e!==f)return o.call(t.filter(":tinymce"),e),a.apply(t.not(":tinymce"),arguments),t;// return original set for chaining d.each(["text","html","val"],function(e,t){var a=s[t]=d.fn[t],c="text"===t;d.fn[t]=function(e){var t=this;if(!u(t))return a.apply(t,arguments);if(e!==f)return o.call(t.filter(":tinymce"),e),a.apply(t.not(":tinymce"),arguments),t;// return original set for chaining
var i="",r=arguments;return(c?t:t.eq(0)).each(function(e,t){var n=u(t);i+=n?c?n.getContent().replace(/<(?:"[^"]*"|'[^']*'|[^'">])*>/g,""):n.getContent({save:!0}):a.apply(p(t),r)}),i}}), var i="",r=arguments;return(c?t:t.eq(0)).each(function(e,t){var n=l(t);i+=n?c?n.getContent().replace(/<(?:"[^"]*"|'[^']*'|[^'">])*>/g,""):n.getContent({save:!0}):a.apply(d(t),r)}),i}}),
// Makes it possible to use $('#id').append("content"); to append contents to the TinyMCE editor iframe // Makes it possible to use $('#id').append("content"); to append contents to the TinyMCE editor iframe
p.each(["append","prepend"],function(e,t){var n=s[t]=p.fn[t],r="prepend"===t;p.fn[t]=function(i){var e=this;return l(e)?i!==f?("string"==typeof i&&e.filter(":tinymce").each(function(e,t){var n=u(t);n&&n.setContent(r?i+n.getContent():n.getContent()+i)}),n.apply(e.not(":tinymce"),arguments),e):void 0:n.apply(e,arguments)}}), d.each(["append","prepend"],function(e,t){var n=s[t]=d.fn[t],r="prepend"===t;d.fn[t]=function(i){var e=this;return u(e)?i!==f?("string"==typeof i&&e.filter(":tinymce").each(function(e,t){var n=l(t);n&&n.setContent(r?i+n.getContent():n.getContent()+i)}),n.apply(e.not(":tinymce"),arguments),e):void 0:n.apply(e,arguments)}}),
// Makes sure that the editor instance gets properly destroyed when the parent element is removed // Makes sure that the editor instance gets properly destroyed when the parent element is removed
p.each(["remove","replaceWith","replaceAll","empty"],function(e,t){var n=s[t]=p.fn[t];p.fn[t]=function(){return r.call(this,t),n.apply(this,arguments)}}),s.attr=p.fn.attr, d.each(["remove","replaceWith","replaceAll","empty"],function(e,t){var n=s[t]=d.fn[t];d.fn[t]=function(){return r.call(this,t),n.apply(this,arguments)}}),s.attr=d.fn.attr,
// Makes sure that $('#tinymce_id').attr('value') gets the editors current HTML contents // Makes sure that $('#tinymce_id').attr('value') gets the editors current HTML contents
p.fn.attr=function(e,t){var n=this,i=arguments;if(!e||"value"!==e||!l(n))return s.attr.apply(n,i);if(t!==f)return o.call(n.filter(":tinymce"),t),s.attr.apply(n.not(":tinymce"),i),n;// return original set for chaining d.fn.attr=function(e,t){var n=this,i=arguments;if(!e||"value"!==e||!u(n))return s.attr.apply(n,i);if(t!==f)return o.call(n.filter(":tinymce"),t),s.attr.apply(n.not(":tinymce"),i),n;// return original set for chaining
var r=n[0],a=u(r);return a?a.getContent({save:!0}):s.attr.apply(p(r),i)}}}(); var r=n[0],a=l(r);return a?a.getContent({save:!0}):s.attr.apply(d(r),i)}}}();

View File

@ -1,389 +1,416 @@
tinymce.addI18n('zh_CN',{ tinymce.addI18n('zh_CN',{
"Redo": "\u91cd\u505a", "Redo": "恢复",
"Undo": "\u64a4\u9500", "Undo": "撤销",
"Cut": "\u526a\u5207", "Cut": "剪切",
"Copy": "\u590d\u5236", "Copy": "复制",
"Paste": "\u7c98\u8d34", "Paste": "粘贴",
"Select all": "\u5168\u9009", "Select all": "全选",
"New document": "\u65b0\u6587\u4ef6", "New document": "新建文档",
"Ok": "\u786e\u5b9a", "Ok": "确定",
"Cancel": "\u53d6\u6d88", "Cancel": "取消",
"Visual aids": "\u7f51\u683c\u7ebf", "Visual aids": "网格线",
"Bold": "\u7c97\u4f53", "Bold": "粗体",
"Italic": "\u659c\u4f53", "Italic": "斜体",
"Underline": "\u4e0b\u5212\u7ebf", "Underline": "下划线",
"Strikethrough": "\u5220\u9664\u7ebf", "Strikethrough": "删除线",
"Superscript": "\u4e0a\u6807", "Superscript": "上标",
"Subscript": "\u4e0b\u6807", "Subscript": "下标",
"Clear formatting": "\u6e05\u9664\u683c\u5f0f", "Clear formatting": "清除格式",
"Align left": "\u5de6\u8fb9\u5bf9\u9f50", "Align left": "左对齐",
"Align center": "\u4e2d\u95f4\u5bf9\u9f50", "Align center": "居中",
"Align right": "\u53f3\u8fb9\u5bf9\u9f50", "Align right": "右对齐",
"Justify": "\u4e24\u7aef\u5bf9\u9f50", "Justify": "两端对齐",
"Bullet list": "\u9879\u76ee\u7b26\u53f7", "Bullet list": "符号列表",
"Numbered list": "\u7f16\u53f7\u5217\u8868", "Numbered list": "数字列表",
"Decrease indent": "\u51cf\u5c11\u7f29\u8fdb", "Decrease indent": "减少缩进",
"Increase indent": "\u589e\u52a0\u7f29\u8fdb", "Increase indent": "增加缩进",
"Close": "\u5173\u95ed", "Close": "关闭",
"Formats": "\u683c\u5f0f", "Formats": "格式",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u4f60\u7684\u6d4f\u89c8\u5668\u4e0d\u652f\u6301\u6253\u5f00\u526a\u8d34\u677f\uff0c\u8bf7\u4f7f\u7528Ctrl+X\/C\/V\u7b49\u5feb\u6377\u952e\u3002", "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "当前浏览器不支持访问剪贴板请使用快捷键Ctrl+X/C/V复制粘贴",
"Headers": "\u6807\u9898", "Headers": "标题",
"Header 1": "\u6807\u98981", "Header 1": "标题1",
"Header 2": "\u6807\u98982", "Header 2": "标题2",
"Header 3": "\u6807\u98983", "Header 3": "标题3",
"Header 4": "\u6807\u98984", "Header 4": "标题4",
"Header 5": "\u6807\u98985", "Header 5": "标题5",
"Header 6": "\u6807\u98986", "Header 6": "标题6",
"Headings": "\u6807\u9898", "Headings": "标题",
"Heading 1": "\u6807\u98981", "Heading 1": "标题1",
"Heading 2": "\u6807\u98982", "Heading 2": "标题2",
"Heading 3": "\u6807\u98983", "Heading 3": "标题3",
"Heading 4": "\u6807\u98984", "Heading 4": "标题4",
"Heading 5": "\u6807\u98985", "Heading 5": "标题5",
"Heading 6": "\u6807\u98986", "Heading 6": "标题6",
"Preformatted": "\u9884\u5148\u683c\u5f0f\u5316\u7684", "Preformatted": "预格式化",
"Div": "Div", "Div": "Div区块",
"Pre": "Pre", "Pre": "预格式文本",
"Code": "\u4ee3\u7801", "Code": "代码",
"Paragraph": "\u6bb5\u843d", "Paragraph": "段落",
"Blockquote": "\u5f15\u6587\u533a\u5757", "Blockquote": "引用",
"Inline": "\u6587\u672c", "Inline": "文本",
"Blocks": "\u57fa\u5757", "Blocks": "区块",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u5f53\u524d\u4e3a\u7eaf\u6587\u672c\u7c98\u8d34\u6a21\u5f0f\uff0c\u518d\u6b21\u70b9\u51fb\u53ef\u4ee5\u56de\u5230\u666e\u901a\u7c98\u8d34\u6a21\u5f0f\u3002", "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "当前为纯文本粘贴模式,再次点击可以回到普通粘贴模式。",
"Fonts": "\u5b57\u4f53", "Fonts": "字体",
"Font Sizes": "\u5b57\u53f7", "Font Sizes": "字号",
"Class": "\u7c7b\u578b", "Class": "Class",
"Browse for an image": "\u6d4f\u89c8\u56fe\u50cf", "Browse for an image": "浏览图像",
"OR": "\u6216", "OR": "",
"Drop an image here": "\u62d6\u653e\u4e00\u5f20\u56fe\u50cf\u81f3\u6b64", "Drop an image here": "拖放一张图片文件至此",
"Upload": "\u4e0a\u4f20", "Upload": "上传",
"Block": "\u5757", "Block": "",
"Align": "\u5bf9\u9f50", "Align": "对齐",
"Default": "\u9ed8\u8ba4", "Default": "默认",
"Circle": "\u7a7a\u5fc3\u5706", "Circle": "空心圆",
"Disc": "\u5b9e\u5fc3\u5706", "Disc": "实心圆",
"Square": "\u65b9\u5757", "Square": "方块",
"Lower Alpha": "\u5c0f\u5199\u82f1\u6587\u5b57\u6bcd", "Lower Alpha": "小写英文字母",
"Lower Greek": "\u5c0f\u5199\u5e0c\u814a\u5b57\u6bcd", "Lower Greek": "小写希腊字母",
"Lower Roman": "\u5c0f\u5199\u7f57\u9a6c\u5b57\u6bcd", "Lower Roman": "小写罗马字母",
"Upper Alpha": "\u5927\u5199\u82f1\u6587\u5b57\u6bcd", "Upper Alpha": "大写英文字母",
"Upper Roman": "\u5927\u5199\u7f57\u9a6c\u5b57\u6bcd", "Upper Roman": "大写罗马字母",
"Anchor...": "\u951a\u70b9...", "Anchor...": "锚点...",
"Name": "\u540d\u79f0", "Name": "名称",
"Id": "\u6807\u8bc6\u7b26", "Id": "id",
"Id should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores.": "\u6807\u8bc6\u7b26\u5e94\u8be5\u4ee5\u5b57\u6bcd\u5f00\u5934\uff0c\u540e\u8ddf\u5b57\u6bcd\u3001\u6570\u5b57\u3001\u7834\u6298\u53f7\u3001\u70b9\u3001\u5192\u53f7\u6216\u4e0b\u5212\u7ebf\u3002", "Id should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores.": "id应该以字母开头后跟字母、数字、横线、点、冒号或下划线。",
"You have unsaved changes are you sure you want to navigate away?": "\u4f60\u8fd8\u6709\u6587\u6863\u5c1a\u672a\u4fdd\u5b58\uff0c\u786e\u5b9a\u8981\u79bb\u5f00\uff1f", "You have unsaved changes are you sure you want to navigate away?": "你对文档的修改尚未保存,确定离开吗?",
"Restore last draft": "\u6062\u590d\u4e0a\u6b21\u7684\u8349\u7a3f", "Restore last draft": "恢复上次的草稿",
"Special characters...": "\u7279\u6b8a\u5b57\u7b26...", "Special characters...": "特殊字符...",
"Source code": "\u6e90\u4ee3\u7801", "Source code": "HTML源码",
"Insert\/Edit code sample": "\u63d2\u5165\/\u7f16\u8f91\u4ee3\u7801\u793a\u4f8b", "Insert\/Edit code sample": "插入/编辑代码示例",
"Language": "\u8bed\u8a00", "Language": "语言",
"Code sample...": "\u793a\u4f8b\u4ee3\u7801...", "Code sample...": "代码示例...",
"Color Picker": "\u9009\u8272\u5668", "Color Picker": "选取颜色",
"R": "R", "R": "R",
"G": "G", "G": "G",
"B": "B", "B": "B",
"Left to right": "\u4ece\u5de6\u5230\u53f3", "Left to right": "从左到右",
"Right to left": "\u4ece\u53f3\u5230\u5de6", "Right to left": "从右到左",
"Emoticons...": "\u8868\u60c5\u7b26\u53f7...", "Emoticons...": "表情符号...",
"Metadata and Document Properties": "\u5143\u6570\u636e\u548c\u6587\u6863\u5c5e\u6027", "Metadata and Document Properties": "元数据和文档属性",
"Title": "\u6807\u9898", "Title": "标题",
"Keywords": "\u5173\u952e\u8bcd", "Keywords": "关键词",
"Description": "\u63cf\u8ff0", "Description": "描述",
"Robots": "\u673a\u5668\u4eba", "Robots": "机器人",
"Author": "\u4f5c\u8005", "Author": "作者",
"Encoding": "\u7f16\u7801", "Encoding": "编码",
"Fullscreen": "\u5168\u5c4f", "Fullscreen": "全屏",
"Action": "\u64cd\u4f5c", "Action": "操作",
"Shortcut": "\u5feb\u6377\u952e", "Shortcut": "快捷键",
"Help": "\u5e2e\u52a9", "Help": "帮助",
"Address": "\u5730\u5740", "Address": "地址",
"Focus to menubar": "\u79fb\u52a8\u7126\u70b9\u5230\u83dc\u5355\u680f", "Focus to menubar": "移动焦点到菜单栏",
"Focus to toolbar": "\u79fb\u52a8\u7126\u70b9\u5230\u5de5\u5177\u680f", "Focus to toolbar": "移动焦点到工具栏",
"Focus to element path": "\u79fb\u52a8\u7126\u70b9\u5230\u5143\u7d20\u8def\u5f84", "Focus to element path": "移动焦点到元素路径",
"Focus to contextual toolbar": "\u79fb\u52a8\u7126\u70b9\u5230\u4e0a\u4e0b\u6587\u83dc\u5355", "Focus to contextual toolbar": "移动焦点到上下文菜单",
"Insert link (if link plugin activated)": "\u63d2\u5165\u94fe\u63a5 (\u5982\u679c\u94fe\u63a5\u63d2\u4ef6\u5df2\u6fc0\u6d3b)", "Insert link (if link plugin activated)": "插入链接 (如果链接插件已激活)",
"Save (if save plugin activated)": "\u4fdd\u5b58(\u5982\u679c\u4fdd\u5b58\u63d2\u4ef6\u5df2\u6fc0\u6d3b)", "Save (if save plugin activated)": "保存(如果保存插件已激活)",
"Find (if searchreplace plugin activated)": "\u67e5\u627e(\u5982\u679c\u67e5\u627e\u66ff\u6362\u63d2\u4ef6\u5df2\u6fc0\u6d3b)", "Find (if searchreplace plugin activated)": "查找(如果查找替换插件已激活)",
"Plugins installed ({0}):": "\u5df2\u5b89\u88c5\u63d2\u4ef6 ({0}):", "Plugins installed ({0}):": "已安装插件 ({0})",
"Premium plugins:": "\u4f18\u79c0\u63d2\u4ef6\uff1a", "Premium plugins:": "优秀插件:",
"Learn more...": "\u4e86\u89e3\u66f4\u591a...", "Learn more...": "了解更多...",
"You are using {0}": "\u4f60\u6b63\u5728\u4f7f\u7528 {0}", "You are using {0}": "你正在使用 {0}",
"Plugins": "\u63d2\u4ef6", "Plugins": "插件",
"Handy Shortcuts": "\u5feb\u6377\u952e", "Handy Shortcuts": "快捷键",
"Horizontal line": "\u6c34\u5e73\u5206\u5272\u7ebf", "Horizontal line": "水平分割线",
"Insert\/edit image": "\u63d2\u5165\/\u7f16\u8f91\u56fe\u7247", "Insert\/edit image": "插入/编辑图片",
"Image description": "\u56fe\u7247\u63cf\u8ff0", "Image description": "图片描述",
"Source": "\u5730\u5740", "Source": "地址",
"Dimensions": "\u5927\u5c0f", "Dimensions": "大小",
"Constrain proportions": "\u4fdd\u6301\u7eb5\u6a2a\u6bd4", "Constrain proportions": "保持宽高比",
"General": "\u666e\u901a", "General": "常规",
"Advanced": "\u9ad8\u7ea7", "Advanced": "高级",
"Style": "\u6837\u5f0f", "Style": "样式",
"Vertical space": "\u5782\u76f4\u8fb9\u8ddd", "Vertical space": "垂直边距",
"Horizontal space": "\u6c34\u5e73\u8fb9\u8ddd", "Horizontal space": "水平边距",
"Border": "\u8fb9\u6846", "Border": "边框",
"Insert image": "\u63d2\u5165\u56fe\u7247", "Insert image": "插入图片",
"Image...": "\u56fe\u7247...", "Image...": "图片...",
"Image list": "\u56fe\u7247\u5217\u8868", "Image list": "图片列表",
"Rotate counterclockwise": "\u9006\u65f6\u9488\u65cb\u8f6c", "Rotate counterclockwise": "逆时针旋转",
"Rotate clockwise": "\u987a\u65f6\u9488\u65cb\u8f6c", "Rotate clockwise": "顺时针旋转",
"Flip vertically": "\u5782\u76f4\u7ffb\u8f6c", "Flip vertically": "垂直翻转",
"Flip horizontally": "\u6c34\u5e73\u7ffb\u8f6c", "Flip horizontally": "水平翻转",
"Edit image": "\u7f16\u8f91\u56fe\u7247", "Edit image": "编辑图片",
"Image options": "\u56fe\u7247\u9009\u9879", "Image options": "图片选项",
"Zoom in": "\u653e\u5927", "Zoom in": "放大",
"Zoom out": "\u7f29\u5c0f", "Zoom out": "缩小",
"Crop": "\u88c1\u526a", "Crop": "裁剪",
"Resize": "\u8c03\u6574\u5927\u5c0f", "Resize": "调整大小",
"Orientation": "\u65b9\u5411", "Orientation": "方向",
"Brightness": "\u4eae\u5ea6", "Brightness": "亮度",
"Sharpen": "\u9510\u5316", "Sharpen": "锐化",
"Contrast": "\u5bf9\u6bd4\u5ea6", "Contrast": "对比度",
"Color levels": "\u989c\u8272\u5c42\u6b21", "Color levels": "色阶",
"Gamma": "\u4f3d\u9a6c\u503c", "Gamma": "伽马值",
"Invert": "\u53cd\u8f6c", "Invert": "反转",
"Apply": "\u5e94\u7528", "Apply": "应用",
"Back": "\u540e\u9000", "Back": "后退",
"Insert date\/time": "\u63d2\u5165\u65e5\u671f\/\u65f6\u95f4", "Insert date\/time": "插入日期/时间",
"Date\/time": "\u65e5\u671f\/\u65f6\u95f4", "Date\/time": "日期/时间",
"Insert\/Edit Link": "\u63d2\u5165\/\u7f16\u8f91\u94fe\u63a5", "Insert\/Edit Link": "插入/编辑链接",
"Insert\/edit link": "\u63d2\u5165\/\u7f16\u8f91\u94fe\u63a5", "Insert\/edit link": "插入/编辑链接",
"Text to display": "\u663e\u793a\u6587\u5b57", "Text to display": "显示文字",
"Url": "\u5730\u5740", "Url": "地址",
"Open link in...": "\u94fe\u63a5\u6253\u5f00\u4f4d\u7f6e...", "Open link in...": "链接打开方式...",
"Current window": "\u5f53\u524d\u7a97\u53e3", "Current window": "当前窗口打开",
"None": "\u65e0", "None": "在当前窗口/框架打开",
"New window": "\u5728\u65b0\u7a97\u53e3\u6253\u5f00", "New window": "在新窗口打开",
"Remove link": "\u5220\u9664\u94fe\u63a5", "Remove link": "删除链接",
"Anchors": "\u951a\u70b9", "Anchors": "锚点",
"Link...": "\u94fe\u63a5...", "Link...": "链接...",
"Paste or type a link": "\u7c98\u8d34\u6216\u8f93\u5165\u94fe\u63a5", "Paste or type a link": "粘贴或输入链接",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "\u4f60\u6240\u586b\u5199\u7684URL\u5730\u5740\u4e3a\u90ae\u4ef6\u5730\u5740\uff0c\u9700\u8981\u52a0\u4e0amailto:\u524d\u7f00\u5417\uff1f", "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "你所填写的URL地址为邮件地址需要加上mailto:前缀吗?",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "\u4f60\u6240\u586b\u5199\u7684URL\u5730\u5740\u5c5e\u4e8e\u5916\u90e8\u94fe\u63a5\uff0c\u9700\u8981\u52a0\u4e0ahttp:\/\/:\u524d\u7f00\u5417\uff1f", "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "你所填写的URL地址属于外部链接需要加上http://:前缀吗?",
"Link list": "\u94fe\u63a5\u5217\u8868", "Link list": "链接列表",
"Insert video": "\u63d2\u5165\u89c6\u9891", "Insert video": "插入视频",
"Insert\/edit video": "\u63d2\u5165\/\u7f16\u8f91\u89c6\u9891", "Insert\/edit video": "插入/编辑视频",
"Insert\/edit media": "\u63d2\u5165\/\u7f16\u8f91\u5a92\u4f53", "Insert\/edit media": "插入/编辑媒体",
"Alternative source": "\u955c\u50cf", "Alternative source": "替代资源",
"Alternative source URL": "\u66ff\u4ee3\u6765\u6e90\u7f51\u5740", "Alternative image URL": "资源备用地址",
"Media poster (Image URL)": "\u5c01\u9762(\u56fe\u7247\u5730\u5740)", "Media poster (Image URL)": "封面(图片地址)",
"Paste your embed code below:": "\u5c06\u5185\u5d4c\u4ee3\u7801\u7c98\u8d34\u5728\u4e0b\u9762:", "Paste your embed code below:": "将内嵌代码粘贴在下面:",
"Embed": "\u5185\u5d4c", "Embed": "内嵌",
"Media...": "\u591a\u5a92\u4f53...", "Media...": "多媒体...",
"Nonbreaking space": "\u4e0d\u95f4\u65ad\u7a7a\u683c", "Nonbreaking space": "不间断空格",
"Page break": "\u5206\u9875\u7b26", "Page break": "分页符",
"Paste as text": "\u7c98\u8d34\u4e3a\u6587\u672c", "Paste as text": "粘贴为文本",
"Preview": "\u9884\u89c8", "Preview": "预览",
"Print...": "\u6253\u5370...", "Print...": "打印...",
"Save": "\u4fdd\u5b58", "Save": "保存",
"Find": "\u67e5\u627e", "Find": "查找",
"Replace with": "\u66ff\u6362\u4e3a", "Replace with": "替换为",
"Replace": "\u66ff\u6362", "Replace": "替换",
"Replace all": "\u5168\u90e8\u66ff\u6362", "Replace all": "替换全部",
"Previous": "\u4e0a\u4e00\u4e2a", "Previous": "上一个",
"Next": "\u4e0b\u4e00\u4e2a", "Next": "下一个",
"Find and replace...": "\u67e5\u627e\u5e76\u66ff\u6362...", "Find and replace...": "查找并替换...",
"Could not find the specified string.": "\u672a\u627e\u5230\u641c\u7d22\u5185\u5bb9.", "Could not find the specified string.": "未找到搜索内容。",
"Match case": "\u533a\u5206\u5927\u5c0f\u5199", "Match case": "区分大小写",
"Find whole words only": "\u5168\u5b57\u5339\u914d", "Find whole words only": "全单词匹配",
"Spell check": "\u62fc\u5199\u68c0\u67e5", "Spell check": "拼写检查",
"Ignore": "\u5ffd\u7565", "Ignore": "忽略",
"Ignore all": "\u5168\u90e8\u5ffd\u7565", "Ignore all": "忽略全部",
"Finish": "\u5b8c\u6210", "Finish": "完成",
"Add to Dictionary": "\u6dfb\u52a0\u5230\u5b57\u5178", "Add to Dictionary": "添加到字典",
"Insert table": "\u63d2\u5165\u8868\u683c", "Insert table": "插入表格",
"Table properties": "\u8868\u683c\u5c5e\u6027", "Table properties": "表格属性",
"Delete table": "\u5220\u9664\u8868\u683c", "Delete table": "删除表格",
"Cell": "\u5355\u5143\u683c", "Cell": "单元格",
"Row": "\u884c", "Row": "行",
"Column": "\u5217", "Column": "列",
"Cell properties": "\u5355\u5143\u683c\u5c5e\u6027", "Cell properties": "单元格属性",
"Merge cells": "\u5408\u5e76\u5355\u5143\u683c", "Merge cells": "合并单元格",
"Split cell": "\u62c6\u5206\u5355\u5143\u683c", "Split cell": "拆分单元格",
"Insert row before": "\u5728\u4e0a\u65b9\u63d2\u5165", "Insert row before": "在上方插入",
"Insert row after": "\u5728\u4e0b\u65b9\u63d2\u5165", "Insert row after": "在下方插入",
"Delete row": "\u5220\u9664\u884c", "Delete row": "删除行",
"Row properties": "\u884c\u5c5e\u6027", "Row properties": "行属性",
"Cut row": "\u526a\u5207\u884c", "Cut row": "剪切行",
"Copy row": "\u590d\u5236\u884c", "Copy row": "复制行",
"Paste row before": "\u7c98\u8d34\u5230\u4e0a\u65b9", "Paste row before": "粘贴到上方",
"Paste row after": "\u7c98\u8d34\u5230\u4e0b\u65b9", "Paste row after": "粘贴到下方",
"Insert column before": "\u5728\u5de6\u4fa7\u63d2\u5165", "Insert column before": "在左侧插入",
"Insert column after": "\u5728\u53f3\u4fa7\u63d2\u5165", "Insert column after": "在右侧插入",
"Delete column": "\u5220\u9664\u5217", "Delete column": "删除列",
"Cols": "\u5217", "Cols": "列",
"Rows": "\u884c", "Rows": "行",
"Width": "\u5bbd", "Width": "宽",
"Height": "\u9ad8", "Height": "高",
"Cell spacing": "\u5355\u5143\u683c\u5916\u95f4\u8ddd", "Cell spacing": "单元格外间距",
"Cell padding": "\u5355\u5143\u683c\u5185\u8fb9\u8ddd", "Cell padding": "单元格内边距",
"Show caption": "\u663e\u793a\u6807\u9898", "Show caption": "显示标题",
"Left": "\u5de6\u5bf9\u9f50", "Left": "左对齐",
"Center": "\u5c45\u4e2d", "Center": "居中",
"Right": "\u53f3\u5bf9\u9f50", "Right": "右对齐",
"Cell type": "\u5355\u5143\u683c\u7c7b\u578b", "Cell type": "单元格类型",
"Scope": "\u8303\u56f4", "Scope": "范围",
"Alignment": "\u5bf9\u9f50\u65b9\u5f0f", "Alignment": "对齐方式",
"H Align": "\u6c34\u5e73\u5bf9\u9f50", "H Align": "水平对齐",
"V Align": "\u5782\u76f4\u5bf9\u9f50", "V Align": "垂直对齐",
"Top": "\u9876\u90e8\u5bf9\u9f50", "Top": "顶部对齐",
"Middle": "\u5782\u76f4\u5c45\u4e2d", "Middle": "垂直居中",
"Bottom": "\u5e95\u90e8\u5bf9\u9f50", "Bottom": "底部对齐",
"Header cell": "\u8868\u5934\u5355\u5143\u683c", "Header cell": "表头单元格",
"Row group": "\u884c\u7ec4", "Row group": "行组",
"Column group": "\u5217\u7ec4", "Column group": "列组",
"Row type": "\u884c\u7c7b\u578b", "Row type": "行类型",
"Header": "\u8868\u5934", "Header": "表头",
"Body": "\u8868\u4f53", "Body": "表体",
"Footer": "\u8868\u5c3e", "Footer": "表尾",
"Border color": "\u8fb9\u6846\u989c\u8272", "Border color": "边框颜色",
"Insert template...": "\u63d2\u5165\u6a21\u677f...", "Insert template...": "插入模板...",
"Templates": "\u6a21\u677f", "Templates": "模板",
"Template": "\u6a21\u677f", "Template": "模板",
"Text color": "\u6587\u5b57\u989c\u8272", "Text color": "文字颜色",
"Background color": "\u80cc\u666f\u8272", "Background color": "背景色",
"Custom...": "\u81ea\u5b9a\u4e49...", "Custom...": "自定义...",
"Custom color": "\u81ea\u5b9a\u4e49\u989c\u8272", "Custom color": "自定义颜色",
"No color": "\u65e0", "No color": "无",
"Remove color": "\u79fb\u9664\u989c\u8272", "Remove color": "删除颜色",
"Table of Contents": "\u5185\u5bb9\u5217\u8868", "Table of Contents": "目录",
"Show blocks": "\u663e\u793a\u533a\u5757\u8fb9\u6846", "Show blocks": "显示区块边框",
"Show invisible characters": "\u663e\u793a\u4e0d\u53ef\u89c1\u5b57\u7b26", "Show invisible characters": "显示不可见字符",
"Word count": "\u5b57\u6570", "Word count": "字数统计",
"Words: {0}": "\u5b57\u6570\uff1a{0}", "Words: {0}": "字数:{0}",
"{0} words": "{0} \u5b57", "{0} words": "{0} 个字",
"File": "\u6587\u4ef6", "File": "文件",
"Edit": "\u7f16\u8f91", "Edit": "编辑",
"Insert": "\u63d2\u5165", "Insert": "插入",
"View": "\u89c6\u56fe", "View": "查看",
"Format": "\u683c\u5f0f", "Format": "格式",
"Table": "\u8868\u683c", "Table": "表格",
"Tools": "\u5de5\u5177", "Tools": "工具",
"Powered by {0}": "\u7531{0}\u9a71\u52a8", "Powered by {0}": "Powered by {0}",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u5728\u7f16\u8f91\u533a\u6309ALT-F9\u6253\u5f00\u83dc\u5355\uff0c\u6309ALT-F10\u6253\u5f00\u5de5\u5177\u680f\uff0c\u6309ALT-0\u67e5\u770b\u5e2e\u52a9", "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "在编辑区按ALT+F9打开菜单按ALT+F10打开工具栏按ALT+0查看帮助",
"Image title": "\u56fe\u7247\u6807\u9898", "Image title": "图片标题",
"Border width": "\u8fb9\u6846\u5bbd\u5ea6", "Border width": "边框宽度",
"Border style": "\u8fb9\u6846\u6837\u5f0f", "Border style": "边框样式",
"Error": "\u9519\u8bef", "Error": "错误",
"Warn": "\u8b66\u544a", "Warn": "警告",
"Valid": "\u6709\u6548", "Valid": "有效",
"To open the popup, press Shift+Enter": "\u6309Shitf+Enter\u952e\u6253\u5f00\u5bf9\u8bdd\u6846", "To open the popup, press Shift+Enter": "此快捷为软回车(插入<br>",
"Rich Text Area. Press ALT-0 for help.": "\u7f16\u8f91\u533a\u3002\u6309Alt+0\u952e\u6253\u5f00\u5e2e\u52a9\u3002", "Rich Text Area. Press ALT-0 for help.": "编辑区. 按Alt+0键打开帮助",
"System Font": "\u7cfb\u7edf\u5b57\u4f53", "System Font": "默认字体",
"Failed to upload image: {0}": "\u56fe\u7247\u4e0a\u4f20\u5931\u8d25: {0}", "Failed to upload image: {0}": "图片上传失败: {0}",
"Failed to load plugin: {0} from url {1}": "\u63d2\u4ef6\u52a0\u8f7d\u5931\u8d25: {0} \u6765\u81ea\u94fe\u63a5 {1}", "Failed to load plugin: {0} from url {1}": "插件加载失败: {0} - {1}",
"Failed to load plugin url: {0}": "\u63d2\u4ef6\u52a0\u8f7d\u5931\u8d25 \u94fe\u63a5: {0}", "Failed to load plugin url: {0}": "插件加载失败: {0}",
"Failed to initialize plugin: {0}": "\u63d2\u4ef6\u521d\u59cb\u5316\u5931\u8d25: {0}", "Failed to initialize plugin: {0}": "插件初始化失败: {0}",
"example": "\u793a\u4f8b", "example": "示例",
"Search": "\u641c\u7d22", "Search": "查找",
"All": "\u5168\u90e8", "All": "全部",
"Currency": "\u8d27\u5e01", "Currency": "货币",
"Text": "\u6587\u5b57", "Text": "文本",
"Quotations": "\u5f15\u7528", "Quotations": "引用",
"Mathematical": "\u6570\u5b66", "Mathematical": "数学运算符",
"Extended Latin": "\u62c9\u4e01\u8bed\u6269\u5145", "Extended Latin": "拉丁语扩充",
"Symbols": "\u7b26\u53f7", "Symbols": "符号",
"Arrows": "\u7bad\u5934", "Arrows": "箭头",
"User Defined": "\u81ea\u5b9a\u4e49", "User Defined": "自定义",
"dollar sign": "\u7f8e\u5143\u7b26\u53f7", "dollar sign": "美元",
"currency sign": "\u8d27\u5e01\u7b26\u53f7", "currency sign": "货币",
"euro-currency sign": "\u6b27\u5143\u7b26\u53f7", "euro-currency sign": "欧元",
"colon sign": "\u5192\u53f7", "colon sign": "冒号",
"cruzeiro sign": "\u514b\u9c81\u8d5b\u7f57\u5e01\u7b26\u53f7", "cruzeiro sign": "克鲁赛罗币",
"french franc sign": "\u6cd5\u90ce\u7b26\u53f7", "french franc sign": "法郎",
"lira sign": "\u91cc\u62c9\u7b26\u53f7", "lira sign": "里拉",
"mill sign": "\u5bc6\u5c14\u7b26\u53f7", "mill sign": "密尔",
"naira sign": "\u5948\u62c9\u7b26\u53f7", "naira sign": "奈拉",
"peseta sign": "\u6bd4\u585e\u5854\u7b26\u53f7", "peseta sign": "比塞塔",
"rupee sign": "\u5362\u6bd4\u7b26\u53f7", "rupee sign": "卢比",
"won sign": "\u97e9\u5143\u7b26\u53f7", "won sign": "韩元",
"new sheqel sign": "\u65b0\u8c22\u514b\u5c14\u7b26\u53f7", "new sheqel sign": "新谢克尔",
"dong sign": "\u8d8a\u5357\u76fe\u7b26\u53f7", "dong sign": "越南盾",
"kip sign": "\u8001\u631d\u57fa\u666e\u7b26\u53f7", "kip sign": "老挝基普",
"tugrik sign": "\u56fe\u683c\u91cc\u514b\u7b26\u53f7", "tugrik sign": "图格里克",
"drachma sign": "\u5fb7\u62c9\u514b\u9a6c\u7b26\u53f7", "drachma sign": "德拉克马",
"german penny symbol": "\u5fb7\u56fd\u4fbf\u58eb\u7b26\u53f7", "german penny symbol": "德国便士",
"peso sign": "\u6bd4\u7d22\u7b26\u53f7", "peso sign": "比索",
"guarani sign": "\u74dc\u62c9\u5c3c\u7b26\u53f7", "guarani sign": "瓜拉尼",
"austral sign": "\u6fb3\u5143\u7b26\u53f7", "austral sign": "澳元",
"hryvnia sign": "\u683c\u91cc\u592b\u5c3c\u4e9a\u7b26\u53f7", "hryvnia sign": "格里夫尼亚",
"cedi sign": "\u585e\u5730\u7b26\u53f7", "cedi sign": "塞地",
"livre tournois sign": "\u91cc\u5f17\u5f17\u5c14\u7b26\u53f7", "livre tournois sign": "里弗弗尔",
"spesmilo sign": "spesmilo\u7b26\u53f7", "spesmilo sign": "一千spesoj的货币符号该货币未使用",
"tenge sign": "\u575a\u6208\u7b26\u53f7", "tenge sign": "坚戈",
"indian rupee sign": "\u5370\u5ea6\u5362\u6bd4", "indian rupee sign": "印度卢比",
"turkish lira sign": "\u571f\u8033\u5176\u91cc\u62c9", "turkish lira sign": "土耳其里拉",
"nordic mark sign": "\u5317\u6b27\u9a6c\u514b", "nordic mark sign": "北欧马克",
"manat sign": "\u9a6c\u7eb3\u7279\u7b26\u53f7", "manat sign": "马纳特",
"ruble sign": "\u5362\u5e03\u7b26\u53f7", "ruble sign": "卢布",
"yen character": "\u65e5\u5143\u5b57\u6837", "yen character": "日元",
"yuan character": "\u4eba\u6c11\u5e01\u5143\u5b57\u6837", "yuan character": "人民币元",
"yuan character, in hong kong and taiwan": "\u5143\u5b57\u6837\uff08\u6e2f\u53f0\u5730\u533a\uff09", "yuan character, in hong kong and taiwan": "元的繁体字",
"yen\/yuan character variant one": "\u5143\u5b57\u6837\uff08\u5927\u5199\uff09", "yen\/yuan character variant one": "元(大写)",
"Loading emoticons...": "\u52a0\u8f7d\u8868\u60c5\u7b26\u53f7...", "Loading emoticons...": "正在加载表情文字...",
"Could not load emoticons": "\u4e0d\u80fd\u52a0\u8f7d\u8868\u60c5\u7b26\u53f7", "Could not load emoticons": "不能加载表情文字",
"People": "\u4eba\u7c7b", "People": "人类",
"Animals and Nature": "\u52a8\u7269\u548c\u81ea\u7136", "Animals and Nature": "动物和自然",
"Food and Drink": "\u98df\u7269\u548c\u996e\u54c1", "Food and Drink": "食物和饮品",
"Activity": "\u6d3b\u52a8", "Activity": "活动",
"Travel and Places": "\u65c5\u6e38\u548c\u5730\u70b9", "Travel and Places": "旅游和地点",
"Objects": "\u7269\u4ef6", "Objects": "物件",
"Flags": "\u65d7\u5e1c", "Flags": "旗帜",
"Characters": "\u5b57\u7b26", "Characters": "字数",
"Characters (no spaces)": "\u5b57\u7b26(\u65e0\u7a7a\u683c)", "Characters (no spaces)": "字数(不含空格)",
"Error: Form submit field collision.": "\u9519\u8bef: \u8868\u5355\u63d0\u4ea4\u5b57\u6bb5\u51b2\u7a81\u3002", "Error: Form submit field collision.": "错误: 表单提交字段冲突.",
"Error: No form element found.": "\u9519\u8bef: \u6ca1\u6709\u8868\u5355\u63a7\u4ef6\u3002", "Error: No form element found.": "错误: 未找到可用的form.",
"Update": "\u66f4\u65b0", "Update": "更新",
"Color swatch": "\u989c\u8272\u6837\u672c", "Color swatch": "颜色样本",
"Turquoise": "\u9752\u7eff\u8272", "Turquoise": "青绿",
"Green": "\u7eff\u8272", "Green": "绿色",
"Blue": "\u84dd\u8272", "Blue": "蓝色",
"Purple": "\u7d2b\u8272", "Purple": "紫色",
"Navy Blue": "\u6d77\u519b\u84dd", "Navy Blue": "海军蓝",
"Dark Turquoise": "\u6df1\u84dd\u7eff\u8272", "Dark Turquoise": "深蓝绿色",
"Dark Green": "\u6df1\u7eff\u8272", "Dark Green": "暗绿",
"Medium Blue": "\u4e2d\u84dd\u8272", "Medium Blue": "中蓝",
"Medium Purple": "\u4e2d\u7d2b\u8272", "Medium Purple": "中紫",
"Midnight Blue": "\u6df1\u84dd\u8272", "Midnight Blue": "深蓝",
"Yellow": "\u9ec4\u8272", "Yellow": "黄色",
"Orange": "\u6a59\u8272", "Orange": "橙色",
"Red": "\u7ea2\u8272", "Red": "红色",
"Light Gray": "\u6d45\u7070\u8272", "Light Gray": "浅灰",
"Gray": "\u7070\u8272", "Gray": "灰色",
"Dark Yellow": "\u6697\u9ec4\u8272", "Dark Yellow": "暗黄",
"Dark Orange": "\u6df1\u6a59\u8272", "Dark Orange": "暗橙",
"Dark Red": "\u6df1\u7ea2\u8272", "Dark Red": "暗红",
"Medium Gray": "\u4e2d\u7070\u8272", "Medium Gray": "中灰",
"Dark Gray": "\u6df1\u7070\u8272", "Dark Gray": "深灰",
"Black": "\u9ed1\u8272", "Black": "黑色",
"White": "\u767d\u8272", "White": "白色",
"Switch to or from fullscreen mode": "\u5207\u6362\u5168\u5c4f\u6a21\u5f0f", "Switch to or from fullscreen mode": "切换全屏模式",
"Open help dialog": "\u6253\u5f00\u5e2e\u52a9\u5bf9\u8bdd\u6846", "Open help dialog": "打开帮助对话框",
"history": "\u5386\u53f2", "history": "历史",
"styles": "\u6837\u5f0f", "styles": "样式",
"formatting": "\u683c\u5f0f\u5316", "formatting": "格式化",
"alignment": "\u5bf9\u9f50", "alignment": "对齐",
"indentation": "\u7f29\u8fdb", "indentation": "缩进",
"permanent pen": "\u8bb0\u53f7\u7b14", "permanent pen": "记号笔",
"comments": "\u5907\u6ce8", "comments": "注释",
"Anchor": "\u951a\u70b9", "Anchor": "锚点",
"Special character": "\u7279\u6b8a\u7b26\u53f7", "Special character": "特殊字符",
"Code sample": "\u4ee3\u7801\u793a\u4f8b", "Code sample": "代码示例",
"Color": "\u989c\u8272", "Color": "颜色",
"Emoticons": "\u8868\u60c5", "Emoticons": "表情",
"Document properties": "\u6587\u6863\u5c5e\u6027", "Document properties": "文档属性",
"Image": "\u56fe\u7247", "Image": "图片",
"Insert link": "\u63d2\u5165\u94fe\u63a5", "Insert link": "插入链接",
"Target": "\u6253\u5f00\u65b9\u5f0f", "Target": "目标",
"Link": "\u94fe\u63a5", "Link": "链接",
"Poster": "\u5c01\u9762", "Poster": "封面",
"Media": "\u5a92\u4f53", "Media": "音视频",
"Print": "\u6253\u5370", "Print": "打印",
"Prev": "\u4e0a\u4e00\u4e2a", "Prev": "上一个",
"Find and replace": "\u67e5\u627e\u548c\u66ff\u6362", "Find and replace": "查找并替换",
"Whole words": "\u5168\u5b57\u5339\u914d", "Whole words": "全字匹配",
"Spellcheck": "\u62fc\u5199\u68c0\u67e5", "Spellcheck": "拼写检查",
"Caption": "\u6807\u9898", "Caption": "标题",
"Insert template": "\u63d2\u5165\u6a21\u677f" "Insert template": "插入模板",
//以下为补充汉化内容 by 莫若卿
"Code view": "代码区域",
"Select...": "选择...",
"Format Painter": "格式刷",
"No templates defined.": "无内置模板",
"Special character...": "特殊字符...",
"Open link": "打开链接",
"None": "无",
"Count": "统计",
"Document": "整个文档",
"Selection": "选取部分",
"Words": "字词数",
"{0} characters": "{0} 个字符",
"Alternative source URL": "替代资源地址",
"Alternative description": "替代说明文字",
"Accessibility": "可访问性",
"Image is decorative": "仅用于装饰",
//5.6新增
"Cut column": "剪切列",
"Copy column": "复制列",
"Paste column before": "粘贴到前方",
"Paste column after": "粘贴到后方",
"Copy column": "复制列",
//帮助窗口内的文字
"Version": "版本",
"Keyboard Navigation": "键盘导航",
"Open popup menu for split buttons": "该组合键的作用是软回车插入br",
}); });

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function n(){}function o(n){return function(){return n}}function t(){return d}var e,r=tinymce.util.Tools.resolve("tinymce.PluginManager"),u=tinymce.util.Tools.resolve("tinymce.util.Tools"),l=function(n,t,e){var r="UL"===t?"InsertUnorderedList":"InsertOrderedList";n.execCommand(r,!1,!1===e?null:{"list-style-type":e})},i=function(e){e.addCommand("ApplyUnorderedListStyle",function(n,t){l(e,"UL",t["list-style-type"])}),e.addCommand("ApplyOrderedListStyle",function(n,t){l(e,"OL",t["list-style-type"])})},c=function(n){var t=n.getParam("advlist_number_styles","default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman");return t?t.split(/[ ,]/):[]},s=function(n){var t=n.getParam("advlist_bullet_styles","default,circle,square");return t?t.split(/[ ,]/):[]},f=o(!1),a=o(!0),d=(e={fold:function(n,t){return n()},is:f,isSome:f,isNone:a,getOr:m,getOrThunk:p,getOrDie:function(n){throw new Error(n||"error: getOrDie called on none.")},getOrNull:o(null),getOrUndefined:o(undefined),or:m,orThunk:p,map:t,each:n,bind:t,exists:f,forall:a,filter:t,equals:g,equals_:g,toArray:function(){return[]},toString:o("none()")},Object.freeze&&Object.freeze(e),e);function g(n){return n.isNone()}function p(n){return n()}function m(n){return n}function y(n,t,e){var r=function(n,t){for(var e=0;e<n.length;e++){if(t(n[e]))return e}return-1}(t.parents,L),i=-1!==r?t.parents.slice(0,r):t.parents,o=u.grep(i,N(n));return 0<o.length&&o[0].nodeName===e}function O(n,t,e,r,i,o){0<o.length?function(e,n,t,r,i,o){e.ui.registry.addSplitButton(n,{tooltip:t,icon:"OL"===i?"ordered-list":"unordered-list",presets:"listpreview",columns:3,fetch:function(n){n(u.map(o,function(n){return{type:"choiceitem",value:"default"===n?"":n,icon:"list-"+("OL"===i?"num":"bull")+"-"+("disc"===n||"decimal"===n?"default":n),text:function(n){return n.replace(/\-/g," ").replace(/\b\w/g,function(n){return n.toUpperCase()})}(n)}}))},onAction:function(){return e.execCommand(r)},onItemAction:function(n,t){l(e,i,t)},select:function(t){return S(e).map(function(n){return t===n}).getOr(!1)},onSetup:function(t){function n(n){t.setActive(y(e,n,i))}return e.on("NodeChange",n),function(){return e.off("NodeChange",n)}}})}(n,t,e,r,i,o):function(e,n,t,r,i){e.ui.registry.addToggleButton(n,{active:!1,tooltip:t,icon:"OL"===i?"ordered-list":"unordered-list",onSetup:function(t){function n(n){t.setActive(y(e,n,i))}return e.on("NodeChange",n),function(){return e.off("NodeChange",n)}},onAction:function(){return e.execCommand(r)}})}(n,t,e,r,i)}var v=function(e){function n(){return i}function t(n){return n(e)}var r=o(e),i={fold:function(n,t){return t(e)},is:function(n){return e===n},isSome:a,isNone:f,getOr:r,getOrThunk:r,getOrDie:r,getOrNull:r,getOrUndefined:r,or:n,orThunk:n,map:function(n){return v(n(e))},each:function(n){n(e)},bind:t,exists:t,forall:t,filter:function(n){return n(e)?i:d},toArray:function(){return[e]},toString:function(){return"some("+e+")"},equals:function(n){return n.is(e)},equals_:function(n,t){return n.fold(f,function(n){return t(e,n)})}};return i},h=function(n){return null===n||n===undefined?d:v(n)},L=function(n){return n&&/^(TH|TD)$/.test(n.nodeName)},N=function(t){return function(n){return n&&/^(OL|UL|DL)$/.test(n.nodeName)&&function(n,t){return n.$.contains(n.getBody(),t)}(t,n)}},S=function(n){var t=n.dom.getParent(n.selection.getNode(),"ol,ul"),e=n.dom.getStyle(t,"listStyleType");return h(e)},T=function(n){O(n,"numlist","Numbered list","InsertOrderedList","OL",c(n)),O(n,"bullist","Bullet list","InsertUnorderedList","UL",s(n))};!function b(){r.add("advlist",function(n){var t,e,r;e="lists",r=(t=n).settings.plugins?t.settings.plugins:"",-1!==u.inArray(r.split(/[ ,]/),e)&&(T(n),i(n))})}()}(); !function(){"use strict";var n,e,t,r=tinymce.util.Tools.resolve("tinymce.PluginManager"),u=function(n,e,t){var r="UL"===e?"InsertUnorderedList":"InsertOrderedList";n.execCommand(r,!1,!1===t?null:{"list-style-type":t})},l=tinymce.util.Tools.resolve("tinymce.util.Tools"),i=function(n){return function(){return n}},c=i(!1),s=i(!0),o=function(){return a},a=(n=function(n){return n.isNone()},{fold:function(n,e){return n()},is:c,isSome:c,isNone:s,getOr:t=function(n){return n},getOrThunk:e=function(n){return n()},getOrDie:function(n){throw new Error(n||"error: getOrDie called on none.")},getOrNull:i(null),getOrUndefined:i(undefined),or:t,orThunk:e,map:o,each:function(){},bind:o,exists:c,forall:s,filter:o,equals:n,equals_:n,toArray:function(){return[]},toString:i("none()")}),f=function(t){var n=i(t),e=function(){return o},r=function(n){return n(t)},o={fold:function(n,e){return e(t)},is:function(n){return t===n},isSome:s,isNone:c,getOr:n,getOrThunk:n,getOrDie:n,getOrNull:n,getOrUndefined:n,or:e,orThunk:e,map:function(n){return f(n(t))},each:function(n){n(t)},bind:r,exists:r,forall:r,filter:function(n){return n(t)?o:a},toArray:function(){return[t]},toString:function(){return"some("+t+")"},equals:function(n){return n.is(t)},equals_:function(n,e){return n.fold(c,function(n){return e(t,n)})}};return o},d=function(n){return null===n||n===undefined?a:f(n)},g=function(n){return n&&/^(TH|TD)$/.test(n.nodeName)},m=function(r){return function(n){return n&&/^(OL|UL|DL)$/.test(n.nodeName)&&(t=n,(e=r).$.contains(e.getBody(),t));var e,t}},p=function(n,e,t){var r=function(n,e){for(var t=0;t<n.length;t++){if(e(n[t]))return t}return-1}(e.parents,g),o=-1!==r?e.parents.slice(0,r):e.parents,i=l.grep(o,m(n));return 0<i.length&&i[0].nodeName===t},y=function(o,n,e,t,r,i){o.ui.registry.addSplitButton(n,{tooltip:e,icon:"OL"===r?"ordered-list":"unordered-list",presets:"listpreview",columns:3,fetch:function(n){n(l.map(i,function(n){return{type:"choiceitem",value:"default"===n?"":n,icon:"list-"+("OL"===r?"num":"bull")+"-"+("disc"===n||"decimal"===n?"default":n),text:n.replace(/\-/g," ").replace(/\b\w/g,function(n){return n.toUpperCase()})}}))},onAction:function(){return o.execCommand(t)},onItemAction:function(n,e){u(o,r,e)},select:function(e){var n,t,r;return(t=(n=o).dom.getParent(n.selection.getNode(),"ol,ul"),r=n.dom.getStyle(t,"listStyleType"),d(r)).map(function(n){return e===n}).getOr(!1)},onSetup:function(e){var n=function(n){e.setActive(p(o,n,r))};return o.on("NodeChange",n),function(){return o.off("NodeChange",n)}}})},v=function(n,e,t,r,o,i){var u,l,c,s,a;1<i.length?y(n,e,t,r,o,i):(l=e,c=t,s=r,a=o,(u=n).ui.registry.addToggleButton(l,{active:!1,tooltip:c,icon:"OL"===a?"ordered-list":"unordered-list",onSetup:function(e){var n=function(n){e.setActive(p(u,n,a))};return u.on("NodeChange",n),function(){return u.off("NodeChange",n)}},onAction:function(){return u.execCommand(s)}}))};r.add("advlist",function(n){var t,e,r,o;n.hasPlugin("lists")&&(v(e=n,"numlist","Numbered list","InsertOrderedList","OL",(r=e.getParam("advlist_number_styles","default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman"))?r.split(/[ ,]/):[]),v(e,"bullist","Bullet list","InsertUnorderedList","UL",(o=e.getParam("advlist_bullet_styles","default,circle,square"))?o.split(/[ ,]/):[]),(t=n).addCommand("ApplyUnorderedListStyle",function(n,e){u(t,"UL",e["list-style-type"])}),t.addCommand("ApplyOrderedListStyle",function(n,e){u(t,"OL",e["list-style-type"])}))})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function e(o){return function(t){for(var e=0;e<t.length;e++)(n=t[e]).attr("href")||!n.attr("id")&&!n.attr("name")||n.firstChild||t[e].attr("contenteditable",o);var n}}var t=tinymce.util.Tools.resolve("tinymce.PluginManager"),n=function(t){return/^[A-Za-z][A-Za-z0-9\-:._]*$/.test(t)},o=function(t){var e=t.selection.getNode();return"A"===e.tagName&&""===t.dom.getAttrib(e,"href")?e.getAttribute("id")||e.getAttribute("name"):""},r=function(t,e){var n=t.selection.getNode();"A"===n.tagName&&""===t.dom.getAttrib(n,"href")?(n.removeAttribute("name"),n.id=e,t.undoManager.add()):(t.focus(),t.selection.collapse(!0),t.execCommand("mceInsertContent",!1,t.dom.createHTML("a",{id:e})))},a=function(e){var t=o(e);e.windowManager.open({title:"Anchor",size:"normal",body:{type:"panel",items:[{name:"id",type:"input",label:"ID",placeholder:"example"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{id:t},onSubmit:function(t){!function(t,e){return n(e)?(r(t,e),!1):(t.windowManager.alert("Id should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores."),!0)}(e,t.getData().id)&&t.close()}})},i=function(t){t.addCommand("mceAnchor",function(){a(t)})},c=function(t){t.on("PreInit",function(){t.parser.addNodeFilter("a",e("false")),t.serializer.addNodeFilter("a",e(null))})},d=function(e){e.ui.registry.addToggleButton("anchor",{icon:"bookmark",tooltip:"Anchor",onAction:function(){return e.execCommand("mceAnchor")},onSetup:function(t){return e.selection.selectorChangedWithUnbind("a:not([href])",t.setActive).unbind}}),e.ui.registry.addMenuItem("anchor",{icon:"bookmark",text:"Anchor...",onAction:function(){return e.execCommand("mceAnchor")}})};!function u(){t.add("anchor",function(t){c(t),i(t),d(t)})}()}(); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=tinymce.util.Tools.resolve("tinymce.dom.RangeUtils"),o=tinymce.util.Tools.resolve("tinymce.util.Tools"),a="a:not([href])",n=function(e){return e.getAttribute("id")||e.getAttribute("name")||""},r=function(e){return(t=e)&&"a"===t.nodeName.toLowerCase()&&!e.getAttribute("href")&&""!==n(e);var t},c=function(e){var n=e.dom;t(n).walk(e.selection.getRng(),function(e){o.each(e,function(e){var t;r(t=e)&&!t.firstChild&&n.remove(e,!1)})})},u=function(e){return e.dom.getParent(e.selection.getStart(),a)},i=function(e,t){var n,o,a,r,i,l=u(e);l?(a=e,r=t,(i=l).removeAttribute("name"),i.id=r,a.addVisual(),a.undoManager.add()):(o=t,(n=e).undoManager.transact(function(){n.getParam("allow_html_in_named_anchor",!1,"boolean")||n.selection.collapse(!0),n.selection.isCollapsed()?n.insertContent(n.dom.createHTML("a",{id:o})):(c(n),n.formatter.remove("namedAnchor",null,null,!0),n.formatter.apply("namedAnchor",{value:o}),n.addVisual())})),e.focus()},l=function(o){var e,t=(e=u(o))?n(e):"";o.windowManager.open({title:"Anchor",size:"normal",body:{type:"panel",items:[{name:"id",type:"input",label:"ID",placeholder:"example"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{id:t},onSubmit:function(e){var t,n;t=o,n=e.getData().id,(/^[A-Za-z][A-Za-z0-9\-:._]*$/.test(n)?(i(t,n),1):(t.windowManager.alert("Id should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores."),0))&&e.close()}})},d=function(r){return function(e){for(var t,n,o=0;o<e.length;o++){var a=e[o];n=void 0,!(n=t=a)||n.attr("href")||!n.attr("id")&&!n.attr("name")||t.firstChild||a.attr("contenteditable",r)}}};e.add("anchor",function(e){var t,n,o;(t=e).on("PreInit",function(){t.parser.addNodeFilter("a",d("false")),t.serializer.addNodeFilter("a",d(null))}),(n=e).addCommand("mceAnchor",function(){l(n)}),(o=e).ui.registry.addToggleButton("anchor",{icon:"bookmark",tooltip:"Anchor",onAction:function(){return o.execCommand("mceAnchor")},onSetup:function(e){return o.selection.selectorChangedWithUnbind("a:not([href])",e.setActive).unbind}}),o.ui.registry.addMenuItem("anchor",{icon:"bookmark",text:"Anchor...",onAction:function(){return o.execCommand("mceAnchor")}}),e.on("PreInit",function(){e.formatter.register("namedAnchor",{inline:"a",selector:a,remove:"all",split:!0,deep:!0,attributes:{id:"%value"},onmatch:function(e,t,n){return r(e)}})})})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function i(t,e){if(e<0&&(e=0),3===t.nodeType){var n=t.data.length;n<e&&(e=n)}return e}function C(t,e,n){1!==e.nodeType||e.hasChildNodes()?t.setStart(e,i(e,n)):t.setStartBefore(e)}function m(t,e,n){1!==e.nodeType||e.hasChildNodes()?t.setEnd(e,i(e,n)):t.setEndAfter(e)}var t=tinymce.util.Tools.resolve("tinymce.PluginManager"),o=tinymce.util.Tools.resolve("tinymce.Env"),y=function(t){return t.getParam("autolink_pattern",/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|(?:mailto:)?[A-Z0-9._%+\-]+@)(.+)$/i)},k=function(t){return t.getParam("default_link_target",!1)},r=function(t,e,n){var i,o,r,f,a,s,d,c,l,u,g=y(t),h=k(t);if("A"!==t.selection.getNode().tagName){if((i=t.selection.getRng(!0).cloneRange()).startOffset<5){if(!(c=i.endContainer.previousSibling)){if(!i.endContainer.firstChild||!i.endContainer.firstChild.nextSibling)return;c=i.endContainer.firstChild.nextSibling}if(l=c.length,C(i,c,l),m(i,c,l),i.endOffset<5)return;o=i.endOffset,f=c}else{if(3!==(f=i.endContainer).nodeType&&f.firstChild){for(;3!==f.nodeType&&f.firstChild;)f=f.firstChild;3===f.nodeType&&(C(i,f,0),m(i,f,f.nodeValue.length))}o=1===i.endOffset?2:i.endOffset-1-e}for(r=o;C(i,f,2<=o?o-2:0),m(i,f,1<=o?o-1:0),o-=1," "!==(u=i.toString())&&""!==u&&160!==u.charCodeAt(0)&&0<=o-2&&u!==n;);!function(t,e){return t===e||" "===t||160===t.charCodeAt(0)}(i.toString(),n)?(0===i.startOffset?C(i,f,0):C(i,f,o),m(i,f,r)):(C(i,f,o),m(i,f,r),o+=1),"."===(s=i.toString()).charAt(s.length-1)&&m(i,f,r-1),(d=(s=i.toString().trim()).match(g))&&("www."===d[1]?d[1]="http://www.":/@$/.test(d[1])&&!/^mailto:/.test(d[1])&&(d[1]="mailto:"+d[1]),a=t.selection.getBookmark(),t.selection.setRng(i),t.execCommand("createlink",!1,d[1]+d[2]),!1!==h&&t.dom.setAttrib(t.selection.getNode(),"target",h),t.selection.moveToBookmark(a),t.nodeChanged())}},e=function(e){var n;e.on("keydown",function(t){if(13===t.keyCode)return function(t){r(t,-1,"")}(e)}),o.browser.isIE()?e.on("focus",function(){if(!n){n=!0;try{e.execCommand("AutoUrlDetect",!1,!0)}catch(t){}}}):(e.on("keypress",function(t){if(41===t.keyCode)return function(t){r(t,-1,"(")}(e)}),e.on("keyup",function(t){if(32===t.keyCode)return function(t){r(t,0,"")}(e)}))};!function n(){t.add("autolink",function(t){e(t)})}()}(); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),o=tinymce.util.Tools.resolve("tinymce.Env"),i=function(e,t){var n;return t<0&&(t=0),3!==e.nodeType||(n=e.data.length)<t&&(t=n),t},y=function(e,t,n){1!==t.nodeType||t.hasChildNodes()?e.setStart(t,i(t,n)):e.setStartBefore(t)},k=function(e,t,n){1!==t.nodeType||t.hasChildNodes()?e.setEnd(t,i(t,n)):e.setEndAfter(t)},r=function(e,t,n){var o,i,r,a,s,d,f,l=e.getParam("autolink_pattern",/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|(?:mailto:)?[A-Z0-9._%+\-]+@(?!.*@))(.+)$/i),c=e.getParam("default_link_target",!1);if("A"!==e.selection.getNode().tagName){var g=e.selection.getRng().cloneRange();if(g.startOffset<5){if(!(s=g.endContainer.previousSibling)){if(!g.endContainer.firstChild||!g.endContainer.firstChild.nextSibling)return;s=g.endContainer.firstChild.nextSibling}if(d=s.length,y(g,s,d),k(g,s,d),g.endOffset<5)return;o=g.endOffset,i=s}else{if(3!==(i=g.endContainer).nodeType&&i.firstChild){for(;3!==i.nodeType&&i.firstChild;)i=i.firstChild;3===i.nodeType&&(y(g,i,0),k(g,i,i.nodeValue.length))}o=1===g.endOffset?2:g.endOffset-1-t}for(var u,h=o;y(g,i,2<=o?o-2:0),k(g,i,1<=o?o-1:0),--o," "!==(f=g.toString())&&""!==f&&160!==f.charCodeAt(0)&&0<=o-2&&f!==n;);(u=g.toString())===n||" "===u||160===u.charCodeAt(0)?(y(g,i,o),k(g,i,h),o+=1):(0===g.startOffset?y(g,i,0):y(g,i,o),k(g,i,h)),"."===(a=g.toString()).charAt(a.length-1)&&k(g,i,h-1);var m=(a=g.toString().trim()).match(l),C=e.getParam("link_default_protocol","http","string");m&&("www."===m[1]?m[1]=C+"://www.":/@$/.test(m[1])&&!/^mailto:/.test(m[1])&&(m[1]="mailto:"+m[1]),r=e.selection.getBookmark(),e.selection.setRng(g),e.execCommand("createlink",!1,m[1]+m[2]),!1!==c&&e.dom.setAttrib(e.selection.getNode(),"target",c),e.selection.moveToBookmark(r),e.nodeChanged())}},t=function(t){var n;t.on("keydown",function(e){13!==e.keyCode||r(t,-1,"")}),o.browser.isIE()?t.on("focus",function(){if(!n){n=!0;try{t.execCommand("AutoUrlDetect",!1,!0)}catch(e){}}}):(t.on("keypress",function(e){41!==e.keyCode||r(t,-1,"(")}),t.on("keyup",function(e){32!==e.keyCode||r(t,0,"")}))};e.add("autolink",function(e){t(e)})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function d(e,t){var n=e.getBody();n&&(n.style.overflowY=t?"":"hidden",t||(n.scrollTop=0))}function h(e,t,n,i){var o=parseInt(e.getStyle(t,n,i),10);return isNaN(o)?0:o}var i=function(e){function t(){return n}var n=e;return{get:t,set:function(e){n=e},clone:function(){return i(t())}}},e=tinymce.util.Tools.resolve("tinymce.PluginManager"),v=tinymce.util.Tools.resolve("tinymce.Env"),r=tinymce.util.Tools.resolve("tinymce.util.Delay"),p=function(e){return e.fire("ResizeEditor")},y=function(e){return e.getParam("min_height",e.getElement().offsetHeight,"number")},z=function(e){return e.getParam("max_height",0,"number")},n=function(e){return e.getParam("autoresize_overflow_padding",1,"number")},b=function(e){return e.getParam("autoresize_bottom_margin",50,"number")},o=function(e){return e.getParam("autoresize_on_init",!0,"boolean")},u=function(e,t,n,i,o){r.setEditorTimeout(e,function(){C(e,t),n--?u(e,t,n,i,o):o&&o()},i)},C=function(e,t){var n,i,o,r=e.dom,u=e.getDoc();if(u)if(function(e){return e.plugins.fullscreen&&e.plugins.fullscreen.isFullscreen()}(e))d(e,!0);else{var s=u.documentElement,a=b(e);i=y(e);var f=h(r,s,"margin-top",!0),c=h(r,s,"margin-bottom",!0);(o=s.offsetHeight+f+c+a)<0&&(o=0);var g=e.getContainer().offsetHeight-e.getContentAreaContainer().offsetHeight;o+g>y(e)&&(i=o+g);var l=z(e);if(l&&l<i?(i=l,d(e,!0)):d(e,!1),i!==t.get()){if(n=i-t.get(),r.setStyle(e.getContainer(),"height",i+"px"),t.set(i),p(e),v.browser.isSafari()&&v.mac){var m=e.getWin();m.scrollTo(m.pageXOffset,m.pageYOffset)}e.hasFocus()&&e.selection.scrollIntoView(e.selection.getNode()),v.webkit&&n<0&&C(e,t)}}},s={setup:function(t,e){t.on("init",function(){var e=n(t);t.dom.setStyles(t.getBody(),{paddingLeft:e,paddingRight:e,"min-height":0})}),t.on("NodeChange SetContent keyup FullscreenStateChanged ResizeContent",function(){C(t,e)}),o(t)&&t.on("init",function(){u(t,e,20,100,function(){u(t,e,5,1e3)})})},resize:C},a=function(e,t){e.addCommand("mceAutoResize",function(){s.resize(e,t)})};!function t(){e.add("autoresize",function(e){if(e.settings.hasOwnProperty("resize")||(e.settings.resize=!1),!e.inline){var t=i(0);a(e,t),s.setup(e,t)}})}()}(); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),h=tinymce.util.Tools.resolve("tinymce.Env"),r=tinymce.util.Tools.resolve("tinymce.util.Delay"),y=function(e){return e.getParam("min_height",e.getElement().offsetHeight,"number")},a=function(e,t,n,i,o){r.setEditorTimeout(e,function(){b(e,t),n--?a(e,t,n,i,o):o&&o()},i)},p=function(e,t){var n=e.getBody();n&&(n.style.overflowY=t?"":"hidden",t||(n.scrollTop=0))},v=function(e,t,n,i){var o=parseInt(e.getStyle(t,n,i),10);return isNaN(o)?0:o},b=function(e,t){var n,i,o,r,s,a,g,u,l,c,m,f=e.dom,d=e.getDoc();d&&((n=e).plugins.fullscreen&&n.plugins.fullscreen.isFullscreen()?p(e,!0):(i=d.documentElement,o=e.getParam("autoresize_bottom_margin",50,"number"),r=y(e),s=v(f,i,"margin-top",!0),a=v(f,i,"margin-bottom",!0),(g=i.offsetHeight+s+a+o)<0&&(g=0),g+(u=e.getContainer().offsetHeight-e.getContentAreaContainer().offsetHeight)>y(e)&&(r=g+u),(l=e.getParam("max_height",0,"number"))&&l<r?(r=l,p(e,!0)):p(e,!1),r!==t.get()&&(c=r-t.get(),f.setStyle(e.getContainer(),"height",r+"px"),t.set(r),e.fire("ResizeEditor"),h.browser.isSafari()&&h.mac&&(m=e.getWin()).scrollTo(m.pageXOffset,m.pageYOffset),e.hasFocus()&&e.selection.scrollIntoView(e.selection.getNode()),h.webkit&&c<0&&b(e,t))))};e.add("autoresize",function(e){var t,n,i,o,r,s;e.settings.hasOwnProperty("resize")||(e.settings.resize=!1),e.inline||(s=0,r=t={get:function(){return s},set:function(e){s=e}},(o=e).addCommand("mceAutoResize",function(){b(o,r)}),i=t,(n=e).on("init",function(){var e=n.getParam("autoresize_overflow_padding",1,"number"),t=n.dom;t.setStyles(n.getDoc().documentElement,{height:"auto"}),t.setStyles(n.getBody(),{paddingLeft:e,paddingRight:e,"min-height":0})}),n.on("NodeChange SetContent keyup FullscreenStateChanged ResizeContent",function(){b(n,i)}),n.getParam("autoresize_on_init",!0,"boolean")&&n.on("init",function(){a(n,i,20,100,function(){a(n,i,5,1e3)})}))})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(n){"use strict";function r(t,e){var n=t||e,r=/^(\d+)([ms]?)$/.exec(""+n);return(r[2]?{s:1e3,m:6e4}[r[2]]:1)*parseInt(n,10)}function o(t){var e=t.getParam("autosave_prefix","tinymce-autosave-{path}{query}{hash}-{id}-");return e=(e=(e=(e=e.replace(/\{path\}/g,n.document.location.pathname)).replace(/\{query\}/g,n.document.location.search)).replace(/\{hash\}/g,n.document.location.hash)).replace(/\{id\}/g,t.id)}function a(t,e){var n=t.settings.forced_root_block;return""===(e=d.trim(void 0===e?t.getBody().innerHTML:e))||new RegExp("^<"+n+"[^>]*>((\xa0|&nbsp;|[ \t]|<br[^>]*>)+?|)</"+n+">|<br>$","i").test(e)}function i(t){var e=parseInt(v.getItem(o(t)+"time"),10)||0;return!((new Date).getTime()-e>function(t){return r(t.settings.autosave_retention,"20m")}(t))||(g(t,!1),!1)}function u(t){var e=o(t);!a(t)&&t.isDirty()&&(v.setItem(e+"draft",t.getContent({format:"raw",no_events:!0})),v.setItem(e+"time",(new Date).getTime().toString()),function(t){t.fire("StoreDraft")}(t))}function s(t){var e=o(t);i(t)&&(t.setContent(v.getItem(e+"draft"),{format:"raw"}),function(t){t.fire("RestoreDraft")}(t))}function c(t,e){var n=function(t){return r(t.settings.autosave_interval,"30s")}(t);e.get()||(m.setInterval(function(){t.removed||u(t)},n),e.set(!0))}function f(t){t.undoManager.transact(function(){s(t),g(t)}),t.focus()}var l=function(t){function e(){return n}var n=t;return{get:e,set:function(t){n=t},clone:function(){return l(e())}}},t=tinymce.util.Tools.resolve("tinymce.PluginManager"),m=tinymce.util.Tools.resolve("tinymce.util.Delay"),v=tinymce.util.Tools.resolve("tinymce.util.LocalStorage"),d=tinymce.util.Tools.resolve("tinymce.util.Tools"),g=function(t,e){var n=o(t);v.removeItem(n+"draft"),v.removeItem(n+"time"),!1!==e&&function(t){t.fire("RemoveDraft")}(t)};function y(r){for(var o=[],t=1;t<arguments.length;t++)o[t-1]=arguments[t];return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=o.concat(t);return r.apply(null,n)}}function p(n,t){return function(t){t.setDisabled(!i(n));function e(){return t.setDisabled(!i(n))}return n.on("StoreDraft RestoreDraft RemoveDraft",e),function(){return n.off("StoreDraft RestoreDraft RemoveDraft",e)}}}var D=tinymce.util.Tools.resolve("tinymce.EditorManager");!function e(){t.add("autosave",function(t){var e=l(!1);return function(t){t.editorManager.on("BeforeUnload",function(t){var e;d.each(D.get(),function(t){t.plugins.autosave&&t.plugins.autosave.storeDraft(),!e&&t.isDirty()&&function(t){return t.getParam("autosave_ask_before_unload",!0)}(t)&&(e=t.translate("You have unsaved changes are you sure you want to navigate away?"))}),e&&(t.preventDefault(),t.returnValue=e)})}(t),function(t,e){c(t,e),t.ui.registry.addButton("restoredraft",{tooltip:"Restore last draft",icon:"restore-draft",onAction:function(){f(t)},onSetup:p(t)}),t.ui.registry.addMenuItem("restoredraft",{text:"Restore last draft",icon:"restore-draft",onAction:function(){f(t)},onSetup:p(t)})}(t,e),t.on("init",function(){(function(t){return t.getParam("autosave_restore_when_empty",!1)})(t)&&t.dom.isEmpty(t.getBody())&&s(t)}),function(t){return{hasDraft:y(i,t),storeDraft:y(u,t),restoreDraft:y(s,t),removeDraft:y(g,t),isEmpty:y(a,t)}}(t)})}()}(window); !function(){"use strict";var e,t=tinymce.util.Tools.resolve("tinymce.PluginManager"),a=(e=undefined,function(t){return e===t}),r=tinymce.util.Tools.resolve("tinymce.util.Delay"),n=tinymce.util.Tools.resolve("tinymce.util.LocalStorage"),o=tinymce.util.Tools.resolve("tinymce.util.Tools"),i=function(t,e){var r=t||e,n=/^(\d+)([ms]?)$/.exec(""+r);return(n[2]?{s:1e3,m:6e4}[n[2]]:1)*parseInt(r,10)},u=function(t){var e=document.location;return t.getParam("autosave_prefix","tinymce-autosave-{path}{query}{hash}-{id}-").replace(/{path}/g,e.pathname).replace(/{query}/g,e.search).replace(/{hash}/g,e.hash).replace(/{id}/g,t.id)},s=function(t,e){if(a(e))return t.dom.isEmpty(t.getBody());var r=o.trim(e);if(""===r)return!0;var n=(new DOMParser).parseFromString(r,"text/html");return t.dom.isEmpty(n)},f=function(t){var e=parseInt(n.getItem(u(t)+"time"),10)||0;return!((new Date).getTime()-e>i(t.getParam("autosave_retention"),"20m"))||(c(t,!1),!1)},c=function(t,e){var r=u(t);n.removeItem(r+"draft"),n.removeItem(r+"time"),!1!==e&&t.fire("RemoveDraft")},m=function(t){var e=u(t);!s(t)&&t.isDirty()&&(n.setItem(e+"draft",t.getContent({format:"raw",no_events:!0})),n.setItem(e+"time",(new Date).getTime().toString()),t.fire("StoreDraft"))},l=function(t){var e=u(t);f(t)&&(t.setContent(n.getItem(e+"draft"),{format:"raw"}),t.fire("RestoreDraft"))},v=function(t){var e=i(t.getParam("autosave_interval"),"30s");r.setEditorInterval(t,function(){m(t)},e)},d=function(t){t.undoManager.transact(function(){l(t),c(t)}),t.focus()},g=tinymce.util.Tools.resolve("tinymce.EditorManager"),y=function(r){return function(t){t.setDisabled(!f(r));var e=function(){return t.setDisabled(!f(r))};return r.on("StoreDraft RestoreDraft RemoveDraft",e),function(){return r.off("StoreDraft RestoreDraft RemoveDraft",e)}}};t.add("autosave",function(t){var e,r;return t.editorManager.on("BeforeUnload",function(t){var e;o.each(g.get(),function(t){t.plugins.autosave&&t.plugins.autosave.storeDraft(),!e&&t.isDirty()&&t.getParam("autosave_ask_before_unload",!0)&&(e=t.translate("You have unsaved changes are you sure you want to navigate away?"))}),e&&(t.preventDefault(),t.returnValue=e)}),v(e=t),e.ui.registry.addButton("restoredraft",{tooltip:"Restore last draft",icon:"restore-draft",onAction:function(){d(e)},onSetup:y(e)}),e.ui.registry.addMenuItem("restoredraft",{text:"Restore last draft",icon:"restore-draft",onAction:function(){d(e)},onSetup:y(e)}),t.on("init",function(){t.getParam("autosave_restore_when_empty",!1)&&t.dom.isEmpty(t.getBody())&&l(t)}),r=t,{hasDraft:function(){return f(r)},storeDraft:function(){return m(r)},restoreDraft:function(){return l(r)},removeDraft:function(t){return c(r,t)},isEmpty:function(t){return s(r,t)}}})}();

View File

@ -0,0 +1,9 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*
* Version: 5.6.1 (2020-11-25)
*/
!function(){"use strict";var o=tinymce.util.Tools.resolve("tinymce.PluginManager"),e=tinymce.util.Tools.resolve("tinymce.util.Tools"),t=function(t){t=e.trim(t);var o=function(o,e){t=t.replace(o,e)};return o(/\n/gi,"<br />"),o(/\[b\]/gi,"<strong>"),o(/\[\/b\]/gi,"</strong>"),o(/\[i\]/gi,"<em>"),o(/\[\/i\]/gi,"</em>"),o(/\[u\]/gi,"<u>"),o(/\[\/u\]/gi,"</u>"),o(/\[url=([^\]]+)\](.*?)\[\/url\]/gi,'<a href="$1">$2</a>'),o(/\[url\](.*?)\[\/url\]/gi,'<a href="$1">$1</a>'),o(/\[img\](.*?)\[\/img\]/gi,'<img src="$1" />'),o(/\[color=(.*?)\](.*?)\[\/color\]/gi,'<font color="$1">$2</font>'),o(/\[code\](.*?)\[\/code\]/gi,'<span class="codeStyle">$1</span>&nbsp;'),o(/\[quote.*?\](.*?)\[\/quote\]/gi,'<span class="quoteStyle">$1</span>&nbsp;'),t};o.add("bbcode",function(o){o.on("BeforeSetContent",function(o){o.content=t(o.content)}),o.on("PostProcess",function(o){o.set&&(o.content=t(o.content)),o.get&&(o.content=function(t){t=e.trim(t);var o=function(o,e){t=t.replace(o,e)};return o(/<a.*?href=\"(.*?)\".*?>(.*?)<\/a>/gi,"[url=$1]$2[/url]"),o(/<font.*?color=\"(.*?)\".*?class=\"codeStyle\".*?>(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]"),o(/<font.*?color=\"(.*?)\".*?class=\"quoteStyle\".*?>(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]"),o(/<font.*?class=\"codeStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]"),o(/<font.*?class=\"quoteStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]"),o(/<span style=\"color: ?(.*?);\">(.*?)<\/span>/gi,"[color=$1]$2[/color]"),o(/<font.*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[color=$1]$2[/color]"),o(/<span style=\"font-size:(.*?);\">(.*?)<\/span>/gi,"[size=$1]$2[/size]"),o(/<font>(.*?)<\/font>/gi,"$1"),o(/<img.*?src=\"(.*?)\".*?\/>/gi,"[img]$1[/img]"),o(/<span class=\"codeStyle\">(.*?)<\/span>/gi,"[code]$1[/code]"),o(/<span class=\"quoteStyle\">(.*?)<\/span>/gi,"[quote]$1[/quote]"),o(/<strong class=\"codeStyle\">(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]"),o(/<strong class=\"quoteStyle\">(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]"),o(/<em class=\"codeStyle\">(.*?)<\/em>/gi,"[code][i]$1[/i][/code]"),o(/<em class=\"quoteStyle\">(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]"),o(/<u class=\"codeStyle\">(.*?)<\/u>/gi,"[code][u]$1[/u][/code]"),o(/<u class=\"quoteStyle\">(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]"),o(/<\/(strong|b)>/gi,"[/b]"),o(/<(strong|b)>/gi,"[b]"),o(/<\/(em|i)>/gi,"[/i]"),o(/<(em|i)>/gi,"[i]"),o(/<\/u>/gi,"[/u]"),o(/<span style=\"text-decoration: ?underline;\">(.*?)<\/span>/gi,"[u]$1[/u]"),o(/<u>/gi,"[u]"),o(/<blockquote[^>]*>/gi,"[quote]"),o(/<\/blockquote>/gi,"[/quote]"),o(/<br \/>/gi,"\n"),o(/<br\/>/gi,"\n"),o(/<br>/gi,"\n"),o(/<p>/gi,""),o(/<\/p>/gi,"\n"),o(/&nbsp;|\u00a0/gi," "),o(/&quot;/gi,'"'),o(/&lt;/gi,"<"),o(/&gt;/gi,">"),o(/&amp;/gi,"&"),t}(o.content))})})}();

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=function(e,n){e.focus(),e.undoManager.transact(function(){e.setContent(n)}),e.selection.setCursorLocation(),e.nodeChanged()},o=function(e){return e.getContent({source_view:!0})},n=function(n){var e=o(n);n.windowManager.open({title:"Source Code",size:"large",body:{type:"panel",items:[{type:"textarea",name:"code"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{code:e},onSubmit:function(e){t(n,e.getData().code),e.close()}})},c=function(e){e.addCommand("mceCodeEditor",function(){n(e)})},i=function(e){e.ui.registry.addButton("code",{icon:"sourcecode",tooltip:"Source code",onAction:function(){return n(e)}}),e.ui.registry.addMenuItem("code",{icon:"sourcecode",text:"Source code",onAction:function(){return n(e)}})};!function u(){e.add("code",function(e){return c(e),i(e),{}})}()}(); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),o=function(o){var e=o.getContent({source_view:!0});o.windowManager.open({title:"Source Code",size:"large",body:{type:"panel",items:[{type:"textarea",name:"code"}]},buttons:[{type:"cancel",name:"cancel",text:"Cancel"},{type:"submit",name:"save",text:"Save",primary:!0}],initialData:{code:e},onSubmit:function(e){var t,n;t=o,n=e.getData().code,t.focus(),t.undoManager.transact(function(){t.setContent(n)}),t.selection.setCursorLocation(),t.nodeChanged(),e.close()}})};e.add("code",function(e){var t,n;return(t=e).addCommand("mceCodeEditor",function(){o(t)}),(n=e).ui.registry.addButton("code",{icon:"sourcecode",tooltip:"Source code",onAction:function(){return o(n)}}),n.ui.registry.addMenuItem("code",{icon:"sourcecode",text:"Source code",onAction:function(){return o(n)}}),{}})}();

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,9 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*
* Version: 5.6.1 (2020-11-25)
*/
!function(){"use strict";tinymce.util.Tools.resolve("tinymce.PluginManager").add("colorpicker",function(){console.warn("Color picker plugin is now built in to the core editor, please remove it from your editor configuration")})}();

View File

@ -0,0 +1,9 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*
* Version: 5.6.1 (2020-11-25)
*/
!function(){"use strict";tinymce.util.Tools.resolve("tinymce.PluginManager").add("contextmenu",function(){console.warn("Context menu plugin is now built in to the core editor, please remove it from your editor configuration")})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(i){"use strict";function n(){}function u(n){return function(){return n}}function t(){return a}var e,r=tinymce.util.Tools.resolve("tinymce.PluginManager"),c=tinymce.util.Tools.resolve("tinymce.util.Tools"),o=function(n,t){var e,r=n.dom,o=n.selection.getSelectedBlocks();o.length&&(e=r.getAttrib(o[0],"dir"),c.each(o,function(n){r.getParent(n.parentNode,'*[dir="'+t+'"]',r.getRoot())||r.setAttrib(n,"dir",e!==t?t:null)}),n.nodeChanged())},d=function(n){n.addCommand("mceDirectionLTR",function(){o(n,"ltr")}),n.addCommand("mceDirectionRTL",function(){o(n,"rtl")})},f=u(!1),l=u(!0),a=(e={fold:function(n,t){return n()},is:f,isSome:f,isNone:l,getOr:s,getOrThunk:N,getOrDie:function(n){throw new Error(n||"error: getOrDie called on none.")},getOrNull:u(null),getOrUndefined:u(undefined),or:s,orThunk:N,map:t,each:n,bind:t,exists:f,forall:l,filter:t,equals:m,equals_:m,toArray:function(){return[]},toString:u("none()")},Object.freeze&&Object.freeze(e),e);function m(n){return n.isNone()}function N(n){return n()}function s(n){return n}function g(n,t){var e=n.dom(),r=i.window.getComputedStyle(e).getPropertyValue(t),o=""!==r||function(n){var t=A(n)?n.dom().parentNode:n.dom();return t!==undefined&&null!==t&&t.ownerDocument.body.contains(t)}(n)?r:w(e,t);return null===o?undefined:o}function T(t,r){return function(e){function n(n){var t=p.fromDom(n.element);e.setActive(function(n){return"rtl"===g(n,"direction")?"rtl":"ltr"}(t)===r)}return t.on("NodeChange",n),function(){return t.off("NodeChange",n)}}}var E,O,y=function(e){function n(){return o}function t(n){return n(e)}var r=u(e),o={fold:function(n,t){return t(e)},is:function(n){return e===n},isSome:l,isNone:f,getOr:r,getOrThunk:r,getOrDie:r,getOrNull:r,getOrUndefined:r,or:n,orThunk:n,map:function(n){return y(n(e))},each:function(n){n(e)},bind:t,exists:t,forall:t,filter:function(n){return n(e)?o:a},toArray:function(){return[e]},toString:function(){return"some("+e+")"},equals:function(n){return n.is(e)},equals_:function(n,t){return n.fold(f,function(n){return t(e,n)})}};return o},D=function(n){return null===n||n===undefined?a:y(n)},h=function(n){if(null===n||n===undefined)throw new Error("Node cannot be null or undefined");return{dom:u(n)}},p={fromHtml:function(n,t){var e=(t||i.document).createElement("div");if(e.innerHTML=n,!e.hasChildNodes()||1<e.childNodes.length)throw i.console.error("HTML does not have a single root node",n),new Error("HTML must have a single root node");return h(e.childNodes[0])},fromTag:function(n,t){var e=(t||i.document).createElement(n);return h(e)},fromText:function(n,t){var e=(t||i.document).createTextNode(n);return h(e)},fromDom:h,fromPoint:function(n,t,e){var r=n.dom();return D(r.elementFromPoint(t,e)).map(h)}},_=(E="function",function(n){return function(n){if(null===n)return"null";var t=typeof n;return"object"==t&&(Array.prototype.isPrototypeOf(n)||n.constructor&&"Array"===n.constructor.name)?"array":"object"==t&&(String.prototype.isPrototypeOf(n)||n.constructor&&"String"===n.constructor.name)?"string":t}(n)===E}),v=Array.prototype.slice,C=(_(Array.from)&&Array.from,i.Node.ATTRIBUTE_NODE,i.Node.CDATA_SECTION_NODE,i.Node.COMMENT_NODE,i.Node.DOCUMENT_NODE,i.Node.DOCUMENT_TYPE_NODE,i.Node.DOCUMENT_FRAGMENT_NODE,i.Node.ELEMENT_NODE,i.Node.TEXT_NODE),A=(i.Node.PROCESSING_INSTRUCTION_NODE,i.Node.ENTITY_REFERENCE_NODE,i.Node.ENTITY_NODE,i.Node.NOTATION_NODE,"undefined"!=typeof i.window?i.window:Function("return this;")(),O=C,function(n){return function(n){return n.dom().nodeType}(n)===O}),w=function(n,t){return function(n){return n.style!==undefined&&_(n.style.getPropertyValue)}(n)?n.style.getPropertyValue(t):""},S=function(n){n.ui.registry.addToggleButton("ltr",{tooltip:"Left to right",icon:"ltr",onAction:function(){return n.execCommand("mceDirectionLTR")},onSetup:T(n,"ltr")}),n.ui.registry.addToggleButton("rtl",{tooltip:"Right to left",icon:"rtl",onAction:function(){return n.execCommand("mceDirectionRTL")},onSetup:T(n,"rtl")})};!function R(){r.add("directionality",function(n){d(n),S(n)})}()}(window); !function(){"use strict";var n,t,e,o,r=tinymce.util.Tools.resolve("tinymce.PluginManager"),u=tinymce.util.Tools.resolve("tinymce.util.Tools"),i=function(n,t){var e,o=n.dom,r=n.selection.getSelectedBlocks();r.length&&(e=o.getAttrib(r[0],"dir"),u.each(r,function(n){o.getParent(n.parentNode,'*[dir="'+t+'"]',o.getRoot())||o.setAttrib(n,"dir",e!==t?t:null)}),n.nodeChanged())},c=function(n){return function(){return n}},f=c(!1),d=c(!0),l=function(){return m},m=(n=function(n){return n.isNone()},{fold:function(n,t){return n()},is:f,isSome:f,isNone:d,getOr:e=function(n){return n},getOrThunk:t=function(n){return n()},getOrDie:function(n){throw new Error(n||"error: getOrDie called on none.")},getOrNull:c(null),getOrUndefined:c(undefined),or:e,orThunk:t,map:l,each:function(){},bind:l,exists:f,forall:d,filter:l,equals:n,equals_:n,toArray:function(){return[]},toString:c("none()")}),a=function(e){var n=c(e),t=function(){return r},o=function(n){return n(e)},r={fold:function(n,t){return t(e)},is:function(n){return e===n},isSome:d,isNone:f,getOr:n,getOrThunk:n,getOrDie:n,getOrNull:n,getOrUndefined:n,or:t,orThunk:t,map:function(n){return a(n(e))},each:function(n){n(e)},bind:o,exists:o,forall:o,filter:function(n){return n(e)?r:m},toArray:function(){return[e]},toString:function(){return"some("+e+")"},equals:function(n){return n.is(e)},equals_:function(n,t){return n.fold(f,function(n){return t(e,n)})}};return r},s={some:a,none:l,from:function(n){return null===n||n===undefined?m:a(n)}},g=(o="function",function(n){return typeof n===o}),h=function(n){if(null===n||n===undefined)throw new Error("Node cannot be null or undefined");return{dom:n}},y={fromHtml:function(n,t){var e=(t||document).createElement("div");if(e.innerHTML=n,!e.hasChildNodes()||1<e.childNodes.length)throw console.error("HTML does not have a single root node",n),new Error("HTML must have a single root node");return h(e.childNodes[0])},fromTag:function(n,t){var e=(t||document).createElement(n);return h(e)},fromText:function(n,t){var e=(t||document).createTextNode(n);return h(e)},fromDom:h,fromPoint:function(n,t,e){return s.from(n.dom.elementFromPoint(t,e)).map(h)}},v=("undefined"!=typeof window||Function("return this;")(),function(t){return function(n){return n.dom.nodeType===t}}),p=v(3),T=v(9),N=v(11),D=g(Element.prototype.attachShadow)&&g(Node.prototype.getRootNode)?function(n){return y.fromDom(n.dom.getRootNode())}:function(n){return T(n)?n:(t=n,y.fromDom(t.dom.ownerDocument));var t},w=function(n){var t=D(n);return N(t)?s.some(t):s.none()},O=function(n){return y.fromDom(n.dom.host)},C=function(n){var t=p(n)?n.dom.parentNode:n.dom;if(t===undefined||null===t||null===t.ownerDocument)return!1;var e,o,r=t.ownerDocument;return w(y.fromDom(t)).fold(function(){return r.body.contains(t)},(e=C,o=O,function(n){return e(o(n))}))},S=function(n,t){return(e=n).style!==undefined&&g(e.style.getPropertyValue)?n.style.getPropertyValue(t):"";var e},L=function(n){return"rtl"===(e="direction",o=(t=n).dom,""!==(r=window.getComputedStyle(o).getPropertyValue(e))||C(t)?r:S(o,e))?"rtl":"ltr";var t,e,o,r},R=function(t,o){return function(e){var n=function(n){var t=y.fromDom(n.element);e.setActive(L(t)===o)};return t.on("NodeChange",n),function(){return t.off("NodeChange",n)}}};r.add("directionality",function(n){var t,e;(t=n).addCommand("mceDirectionLTR",function(){i(t,"ltr")}),t.addCommand("mceDirectionRTL",function(){i(t,"rtl")}),(e=n).ui.registry.addToggleButton("ltr",{tooltip:"Left to right",icon:"ltr",onAction:function(){return e.execCommand("mceDirectionLTR")},onSetup:R(e,"ltr")}),e.ui.registry.addToggleButton("rtl",{tooltip:"Right to left",icon:"rtl",onAction:function(){return e.execCommand("mceDirectionRTL")},onSetup:R(e,"rtl")})})}();

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
// NOTE: Source: npm package: emojilib, file:emojis.json // Source: npm package: emojilib, file:emojis.json
window.tinymce.Resource.add("tinymce.plugins.emoticons", { window.tinymce.Resource.add("tinymce.plugins.emoticons", {
grinning: { grinning: {
keywords: [ "face", "smile", "happy", "joy", ":D", "grin" ], keywords: [ "face", "smile", "happy", "joy", ":D", "grin" ],
@ -30,6 +30,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
partying: {
keywords: [ "face", "celebration", "woohoo" ],
"char": "\ud83e\udd73",
fitzpatrick_scale: false,
category: "people"
},
smiley: { smiley: {
keywords: [ "face", "happy", "joy", "haha", ":D", ":)", "smile", "funny" ], keywords: [ "face", "happy", "joy", "haha", ":D", ":)", "smile", "funny" ],
"char": "\ud83d\ude03", "char": "\ud83d\ude03",
@ -108,6 +114,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
smiling_face_with_three_hearts: {
keywords: [ "face", "love", "like", "affection", "valentines", "infatuation", "crush", "hearts", "adore" ],
"char": "\ud83e\udd70",
fitzpatrick_scale: false,
category: "people"
},
kissing_heart: { kissing_heart: {
keywords: [ "face", "love", "like", "affection", "valentines", "infatuation", "kiss" ], keywords: [ "face", "love", "like", "affection", "valentines", "infatuation", "kiss" ],
"char": "\ud83d\ude18", "char": "\ud83d\ude18",
@ -360,6 +372,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
pleading: {
keywords: [ "face", "begging", "mercy" ],
"char": "\ud83e\udd7a",
fitzpatrick_scale: false,
category: "people"
},
triumph: { triumph: {
keywords: [ "face", "gas", "phew", "proud", "pride" ], keywords: [ "face", "gas", "phew", "proud", "pride" ],
"char": "\ud83d\ude24", "char": "\ud83d\ude24",
@ -438,6 +456,18 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
hot: {
keywords: [ "face", "feverish", "heat", "red", "sweating" ],
"char": "\ud83e\udd75",
fitzpatrick_scale: false,
category: "people"
},
cold: {
keywords: [ "face", "blue", "freezing", "frozen", "frostbite", "icicles" ],
"char": "\ud83e\udd76",
fitzpatrick_scale: false,
category: "people"
},
sob: { sob: {
keywords: [ "face", "cry", "tears", "sad", "upset", "depressed" ], keywords: [ "face", "cry", "tears", "sad", "upset", "depressed" ],
"char": "\ud83d\ude2d", "char": "\ud83d\ude2d",
@ -498,6 +528,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
woozy: {
keywords: [ "face", "dizzy", "intoxicated", "tipsy", "wavy" ],
"char": "\ud83e\udd74",
fitzpatrick_scale: false,
category: "people"
},
sleeping: { sleeping: {
keywords: [ "face", "tired", "sleepy", "night", "zzz" ], keywords: [ "face", "tired", "sleepy", "night", "zzz" ],
"char": "\ud83d\ude34", "char": "\ud83d\ude34",
@ -726,6 +762,18 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: true, fitzpatrick_scale: true,
category: "people" category: "people"
}, },
foot: {
keywords: [ "kick", "stomp" ],
"char": "\ud83e\uddb6",
fitzpatrick_scale: true,
category: "people"
},
leg: {
keywords: [ "kick", "limb" ],
"char": "\ud83e\uddb5",
fitzpatrick_scale: true,
category: "people"
},
handshake: { handshake: {
keywords: [ "agreement", "shake" ], keywords: [ "agreement", "shake" ],
"char": "\ud83e\udd1d", "char": "\ud83e\udd1d",
@ -822,6 +870,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
tooth: {
keywords: [ "teeth", "dentist" ],
"char": "\ud83e\uddb7",
fitzpatrick_scale: false,
category: "people"
},
tongue: { tongue: {
keywords: [ "mouth", "playful" ], keywords: [ "mouth", "playful" ],
"char": "\ud83d\udc45", "char": "\ud83d\udc45",
@ -1218,6 +1272,30 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: true, fitzpatrick_scale: true,
category: "people" category: "people"
}, },
woman_superhero: {
keywords: [ "woman", "female", "good", "heroine", "superpowers" ],
"char": "\ud83e\uddb8\u200d\u2640\ufe0f",
fitzpatrick_scale: true,
category: "people"
},
man_superhero: {
keywords: [ "man", "male", "good", "hero", "superpowers" ],
"char": "\ud83e\uddb8\u200d\u2642\ufe0f",
fitzpatrick_scale: true,
category: "people"
},
woman_supervillain: {
keywords: [ "woman", "female", "evil", "bad", "criminal", "heroine", "superpowers" ],
"char": "\ud83e\uddb9\u200d\u2640\ufe0f",
fitzpatrick_scale: true,
category: "people"
},
man_supervillain: {
keywords: [ "man", "male", "evil", "bad", "criminal", "hero", "superpowers" ],
"char": "\ud83e\uddb9\u200d\u2642\ufe0f",
fitzpatrick_scale: true,
category: "people"
},
mrs_claus: { mrs_claus: {
keywords: [ "woman", "female", "xmas", "mother christmas" ], keywords: [ "woman", "female", "xmas", "mother christmas" ],
"char": "\ud83e\udd36", "char": "\ud83e\udd36",
@ -1436,7 +1514,7 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
}, },
man_facepalming: { man_facepalming: {
keywords: [ "man", "male", "boy", "disbelief" ], keywords: [ "man", "male", "boy", "disbelief" ],
"char": "\ud83e\udd26", "char": "\ud83e\udd26\u200d\u2642\ufe0f",
fitzpatrick_scale: true, fitzpatrick_scale: true,
category: "people" category: "people"
}, },
@ -1752,12 +1830,30 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
yarn: {
keywords: [ "ball", "crochet", "knit" ],
"char": "\ud83e\uddf6",
fitzpatrick_scale: false,
category: "people"
},
thread: {
keywords: [ "needle", "sewing", "spool", "string" ],
"char": "\ud83e\uddf5",
fitzpatrick_scale: false,
category: "people"
},
coat: { coat: {
keywords: [ "jacket" ], keywords: [ "jacket" ],
"char": "\ud83e\udde5", "char": "\ud83e\udde5",
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
labcoat: {
keywords: [ "doctor", "experiment", "scientist", "chemist" ],
"char": "\ud83e\udd7c",
fitzpatrick_scale: false,
category: "people"
},
womans_clothes: { womans_clothes: {
keywords: [ "fashion", "shopping_bags", "female" ], keywords: [ "fashion", "shopping_bags", "female" ],
"char": "\ud83d\udc5a", "char": "\ud83d\udc5a",
@ -1818,6 +1914,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
flat_shoe: {
keywords: [ "ballet", "slip-on", "slipper" ],
"char": "\ud83e\udd7f",
fitzpatrick_scale: false,
category: "people"
},
high_heel: { high_heel: {
keywords: [ "fashion", "shoes", "female", "pumps", "stiletto" ], keywords: [ "fashion", "shoes", "female", "pumps", "stiletto" ],
"char": "\ud83d\udc60", "char": "\ud83d\udc60",
@ -1848,6 +1950,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
hiking_boot: {
keywords: [ "backpacking", "camping", "hiking" ],
"char": "\ud83e\udd7e",
fitzpatrick_scale: false,
category: "people"
},
socks: { socks: {
keywords: [ "stockings", "clothes" ], keywords: [ "stockings", "clothes" ],
"char": "\ud83e\udde6", "char": "\ud83e\udde6",
@ -1908,6 +2016,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
luggage: {
keywords: [ "packing", "travel" ],
"char": "\ud83e\uddf3",
fitzpatrick_scale: false,
category: "people"
},
pouch: { pouch: {
keywords: [ "bag", "accessories", "shopping" ], keywords: [ "bag", "accessories", "shopping" ],
"char": "\ud83d\udc5d", "char": "\ud83d\udc5d",
@ -1944,6 +2058,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "people" category: "people"
}, },
goggles: {
keywords: [ "eyes", "protection", "safety" ],
"char": "\ud83e\udd7d",
fitzpatrick_scale: false,
category: "people"
},
ring: { ring: {
keywords: [ "wedding", "propose", "marriage", "valentines", "diamond", "fashion", "jewelry", "gem", "engagement" ], keywords: [ "wedding", "propose", "marriage", "valentines", "diamond", "fashion", "jewelry", "gem", "engagement" ],
"char": "\ud83d\udc8d", "char": "\ud83d\udc8d",
@ -2490,6 +2610,66 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "animals_and_nature" category: "animals_and_nature"
}, },
raccoon: {
keywords: [ "animal", "nature" ],
"char": "\ud83e\udd9d",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
llama: {
keywords: [ "animal", "nature", "alpaca" ],
"char": "\ud83e\udd99",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
hippopotamus: {
keywords: [ "animal", "nature" ],
"char": "\ud83e\udd9b",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
kangaroo: {
keywords: [ "animal", "nature", "australia", "joey", "hop", "marsupial" ],
"char": "\ud83e\udd98",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
badger: {
keywords: [ "animal", "nature", "honey" ],
"char": "\ud83e\udda1",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
swan: {
keywords: [ "animal", "nature", "bird" ],
"char": "\ud83e\udda2",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
peacock: {
keywords: [ "animal", "nature", "peahen", "bird" ],
"char": "\ud83e\udd9a",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
parrot: {
keywords: [ "animal", "nature", "bird", "pirate", "talk" ],
"char": "\ud83e\udd9c",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
lobster: {
keywords: [ "animal", "nature", "bisque", "claws", "seafood" ],
"char": "\ud83e\udd9e",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
mosquito: {
keywords: [ "animal", "nature", "insect", "malaria" ],
"char": "\ud83e\udd9f",
fitzpatrick_scale: false,
category: "animals_and_nature"
},
paw_prints: { paw_prints: {
keywords: [ "animal", "tracking", "footprints", "dog", "cat", "pet", "feet" ], keywords: [ "animal", "tracking", "footprints", "dog", "cat", "pet", "feet" ],
"char": "\ud83d\udc3e", "char": "\ud83d\udc3e",
@ -3048,6 +3228,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "food_and_drink" category: "food_and_drink"
}, },
mango: {
keywords: [ "fruit", "food", "tropical" ],
"char": "\ud83e\udd6d",
fitzpatrick_scale: false,
category: "food_and_drink"
},
avocado: { avocado: {
keywords: [ "fruit", "food" ], keywords: [ "fruit", "food" ],
"char": "\ud83e\udd51", "char": "\ud83e\udd51",
@ -3102,6 +3288,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "food_and_drink" category: "food_and_drink"
}, },
leafy_greens: {
keywords: [ "food", "vegetable", "plant", "bok choy", "cabbage", "kale", "lettuce" ],
"char": "\ud83e\udd6c",
fitzpatrick_scale: false,
category: "food_and_drink"
},
sweet_potato: { sweet_potato: {
keywords: [ "food", "nature" ], keywords: [ "food", "nature" ],
"char": "\ud83c\udf60", "char": "\ud83c\udf60",
@ -3138,6 +3330,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "food_and_drink" category: "food_and_drink"
}, },
bagel: {
keywords: [ "food", "bread", "bakery", "schmear" ],
"char": "\ud83e\udd6f",
fitzpatrick_scale: false,
category: "food_and_drink"
},
pretzel: { pretzel: {
keywords: [ "food", "bread", "twisted" ], keywords: [ "food", "bread", "twisted" ],
"char": "\ud83e\udd68", "char": "\ud83e\udd68",
@ -3186,6 +3384,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "food_and_drink" category: "food_and_drink"
}, },
bone: {
keywords: [ "skeleton" ],
"char": "\ud83e\uddb4",
fitzpatrick_scale: false,
category: "food_and_drink"
},
fried_shrimp: { fried_shrimp: {
keywords: [ "food", "animal", "appetizer", "summer" ], keywords: [ "food", "animal", "appetizer", "summer" ],
"char": "\ud83c\udf64", "char": "\ud83c\udf64",
@ -3372,6 +3576,18 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "food_and_drink" category: "food_and_drink"
}, },
cupcake: {
keywords: [ "food", "dessert", "bakery", "sweet" ],
"char": "\ud83e\uddc1",
fitzpatrick_scale: false,
category: "food_and_drink"
},
moon_cake: {
keywords: [ "food", "autumn" ],
"char": "\ud83e\udd6e",
fitzpatrick_scale: false,
category: "food_and_drink"
},
birthday: { birthday: {
keywords: [ "food", "dessert", "cake" ], keywords: [ "food", "dessert", "cake" ],
"char": "\ud83c\udf82", "char": "\ud83c\udf82",
@ -3510,6 +3726,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "food_and_drink" category: "food_and_drink"
}, },
salt: {
keywords: [ "condiment", "shaker" ],
"char": "\ud83e\uddc2",
fitzpatrick_scale: false,
category: "food_and_drink"
},
spoon: { spoon: {
keywords: [ "cutlery", "kitchen", "tableware" ], keywords: [ "cutlery", "kitchen", "tableware" ],
"char": "\ud83e\udd44", "char": "\ud83e\udd44",
@ -3570,6 +3792,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "activity" category: "activity"
}, },
softball: {
keywords: [ "sports", "balls" ],
"char": "\ud83e\udd4e",
fitzpatrick_scale: false,
category: "activity"
},
tennis: { tennis: {
keywords: [ "sports", "balls", "green" ], keywords: [ "sports", "balls", "green" ],
"char": "\ud83c\udfbe", "char": "\ud83c\udfbe",
@ -3588,6 +3816,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "activity" category: "activity"
}, },
flying_disc: {
keywords: [ "sports", "frisbee", "ultimate" ],
"char": "\ud83e\udd4f",
fitzpatrick_scale: false,
category: "activity"
},
"8ball": { "8ball": {
keywords: [ "pool", "hobby", "game", "luck", "magic" ], keywords: [ "pool", "hobby", "game", "luck", "magic" ],
"char": "\ud83c\udfb1", "char": "\ud83c\udfb1",
@ -3642,6 +3876,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "activity" category: "activity"
}, },
lacrosse: {
keywords: [ "sports", "ball", "stick" ],
"char": "\ud83e\udd4d",
fitzpatrick_scale: false,
category: "activity"
},
cricket: { cricket: {
keywords: [ "sports" ], keywords: [ "sports" ],
"char": "\ud83c\udfcf", "char": "\ud83c\udfcf",
@ -3720,6 +3960,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "activity" category: "activity"
}, },
skateboard: {
keywords: [ "board" ],
"char": "\ud83d\udef9",
fitzpatrick_scale: false,
category: "activity"
},
sled: { sled: {
keywords: [ "sleigh", "luge", "toboggan" ], keywords: [ "sleigh", "luge", "toboggan" ],
"char": "\ud83d\udef7", "char": "\ud83d\udef7",
@ -4068,12 +4314,24 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "activity" category: "activity"
}, },
chess_pawn: {
keywords: [ "expendable" ],
"char": "\u265f",
fitzpatrick_scale: false,
category: "activity"
},
slot_machine: { slot_machine: {
keywords: [ "bet", "gamble", "vegas", "fruit machine", "luck", "casino" ], keywords: [ "bet", "gamble", "vegas", "fruit machine", "luck", "casino" ],
"char": "\ud83c\udfb0", "char": "\ud83c\udfb0",
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "activity" category: "activity"
}, },
jigsaw: {
keywords: [ "interlocking", "puzzle", "piece" ],
"char": "\ud83e\udde9",
fitzpatrick_scale: false,
category: "activity"
},
bowling: { bowling: {
keywords: [ "sports", "fun", "play" ], keywords: [ "sports", "fun", "play" ],
"char": "\ud83c\udfb3", "char": "\ud83c\udfb3",
@ -4980,6 +5238,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
compass: {
keywords: [ "magnetic", "navigation", "orienteering" ],
"char": "\ud83e\udded",
fitzpatrick_scale: false,
category: "objects"
},
stopwatch: { stopwatch: {
keywords: [ "time", "deadline" ], keywords: [ "time", "deadline" ],
"char": "\u23f1", "char": "\u23f1",
@ -5052,6 +5316,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
fire_extinguisher: {
keywords: [ "quench" ],
"char": "\ud83e\uddef",
fitzpatrick_scale: false,
category: "objects"
},
wastebasket: { wastebasket: {
keywords: [ "bin", "trash", "rubbish", "garbage", "toss" ], keywords: [ "bin", "trash", "rubbish", "garbage", "toss" ],
"char": "\ud83d\uddd1", "char": "\ud83d\uddd1",
@ -5118,6 +5388,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
toolbox: {
keywords: [ "tools", "diy", "fix", "maintainer", "mechanic" ],
"char": "\ud83e\uddf0",
fitzpatrick_scale: false,
category: "objects"
},
wrench: { wrench: {
keywords: [ "tools", "diy", "ikea", "fix", "maintainer" ], keywords: [ "tools", "diy", "ikea", "fix", "maintainer" ],
"char": "\ud83d\udd27", "char": "\ud83d\udd27",
@ -5160,12 +5436,24 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
brick: {
keywords: [ "bricks" ],
"char": "\ud83e\uddf1",
fitzpatrick_scale: false,
category: "objects"
},
chains: { chains: {
keywords: [ "lock", "arrest" ], keywords: [ "lock", "arrest" ],
"char": "\u26d3", "char": "\u26d3",
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
magnet: {
keywords: [ "attraction", "magnetic" ],
"char": "\ud83e\uddf2",
fitzpatrick_scale: false,
category: "objects"
},
gun: { gun: {
keywords: [ "violence", "weapon", "pistol", "revolver" ], keywords: [ "violence", "weapon", "pistol", "revolver" ],
"char": "\ud83d\udd2b", "char": "\ud83d\udd2b",
@ -5178,6 +5466,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
firecracker: {
keywords: [ "dynamite", "boom", "explode", "explosion", "explosive" ],
"char": "\ud83e\udde8",
fitzpatrick_scale: false,
category: "objects"
},
hocho: { hocho: {
keywords: [ "knife", "blade", "cutlery", "kitchen", "weapon" ], keywords: [ "knife", "blade", "cutlery", "kitchen", "weapon" ],
"char": "\ud83d\udd2a", "char": "\ud83d\udd2a",
@ -5244,6 +5538,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
nazar_amulet: {
keywords: [ "bead", "charm" ],
"char": "\ud83e\uddff",
fitzpatrick_scale: false,
category: "objects"
},
barber: { barber: {
keywords: [ "hair", "salon", "style" ], keywords: [ "hair", "salon", "style" ],
"char": "\ud83d\udc88", "char": "\ud83d\udc88",
@ -5286,12 +5586,54 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
dna: {
keywords: [ "biologist", "genetics", "life" ],
"char": "\ud83e\uddec",
fitzpatrick_scale: false,
category: "objects"
},
microbe: {
keywords: [ "amoeba", "bacteria", "germs" ],
"char": "\ud83e\udda0",
fitzpatrick_scale: false,
category: "objects"
},
petri_dish: {
keywords: [ "bacteria", "biology", "culture", "lab" ],
"char": "\ud83e\uddeb",
fitzpatrick_scale: false,
category: "objects"
},
test_tube: {
keywords: [ "chemistry", "experiment", "lab", "science" ],
"char": "\ud83e\uddea",
fitzpatrick_scale: false,
category: "objects"
},
thermometer: { thermometer: {
keywords: [ "weather", "temperature", "hot", "cold" ], keywords: [ "weather", "temperature", "hot", "cold" ],
"char": "\ud83c\udf21", "char": "\ud83c\udf21",
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
broom: {
keywords: [ "cleaning", "sweeping", "witch" ],
"char": "\ud83e\uddf9",
fitzpatrick_scale: false,
category: "objects"
},
basket: {
keywords: [ "laundry" ],
"char": "\ud83e\uddfa",
fitzpatrick_scale: false,
category: "objects"
},
toilet_paper: {
keywords: [ "roll" ],
"char": "\ud83e\uddfb",
fitzpatrick_scale: false,
category: "objects"
},
label: { label: {
keywords: [ "sale", "tag" ], keywords: [ "sale", "tag" ],
"char": "\ud83c\udff7", "char": "\ud83c\udff7",
@ -5322,6 +5664,24 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
soap: {
keywords: [ "bar", "bathing", "cleaning", "lather" ],
"char": "\ud83e\uddfc",
fitzpatrick_scale: false,
category: "objects"
},
sponge: {
keywords: [ "absorbing", "cleaning", "porous" ],
"char": "\ud83e\uddfd",
fitzpatrick_scale: false,
category: "objects"
},
lotion_bottle: {
keywords: [ "moisturizer", "sunscreen" ],
"char": "\ud83e\uddf4",
fitzpatrick_scale: false,
category: "objects"
},
key: { key: {
keywords: [ "lock", "door", "password" ], keywords: [ "lock", "door", "password" ],
"char": "\ud83d\udd11", "char": "\ud83d\udd11",
@ -5364,6 +5724,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
teddy_bear: {
keywords: [ "plush", "stuffed" ],
"char": "\ud83e\uddf8",
fitzpatrick_scale: false,
category: "objects"
},
framed_picture: { framed_picture: {
keywords: [ "photography" ], keywords: [ "photography" ],
"char": "\ud83d\uddbc", "char": "\ud83d\uddbc",
@ -5460,6 +5826,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
red_envelope: {
keywords: [ "gift" ],
"char": "\ud83e\udde7",
fitzpatrick_scale: false,
category: "objects"
},
email: { email: {
keywords: [ "letter", "postal", "inbox", "communication" ], keywords: [ "letter", "postal", "inbox", "communication" ],
"char": "\u2709\ufe0f", "char": "\u2709\ufe0f",
@ -5562,6 +5934,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
receipt: {
keywords: [ "accounting", "expenses" ],
"char": "\ud83e\uddfe",
fitzpatrick_scale: false,
category: "objects"
},
bar_chart: { bar_chart: {
keywords: [ "graph", "presentation", "stats" ], keywords: [ "graph", "presentation", "stats" ],
"char": "\ud83d\udcca", "char": "\ud83d\udcca",
@ -5724,6 +6102,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
safety_pin: {
keywords: [ "diaper" ],
"char": "\ud83e\uddf7",
fitzpatrick_scale: false,
category: "objects"
},
link: { link: {
keywords: [ "rings", "url" ], keywords: [ "rings", "url" ],
"char": "\ud83d\udd17", "char": "\ud83d\udd17",
@ -5760,6 +6144,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "objects" category: "objects"
}, },
abacus: {
keywords: [ "calculation" ],
"char": "\ud83e\uddee",
fitzpatrick_scale: false,
category: "objects"
},
pushpin: { pushpin: {
keywords: [ "stationery", "mark", "here" ], keywords: [ "stationery", "mark", "here" ],
"char": "\ud83d\udccc", "char": "\ud83d\udccc",
@ -6313,7 +6703,7 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
category: "symbols" category: "symbols"
}, },
x: { x: {
keywords: [ "no", "delete", "remove", "cancel" ], keywords: [ "no", "delete", "remove", "cancel", "red" ],
"char": "\u274c", "char": "\u274c",
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "symbols" category: "symbols"
@ -7062,6 +7452,12 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "symbols" category: "symbols"
}, },
infinity: {
keywords: [ "forever" ],
"char": "\u267e",
fitzpatrick_scale: false,
category: "symbols"
},
heavy_dollar_sign: { heavy_dollar_sign: {
keywords: [ "money", "sales", "payment", "currency", "buck" ], keywords: [ "money", "sales", "payment", "currency", "buck" ],
"char": "\ud83d\udcb2", "char": "\ud83d\udcb2",
@ -9011,5 +9407,17 @@ window.tinymce.Resource.add("tinymce.plugins.emoticons", {
"char": "\ud83c\uddff\ud83c\uddfc", "char": "\ud83c\uddff\ud83c\uddfc",
fitzpatrick_scale: false, fitzpatrick_scale: false,
category: "flags" category: "flags"
},
united_nations: {
keywords: [ "un", "flag", "banner" ],
"char": "\ud83c\uddfa\ud83c\uddf3",
fitzpatrick_scale: false,
category: "flags"
},
pirate_flag: {
keywords: [ "skull", "crossbones", "flag", "banner" ],
"char": "\ud83c\udff4\u200d\u2620\ufe0f",
fitzpatrick_scale: false,
category: "flags"
} }
}); });

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";var n=tinymce.util.Tools.resolve("tinymce.PluginManager"),o=function(n){n.addCommand("InsertHorizontalRule",function(){n.execCommand("mceInsertContent",!1,"<hr />")})},t=function(n){n.ui.registry.addButton("hr",{icon:"horizontal-rule",tooltip:"Horizontal line",onAction:function(){return n.execCommand("InsertHorizontalRule")}}),n.ui.registry.addMenuItem("hr",{icon:"horizontal-rule",text:"Horizontal line",onAction:function(){return n.execCommand("InsertHorizontalRule")}})};!function e(){n.add("hr",function(n){o(n),t(n)})}()}(); !function(){"use strict";var n=tinymce.util.Tools.resolve("tinymce.PluginManager");n.add("hr",function(n){var o,t;(o=n).addCommand("InsertHorizontalRule",function(){o.execCommand("mceInsertContent",!1,"<hr />")}),(t=n).ui.registry.addButton("hr",{icon:"horizontal-rule",tooltip:"Horizontal line",onAction:function(){return t.execCommand("InsertHorizontalRule")}}),t.ui.registry.addMenuItem("hr",{icon:"horizontal-rule",text:"Horizontal line",onAction:function(){return t.execCommand("InsertHorizontalRule")}})})}();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function t(){}function n(t){return function(){return t}}function e(){return h}var r,o=tinymce.util.Tools.resolve("tinymce.PluginManager"),a=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),f=tinymce.util.Tools.resolve("tinymce.EditorManager"),l=tinymce.util.Tools.resolve("tinymce.Env"),m=tinymce.util.Tools.resolve("tinymce.util.Tools"),c=function(t){return t.getParam("importcss_merge_classes")},i=function(t){return t.getParam("importcss_exclusive")},p=function(t){return t.getParam("importcss_selector_converter")},g=function(t){return t.getParam("importcss_selector_filter")},y=function(t){return t.getParam("importcss_groups")},v=function(t){return t.getParam("importcss_append")},d=function(t){return t.getParam("importcss_file_filter")},u=n(!1),s=n(!0),h=(r={fold:function(t,n){return t()},is:u,isSome:u,isNone:s,getOr:O,getOrThunk:x,getOrDie:function(t){throw new Error(t||"error: getOrDie called on none.")},getOrNull:n(null),getOrUndefined:n(undefined),or:O,orThunk:x,map:e,each:t,bind:e,exists:u,forall:s,filter:e,equals:_,equals_:_,toArray:function(){return[]},toString:n("none()")},Object.freeze&&Object.freeze(r),r);function _(t){return t.isNone()}function x(t){return t()}function O(t){return t}function T(n){return function(t){return function(t){if(null===t)return"null";var n=typeof t;return"object"==n&&(Array.prototype.isPrototypeOf(t)||t.constructor&&"Array"===t.constructor.name)?"array":"object"==n&&(String.prototype.isPrototypeOf(t)||t.constructor&&"String"===t.constructor.name)?"string":n}(t)===n}}function b(t,n){return function(t){for(var n=[],e=0,r=t.length;e<r;++e){if(!w(t[e]))throw new Error("Arr.flatten item "+e+" was not an array, input: "+t);M.apply(n,t[e])}return n}(function(t,n){for(var e=t.length,r=new Array(e),o=0;o<e;o++){var i=t[o];r[o]=n(i,o)}return r}(t,n))}function k(n){return"string"==typeof n?function(t){return-1!==t.indexOf(n)}:n instanceof RegExp?function(t){return n.test(t)}:n}function S(i,t,u){var c=[],e={};function s(t,n){var e,r=t.href;if((r=function(t){var n=l.cacheSuffix;return"string"==typeof t&&(t=t.replace("?"+n,"").replace("&"+n,"")),t}(r))&&u(r,n)&&!function(t,n){var e=t.settings,r=!1!==e.skin&&(e.skin||"oxide");if(r){var o=e.skin_url?t.documentBaseURI.toAbsolute(e.skin_url):f.baseURL+"/skins/ui/"+r,i=f.baseURL+"/skins/content/";return n===o+"/content"+(t.inline?".inline":"")+".min.css"||-1!==n.indexOf(i)}return!1}(i,r)){m.each(t.imports,function(t){s(t,!0)});try{e=t.cssRules||t.rules}catch(o){}m.each(e,function(t){t.styleSheet?s(t.styleSheet,!0):t.selectorText&&m.each(t.selectorText.split(","),function(t){c.push(m.trim(t))})})}}m.each(i.contentCSS,function(t){e[t]=!0}),u=u||function(t,n){return n||e[t]};try{m.each(t.styleSheets,function(t){s(t)})}catch(n){}return c}function A(t,n){var e,r=/^(?:([a-z0-9\-_]+))?(\.[a-z0-9_\-\.]+)$/i.exec(n);if(r){var o=r[1],i=r[2].substr(1).split(".").join(" "),u=m.makeMap("a,img");return r[1]?(e={title:n},t.schema.getTextBlockElements()[o]?e.block=o:t.schema.getBlockElements()[o]||u[o.toLowerCase()]?e.selector=o:e.inline=o):r[2]&&(e={inline:"span",title:n.substr(1),classes:i}),!1!==c(t)?e.classes=i:e.attributes={"class":i},e}}function P(t,n){return null===n||!1!==i(t)}var w=T("array"),E=T("function"),I=Array.prototype.slice,M=Array.prototype.push,j=(E(Array.from)&&Array.from,A),D=function(s){s.on("init",function(t){function r(t,n){if(function(t,n,e,r){return!(P(t,e)?n in r:n in e.selectors)}(s,t,n,i)){!function(t,n,e,r){P(t,e)?r[n]=!0:e.selectors[n]=!0}(s,t,n,i);var e=function(t,n,e,r){return(r&&r.selector_converter?r.selector_converter:p(t)?p(t):function(){return A(t,e)}).call(n,e,r)}(s,s.plugins.importcss,t,n);if(e){var r=e.name||a.DOM.uniqueId();return s.formatter.register(r,e),m.extend({},{title:e.title,format:r})}}return null}var o=function(){var n=[],e=[],r={};return{addItemToGroup:function(t,n){r[t]?r[t].push(n):(e.push(t),r[t]=[n])},addItem:function(t){n.push(t)},toFormats:function(){return b(e,function(t){var n=r[t];return 0===n.length?[]:[{title:t,items:n}]}).concat(n)}}}(),i={},u=k(g(s)),c=function(t){return m.map(t,function(t){return m.extend({},t,{original:t,selectors:{},filter:k(t.filter),item:{text:t.title,menu:[]}})})}(y(s));m.each(S(s,s.getDoc(),k(d(s))),function(e){if(-1===e.indexOf(".mce-")&&(!u||u(e))){var t=function(t,n){return m.grep(t,function(t){return!t.filter||t.filter(n)})}(c,e);if(0<t.length)m.each(t,function(t){var n=r(e,t);n&&o.addItemToGroup(t.title,n)});else{var n=r(e,null);n&&o.addItem(n)}}});var n=o.toFormats();s.fire("addStyleModifications",{items:n,replace:!v(s)})})},R=function(n){return{convertSelectorToFormat:function(t){return j(n,t)}}};!function U(){o.add("importcss",function(t){return D(t),R(t)})}()}(); !function(){"use strict";var n,t=tinymce.util.Tools.resolve("tinymce.PluginManager"),v=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),f=tinymce.util.Tools.resolve("tinymce.EditorManager"),m=tinymce.util.Tools.resolve("tinymce.Env"),h=tinymce.util.Tools.resolve("tinymce.util.Tools"),d=function(t){return t.getParam("importcss_selector_converter")},o=(n="array",function(t){return r=typeof(e=t),(null===e?"null":"object"==r&&(Array.prototype.isPrototypeOf(e)||e.constructor&&"Array"===e.constructor.name)?"array":"object"==r&&(String.prototype.isPrototypeOf(e)||e.constructor&&"String"===e.constructor.name)?"string":r)===n;var e,r}),i=Array.prototype.push,l=function(t,e){return function(t){for(var e=[],r=0,n=t.length;r<n;++r){if(!o(t[r]))throw new Error("Arr.flatten item "+r+" was not an array, input: "+t);i.apply(e,t[r])}return e}(function(t,e){for(var r=t.length,n=new Array(r),o=0;o<r;o++){var i=t[o];n[o]=e(i,o)}return n}(t,e))},p=function(e){return"string"==typeof e?function(t){return-1!==t.indexOf(e)}:e instanceof RegExp?function(t){return e.test(t)}:e},_=function(s,t,a){var u=[],r={};function l(t,e){var r,n,o,i=t.href;if(n=i,o=m.cacheSuffix,"string"==typeof n&&(n=n.replace("?"+o,"").replace("&"+o,"")),(i=n)&&a(i,e)&&!function(t,e){var r,n=!1!==(r=t.getParam("skin"))&&(r||"oxide");if(n){var o=t.getParam("skin_url"),i=o?t.documentBaseURI.toAbsolute(o):f.baseURL+"/skins/ui/"+n,c=f.baseURL+"/skins/content/";return e===i+"/content"+(t.inline?".inline":"")+".min.css"||-1!==e.indexOf(c)}return!1}(s,i)){h.each(t.imports,function(t){l(t,!0)});try{r=t.cssRules||t.rules}catch(c){}h.each(r,function(t){t.styleSheet?l(t.styleSheet,!0):t.selectorText&&h.each(t.selectorText.split(","),function(t){u.push(h.trim(t))})})}}h.each(s.contentCSS,function(t){r[t]=!0}),a=a||function(t,e){return e||r[t]};try{h.each(t.styleSheets,function(t){l(t)})}catch(e){}return u},x=function(t,e){var r,n=/^(?:([a-z0-9\-_]+))?(\.[a-z0-9_\-\.]+)$/i.exec(e);if(n){var o=n[1],i=n[2].substr(1).split(".").join(" "),c=h.makeMap("a,img");return n[1]?(r={title:e},t.schema.getTextBlockElements()[o]?r.block=o:t.schema.getBlockElements()[o]||c[o.toLowerCase()]?r.selector=o:r.inline=o):n[2]&&(r={inline:"span",title:e.substr(1),classes:i}),!1!==t.getParam("importcss_merge_classes")?r.classes=i:r.attributes={"class":i},r}},P=function(t,e){return null===e||!1!==t.getParam("importcss_exclusive")},r=function(y){y.on("init",function(t){var e,r,n,o,i=(e=[],r=[],n={},{addItemToGroup:function(t,e){n[t]?n[t].push(e):(r.push(t),n[t]=[e])},addItem:function(t){e.push(t)},toFormats:function(){return l(r,function(t){var e=n[t];return 0===e.length?[]:[{title:t,items:e}]}).concat(e)}}),g={},c=p(y.getParam("importcss_selector_filter")),s=(o=y.getParam("importcss_groups"),h.map(o,function(t){return h.extend({},t,{original:t,selectors:{},filter:p(t.filter),item:{text:t.title,menu:[]}})})),a=function(t,e){if(f=t,p=g,!(P(y,m=e)?f in p:f in m.selectors)){a=t,l=g,P(y,u=e)?l[a]=!0:u.selectors[a]=!0;var r=(i=(o=y).plugins.importcss,c=t,((s=e)&&s.selector_converter?s.selector_converter:d(o)?d(o):function(){return x(o,c)}).call(i,c,s));if(r){var n=r.name||v.DOM.uniqueId();return y.formatter.register(n,r),h.extend({},{title:r.title,format:n})}}var o,i,c,s,a,u,l,f,m,p;return null};h.each(_(y,y.getDoc(),p(y.getParam("importcss_file_filter"))),function(r){var t,e,n,o;-1===r.indexOf(".mce-")&&(c&&!c(r)||(n=s,o=r,0<(t=h.grep(n,function(t){return!t.filter||t.filter(o)})).length?h.each(t,function(t){var e=a(r,t);e&&i.addItemToGroup(t.title,e)}):(e=a(r,null))&&i.addItem(e)))});var u=i.toFormats();y.fire("addStyleModifications",{items:u,replace:!y.getParam("importcss_append")})})};t.add("importcss",function(t){return r(t),e=t,{convertSelectorToFormat:function(t){return x(e,t)}};var e})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function n(e){return e.getParam("insertdatetime_timeformat",e.translate("%H:%M:%S"))}function r(e){return e.getParam("insertdatetime_formats",["%H:%M:%S","%Y-%m-%d","%I:%M:%S %p","%D"])}function a(e,t){if((e=""+e).length<t)for(var n=0;n<t-e.length;n++)e="0"+e;return e}function i(e,t,n){return n=n||new Date,t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace("%D","%m/%d/%Y")).replace("%r","%I:%M:%S %p")).replace("%Y",""+n.getFullYear())).replace("%y",""+n.getYear())).replace("%m",a(n.getMonth()+1,2))).replace("%d",a(n.getDate(),2))).replace("%H",""+a(n.getHours(),2))).replace("%M",""+a(n.getMinutes(),2))).replace("%S",""+a(n.getSeconds(),2))).replace("%I",""+((n.getHours()+11)%12+1))).replace("%p",n.getHours()<12?"AM":"PM")).replace("%B",""+e.translate(f[n.getMonth()]))).replace("%b",""+e.translate(d[n.getMonth()]))).replace("%A",""+e.translate(s[n.getDay()]))).replace("%a",""+e.translate(l[n.getDay()]))).replace("%%","%")}var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=function(e){return e.getParam("insertdatetime_dateformat",e.translate("%Y-%m-%d"))},o=n,u=r,c=function(e){var t=r(e);return 0<t.length?t[0]:n(e)},m=function(e){return e.getParam("insertdatetime_element",!1)},l="Sun Mon Tue Wed Thu Fri Sat Sun".split(" "),s="Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sunday".split(" "),d="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),f="January February March April May June July August September October November December".split(" "),p=function(e,t){if(m(e)){var n=i(e,t),r=void 0;r=/%[HMSIp]/.test(t)?i(e,"%Y-%m-%dT%H:%M"):i(e,"%Y-%m-%d");var a=e.dom.getParent(e.selection.getStart(),"time");a?function(e,t,n,r){var a=e.dom.create("time",{datetime:n},r);t.parentNode.insertBefore(a,t),e.dom.remove(t),e.selection.select(a,!0),e.selection.collapse(!1)}(e,a,r,n):e.insertContent('<time datetime="'+r+'">'+n+"</time>")}else e.insertContent(i(e,t))},g=i,y=function(e){e.addCommand("mceInsertDate",function(){p(e,t(e))}),e.addCommand("mceInsertTime",function(){p(e,o(e))})},M=tinymce.util.Tools.resolve("tinymce.util.Tools"),S=function(e){function t(){return n}var n=e;return{get:t,set:function(e){n=e},clone:function(){return S(t())}}},v=function(n){var t=u(n),r=S(c(n));n.ui.registry.addSplitButton("insertdatetime",{icon:"insert-time",tooltip:"Insert date/time",select:function(e){return e===r.get()},fetch:function(e){e(M.map(t,function(e){return{type:"choiceitem",text:g(n,e),value:e}}))},onAction:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];p(n,r.get())},onItemAction:function(e,t){r.set(t),p(n,t)}});n.ui.registry.addNestedMenuItem("insertdatetime",{icon:"insert-time",text:"Date/time",getSubmenuItems:function(){return M.map(t,function(e){return{type:"menuitem",text:g(n,e),onAction:function(e){return function(){r.set(e),p(n,e)}}(e)}})}})};!function h(){e.add("insertdatetime",function(e){y(e),v(e)})}()}(); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),u=function(e){return e.getParam("insertdatetime_timeformat",e.translate("%H:%M:%S"))},c=function(e){return e.getParam("insertdatetime_formats",["%H:%M:%S","%Y-%m-%d","%I:%M:%S %p","%D"])},r="Sun Mon Tue Wed Thu Fri Sat Sun".split(" "),a="Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sunday".split(" "),i="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),o="January February March April May June July August September October November December".split(" "),m=function(e,t){if((e=""+e).length<t)for(var n=0;n<t-e.length;n++)e="0"+e;return e},s=function(e,t,n){return n=n||new Date,t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=t.replace("%D","%m/%d/%Y")).replace("%r","%I:%M:%S %p")).replace("%Y",""+n.getFullYear())).replace("%y",""+n.getYear())).replace("%m",m(n.getMonth()+1,2))).replace("%d",m(n.getDate(),2))).replace("%H",""+m(n.getHours(),2))).replace("%M",""+m(n.getMinutes(),2))).replace("%S",""+m(n.getSeconds(),2))).replace("%I",""+((n.getHours()+11)%12+1))).replace("%p",n.getHours()<12?"AM":"PM")).replace("%B",""+e.translate(o[n.getMonth()]))).replace("%b",""+e.translate(i[n.getMonth()]))).replace("%A",""+e.translate(a[n.getDay()]))).replace("%a",""+e.translate(r[n.getDay()]))).replace("%%","%")},l=function(e,t){var n,r,a,i,o,u,c,m;e.getParam("insertdatetime_element",!1)?(n=s(e,t),r=void 0,r=/%[HMSIp]/.test(t)?s(e,"%Y-%m-%dT%H:%M"):s(e,"%Y-%m-%d"),(a=e.dom.getParent(e.selection.getStart(),"time"))?(o=a,u=r,c=n,m=(i=e).dom.create("time",{datetime:u},c),o.parentNode.insertBefore(m,o),i.dom.remove(o),i.selection.select(m,!0),i.selection.collapse(!1)):e.insertContent('<time datetime="'+r+'">'+n+"</time>")):e.insertContent(s(e,t))},t=function(t){t.addCommand("mceInsertDate",function(){var e;l(t,(e=t).getParam("insertdatetime_dateformat",e.translate("%Y-%m-%d")))}),t.addCommand("mceInsertTime",function(){l(t,u(t))})},d=tinymce.util.Tools.resolve("tinymce.util.Tools"),n=function(n){var e,t,r,a,i=c(n),o=(a=c(r=n),e=0<a.length?a[0]:u(r),t=e,{get:function(){return t},set:function(e){t=e}});n.ui.registry.addSplitButton("insertdatetime",{icon:"insert-time",tooltip:"Insert date/time",select:function(e){return e===o.get()},fetch:function(e){e(d.map(i,function(e){return{type:"choiceitem",text:s(n,e),value:e}}))},onAction:function(e){l(n,o.get())},onItemAction:function(e,t){o.set(t),l(n,t)}});n.ui.registry.addNestedMenuItem("insertdatetime",{icon:"insert-time",text:"Date/time",getSubmenuItems:function(){return d.map(i,function(e){return{type:"menuitem",text:s(n,e),onAction:(t=e,function(){o.set(t),l(n,t)})};var t})}})};e.add("insertdatetime",function(e){t(e),n(e)})}();

View File

@ -0,0 +1,9 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*
* Version: 5.6.1 (2020-11-25)
*/
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),l=tinymce.util.Tools.resolve("tinymce.util.Tools"),t=function(s){var e,t,i,a;t=!1,(e=s).settings.inline_styles=t,e.getParam("fontsize_formats")||(i="8pt=1 10pt=2 12pt=3 14pt=4 18pt=5 24pt=6 36pt=7",e.settings.fontsize_formats=i),e.getParam("font_formats")||(a="Andale Mono=andale mono,monospace;Arial=arial,helvetica,sans-serif;Arial Black=arial black,sans-serif;Book Antiqua=book antiqua,palatino,serif;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier,monospace;Georgia=georgia,palatino,serif;Helvetica=helvetica,arial,sans-serif;Impact=impact,sans-serif;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco,monospace;Times New Roman=times new roman,times,serif;Trebuchet MS=trebuchet ms,geneva,sans-serif;Verdana=verdana,geneva,sans-serif;Webdings=webdings;Wingdings=wingdings,zapf dingbats",e.settings.font_formats=a),s.on("PreInit",function(){return e=s,t="p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table",i=l.explode(e.getParam("font_size_style_values","xx-small,x-small,small,medium,large,x-large,xx-large")),a=e.schema,e.formatter.register({alignleft:{selector:t,attributes:{align:"left"}},aligncenter:{selector:t,attributes:{align:"center"}},alignright:{selector:t,attributes:{align:"right"}},alignjustify:{selector:t,attributes:{align:"justify"}},bold:[{inline:"b",remove:"all",preserve_attributes:["class","style"]},{inline:"strong",remove:"all",preserve_attributes:["class","style"]},{inline:"span",styles:{fontWeight:"bold"}}],italic:[{inline:"i",remove:"all",preserve_attributes:["class","style"]},{inline:"em",remove:"all",preserve_attributes:["class","style"]},{inline:"span",styles:{fontStyle:"italic"}}],underline:[{inline:"u",remove:"all",preserve_attributes:["class","style"]},{inline:"span",styles:{textDecoration:"underline"},exact:!0}],strikethrough:[{inline:"strike",remove:"all",preserve_attributes:["class","style"]},{inline:"span",styles:{textDecoration:"line-through"},exact:!0}],fontname:{inline:"font",toggle:!1,attributes:{face:"%value"}},fontsize:{inline:"font",toggle:!1,attributes:{size:function(e){return String(l.inArray(i,e.value)+1)}}},forecolor:{inline:"font",attributes:{color:"%value"},links:!0,remove_similar:!0,clear_child_styles:!0},hilitecolor:{inline:"font",styles:{backgroundColor:"%value"},links:!0,remove_similar:!0,clear_child_styles:!0}}),l.each("b,i,u,strike".split(","),function(e){a.addValidElements(e+"[*]")}),a.getElementRule("font")||a.addValidElements("font[face|size|color|style]"),void l.each(t.split(","),function(e){var t=a.getElementRule(e);t&&(t.attributes.align||(t.attributes.align={},t.attributesOrder.push("align")))});var e,t,i,a})};e.add("legacyoutput",function(e){t(e)})}();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function o(n,e){for(var t="",o=0;o<e;o++)t+=n;return t}var n=tinymce.util.Tools.resolve("tinymce.PluginManager"),i=function(n){var e=n.getParam("nonbreaking_force_tab",0);return"boolean"==typeof e?!0===e?3:0:e},a=function(n){return n.getParam("nonbreaking_wrap",!0,"boolean")},r=function(n,e){var t=a(n)||n.plugins.visualchars?'<span class="'+(function(n){return!!n.plugins.visualchars&&n.plugins.visualchars.isEnabled()}(n)?"mce-nbsp-wrap mce-nbsp":"mce-nbsp-wrap")+'" contenteditable="false">'+o("&nbsp;",e)+"</span>":o("&nbsp;",e);n.undoManager.transact(function(){return n.insertContent(t)})},e=function(n){n.addCommand("mceNonBreaking",function(){r(n,1)})},c=tinymce.util.Tools.resolve("tinymce.util.VK"),t=function(e){var t=i(e);0<t&&e.on("keydown",function(n){if(n.keyCode===c.TAB&&!n.isDefaultPrevented()){if(n.shiftKey)return;n.preventDefault(),n.stopImmediatePropagation(),r(e,t)}})},u=function(n){n.ui.registry.addButton("nonbreaking",{icon:"non-breaking",tooltip:"Nonbreaking space",onAction:function(){return n.execCommand("mceNonBreaking")}}),n.ui.registry.addMenuItem("nonbreaking",{icon:"non-breaking",text:"Nonbreaking space",onAction:function(){return n.execCommand("mceNonBreaking")}})};!function s(){n.add("nonbreaking",function(n){e(n),u(n),t(n)})}()}(); !function(){"use strict";var n=tinymce.util.Tools.resolve("tinymce.PluginManager"),i=function(n,e){for(var a="",o=0;o<e;o++)a+=n;return a},r=function(n,e){var a,o=n.getParam("nonbreaking_wrap",!0,"boolean")||n.plugins.visualchars?'<span class="'+((a=n).plugins.visualchars&&a.plugins.visualchars.isEnabled()?"mce-nbsp-wrap mce-nbsp":"mce-nbsp-wrap")+'" contenteditable="false">'+i("&nbsp;",e)+"</span>":i("&nbsp;",e);n.undoManager.transact(function(){return n.insertContent(o)})},c=tinymce.util.Tools.resolve("tinymce.util.VK");n.add("nonbreaking",function(n){var e,a,o,i,t;(e=n).addCommand("mceNonBreaking",function(){r(e,1)}),(a=n).ui.registry.addButton("nonbreaking",{icon:"non-breaking",tooltip:"Nonbreaking space",onAction:function(){return a.execCommand("mceNonBreaking")}}),a.ui.registry.addMenuItem("nonbreaking",{icon:"non-breaking",text:"Nonbreaking space",onAction:function(){return a.execCommand("mceNonBreaking")}}),0<(t="boolean"==typeof(i=(o=n).getParam("nonbreaking_force_tab",0))?!0===i?3:0:i)&&o.on("keydown",function(n){if(n.keyCode===c.TAB&&!n.isDefaultPrevented()){if(n.shiftKey)return;n.preventDefault(),n.stopImmediatePropagation(),r(o,t)}})})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function c(n){return function(t){return-1!==(" "+t.attr("class")+" ").indexOf(n)}}function l(i,o,c){return function(t){var n=arguments,e=n[n.length-2],r=0<e?o.charAt(e-1):"";if('"'===r)return t;if(">"===r){var a=o.lastIndexOf("<",e);if(-1!==a)if(-1!==o.substring(a,e).indexOf('contenteditable="false"'))return t}return'<span class="'+c+'" data-mce-content="'+i.dom.encode(n[0])+'">'+i.dom.encode("string"==typeof n[1]?n[1]:n[0])+"</span>"}}var t=tinymce.util.Tools.resolve("tinymce.PluginManager"),u=tinymce.util.Tools.resolve("tinymce.util.Tools"),f=function(t){return t.getParam("noneditable_noneditable_class","mceNonEditable")},s=function(t){return t.getParam("noneditable_editable_class","mceEditable")},d=function(t){var n=t.getParam("noneditable_regexp",[]);return n&&n.constructor===RegExp?[n]:n},n=function(n){var t,e,r="contenteditable";t=" "+u.trim(s(n))+" ",e=" "+u.trim(f(n))+" ";var a=c(t),i=c(e),o=d(n);n.on("PreInit",function(){0<o.length&&n.on("BeforeSetContent",function(t){!function(t,n,e){var r=n.length,a=e.content;if("raw"!==e.format){for(;r--;)a=a.replace(n[r],l(t,a,f(t)));e.content=a}}(n,o,t)}),n.parser.addAttributeFilter("class",function(t){for(var n,e=t.length;e--;)n=t[e],a(n)?n.attr(r,"true"):i(n)&&n.attr(r,"false")}),n.serializer.addAttributeFilter(r,function(t){for(var n,e=t.length;e--;)n=t[e],(a(n)||i(n))&&(0<o.length&&n.attr("data-mce-content")?(n.name="#text",n.type=3,n.raw=!0,n.value=n.attr("data-mce-content")):n.attr(r,null))})})};!function e(){t.add("noneditable",function(t){n(t)})}()}(); !function(){"use strict";var t=tinymce.util.Tools.resolve("tinymce.PluginManager"),l=tinymce.util.Tools.resolve("tinymce.util.Tools"),u=function(t){return t.getParam("noneditable_noneditable_class","mceNonEditable")},f=function(e){return function(t){return-1!==(" "+t.attr("class")+" ").indexOf(e)}},e=function(e){var t,r="contenteditable",n=" "+l.trim(e.getParam("noneditable_editable_class","mceEditable"))+" ",a=" "+l.trim(u(e))+" ",i=f(n),o=f(a),c=(t=e.getParam("noneditable_regexp",[]))&&t.constructor===RegExp?[t]:t;e.on("PreInit",function(){0<c.length&&e.on("BeforeSetContent",function(t){!function(t,e,n){var r=e.length,a=n.content;if("raw"!==n.format){for(;r--;)a=a.replace(e[r],function(i,o,c){return function(t){var e=arguments,n=e[e.length-2],r=0<n?o.charAt(n-1):"";if('"'===r)return t;if(">"===r){var a=o.lastIndexOf("<",n);if(-1!==a)if(-1!==o.substring(a,n).indexOf('contenteditable="false"'))return t}return'<span class="'+c+'" data-mce-content="'+i.dom.encode(e[0])+'">'+i.dom.encode("string"==typeof e[1]?e[1]:e[0])+"</span>"}}(t,a,u(t)));n.content=a}}(e,c,t)}),e.parser.addAttributeFilter("class",function(t){for(var e,n=t.length;n--;)e=t[n],i(e)?e.attr(r,"true"):o(e)&&e.attr(r,"false")}),e.serializer.addAttributeFilter(r,function(t){for(var e,n=t.length;n--;)e=t[n],(i(e)||o(e))&&(0<c.length&&e.attr("data-mce-content")?(e.name="#text",e.type=3,e.raw=!0,e.value=e.attr("data-mce-content")):e.attr(r,null))})})};t.add("noneditable",function(t){e(t)})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function e(){return"mce-pagebreak"}function a(){return'<img src="'+t.transparentSrc+'" class="mce-pagebreak" data-mce-resize="false" data-mce-placeholder />'}var n=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=tinymce.util.Tools.resolve("tinymce.Env"),r=function(e){return e.getParam("pagebreak_separator","\x3c!-- pagebreak --\x3e")},i=function(e){return e.getParam("pagebreak_split_block",!1)},o=function(o){var c=r(o),n=new RegExp(c.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g,function(e){return"\\"+e}),"gi");o.on("BeforeSetContent",function(e){e.content=e.content.replace(n,a())}),o.on("PreInit",function(){o.serializer.addNodeFilter("img",function(e){for(var n,a,t=e.length;t--;)if((a=(n=e[t]).attr("class"))&&-1!==a.indexOf("mce-pagebreak")){var r=n.parent;if(o.schema.getBlockElements()[r.name]&&i(o)){r.type=3,r.value=c,r.raw=!0,n.remove();continue}n.type=3,n.value=c,n.raw=!0}})})},c=a,u=e,g=function(e){e.addCommand("mcePageBreak",function(){e.settings.pagebreak_split_block?e.insertContent("<p>"+c()+"</p>"):e.insertContent(c())})},m=function(n){n.on("ResolveName",function(e){"IMG"===e.target.nodeName&&n.dom.hasClass(e.target,u())&&(e.name="pagebreak")})},s=function(e){e.ui.registry.addButton("pagebreak",{icon:"page-break",tooltip:"Page break",onAction:function(){return e.execCommand("mcePageBreak")}}),e.ui.registry.addMenuItem("pagebreak",{text:"Page break",icon:"page-break",onAction:function(){return e.execCommand("mcePageBreak")}})};!function l(){n.add("pagebreak",function(e){g(e),s(e),o(e),m(e)})}()}(); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),a=tinymce.util.Tools.resolve("tinymce.Env"),i=function(e){return e.getParam("pagebreak_split_block",!1)},g=function(){return"mce-pagebreak"},m=function(){return'<img src="'+a.transparentSrc+'" class="'+g()+'" data-mce-resize="false" data-mce-placeholder />'};e.add("pagebreak",function(e){var a,n,o,c,t,r;(a=e).addCommand("mcePageBreak",function(){i(a)?a.insertContent("<p>"+m()+"</p>"):a.insertContent(m())}),(n=e).ui.registry.addButton("pagebreak",{icon:"page-break",tooltip:"Page break",onAction:function(){return n.execCommand("mcePageBreak")}}),n.ui.registry.addMenuItem("pagebreak",{text:"Page break",icon:"page-break",onAction:function(){return n.execCommand("mcePageBreak")}}),c=(o=e).getParam("pagebreak_separator","\x3c!-- pagebreak --\x3e"),t=new RegExp(c.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g,function(e){return"\\"+e}),"gi"),o.on("BeforeSetContent",function(e){e.content=e.content.replace(t,m())}),o.on("PreInit",function(){o.serializer.addNodeFilter("img",function(e){for(var a,n,t=e.length;t--;)if((n=(a=e[t]).attr("class"))&&-1!==n.indexOf("mce-pagebreak")){var r=a.parent;if(o.schema.getBlockElements()[r.name]&&i(o)){r.type=3,r.value=c,r.raw=!0,a.remove();continue}a.type=3,a.value=c,a.raw=!0}})}),(r=e).on("ResolveName",function(e){"IMG"===e.target.nodeName&&r.dom.hasClass(e.target,g())&&(e.name="pagebreak")})})}();

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),l=tinymce.util.Tools.resolve("tinymce.util.Tools"),m=function(e){return e.getParam("content_style","")},u=function(e){return e.getParam("content_css_cors",!1,"boolean")},y=tinymce.util.Tools.resolve("tinymce.Env"),n=function(t){var n="",i=t.dom.encode,e=m(t);n+='<base href="'+i(t.documentBaseURI.getURI())+'">',e&&(n+='<style type="text/css">'+e+"</style>");var o=u(t)?' crossorigin="anonymous"':"";l.each(t.contentCSS,function(e){n+='<link type="text/css" rel="stylesheet" href="'+i(t.documentBaseURI.toAbsolute(e))+'"'+o+">"});var r=t.settings.body_id||"tinymce";-1!==r.indexOf("=")&&(r=(r=t.getParam("body_id","","hash"))[t.id]||r);var a=t.settings.body_class||"";-1!==a.indexOf("=")&&(a=(a=t.getParam("body_class","","hash"))[t.id]||"");var c='<script>document.addEventListener && document.addEventListener("click", function(e) {for (var elm = e.target; elm; elm = elm.parentNode) {if (elm.nodeName === "A" && !('+(y.mac?"e.metaKey":"e.ctrlKey && !e.altKey")+")) {e.preventDefault();}}}, false);<\/script> ",s=t.getBody().dir,d=s?' dir="'+i(s)+'"':"";return"<!DOCTYPE html><html><head>"+n+'</head><body id="'+i(r)+'" class="mce-content-body '+i(a)+'"'+d+">"+t.getContent()+c+"</body></html>"},t=function(e){e.addCommand("mcePreview",function(){!function(e){var t=n(e);e.windowManager.open({title:"Preview",size:"large",body:{type:"panel",items:[{name:"preview",type:"iframe",sandboxed:!0}]},buttons:[{type:"cancel",name:"close",text:"Close",primary:!0}],initialData:{preview:t}}).focus("close")}(e)})},i=function(e){e.ui.registry.addButton("preview",{icon:"preview",tooltip:"Preview",onAction:function(){return e.execCommand("mcePreview")}}),e.ui.registry.addMenuItem("preview",{icon:"preview",text:"Preview",onAction:function(){return e.execCommand("mcePreview")}})};!function o(){e.add("preview",function(e){t(e),i(e)})}()}(); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),f=tinymce.util.Tools.resolve("tinymce.Env"),w=tinymce.util.Tools.resolve("tinymce.util.Tools"),i=function(e){var t=function(t){var n="",i=t.dom.encode,e=t.getParam("content_style","","string");n+='<base href="'+i(t.documentBaseURI.getURI())+'">',e&&(n+='<style type="text/css">'+e+"</style>");var o=t.getParam("content_css_cors",!1,"boolean")?' crossorigin="anonymous"':"";w.each(t.contentCSS,function(e){n+='<link type="text/css" rel="stylesheet" href="'+i(t.documentBaseURI.toAbsolute(e))+'"'+o+">"});var r,a,c,s,d,m,l,y=-1===(s=(r=t).getParam("body_id","tinymce","string")).indexOf("=")?s:(c=(a=r).getParam("body_id","","hash"))[a.id]||c,u=-1===(l=(d=t).getParam("body_class","","string")).indexOf("=")?l:(m=d).getParam("body_class","","hash")[m.id]||"",v='<script>document.addEventListener && document.addEventListener("click", function(e) {for (var elm = e.target; elm; elm = elm.parentNode) {if (elm.nodeName === "A" && !('+(f.mac?"e.metaKey":"e.ctrlKey && !e.altKey")+")) {e.preventDefault();}}}, false);<\/script> ",g=t.getBody().dir,p=g?' dir="'+i(g)+'"':"";return"<!DOCTYPE html><html><head>"+n+'</head><body id="'+i(y)+'" class="mce-content-body '+i(u)+'"'+p+">"+t.getContent()+v+"</body></html>"}(e);e.windowManager.open({title:"Preview",size:"large",body:{type:"panel",items:[{name:"preview",type:"iframe",sandboxed:!0}]},buttons:[{type:"cancel",name:"close",text:"Close",primary:!0}],initialData:{preview:t}}).focus("close")};e.add("preview",function(e){var t,n;(t=e).addCommand("mcePreview",function(){i(t)}),(n=e).ui.registry.addButton("preview",{icon:"preview",tooltip:"Preview",onAction:function(){return n.execCommand("mcePreview")}}),n.ui.registry.addMenuItem("preview",{icon:"preview",text:"Preview",onAction:function(){return n.execCommand("mcePreview")}})})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";var n=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=tinymce.util.Tools.resolve("tinymce.Env"),i=function(n){n.addCommand("mcePrint",function(){t.browser.isIE()?n.getDoc().execCommand("print",!1,null):n.getWin().print()})},e=function(n){n.ui.registry.addButton("print",{icon:"print",tooltip:"Print",onAction:function(){return n.execCommand("mcePrint")}}),n.ui.registry.addMenuItem("print",{text:"Print...",icon:"print",onAction:function(){return n.execCommand("mcePrint")}})};!function o(){n.add("print",function(n){i(n),e(n),n.addShortcut("Meta+P","","mcePrint")})}()}(); !function(){"use strict";var n=tinymce.util.Tools.resolve("tinymce.PluginManager"),e=tinymce.util.Tools.resolve("tinymce.Env");n.add("print",function(n){var t,i;(t=n).addCommand("mcePrint",function(){e.browser.isIE()?t.getDoc().execCommand("print",!1,null):t.getWin().print()}),(i=n).ui.registry.addButton("print",{icon:"print",tooltip:"Print",onAction:function(){return i.execCommand("mcePrint")}}),i.ui.registry.addMenuItem("print",{text:"Print...",icon:"print",onAction:function(){return i.execCommand("mcePrint")}}),n.addShortcut("Meta+P","","mcePrint")})}();

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function t(n,e){n.notificationManager.open({text:e,type:"error"})}function e(t){return function(n){function e(){n.setDisabled(a(t)&&!t.isDirty())}return t.on("NodeChange dirty",e),function(){return t.off("NodeChange dirty",e)}}}var n=tinymce.util.Tools.resolve("tinymce.PluginManager"),o=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),i=tinymce.util.Tools.resolve("tinymce.util.Tools"),a=function(n){return n.getParam("save_enablewhendirty",!0)},c=function(n){return!!n.getParam("save_onsavecallback")},r=function(n){return!!n.getParam("save_oncancelcallback")},u=function(n){var e;if(e=o.DOM.getParent(n.id,"form"),!a(n)||n.isDirty()){if(n.save(),c(n))return n.execCallback("save_onsavecallback",n),void n.nodeChanged();e?(n.setDirty(!1),e.onsubmit&&!e.onsubmit()||("function"==typeof e.submit?e.submit():t(n,"Error: Form submit field collision.")),n.nodeChanged()):t(n,"Error: No form element found.")}},l=function(n){var e=i.trim(n.startContent);r(n)?n.execCallback("save_oncancelcallback",n):n.resetContent(e)},s=function(n){n.addCommand("mceSave",function(){u(n)}),n.addCommand("mceCancel",function(){l(n)})},d=function(n){n.ui.registry.addButton("save",{icon:"save",tooltip:"Save",disabled:!0,onAction:function(){return n.execCommand("mceSave")},onSetup:e(n)}),n.ui.registry.addButton("cancel",{icon:"cancel",tooltip:"Cancel",disabled:!0,onAction:function(){return n.execCommand("mceCancel")},onSetup:e(n)}),n.addShortcut("Meta+S","","mceSave")};!function m(){n.add("save",function(n){d(n),s(n)})}()}(); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),o=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),a=tinymce.util.Tools.resolve("tinymce.util.Tools"),i=function(e){return e.getParam("save_enablewhendirty",!0)},c=function(e,n){e.notificationManager.open({text:n,type:"error"})},t=function(t){t.addCommand("mceSave",function(){!function(e){var n=o.DOM.getParent(e.id,"form");if(!i(e)||e.isDirty()){if(e.save(),e.getParam("save_onsavecallback"))return e.execCallback("save_onsavecallback",e),e.nodeChanged();n?(e.setDirty(!1),n.onsubmit&&!n.onsubmit()||("function"==typeof n.submit?n.submit():c(e,"Error: Form submit field collision.")),e.nodeChanged()):c(e,"Error: No form element found.")}}(t)}),t.addCommand("mceCancel",function(){var e,n;e=t,n=a.trim(e.startContent),e.getParam("save_oncancelcallback")?e.execCallback("save_oncancelcallback",e):e.resetContent(n)})},r=function(t){return function(e){var n=function(){e.setDisabled(i(t)&&!t.isDirty())};return t.on("NodeChange dirty",n),function(){return t.off("NodeChange dirty",n)}}};e.add("save",function(e){var n;(n=e).ui.registry.addButton("save",{icon:"save",tooltip:"Save",disabled:!0,onAction:function(){return n.execCommand("mceSave")},onSetup:r(n)}),n.ui.registry.addButton("cancel",{icon:"cancel",tooltip:"Cancel",disabled:!0,onAction:function(){return n.execCommand("mceCancel")},onSetup:r(n)}),n.addShortcut("Meta+S","","mceSave"),t(e)})}();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(c){"use strict";function t(e){e.keyCode!==d.TAB||e.ctrlKey||e.altKey||e.metaKey||e.preventDefault()}var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),n=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),s=tinymce.util.Tools.resolve("tinymce.EditorManager"),a=tinymce.util.Tools.resolve("tinymce.Env"),y=tinymce.util.Tools.resolve("tinymce.util.Delay"),f=tinymce.util.Tools.resolve("tinymce.util.Tools"),d=tinymce.util.Tools.resolve("tinymce.util.VK"),m=function(e){return e.getParam("tab_focus",function(e){return e.getParam("tabfocus_elements",":prev,:next")}(e))},v=n.DOM,i=function(r){function e(n){var i,o,e,l;if(!(n.keyCode!==d.TAB||n.ctrlKey||n.altKey||n.metaKey||n.isDefaultPrevented())&&(1===(e=f.explode(m(r))).length&&(e[1]=e[0],e[0]=":prev"),o=n.shiftKey?":prev"===e[0]?u(-1):v.get(e[0]):":next"===e[1]?u(1):v.get(e[1]))){var t=s.get(o.id||o.name);o.id&&t?t.focus():y.setTimeout(function(){a.webkit||c.window.focus(),o.focus()},10),n.preventDefault()}function u(e){function t(e){return/INPUT|TEXTAREA|BUTTON/.test(e.tagName)&&s.get(n.id)&&-1!==e.tabIndex&&function t(e){return"BODY"===e.nodeName||"hidden"!==e.type&&"none"!==e.style.display&&"hidden"!==e.style.visibility&&t(e.parentNode)}(e)}if(o=v.select(":input:enabled,*[tabindex]:not(iframe)"),f.each(o,function(e,t){if(e.id===r.id)return i=t,!1}),0<e){for(l=i+1;l<o.length;l++)if(t(o[l]))return o[l]}else for(l=i-1;0<=l;l--)if(t(o[l]))return o[l];return null}}r.on("init",function(){r.inline&&v.setAttrib(r.getBody(),"tabIndex",null),r.on("keyup",t),a.gecko?r.on("keypress keydown",e):r.on("keydown",e)})};!function o(){e.add("tabfocus",function(e){i(e)})}()}(window); !function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager"),t=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),c=tinymce.util.Tools.resolve("tinymce.EditorManager"),a=tinymce.util.Tools.resolve("tinymce.Env"),y=tinymce.util.Tools.resolve("tinymce.util.Delay"),d=tinymce.util.Tools.resolve("tinymce.util.Tools"),f=tinymce.util.Tools.resolve("tinymce.util.VK"),m=t.DOM,n=function(e){e.keyCode!==f.TAB||e.ctrlKey||e.altKey||e.metaKey||e.preventDefault()},i=function(s){function e(i){var o,l,e,t,n,u;function r(e){var t=m.select(":input:enabled,*[tabindex]:not(iframe)");function n(e){return/INPUT|TEXTAREA|BUTTON/.test(e.tagName)&&c.get(i.id)&&-1!==e.tabIndex&&function t(e){return"BODY"===e.nodeName||"hidden"!==e.type&&"none"!==e.style.display&&"hidden"!==e.style.visibility&&t(e.parentNode)}(e)}if(d.each(t,function(e,t){if(e.id===s.id)return o=t,!1}),0<e){for(l=o+1;l<t.length;l++)if(n(t[l]))return t[l]}else for(l=o-1;0<=l;l--)if(n(t[l]))return t[l];return null}i.keyCode!==f.TAB||i.ctrlKey||i.altKey||i.metaKey||i.isDefaultPrevented()||(1===(e=d.explode((t=s).getParam("tab_focus",t.getParam("tabfocus_elements",":prev,:next")))).length&&(e[1]=e[0],e[0]=":prev"),(n=i.shiftKey?":prev"===e[0]?r(-1):m.get(e[0]):":next"===e[1]?r(1):m.get(e[1]))&&(u=c.get(n.id||n.name),n.id&&u?u.focus():y.setTimeout(function(){a.webkit||window.focus(),n.focus()},10),i.preventDefault()))}s.on("init",function(){s.inline&&m.setAttrib(s.getBody(),"tabIndex",null),s.on("keyup",n),a.gecko?s.on("keypress keydown",e):s.on("keydown",e)})};e.add("tabfocus",function(e){i(e)})}();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,9 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*
* Version: 5.6.1 (2020-11-25)
*/
!function(){"use strict";tinymce.util.Tools.resolve("tinymce.PluginManager").add("textcolor",function(){console.warn("Text color plugin is now built in to the core editor, please remove it from your editor configuration")})}();

File diff suppressed because one or more lines are too long

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function e(n){return function(t){function e(){return t.setDisabled(n.readonly||!v.hasHeaders(n))}return e(),n.on("LoadContent SetContent change",e),function(){return n.on("LoadContent SetContent change",e)}}}var t=tinymce.util.Tools.resolve("tinymce.PluginManager"),u=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),l=tinymce.util.Tools.resolve("tinymce.util.I18n"),i=tinymce.util.Tools.resolve("tinymce.util.Tools"),c=function(t){return t.getParam("toc_class","mce-toc")},d=function(t){var e=t.getParam("toc_header","h2");return/^h[1-6]$/.test(e)?e:"h2"},a=function(t){var e=parseInt(t.getParam("toc_depth","3"),10);return 1<=e&&e<=9?e:3},s=function(e){var n=0;return function(){var t=(new Date).getTime().toString(32);return e+t+(n++).toString(32)}}("mcetoc_"),f=function f(t){var e,n=[];for(e=1;e<=t;e++)n.push("h"+e);return n.join(",")},m=function(n){var o=c(n),t=d(n),e=f(a(n)),r=n.$(e);return r.length&&/^h[1-9]$/i.test(t)&&(r=r.filter(function(t,e){return!n.dom.hasClass(e.parentNode,o)})),i.map(r,function(t){return{id:t.id?t.id:s(),level:parseInt(t.nodeName.replace(/^H/i,""),10),title:n.$.text(t),element:t}})},o=function(t){var e,n,o,r,i="",c=m(t),a=function(t){var e,n=9;for(e=0;e<t.length;e++)if(t[e].level<n&&(n=t[e].level),1===n)return n;return n}(c)-1;if(!c.length)return"";for(i+=function(t,e){var n="</"+t+">";return"<"+t+' contenteditable="true">'+u.DOM.encode(e)+n}(d(t),l.translate("Table of Contents")),e=0;e<c.length;e++){if((o=c[e]).element.id=o.id,r=c[e+1]&&c[e+1].level,a===o.level)i+="<li>";else for(n=a;n<o.level;n++)i+="<ul><li>";if(i+='<a href="#'+o.id+'">'+o.title+"</a>",r!==o.level&&r)for(n=o.level;r<n;n--)i+="</li></ul><li>";else i+="</li>",r||(i+="</ul>");a=o.level}return i},r=function(t){var e=c(t),n=t.$("."+e);n.length&&t.undoManager.transact(function(){n.html(o(t))})},v={hasHeaders:function(t){return 0<m(t).length},insertToc:function(t){var e=c(t),n=t.$("."+e);!function(t,e){return!e.length||0<t.dom.getParents(e[0],".mce-offscreen-selection").length}(t,n)?r(t):t.insertContent(function(t){var e=o(t);return'<div class="'+t.dom.encode(c(t))+'" contenteditable="false">'+e+"</div>"}(t))},updateToc:r},n=function(t){t.addCommand("mceInsertToc",function(){v.insertToc(t)}),t.addCommand("mceUpdateToc",function(){v.updateToc(t)})},g=function(t){var n=t.$,o=c(t);t.on("PreProcess",function(t){var e=n("."+o,t.node);e.length&&(e.removeAttr("contentEditable"),e.find("[contenteditable]").removeAttr("contentEditable"))}),t.on("SetContent",function(){var t=n("."+o);t.length&&(t.attr("contentEditable",!1),t.children(":first-child").attr("contentEditable",!0))})},h=function(t){t.ui.registry.addButton("toc",{icon:"toc",tooltip:"Table of contents",onAction:function(){return t.execCommand("mceInsertToc")},onSetup:e(t)}),t.ui.registry.addButton("tocupdate",{icon:"reload",tooltip:"Update",onAction:function(){return t.execCommand("mceUpdateToc")}}),t.ui.registry.addMenuItem("toc",{icon:"toc",text:"Table of contents",onAction:function(){return t.execCommand("mceInsertToc")},onSetup:e(t)}),t.ui.registry.addContextToolbar("toc",{items:"tocupdate",predicate:function(e){return function(t){return t&&e.dom.is(t,"."+c(e))&&e.getBody().contains(t)}}(t),scope:"node",position:"node"})};!function p(){t.add("toc",function(t){n(t),h(t),g(t)})}()}(); !function(){"use strict";var e,n,t=tinymce.util.Tools.resolve("tinymce.PluginManager"),s=tinymce.util.Tools.resolve("tinymce.dom.DOMUtils"),f=tinymce.util.Tools.resolve("tinymce.util.I18n"),c=tinymce.util.Tools.resolve("tinymce.util.Tools"),l=function(t){return t.getParam("toc_class","mce-toc")},m=function(t){var e=t.getParam("toc_header","h2");return/^h[1-6]$/.test(e)?e:"h2"},a=(e="mcetoc_",n=0,function(){var t=(new Date).getTime().toString(32);return e+t+(n++).toString(32)}),v=function(n){var t,o=l(n),e=m(n),r=function(t){for(var e=[],n=1;n<=t;n++)e.push("h"+n);return e.join(",")}(1<=(t=parseInt(n.getParam("toc_depth","3"),10))&&t<=9?t:3),i=n.$(r);return i.length&&/^h[1-9]$/i.test(e)&&(i=i.filter(function(t,e){return!n.dom.hasClass(e.parentNode,o)})),c.map(i,function(t){var e=t.id;return{id:e||a(),level:parseInt(t.nodeName.replace(/^H/i,""),10),title:n.$.text(t),element:t}})},u=function(t){var e,n,o,r,i,c,l,a="",u=v(t),d=function(t){for(var e=9,n=0;n<t.length;n++)if(t[n].level<e&&(e=t[n].level),1===e)return e;return e}(u)-1;if(!u.length)return"";for(a+=(i=m(t),c=f.translate("Table of Contents"),l="</"+i+">","<"+i+' contenteditable="true">'+s.DOM.encode(c)+l),e=0;e<u.length;e++){if((o=u[e]).element.id=o.id,r=u[e+1]&&u[e+1].level,d===o.level)a+="<li>";else for(n=d;n<o.level;n++)a+="<ul><li>";if(a+='<a href="#'+o.id+'">'+o.title+"</a>",r!==o.level&&r)for(n=o.level;r<n;n--)a+="</li></ul><li>";else a+="</li>",r||(a+="</ul>");d=o.level}return a},i=function(t){var e,n,o,r,i=l(t),c=t.$("."+i);o=t,!(r=c).length||0<o.dom.getParents(r[0],".mce-offscreen-selection").length?t.insertContent((n=u(e=t),'<div class="'+e.dom.encode(l(e))+'" contenteditable="false">'+n+"</div>")):d(t)},d=function(t){var e=l(t),n=t.$("."+e);n.length&&t.undoManager.transact(function(){n.html(u(t))})},o=function(n){return function(t){var e=function(){return t.setDisabled(n.mode.isReadOnly()||!(0<v(n).length))};return e(),n.on("LoadContent SetContent change",e),function(){return n.on("LoadContent SetContent change",e)}}},g=function(t){var e;t.ui.registry.addButton("toc",{icon:"toc",tooltip:"Table of contents",onAction:function(){return t.execCommand("mceInsertToc")},onSetup:o(t)}),t.ui.registry.addButton("tocupdate",{icon:"reload",tooltip:"Update",onAction:function(){return t.execCommand("mceUpdateToc")}}),t.ui.registry.addMenuItem("toc",{icon:"toc",text:"Table of contents",onAction:function(){return t.execCommand("mceInsertToc")},onSetup:o(t)}),t.ui.registry.addContextToolbar("toc",{items:"tocupdate",predicate:(e=t,function(t){return t&&e.dom.is(t,"."+l(e))&&e.getBody().contains(t)}),scope:"node",position:"node"})};t.add("toc",function(t){var e,n,o,r;(e=t).addCommand("mceInsertToc",function(){i(e)}),e.addCommand("mceUpdateToc",function(){d(e)}),g(t),o=(n=t).$,r=l(n),n.on("PreProcess",function(t){var e=o("."+r,t.node);e.length&&(e.removeAttr("contentEditable"),e.find("[contenteditable]").removeAttr("contentEditable"))}),n.on("SetContent",function(){var t=o("."+r);t.length&&(t.attr("contentEditable",!1),t.children(":first-child").attr("contentEditable",!0))})})}();

View File

@ -4,6 +4,6 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
* *
* Version: 5.1.5 (2019-12-19) * Version: 5.6.1 (2020-11-25)
*/ */
!function(){"use strict";function n(n,e){return function(o){o.setActive(e.get());function t(t){return o.setActive(t.state)}return n.on("VisualBlocks",t),function(){return n.off("VisualBlocks",t)}}}var e=function(t){function o(){return n}var n=t;return{get:o,set:function(t){n=t},clone:function(){return e(o())}}},t=tinymce.util.Tools.resolve("tinymce.PluginManager"),i=function(t,o){t.fire("VisualBlocks",{state:o})},u=function(t,o,n){t.dom.toggleClass(t.getBody(),"mce-visualblocks"),n.set(!n.get()),i(t,n.get())},c=function(t,o,n){t.addCommand("mceVisualBlocks",function(){u(t,o,n)})},s=function(t){return t.getParam("visualblocks_default_state",!1,"boolean")},l=function(o,t,n){o.on("PreviewFormats AfterPreviewFormats",function(t){n.get()&&o.dom.toggleClass(o.getBody(),"mce-visualblocks","afterpreviewformats"===t.type)}),o.on("init",function(){s(o)&&u(o,t,n)}),o.on("remove",function(){o.dom.removeClass(o.getBody(),"mce-visualblocks")})},r=function(t,o){t.ui.registry.addToggleButton("visualblocks",{icon:"visualblocks",tooltip:"Show blocks",onAction:function(){return t.execCommand("mceVisualBlocks")},onSetup:n(t,o)}),t.ui.registry.addToggleMenuItem("visualblocks",{text:"Show blocks",onAction:function(){return t.execCommand("mceVisualBlocks")},onSetup:n(t,o)})};!function o(){t.add("visualblocks",function(t,o){var n=e(!1);c(t,o,n),r(t,n),l(t,o,n)})}()}(); !function(){"use strict";var t=tinymce.util.Tools.resolve("tinymce.PluginManager"),r=function(t,o,e){var n,i;t.dom.toggleClass(t.getBody(),"mce-visualblocks"),e.set(!e.get()),n=t,i=e.get(),n.fire("VisualBlocks",{state:i})},f=function(e,n){return function(o){o.setActive(n.get());var t=function(t){return o.setActive(t.state)};return e.on("VisualBlocks",t),function(){return e.off("VisualBlocks",t)}}};t.add("visualblocks",function(t,o){var e,n,i,s,c,u,l,a=(e=!1,{get:function(){return e},set:function(t){e=t}});i=a,(n=t).addCommand("mceVisualBlocks",function(){r(n,0,i)}),c=a,(s=t).ui.registry.addToggleButton("visualblocks",{icon:"visualblocks",tooltip:"Show blocks",onAction:function(){return s.execCommand("mceVisualBlocks")},onSetup:f(s,c)}),s.ui.registry.addToggleMenuItem("visualblocks",{text:"Show blocks",icon:"visualblocks",onAction:function(){return s.execCommand("mceVisualBlocks")},onSetup:f(s,c)}),l=a,(u=t).on("PreviewFormats AfterPreviewFormats",function(t){l.get()&&u.dom.toggleClass(u.getBody(),"mce-visualblocks","afterpreviewformats"===t.type)}),u.on("init",function(){u.getParam("visualblocks_default_state",!1,"boolean")&&r(u,0,l)})})}();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -4,4 +4,4 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
*/ */
body{background-color:#2f3742;color:#dfe0e4;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}a{color:#4099ff}table{border-collapse:collapse}table td,table th{border:1px solid #6d737b;padding:.4rem}figure{display:table;margin:1rem auto}figure figcaption{color:#8a8f97;display:block;margin-top:.25rem;text-align:center}hr{border-color:#6d737b;border-style:solid;border-width:1px 0 0 0}code{background-color:#6d737b;border-radius:3px;padding:.1rem .2rem}td[data-mce-selected],th[data-mce-selected]{color:#333}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #6d737b;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #6d737b;margin-right:1.5rem;padding-right:1rem} body{background-color:#2f3742;color:#dfe0e4;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}a{color:#4099ff}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#6d737b}figure{display:table;margin:1rem auto}figure figcaption{color:#8a8f97;display:block;margin-top:.25rem;text-align:center}hr{border-color:#6d737b;border-style:solid;border-width:1px 0 0 0}code{background-color:#6d737b;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #6d737b;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #6d737b;margin-right:1.5rem;padding-right:1rem}

View File

@ -4,4 +4,4 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
*/ */
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}table{border-collapse:collapse}table td,table th{border:1px solid #ccc;padding:.4rem}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem} body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

View File

@ -4,4 +4,4 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
*/ */
@media screen{html{background:#f4f4f4}}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif}@media screen{body{background-color:#fff;box-shadow:0 0 4px rgba(0,0,0,.15);box-sizing:border-box;margin:1rem auto 0;max-width:820px;min-height:calc(100vh - 1rem);padding:4rem 6rem 6rem 6rem}}table{border-collapse:collapse}table td,table th{border:1px solid #ccc;padding:.4rem}figure figcaption{color:#999;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem} @media screen{html{background:#f4f4f4;min-height:100%}}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif}@media screen{body{background-color:#fff;box-shadow:0 0 4px rgba(0,0,0,.15);box-sizing:border-box;margin:1rem auto 0;max-width:820px;min-height:calc(100vh - 1rem);padding:4rem 6rem 6rem 6rem}}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure figcaption{color:#999;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

View File

@ -4,4 +4,4 @@
* For LGPL see License.txt in the project root for license information. * For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/ * For commercial licenses see https://www.tiny.cloud/
*/ */
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem auto;max-width:900px}table{border-collapse:collapse}table td,table th{border:1px solid #ccc;padding:.4rem}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem} body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;line-height:1.4;margin:1rem auto;max-width:900px}table{border-collapse:collapse}table:not([cellpadding]) td,table:not([cellpadding]) th{padding:.4rem}table[border]:not([border="0"]):not([style*=border-width]) td,table[border]:not([border="0"]):not([style*=border-width]) th{border-width:1px}table[border]:not([border="0"]):not([style*=border-style]) td,table[border]:not([border="0"]):not([style*=border-style]) th{border-style:solid}table[border]:not([border="0"]):not([style*=border-color]) td,table[border]:not([border="0"]):not([style*=border-color]) th{border-color:#ccc}figure{display:table;margin:1rem auto}figure figcaption{color:#999;display:block;margin-top:.25rem;text-align:center}hr{border-color:#ccc;border-style:solid;border-width:1px 0 0 0}code{background-color:#e8e8e8;border-radius:3px;padding:.1rem .2rem}.mce-content-body:not([dir=rtl]) blockquote{border-left:2px solid #ccc;margin-left:1.5rem;padding-left:1rem}.mce-content-body[dir=rtl] blockquote{border-right:2px solid #ccc;margin-right:1.5rem;padding-right:1rem}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,7 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*/
body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;left:0;margin:0;overflow:hidden;-ms-scroll-chaining:none;overscroll-behavior:none;padding:0;position:fixed;top:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox.tox-tinymce.tox-fullscreen{z-index:1200}.tox-shadowhost.tox-fullscreen{z-index:1200}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,7 @@
/**
* Copyright (c) Tiny Technologies, Inc. All rights reserved.
* Licensed under the LGPL or a commercial license.
* For LGPL see License.txt in the project root for license information.
* For commercial licenses see https://www.tiny.cloud/
*/
body.tox-dialog__disable-scroll{overflow:hidden}.tox-fullscreen{border:0;height:100%;left:0;margin:0;overflow:hidden;-ms-scroll-chaining:none;overscroll-behavior:none;padding:0;position:fixed;top:0;touch-action:pinch-zoom;width:100%}.tox.tox-tinymce.tox-fullscreen .tox-statusbar__resize-handle{display:none}.tox.tox-tinymce.tox-fullscreen{z-index:1200}.tox-shadowhost.tox-fullscreen{z-index:1200}.tox-fullscreen .tox.tox-tinymce-aux,.tox-fullscreen~.tox.tox-tinymce-aux{z-index:1201}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1,14 +1,14 @@
layui.use(['layer', 'form', 'table', 'admin', 'ax', 'func'], function () { layui.use(['layer', 'form', 'table', 'admin', 'HttpRequest', 'func'], function () {
var $ = layui.$; var $ = layui.$;
var layer = layui.layer; var layer = layui.layer;
var form = layui.form; var form = layui.form;
var table = layui.table; var table = layui.table;
var $ax = layui.ax; var HttpRequest = layui.HttpRequest;
var admin = layui.admin; var admin = layui.admin;
var func = layui.func; var func = layui.func;
/** /**
* 系统管理--消息管理 * 系统管理--通知管理
*/ */
var Notice = { var Notice = {
tableId: "noticeTable" //表格id tableId: "noticeTable" //表格id
@ -21,9 +21,9 @@ layui.use(['layer', 'form', 'table', 'admin', 'ax', 'func'], function () {
return [[ return [[
{type: 'checkbox'}, {type: 'checkbox'},
{field: 'noticeId', align: "center", hide: true, sort: true, title: 'id'}, {field: 'noticeId', align: "center", hide: true, sort: true, title: 'id'},
{field: 'title', align: "center", sort: true, title: '标题'}, {field: 'noticeTitle', align: "center", sort: true, title: '通知标题'},
{field: 'content', align: "center", sort: true, title: '内容'}, {field: 'priorityLevelValue', align: "center", sort: true, title: '优先级'},
{field: 'createrName', align: "center", sort: true, title: '发布者'}, {field: 'createUser', align: "center", sort: true, title: '创建人'},
{field: 'createTime', align: "center", sort: true, title: '创建时间'}, {field: 'createTime', align: "center", sort: true, title: '创建时间'},
{align: 'center', toolbar: '#tableBar', title: '操作', minWidth: 200} {align: 'center', toolbar: '#tableBar', title: '操作', minWidth: 200}
]]; ]];
@ -44,7 +44,11 @@ layui.use(['layer', 'form', 'table', 'admin', 'ax', 'func'], function () {
* 弹出添加通知 * 弹出添加通知
*/ */
Notice.openAddNotice = function () { Notice.openAddNotice = function () {
window.location.href = Feng.ctxPath + '/notice/notice_add'; func.open({
title: '添加通知',
content: Feng.ctxPath + '/view/notice/add',
tableId: Notice.tableId
});
}; };
/** /**
@ -53,7 +57,11 @@ layui.use(['layer', 'form', 'table', 'admin', 'ax', 'func'], function () {
* @param data 点击按钮时候的行数据 * @param data 点击按钮时候的行数据
*/ */
Notice.onEditNotice = function (data) { Notice.onEditNotice = function (data) {
window.location.href = Feng.ctxPath + "/notice/notice_update?noticeId=" + data.noticeId; func.open({
title: '修改通知',
content: Feng.ctxPath + "/view/notice/edit?noticeId=" + data.noticeId,
tableId: Notice.tableId
});
}; };
/** /**
@ -63,7 +71,7 @@ layui.use(['layer', 'form', 'table', 'admin', 'ax', 'func'], function () {
*/ */
Notice.onDeleteNotice = function (data) { Notice.onDeleteNotice = function (data) {
var operation = function () { var operation = function () {
var ajax = new $ax(Feng.ctxPath + "/notice/delete", function (data) { var ajax = new HttpRequest(Feng.ctxPath + "/sysNotice/delete", 'post', function (data) {
Feng.success("删除成功!"); Feng.success("删除成功!");
table.reload(Notice.tableId); table.reload(Notice.tableId);
}, function (data) { }, function (data) {
@ -78,10 +86,12 @@ layui.use(['layer', 'form', 'table', 'admin', 'ax', 'func'], function () {
// 渲染表格 // 渲染表格
var tableResult = table.render({ var tableResult = table.render({
elem: '#' + Notice.tableId, elem: '#' + Notice.tableId,
url: Feng.ctxPath + '/notice/list', url: Feng.ctxPath + '/sysNotice/page',
page: true, page: true,
height: "full-98", height: "full-98",
cellMinWidth: 100, cellMinWidth: 100,
request: {pageName: 'pageNo', limitName: 'pageSize'},
parseData: Feng.parseData,
cols: Notice.initColumn() cols: Notice.initColumn()
}); });

View File

@ -1,10 +1,40 @@
layui.use(['layer', 'form', 'admin', 'ax'], function () { layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest'], function () {
var $ = layui.jquery; var $ = layui.jquery;
var $ax = layui.ax; var HttpRequest = layui.HttpRequest;
var form = layui.form; var form = layui.form;
var admin = layui.admin; var admin = layui.admin;
var layer = layui.layer; var layer = layui.layer;
var laydate = layui.laydate;
lay('input.date-input').each(function(){
laydate.render({
elem: this
,trigger: 'click'
, type: 'datetime'
});
});
// 渲染富文本编辑器
tinymce.init({
selector: '#noticeContent',
height: 525,
branding: false,
language: 'zh_CN',
plugins: 'code print preview fullscreen paste searchreplace save autosave link autolink image imagetools media table codesample lists advlist hr charmap emoticons anchor directionality pagebreak quickbars nonbreaking visualblocks visualchars wordcount',
toolbar: 'fullscreen preview code | undo redo | forecolor backcolor | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | outdent indent | numlist bullist | formatselect fontselect fontsizeselect | link image media emoticons charmap anchor pagebreak codesample | ltr rtl',
toolbar_drawer: 'sliding',
images_upload_url: '../../../json/tinymce-upload-ok.json',
file_picker_types: 'media',
file_picker_callback: function (callback, value, meta) {
layer.msg('演示环境不允许上传', {anim: 6});
},
init_instance_callback: function (editor) {
console.log(editor);
}
});
/*
//实例化编辑器 //实例化编辑器
var ue = UE.getEditor('container', { var ue = UE.getEditor('container', {
enableAutoSave: false, enableAutoSave: false,
@ -25,25 +55,23 @@ layui.use(['layer', 'form', 'admin', 'ax'], function () {
} else { } else {
return this._bkGetActionUrl.call(this, action); return this._bkGetActionUrl.call(this, action);
} }
}; };*/
// 表单提交事件 // 表单提交事件
form.on('submit(btnSubmit)', function (data) { form.on('submit(btnSubmit)', function (data) {
var ajax = new $ax(Feng.ctxPath + "/notice/add", function (data) { var request = new HttpRequest(Feng.ctxPath + "/sysNotice/add", 'post', function (data) {
admin.closeThisDialog();
Feng.success("添加成功!"); Feng.success("添加成功!");
window.location.href = Feng.ctxPath + '/notice'; admin.putTempData('formOk', true);
}, function (data) { }, function (data) {
Feng.error("添加失败!" + data.responseJSON.message) admin.closeThisDialog();
Feng.error("添加失败!" + data.message);
}); });
ajax.set(data.field); data.field.noticeContent = tinymce.get('noticeContent').getContent();
ajax.start(); request.set(data.field);
request.start(true);
//添加 return false 可成功跳转页面 //添加 return false 可成功跳转页面
return false; return false;
}); });
//取消按钮
$('#cancel').click(function () {
window.location.href = Feng.ctxPath + "/notice";
});
}); });

View File

@ -1,54 +1,66 @@
layui.use(['layer', 'form', 'admin', 'ax'], function () { var NoticeDlg = {}
layui.use(['layer', 'form', 'admin', 'laydate', 'HttpRequest'], function () {
var $ = layui.jquery; var $ = layui.jquery;
var $ax = layui.ax; var HttpRequest = layui.HttpRequest;
var form = layui.form; var form = layui.form;
var admin = layui.admin; var admin = layui.admin;
var layer = layui.layer; var layer = layui.layer;
var laydate = layui.laydate;
//实例化编辑器
var ue = UE.getEditor('container', { NoticeDlg.initTinymce = function(data){
enableAutoSave: false, // 渲染富文本编辑器
autoHeightEnabled: true, tinymce.init({
autoFloatEnabled: false, selector: '#noticeContent',
scaleEnabled: true,//滚动条 height: 525,
initialFrameHeight: 400 //默认的编辑区域高度 branding: false,
language: 'zh_CN',
plugins: 'code print preview fullscreen paste searchreplace save autosave link autolink image imagetools media table codesample lists advlist hr charmap emoticons anchor directionality pagebreak quickbars nonbreaking visualblocks visualchars wordcount',
toolbar: 'fullscreen preview code | undo redo | forecolor backcolor | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | outdent indent | numlist bullist | formatselect fontselect fontsizeselect | link image media emoticons charmap anchor pagebreak codesample | ltr rtl',
toolbar_drawer: 'sliding',
images_upload_url: '../../../json/tinymce-upload-ok.json',
file_picker_types: 'media',
file_picker_callback: function (callback, value, meta) {
layer.msg('演示环境不允许上传', {anim: 6});
},
init_instance_callback: function (editor) {
tinymce.get('noticeContent').setContent(data.noticeContent);
}
});
}
lay('input.date-input').each(function(){
laydate.render({
elem: this
,trigger: 'click'
, type: 'datetime'
});
}); });
UE.Editor.prototype._bkGetActionUrl = UE.Editor.prototype.getActionUrl;
UE.Editor.prototype.getActionUrl = function (action) {
if (action === 'uploadimage' || action === 'uploadscrawl' || action === 'uploadimage') {
return Feng.ctxPath + '/ueditor/imgUpdate';
} else if (action === 'uploadfile') {
return Feng.ctxPath + '/ueditor/uploadfile';
} else if (action === 'uploadvideo') {
return Feng.ctxPath + '/ueditor/uploadvideo';
} else {
return this._bkGetActionUrl.call(this, action);
}
};
//获取详情信息,填充表单 //获取详情信息,填充表单
var ajax = new $ax(Feng.ctxPath + "/notice/detail?noticeId=" + Feng.getUrlParam("noticeId")); var request = new HttpRequest(Feng.ctxPath + "/sysNotice/detail?noticeId=" + Feng.getUrlParam("noticeId"), 'get', function (result) {
var result = ajax.start(); form.val('noticeForm', result.data);
form.val("noticeForm", result.data); NoticeDlg.initTinymce(result.data)
}, function (data) {
Feng.error("加载失败!" + data.message);
});
request.start();
// 表单提交事件 // 表单提交事件
form.on('submit(btnSubmit)', function (data) { form.on('submit(btnSubmit)', function (data) {
var ajax = new $ax(Feng.ctxPath + "/notice/update", function (data) { var request = new HttpRequest(Feng.ctxPath + "/sysNotice/edit", 'post', function (data) {
Feng.success("修改成功!"); admin.closeThisDialog();
window.location.href = Feng.ctxPath + "/notice"; Feng.success("添加成功!");
admin.putTempData('formOk', true);
}, function (data) { }, function (data) {
Feng.error("修改失败!" + data.responseJSON.message) admin.closeThisDialog();
Feng.error("添加失败!" + data.message);
}); });
ajax.set(data.field); data.field.noticeContent = tinymce.get('noticeContent').getContent();
ajax.start(); request.set(data.field);
request.start(true);
//添加 return false 可成功跳转页面 //添加 return false 可成功跳转页面
return false; return false;
}); });
$('#cancel').click(function () {
window.location.href = Feng.ctxPath + "/notice";
})
}); });

View File

@ -70,6 +70,9 @@ ${layoutContent}
<script src="${ctxPath}/assets/expand/plugins/ueditor/ueditor.config.js"></script> <script src="${ctxPath}/assets/expand/plugins/ueditor/ueditor.config.js"></script>
<script src="${ctxPath}/assets/expand/plugins/ueditor/ueditor.all.js"></script> <script src="${ctxPath}/assets/expand/plugins/ueditor/ueditor.all.js"></script>
@} @}
@if(array.contain(plugins,"tinymce")){
<script src="${ctxPath}/assets/common/libs/tinymce/tinymce.min.js"></script>
@}
@} @}
@if(isNotEmpty(js)){ @if(isNotEmpty(js)){

View File

@ -6,19 +6,17 @@
<div class="layui-fluid"> <div class="layui-fluid">
<div class="layui-row layui-col-space15"> <div class="layui-row layui-col-space15">
<div class="layui-col-lg12"> <div class="layui-col-sm12 layui-col-md12 layui-col-lg12">
<div class="layui-card"> <div class="layui-card">
<div class="layui-card-body"> <div class="layui-card-body">
<div class="layui-form toolbar"> <div class="layui-form toolbar">
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-inline"> <div class="layui-inline">
<input id="condition" class="layui-input" type="text" placeholder="通知名称"/> <input id="condition" class="layui-input" type="text" placeholder="通知标题"/>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button> <button id="btnSearch" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
@if(shiro.hasPermission("/notice/add")){
<button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button> <button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
@}
</div> </div>
</div> </div>
</div> </div>
@ -30,15 +28,7 @@
</div> </div>
<script type="text/html" id="tableBar"> <script type="text/html" id="tableBar">
@if(shiro.hasPermission("/notice/update")){
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a> <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
@}
@if(shiro.hasPermission("/notice/delete")){
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a> <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
@}
</script>
<script type="text/html" id="statusTpl">
<input type="checkbox" lay-filter="status" value="{{d.userId}}" lay-skin="switch" lay-text="正常|冻结" {{d.status=='ENABLE'?'checked':''}} />
</script> </script>
@} @}

View File

@ -1,4 +1,4 @@
@layout("/layout/_form.html",{js:["/assets/modular/system/notice/notice_add.js"],plugins:["ue"]}){ @layout("/layout/_form.html",{js:["/assets/modular/system/notice/notice_add.js"],plugins:["tinymce"]}){
<form class="layui-form" id="noticeForm" lay-filter="noticeForm"> <form class="layui-form" id="noticeForm" lay-filter="noticeForm">
<div class="layui-fluid" style="padding-bottom: 75px;"> <div class="layui-fluid" style="padding-bottom: 75px;">
@ -6,17 +6,54 @@
<div class="layui-card-header">基本信息</div> <div class="layui-card-header">基本信息</div>
<div class="layui-card-body"> <div class="layui-card-body">
<div class="layui-form-item layui-row"> <div class="layui-form-item layui-row">
<input name="roleId" type="hidden"/> <input name="noticeId" type="hidden"/>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">标题<span style="color: red;">*</span></label> <label class="layui-form-label">通知标题<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input name="title" placeholder="请输入标题" type="text" class="layui-input" lay-verify="required" required/> <input name="noticeTitle" placeholder="请输入通知标题" type="text" class="layui-input" lay-verify="required" required autocomplete="off"/>
</div> </div>
</div> </div>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">内容</label> <label class="layui-form-label">通知摘要</label>
<div class="layui-input-block"> <div class="layui-input-block">
<script id="container" name="content" type="text/plain"></script> <input name="noticeSummary" placeholder="请输入通知摘要" type="text" class="layui-input" autocomplete="off"/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">优先级<span style="color: red;">*</span></label>
<div class="layui-input-block">
<select id="priorityLevel" name="priorityLevel" lay-filter="">
<option value="">请选择通知优先级</option>
<option value="low"></option>
<option value="middle"></option>
<option value="high"></option>
</select>
<!-- <input name="priorityLevel" placeholder="请输入通知优先级" type="text" class="layui-input" lay-verify="required" required autocomplete="off"/>-->
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">开始时间<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input name="noticeBeginTime" placeholder="请输入开始时间" type="text" class="layui-input date-icon date-input" lay-verify="required" required autocomplete="off"/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">结束时间<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input name="noticeEndTime" placeholder="请输入结束时间" type="text" class="layui-input date-icon date-input" lay-verify="required" required autocomplete="off"/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">通知范围</label>
<div class="layui-input-block">
<input name="noticeScope" placeholder="请输入通知范围" type="text" class="layui-input" lay-verify="" />
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">通知内容</label>
<div class="layui-input-block">
<textarea id="noticeContent" name="noticeContent"></textarea>
<!-- <script id="container" name="content" type="text/plain"></script>-->
</div> </div>
</div> </div>
</div> </div>
@ -25,7 +62,7 @@
</div> </div>
<div class="form-group-bottom text-center"> <div class="form-group-bottom text-center">
<button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button> <button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
<button id="cancel" type="button" class="layui-btn layui-btn-primary" ew-event="closeDialog">&emsp;取消&emsp;</button> <button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog">&emsp;取消&emsp;</button>
</div> </div>
</form> </form>
@} @}

View File

@ -1,4 +1,4 @@
@layout("/layout/_form.html",{js:["/assets/modular/system/notice/notice_edit.js"],plugins:["ue"]}){ @layout("/layout/_form.html",{js:["/assets/modular/system/notice/notice_edit.js"],plugins:["tinymce"]}){
<form class="layui-form" id="noticeForm" lay-filter="noticeForm"> <form class="layui-form" id="noticeForm" lay-filter="noticeForm">
<div class="layui-fluid" style="padding-bottom: 75px;"> <div class="layui-fluid" style="padding-bottom: 75px;">
@ -8,15 +8,52 @@
<div class="layui-form-item layui-row"> <div class="layui-form-item layui-row">
<input name="noticeId" type="hidden"/> <input name="noticeId" type="hidden"/>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">标题<span style="color: red;">*</span></label> <label class="layui-form-label">通知标题<span style="color: red;">*</span></label>
<div class="layui-input-block"> <div class="layui-input-block">
<input name="title" placeholder="请输入标题" type="text" class="layui-input" lay-verify="required" required/> <input name="noticeTitle" placeholder="请输入通知标题" type="text" class="layui-input" lay-verify="required" required autocomplete="off"/>
</div> </div>
</div> </div>
<div class="layui-inline layui-col-md12"> <div class="layui-inline layui-col-md12">
<label class="layui-form-label">内容</label> <label class="layui-form-label">通知摘要</label>
<div class="layui-input-block"> <div class="layui-input-block">
<script id="container" name="content" type="text/plain"></script> <input name="noticeSummary" placeholder="请输入通知摘要" type="text" class="layui-input" autocomplete="off"/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">优先级<span style="color: red;">*</span></label>
<div class="layui-input-block">
<select id="priorityLevel" name="priorityLevel" lay-filter="">
<option value="">请选择通知优先级</option>
<option value="low"></option>
<option value="middle"></option>
<option value="high"></option>
</select>
<!-- <input name="priorityLevel" placeholder="请输入通知优先级" type="text" class="layui-input" lay-verify="required" required autocomplete="off"/>-->
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">开始时间<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input name="noticeBeginTime" placeholder="请输入开始时间" type="text" class="layui-input date-icon date-input" lay-verify="required" required autocomplete="off"/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">结束时间<span style="color: red;">*</span></label>
<div class="layui-input-block">
<input name="noticeEndTime" placeholder="请输入结束时间" type="text" class="layui-input date-icon date-input" lay-verify="required" required autocomplete="off"/>
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">通知范围</label>
<div class="layui-input-block">
<input name="noticeScope" placeholder="请输入通知范围" type="text" class="layui-input" lay-verify="" />
</div>
</div>
<div class="layui-inline layui-col-md12">
<label class="layui-form-label">通知内容</label>
<div class="layui-input-block">
<textarea id="noticeContent"></textarea>
<!-- <script id="container" name="content" type="text/plain"></script>-->
</div> </div>
</div> </div>
</div> </div>
@ -25,8 +62,7 @@
</div> </div>
<div class="form-group-bottom text-center"> <div class="form-group-bottom text-center">
<button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button> <button class="layui-btn" lay-filter="btnSubmit" lay-submit>&emsp;提交&emsp;</button>
<button id="cancel" type="button" class="layui-btn layui-btn-primary" ew-event="closeDialog">&emsp;取消&emsp;</button> <button type="reset" class="layui-btn layui-btn-primary" ew-event="closeDialog">&emsp;取消&emsp;</button>
</div> </div>
</form> </form>
@} @}