只读模式
group, 分享
评论更多问题
博客标签总是存在一个
This commit is contained in:
lealife
2015-06-15 18:01:48 +08:00
parent 7e458bb433
commit 6987a38820
1453 changed files with 114561 additions and 91536 deletions
app
conf
messages
public
admin
blog
css
dist
images
js
mdeditor
member
js
ace
ace.js
ck
ace-min.jsext-beautify-min.jsext-chromevox-min.jsext-elastic_tabstops_lite-min.jsext-emmet-min.jsext-error_marker-min.jsext-keybinding_menu-min.jsext-language_tools-min.jsext-linking-min.jsext-modelist-min.jsext-old_ie-min.jsext-prompt-min.jsext-searchbox-min.jsext-settings_menu-min.jsext-spellcheck-min.jsext-split-min.jsext-static_highlight-min.jsext-statusbar-min.jsext-textarea-min.jsext-themelist-min.jsext-whitespace-min.jskeybinding-emacs-min.jskeybinding-vim-min.jsmode-abap-min.jsmode-actionscript-min.jsmode-ada-min.jsmode-apache_conf-min.jsmode-applescript-min.jsmode-asciidoc-min.jsmode-assembly_x86-min.jsmode-autohotkey-min.jsmode-batchfile-min.jsmode-c9search-min.jsmode-c_cpp-min.jsmode-cirru-min.jsmode-clojure-min.jsmode-cobol-min.jsmode-coffee-min.jsmode-coldfusion-min.jsmode-csharp-min.jsmode-css-min.jsmode-curly-min.jsmode-d-min.jsmode-dart-min.jsmode-diff-min.jsmode-django-min.jsmode-dockerfile-min.jsmode-dot-min.jsmode-ejs-min.jsmode-erlang-min.jsmode-forth-min.jsmode-ftl-min.jsmode-gherkin-min.jsmode-glsl-min.jsmode-golang-min.jsmode-groovy-min.jsmode-haml-min.jsmode-handlebars-min.jsmode-haskell-min.jsmode-haxe-min.jsmode-html-min.jsmode-html_completions-min.jsmode-html_ruby-min.jsmode-ini-min.jsmode-jack-min.jsmode-jade-min.jsmode-java-min.jsmode-javascript-min.jsmode-json-min.jsmode-jsoniq-min.jsmode-jsp-min.jsmode-jsx-min.jsmode-julia-min.jsmode-latex-min.jsmode-less-min.jsmode-liquid-min.jsmode-lisp-min.jsmode-livescript-min.jsmode-logiql-min.jsmode-lsl-min.jsmode-lua-min.jsmode-luapage-min.jsmode-lucene-min.jsmode-makefile-min.jsmode-markdown-min.jsmode-matlab-min.jsmode-mel-min.jsmode-mushcode-min.jsmode-mushcode_high_rules-min.jsmode-mysql-min.jsmode-nix-min.jsmode-objectivec-min.jsmode-ocaml-min.jsmode-pascal-min.jsmode-perl-min.jsmode-pgsql-min.jsmode-php-min.jsmode-plain_text-min.jsmode-powershell-min.jsmode-prolog-min.jsmode-properties-min.jsmode-protobuf-min.jsmode-python-min.jsmode-r-min.jsmode-rdoc-min.jsmode-rhtml-min.jsmode-ruby-min.jsmode-rust-min.jsmode-sass-min.jsmode-scad-min.jsmode-scala-min.jsmode-scheme-min.jsmode-scss-min.jsmode-sh-min.jsmode-sjs-min.jsmode-smarty-min.jsmode-snippets-min.jsmode-soy_template-min.jsmode-space-min.jsmode-sql-min.jsmode-stylus-min.jsmode-svg-min.jsmode-tcl-min.jsmode-tex-min.jsmode-textile-min.jsmode-toml-min.jsmode-twig-min.jsmode-typescript-min.jsmode-vala-min.jsmode-vbscript-min.jsmode-verilog-min.jsmode-vhdl-min.jsmode-xml-min.jsmode-yaml-min.js
ext-beautify.jsext-chromevox.jsext-elastic_tabstops_lite.jsext-emmet.jsext-error_marker.jsext-keybinding_menu.jsext-language_tools.jsext-linking.jsext-modelist.jsext-old_ie.jsext-prompt.jsext-searchbox.jsext-settings_menu.jsext-spellcheck.jsext-split.jsext-static_highlight.jsext-statusbar.jsext-textarea.jsext-themelist.jsext-whitespace.jskeybinding-emacs.jskeybinding-vim.jsmode-abap.jsmode-actionscript.jsmode-ada.jsmode-apache_conf.jsmode-applescript.jsmode-asciidoc.jsmode-assembly_x86.jsmode-autohotkey.jsmode-batchfile.jsmode-c9search.jsmode-c_cpp.jsmode-cirru.jsmode-clojure.jsmode-cobol.jsmode-coffee.jsmode-coldfusion.jsmode-csharp.jsmode-css.jsmode-curly.jsmode-d.jsmode-dart.jsmode-diff.jsmode-django.jsmode-dockerfile.jsmode-dot.jsmode-ejs.jsmode-erlang.jsmode-forth.jsmode-ftl.jsmode-gherkin.jsmode-glsl.jsmode-golang.jsmode-groovy.jsmode-haml.jsmode-handlebars.jsmode-haskell.jsmode-haxe.jsmode-html.jsmode-html_completions.jsmode-html_ruby.jsmode-ini.jsmode-jack.jsmode-jade.jsmode-java.jsmode-javascript.jsmode-json.jsmode-jsoniq.jsmode-jsp.jsmode-jsx.jsmode-julia.jsmode-latex.jsmode-less.jsmode-liquid.jsmode-lisp.jsmode-livescript.jsmode-logiql.jsmode-lsl.jsmode-lua.jsmode-luapage.jsmode-lucene.jsmode-makefile.jsmode-markdown.jsmode-matlab.jsmode-mel.jsmode-mushcode.jsmode-mushcode_high_rules.jsmode-mysql.jsmode-nix.jsmode-objectivec.jsmode-ocaml.jsmode-pascal.jsmode-perl.jsmode-pgsql.jsmode-php.jsmode-plain_text.jsmode-powershell.jsmode-prolog.jsmode-properties.jsmode-protobuf.jsmode-python.jsmode-r.jsmode-rdoc.jsmode-rhtml.jsmode-ruby.jsmode-rust.jsmode-sass.jsmode-scad.jsmode-scala.jsmode-scheme.jsmode-scss.jsmode-sh.jsmode-sjs.jsmode-smarty.jsmode-snippets.jsmode-soy_template.jsmode-space.jsmode-sql.jsmode-stylus.jsmode-svg.jsmode-tcl.jsmode-tex.jsmode-text.jsmode-textile.jsmode-toml.jsmode-twig.jsmode-typescript.jsmode-vala.jsmode-vbscript.jsmode-velocity.jsmode-verilog.jsmode-vhdl.jsmode-xml.jsmode-xquery.jsmode-yaml.js
snippets
abap.jsactionscript.jsada.jsapache_conf.jsapplescript.jsasciidoc.jsassembly_x86.jsautohotkey.jsbatchfile.jsc9search.jsc_cpp.jscirru.js
ck
clojure.jscobol.jscoffee.jscoldfusion.jscsharp.jscss.jscurly.jsd.jsdart.jsdiff.jsdjango.jsdockerfile.jsdot.jsejs.jserlang.jsforth.jsftl.jsgherkin.jsglsl.jsgolang.jsgroovy.jshaml.jshandlebars.jshaskell.jshaxe.jshtml.jshtml_completions.jshtml_ruby.jsini.jsjack.jsjade.jsjava.jsjavascript.jsjson.jsjsoniq.jsjsp.jsjsx.jsjulia.jslatex.jsless.jsliquid.jslisp.jslivescript.jslogiql.jslsl.jslua.jsluapage.jslucene.jsmakefile.jsmarkdown.jsmatlab.jsmel.jsmushcode.jsmushcode_high_rules.jsmysql.jsnix.jsobjectivec.jsocaml.jspascal.jsperl.jspgsql.jsphp.jsplain_text.jspowershell.jsprolog.jsproperties.jsprotobuf.jspython.jsr.jsrdoc.jsrhtml.jsruby.jsrust.jssass.jsscad.jsscala.jsscheme.jsscss.jssh.jssjs.jssmarty.jssnippets.jssoy_template.jsspace.jssql.jsstylus.jssvg.jstcl.jstex.jstext.jstextile.jstoml.jstwig.jstypescript.jsvala.jsvbscript.jsvelocity.jsverilog.jsvhdl.jsxml.jsxquery.jsyaml.js
theme-ambiance.jstheme-chaos.jstheme-chrome.jstheme-cloud9_day.jstheme-cloud9_night.jstheme-cloud9_night_low_color.jstheme-clouds.jstheme-clouds_midnight.jstheme-cobalt.jstheme-crimson_editor.jstheme-dawn.jstheme-dreamweaver.jstheme-eclipse.jstheme-github.jstheme-idle_fingers.jstheme-katzenmilch.jstheme-kr.jstheme-kuroir.jstheme-merbivore.jstheme-merbivore_soft.jstheme-mono_industrial.jstheme-monokai.jstheme-pastel_on_dark.jstheme-solarized_dark.jstheme-solarized_light.jstheme-terminal.jstheme-textmate.jstheme-tomorrow.jstheme-tomorrow_night.jstheme-tomorrow_night_blue.jstheme-tomorrow_night_bright.jstheme-tomorrow_night_eighties.jstheme-twilight.jstheme-vibrant_ink.jstheme-xcode.jsworker-coffee.jsworker-css.jsworker-html.jsworker-javascript.jsworker-json.jsworker-lua.jsworker-php.jsworker-xquery.js
tinymce
classes
demo.htmlindex.htmljquery.tinymce.min.js
langs
license.txt
plugins
advlist
anchor
autolink
autoresize
autosave
bbcode
charmap
code
codemirror
CodeMirror
.gitattributes.gitignore.travis.ymlAUTHORSCONTRIBUTING.mdLICENSEREADME.md
addon
bin
bower.json
demo
doc
index.html
keymap
lib
mode
apl
asterisk
clike
clojure
cobol
coffeescript
commonlisp
css
d
diff
dtd
ecl
eiffel
erlang
fortran
gas
gfm
gherkin
go
groovy
haml
haskell
haxe
htmlembedded
htmlmixed
http
index.html
jade
javascript
jinja2
julia
less
livescript
lua
markdown
meta.js
mirc
mllike
nginx
ntriples
octave
pascal
pegjs
perl
php
pig
properties
python
q
r
rpm
rst
ruby
rust
sass
scheme
shell
sieve
smalltalk
smarty
smartymixed
sparql
sql
stex
tcl
tiddlywiki
tiki
toml
turtle
vb
vbscript
velocity
verilog
xml
xquery
yaml
z80
package.json
test
theme
LICENSE.txtREADME.txt
img
langs
plugin.jsplugin.min.jssource.html
codesyntax
colorpicker
compat3x
contextmenu
directionality
emoticons
example
example_dependency
fullpage
fullscreen
hr
image
importcss
insertdatetime
layer
leanote_code
leanote_code2
leanote_image
leanote_nav
leanote_nav2
leaui_image
legacyoutput
link
lists
media
nonbreaking
noneditable
pagebreak
paste
paste_raw
preview
print
save
searchreplace
spellchecker
tabfocus
table
template
textcolor
textpattern
upload_image
visualblocks
visualchars
wordcount
skins
themes
tinymce updates.txttinymce-min.jstinymce.dev.jstinymce.jquery.dev.jstinymce.jquery.jstinymce.jquery.min.jstinymce.jstinymce.min.jstinymce修改

2
public/tinymce/plugins/compat3x/css/dialog.css Normal file → Executable file

@ -55,7 +55,7 @@ a.browse span {display:block; width:20px; height:18px; background:url(../img/ico
a.browse:hover span {border:1px solid #0A246A; background-color:#B2BBD0;}
a.browse span.disabled {border:1px solid white; opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
a.browse:hover span.disabled {border:1px solid white; background-color:transparent;}
a.pickcolor span {display:block; width:20px; height:16px; background:url(../img/icons.gif) 0 0; margin-left:2px;}
a.pickcolor span {display:block; width:20px; height:16px; background:url(../img/icons.gif) -840px 0; margin-left:2px;}
.mceOldBoxModel a.pickcolor span {width:21px; height:17px;}
a.pickcolor:hover span {background-color:#B2BBD0;}
a.pickcolor:hover span.disabled {}

0
public/tinymce/plugins/compat3x/img/buttons.png Normal file → Executable file

Before

(image error) Size: 3.1 KiB

After

(image error) Size: 3.1 KiB

Binary file not shown.

After

(image error) Size: 12 KiB

0
public/tinymce/plugins/compat3x/img/items.gif Normal file → Executable file

Before

(image error) Size: 64 B

After

(image error) Size: 64 B

0
public/tinymce/plugins/compat3x/img/menu_arrow.gif Normal file → Executable file

Before

(image error) Size: 68 B

After

(image error) Size: 68 B

0
public/tinymce/plugins/compat3x/img/menu_check.gif Normal file → Executable file

Before

(image error) Size: 70 B

After

(image error) Size: 70 B

0
public/tinymce/plugins/compat3x/img/progress.gif Normal file → Executable file

Before

(image error) Size: 1.7 KiB

After

(image error) Size: 1.7 KiB

0
public/tinymce/plugins/compat3x/img/tabs.gif Normal file → Executable file

Before

(image error) Size: 1.3 KiB

After

(image error) Size: 1.3 KiB

76
public/tinymce/plugins/compat3x/plugin.js Normal file → Executable file

@ -9,6 +9,7 @@
*/
/*global tinymce:true, console:true */
/*eslint no-console:0, new-cap:0 */
/**
* This plugin adds missing events form the 4.x API back. Not every event is
@ -21,6 +22,9 @@
(function(tinymce) {
var reported;
function noop() {
}
function log(apiCall) {
if (!reported && window && window.console) {
reported = true;
@ -31,7 +35,12 @@
function Dispatcher(target, newEventName, argsMap, defaultScope) {
target = target || this;
this.add = function(callback, scope) {
if (!newEventName) {
this.add = this.addToTop = this.remove = this.dispatch = noop;
return;
}
this.add = function(callback, scope, prepend) {
log('<target>.on' + newEventName + ".add(..)");
// Convert callback({arg1:x, arg2:x}) -> callback(arg1, arg2)
@ -66,13 +75,14 @@
}
}
target.on(newEventName, patchedEventCallback);
target.on(newEventName, patchedEventCallback, prepend);
return patchedEventCallback;
};
// Not supported to just use add
this.addToTop = this.add;
this.addToTop = function(callback, scope) {
this.add(callback, scope, true);
};
this.remove = function(callback) {
return target.off(newEventName, callback);
@ -85,10 +95,15 @@
};
}
tinymce.util.Dispatcher = Dispatcher;
tinymce.onBeforeUnload = new Dispatcher(tinymce, "BeforeUnload");
tinymce.onAddEditor = new Dispatcher(tinymce, "AddEditor", "editor");
tinymce.onRemoveEditor = new Dispatcher(tinymce, "RemoveEditor", "editor");
tinymce.util.Cookie = {
get: noop, getHash: noop, remove: noop, set: noop, setHash: noop
};
function patchEditor(editor) {
function patchEditorEvents(oldEventNames, argsMap) {
tinymce.each(oldEventNames.split(" "), function(oldName) {
@ -115,6 +130,25 @@
return;
}
function cmNoop() {
var obj = {}, methods = 'add addMenu addSeparator collapse createMenu destroy displayColor expand focus ' +
'getLength hasMenus hideMenu isActive isCollapsed isDisabled isRendered isSelected mark ' +
'postRender remove removeAll renderHTML renderMenu renderNode renderTo select selectByIndex ' +
'setActive setAriaProperty setColor setDisabled setSelected setState showMenu update';
log('editor.controlManager.*');
function _noop() {
return cmNoop();
}
tinymce.each(methods.split(' '), function(method) {
obj[method] = _noop;
});
return obj;
}
editor.controlManager = {
buttons: {},
@ -133,6 +167,26 @@
this.buttons[name].active(state);
}
},
onAdd: new Dispatcher(),
onPostRender: new Dispatcher(),
add: function(obj) {
return obj;
},
createButton: cmNoop,
createColorSplitButton: cmNoop,
createControl: cmNoop,
createDropMenu: cmNoop,
createListBox: cmNoop,
createMenuButton: cmNoop,
createSeparator: cmNoop,
createSplitButton: cmNoop,
createToolbar: cmNoop,
createToolbarGroup: cmNoop,
destroy: noop,
get: noop,
setControlType: cmNoop
};
patchEditorEvents("PreInit BeforeRenderUI PostRender Load Init Remove Activate Deactivate", "editor");
@ -176,7 +230,9 @@
settings.onPostRender = patchedPostRender;
}
settings.title = tinymce.i18n.translate((editor.settings.language || "en") + "." + settings.title);
if (settings.title) {
settings.title = tinymce.i18n.translate((editor.settings.language || "en") + "." + settings.title);
}
return originalAddButton.call(this, name, settings);
};
@ -193,8 +249,14 @@
selection.onGetContent = new Dispatcher(editor, "GetContent", filterSelectionEvents(true), selection);
selection.onBeforeSetContent = new Dispatcher(editor, "BeforeSetContent", filterSelectionEvents(true), selection);
selection.onSetContent = new Dispatcher(editor, "SetContent", filterSelectionEvents(true), selection);
});
editor.windowManager.createInstance = function(className, a, b, c, d, e) {
editor.on('BeforeRenderUI', function() {
var windowManager = editor.windowManager;
windowManager.onOpen = new Dispatcher();
windowManager.onClose = new Dispatcher();
windowManager.createInstance = function(className, a, b, c, d, e) {
log("windowManager.createInstance(..)");
var constr = tinymce.resolve(className);
@ -209,7 +271,7 @@
tinymce.addI18n = function(prefix, o) {
var I18n = tinymce.util.I18n, each = tinymce.each;
if (typeof(prefix) == "string" && prefix.indexOf('.') === -1) {
if (typeof prefix == "string" && prefix.indexOf('.') === -1) {
I18n.add(prefix, o);
return;
}

2
public/tinymce/plugins/compat3x/plugin.min.js vendored Normal file → Executable file

@ -1 +1 @@
!function(n){function e(n){!i&&window&&window.console&&(i=!0,console.log("Deprecated TinyMCE API call: "+n))}function t(n,t,o,i){n=n||this,this.add=function(r,a){function d(e){var d=[];if("string"==typeof o&&(o=o.split(" ")),o&&"function"!=typeof o)for(var s=0;s<o.length;s++)d.push(e[o[s]]);("function"!=typeof o||(d=o(t,e,n)))&&(o||(d=[e]),d.unshift(i||n),r.apply(a||i||n,d)===!1&&e.stopImmediatePropagation())}return e("<target>.on"+t+".add(..)"),n.on(t,d),d},this.addToTop=this.add,this.remove=function(e){return n.off(t,e)},this.dispatch=function(){return n.fire(t),!0}}function o(o){function i(e,i){n.each(e.split(" "),function(n){o["on"+n]=new t(o,n,i)})}function r(n,e,t){return[e.level,t]}function a(n){return function(e,t){return!t.selection&&!n||t.selection==n?[t]:void 0}}if(!o.controlManager){o.controlManager={buttons:{},setDisabled:function(n,t){e("controlManager.setDisabled(..)"),this.buttons[n]&&this.buttons[n].disabled(t)},setActive:function(n,t){e("controlManager.setActive(..)"),this.buttons[n]&&this.buttons[n].active(t)}},i("PreInit BeforeRenderUI PostRender Load Init Remove Activate Deactivate","editor"),i("Click MouseUp MouseDown DblClick KeyDown KeyUp KeyPress ContextMenu Paste Submit Reset"),i("BeforeExecCommand ExecCommand","command ui value args"),i("PreProcess PostProcess LoadContent SaveContent Change"),i("BeforeSetContent BeforeGetContent SetContent GetContent",a(!1)),i("SetProgressState","state time"),i("VisualAid","element hasVisual"),i("Undo Redo",r),i("NodeChange",function(n,e){return[o.controlManager,e.element,o.selection.isCollapsed(),e]});var d=o.addButton;o.addButton=function(e,t){function i(){return o.controlManager.buttons[e]=this,r?r.call(this):void 0}var r;for(var a in t)"onpostrender"===a.toLowerCase()&&(r=t[a],t.onPostRender=i);return r||(t.onPostRender=i),t.title=n.i18n.translate((o.settings.language||"en")+"."+t.title),d.call(this,e,t)},o.on("init",function(){var i=o.undoManager,d=o.selection;i.onUndo=new t(o,"Undo",r,null,i),i.onRedo=new t(o,"Redo",r,null,i),i.onBeforeAdd=new t(o,"BeforeAddUndo",null,i),i.onAdd=new t(o,"AddUndo",null,i),d.onBeforeGetContent=new t(o,"BeforeGetContent",a(!0),d),d.onGetContent=new t(o,"GetContent",a(!0),d),d.onBeforeSetContent=new t(o,"BeforeSetContent",a(!0),d),d.onSetContent=new t(o,"SetContent",a(!0),d),o.windowManager.createInstance=function(t,o,i,r,a,d){e("windowManager.createInstance(..)");var s=n.resolve(t);return new s(o,i,r,a,d)}})}}var i;n.onBeforeUnload=new t(n,"BeforeUnload"),n.onAddEditor=new t(n,"AddEditor","editor"),n.onRemoveEditor=new t(n,"RemoveEditor","editor"),n.on("SetupEditor",o),n.PluginManager.add("compat3x",o),n.addI18n=function(e,t){var o=n.util.I18n,i=n.each;return"string"==typeof e&&-1===e.indexOf(".")?(o.add(e,t),void 0):(n.is(e,"string")?i(t,function(n,t){o.data[e+"."+t]=n}):i(e,function(n,e){i(n,function(n,t){i(n,function(n,i){"common"===t?o.data[e+"."+i]=n:o.data[e+"."+t+"."+i]=n})})}),void 0)}}(tinymce);
!function(a){function b(){}function c(a){!f&&window&&window.console&&(f=!0,console.log("Deprecated TinyMCE API call: "+a))}function d(a,d,e,f){return a=a||this,d?(this.add=function(b,g,h){function i(c){var h=[];if("string"==typeof e&&(e=e.split(" ")),e&&"function"!=typeof e)for(var i=0;i<e.length;i++)h.push(c[e[i]]);("function"!=typeof e||(h=e(d,c,a)))&&(e||(h=[c]),h.unshift(f||a),b.apply(g||f||a,h)===!1&&c.stopImmediatePropagation())}return c("<target>.on"+d+".add(..)"),a.on(d,i,h),i},this.addToTop=function(a,b){this.add(a,b,!0)},this.remove=function(b){return a.off(d,b)},void(this.dispatch=function(){return a.fire(d),!0})):void(this.add=this.addToTop=this.remove=this.dispatch=b)}function e(e){function f(b,c){a.each(b.split(" "),function(a){e["on"+a]=new d(e,a,c)})}function g(a,b,c){return[b.level,c]}function h(a){return function(b,c){return!c.selection&&!a||c.selection==a?[c]:void 0}}function i(){function b(){return i()}var d={},e="add addMenu addSeparator collapse createMenu destroy displayColor expand focus getLength hasMenus hideMenu isActive isCollapsed isDisabled isRendered isSelected mark postRender remove removeAll renderHTML renderMenu renderNode renderTo select selectByIndex setActive setAriaProperty setColor setDisabled setSelected setState showMenu update";return c("editor.controlManager.*"),a.each(e.split(" "),function(a){d[a]=b}),d}if(!e.controlManager){e.controlManager={buttons:{},setDisabled:function(a,b){c("controlManager.setDisabled(..)"),this.buttons[a]&&this.buttons[a].disabled(b)},setActive:function(a,b){c("controlManager.setActive(..)"),this.buttons[a]&&this.buttons[a].active(b)},onAdd:new d,onPostRender:new d,add:function(a){return a},createButton:i,createColorSplitButton:i,createControl:i,createDropMenu:i,createListBox:i,createMenuButton:i,createSeparator:i,createSplitButton:i,createToolbar:i,createToolbarGroup:i,destroy:b,get:b,setControlType:i},f("PreInit BeforeRenderUI PostRender Load Init Remove Activate Deactivate","editor"),f("Click MouseUp MouseDown DblClick KeyDown KeyUp KeyPress ContextMenu Paste Submit Reset"),f("BeforeExecCommand ExecCommand","command ui value args"),f("PreProcess PostProcess LoadContent SaveContent Change"),f("BeforeSetContent BeforeGetContent SetContent GetContent",h(!1)),f("SetProgressState","state time"),f("VisualAid","element hasVisual"),f("Undo Redo",g),f("NodeChange",function(a,b){return[e.controlManager,b.element,e.selection.isCollapsed(),b]});var j=e.addButton;e.addButton=function(b,c){function d(){return e.controlManager.buttons[b]=this,f?f.call(this):void 0}var f;for(var g in c)"onpostrender"===g.toLowerCase()&&(f=c[g],c.onPostRender=d);return f||(c.onPostRender=d),c.title&&(c.title=a.i18n.translate((e.settings.language||"en")+"."+c.title)),j.call(this,b,c)},e.on("init",function(){var a=e.undoManager,b=e.selection;a.onUndo=new d(e,"Undo",g,null,a),a.onRedo=new d(e,"Redo",g,null,a),a.onBeforeAdd=new d(e,"BeforeAddUndo",null,a),a.onAdd=new d(e,"AddUndo",null,a),b.onBeforeGetContent=new d(e,"BeforeGetContent",h(!0),b),b.onGetContent=new d(e,"GetContent",h(!0),b),b.onBeforeSetContent=new d(e,"BeforeSetContent",h(!0),b),b.onSetContent=new d(e,"SetContent",h(!0),b)}),e.on("BeforeRenderUI",function(){var b=e.windowManager;b.onOpen=new d,b.onClose=new d,b.createInstance=function(b,d,e,f,g,h){c("windowManager.createInstance(..)");var i=a.resolve(b);return new i(d,e,f,g,h)}})}}var f;a.util.Dispatcher=d,a.onBeforeUnload=new d(a,"BeforeUnload"),a.onAddEditor=new d(a,"AddEditor","editor"),a.onRemoveEditor=new d(a,"RemoveEditor","editor"),a.util.Cookie={get:b,getHash:b,remove:b,set:b,setHash:b},a.on("SetupEditor",e),a.PluginManager.add("compat3x",e),a.addI18n=function(b,c){var d=a.util.I18n,e=a.each;return"string"==typeof b&&-1===b.indexOf(".")?void d.add(b,c):void(a.is(b,"string")?e(c,function(a,c){d.data[b+"."+c]=a}):e(b,function(a,b){e(a,function(a,c){e(a,function(a,e){"common"===c?d.data[b+"."+e]=a:d.data[b+"."+c+"."+e]=a})})}))}}(tinymce);

50
public/tinymce/plugins/compat3x/tiny_mce_popup.js vendored Normal file → Executable file

@ -249,18 +249,21 @@ var tinyMCEPopup = {
* @param {string} element_id Element id to be filled with the color value from the picker.
*/
pickColor : function(e, element_id) {
this.execCommand('mceColorPicker', true, {
color : document.getElementById(element_id).value,
func : function(c) {
document.getElementById(element_id).value = c;
try {
document.getElementById(element_id).onchange();
} catch (ex) {
// Try fire event, ignore errors
}
}
});
var el = document.getElementById(element_id), colorPickerCallback = this.editor.settings.color_picker_callback;
if (colorPickerCallback) {
colorPickerCallback.call(
this.editor,
function (value) {
el.value = value;
try {
el.onchange();
} catch (ex) {
// Try fire event, ignore errors
}
},
el.value
);
}
},
/**
@ -295,7 +298,7 @@ var tinyMCEPopup = {
* native version use the callback method instead then it can be extended.
*
* @method alert
* @param {String} t Title for the new alert dialog.
* @param {String} tx Title for the new alert dialog.
* @param {function} cb Callback function to be executed after the user has selected ok.
* @param {Object} s Optional scope to execute the callback in.
*/
@ -329,8 +332,9 @@ var tinyMCEPopup = {
_restoreSelection : function() {
var e = window.event.srcElement;
if (e.nodeName == 'INPUT' && (e.type == 'submit' || e.type == 'button'))
if (e.nodeName == 'INPUT' && (e.type == 'submit' || e.type == 'button')) {
tinyMCEPopup.restoreSelection();
}
},
/* _restoreSelection : function() {
@ -385,11 +389,15 @@ var tinyMCEPopup = {
document.body.style.display = '';
// Restore selection in IE when focus is placed on a non textarea or input element of the type text
if (tinymce.isIE) {
document.attachEvent('onmouseup', tinyMCEPopup._restoreSelection);
if (tinymce.Env.ie) {
if (tinymce.Env.ie < 11) {
document.attachEvent('onmouseup', tinyMCEPopup._restoreSelection);
// Add base target element for it since it would fail with modal dialogs
t.dom.add(t.dom.select('head')[0], 'base', {target : '_self'});
// Add base target element for it since it would fail with modal dialogs
t.dom.add(t.dom.select('head')[0], 'base', {target: '_self'});
} else {
document.addEventListener('mouseup', tinyMCEPopup._restoreSelection, false);
}
}
t.restoreSelection();
@ -436,7 +444,11 @@ var tinyMCEPopup = {
document.onkeyup = tinyMCEPopup._closeWinKeyHandler;
t.uiWindow.getEl('head').firstChild.firstChild.data = document.title;
if ('textContent' in document) {
t.uiWindow.getEl('head').firstChild.textContent = document.title;
} else {
t.uiWindow.getEl('head').firstChild.innerText = document.title;
}
},
_accessHandler : function(e) {

0
public/tinymce/plugins/compat3x/utils/form_utils.js Normal file → Executable file

0
public/tinymce/plugins/compat3x/utils/mctabs.js Normal file → Executable file

0
public/tinymce/plugins/compat3x/utils/validate.js Normal file → Executable file