@oat-sa/tao-core-shared-libs 1.10.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/lib/ckeditor/.claude/settings.local.json +9 -0
  2. package/lib/ckeditor/.qodo/history.sqlite +0 -0
  3. package/lib/ckeditor/.qodo/indexes.sqlite +0 -0
  4. package/lib/ckeditor/ckeditor.js +98 -96
  5. package/lib/ckeditor/plugins/icons.png +0 -0
  6. package/lib/ckeditor/plugins/icons_hidpi.png +0 -0
  7. package/lib/ckeditor/plugins/taomediamanager/plugin.js +2 -1
  8. package/lib/ckeditor/skins/kama/editor.css +1 -1
  9. package/lib/ckeditor/skins/kama/editor_ie.css +1 -1
  10. package/lib/ckeditor/skins/kama/editor_ie7.css +1 -1
  11. package/lib/ckeditor/skins/kama/editor_ie8.css +1 -1
  12. package/lib/ckeditor/skins/kama/editor_iequirks.css +1 -1
  13. package/lib/ckeditor/skins/kama/icons.png +0 -0
  14. package/lib/ckeditor/skins/kama/icons_hidpi.png +0 -0
  15. package/lib/ckeditor/skins/moono/editor.css +1 -1
  16. package/lib/ckeditor/skins/moono/editor_gecko.css +1 -1
  17. package/lib/ckeditor/skins/moono/editor_ie.css +1 -1
  18. package/lib/ckeditor/skins/moono/editor_ie7.css +1 -1
  19. package/lib/ckeditor/skins/moono/editor_ie8.css +1 -1
  20. package/lib/ckeditor/skins/moono/editor_iequirks.css +1 -1
  21. package/lib/ckeditor/skins/moono/icons.png +0 -0
  22. package/lib/ckeditor/skins/moono/icons_hidpi.png +0 -0
  23. package/lib/ckeditor/skins/moono-lisa/editor.css +1 -1
  24. package/lib/ckeditor/skins/moono-lisa/editor_gecko.css +1 -1
  25. package/lib/ckeditor/skins/moono-lisa/editor_ie.css +1 -1
  26. package/lib/ckeditor/skins/moono-lisa/editor_ie8.css +1 -1
  27. package/lib/ckeditor/skins/moono-lisa/editor_iequirks.css +1 -1
  28. package/lib/ckeditor/skins/moono-lisa/icons.png +0 -0
  29. package/lib/ckeditor/skins/moono-lisa/icons_hidpi.png +0 -0
  30. package/lib/ckeditor/skins/tao/editor.css +1 -1
  31. package/lib/ckeditor/skins/tao/icons.png +0 -0
  32. package/lib/ckeditor/skins/tao/icons_hidpi.png +0 -0
  33. package/package.json +1 -1
@@ -2,7 +2,7 @@
2
2
  Copyright (c) 2003-2025, CKSource - Frederico Knabben. All rights reserved.
3
3
  For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
4
  */
5
- (function(){if(!window.CKEDITOR||!window.CKEDITOR.dom){window.CKEDITOR||(window.CKEDITOR=function(){var a=/(^|.*[\\\/])ckeditor\.js(?:\?.*|;.*)?$/i,l={timestamp:"P9ND",version:"4.14.1 TAO-3.3 DEV",revision:"d70c79525",rnd:Math.floor(900*Math.random())+100,_:{pending:[],basePathSrcPattern:a},status:"unloaded",basePath:function(){var f=window.CKEDITOR_BASEPATH||"";if(!f)for(var g=document.getElementsByTagName("script"),h=0;h<g.length;h++){var k=g[h].src.match(a);if(k){f=k[1];break}}-1==f.indexOf(":/")&&
5
+ (function(){if(!window.CKEDITOR||!window.CKEDITOR.dom){window.CKEDITOR||(window.CKEDITOR=function(){var a=/(^|.*[\\\/])ckeditor\.js(?:\?.*|;.*)?$/i,l={timestamp:"PA3E",version:"4.14.1 TAO-3.3 DEV",revision:"8f2b371d1",rnd:Math.floor(900*Math.random())+100,_:{pending:[],basePathSrcPattern:a},status:"unloaded",basePath:function(){var f=window.CKEDITOR_BASEPATH||"";if(!f)for(var g=document.getElementsByTagName("script"),h=0;h<g.length;h++){var k=g[h].src.match(a);if(k){f=k[1];break}}-1==f.indexOf(":/")&&
6
6
  "//"!=f.slice(0,2)&&(f=0===f.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+f:location.href.match(/^[^\?]*\/(?:)/)[0]+f);if(!f)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';return f}(),getUrl:function(a){-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a);this.timestamp&&"/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a)&&(a+=(0<=a.indexOf("?")?"\x26":"?")+"t\x3d"+this.timestamp);
7
7
  return a},domReady:function(){function a(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",a,!1),f()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",a),f())}catch(k){}}function f(){for(var a;a=h.shift();)a()}var h=[];return function(k){function b(){try{document.documentElement.doScroll("left")}catch(c){setTimeout(b,1);return}a()}h.push(k);"complete"===document.readyState&&setTimeout(a,1);if(1==h.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",
8
8
  a,!1),window.addEventListener("load",a,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",a);window.attachEvent("onload",a);k=!1;try{k=!window.frameElement}catch(d){}document.documentElement.doScroll&&k&&b()}}}()},g=window.CKEDITOR_GETURL;if(g){var f=l.getUrl;l.getUrl=function(a){return g.call(l,a)||f.call(l,a)}}return l}());CKEDITOR.event||(CKEDITOR.event=function(){},CKEDITOR.event.implementOn=function(a){var l=CKEDITOR.event.prototype,g;for(g in l)null==a[g]&&(a[g]=l[g])},
@@ -22,7 +22,7 @@ Array.prototype.slice.call(arguments);c.call(this)}})}var g=[],f=CKEDITOR.env.ge
22
22
  for(var a=0;a<c.length;a++)if(c[a]!=b[a])return!1;return!0},getIndex:function(c,b){for(var a=0;a<c.length;++a)if(b(c[a]))return a;return-1},clone:function(c){var b;if(c&&c instanceof Array){b=[];for(var a=0;a<c.length;a++)b[a]=CKEDITOR.tools.clone(c[a]);return b}if(null===c||"object"!=typeof c||c instanceof String||c instanceof Number||c instanceof Boolean||c instanceof Date||c instanceof RegExp||c.nodeType||c.window===c)return c;b=new c.constructor;for(a in c)b[a]=CKEDITOR.tools.clone(c[a]);return b},
23
23
  capitalize:function(c,b){return c.charAt(0).toUpperCase()+(b?c.slice(1):c.slice(1).toLowerCase())},extend:function(c){var b=arguments.length,a,k;"boolean"==typeof(a=arguments[b-1])?b--:"boolean"==typeof(a=arguments[b-2])&&(k=arguments[b-1],b-=2);for(var d=1;d<b;d++){var f=arguments[d]||{};CKEDITOR.tools.array.forEach(CKEDITOR.tools.object.keys(f),function(b){if(!0===a||null==c[b])if(!k||b in k)c[b]=f[b]})}return c},prototypedCopy:function(c){var b=function(){};b.prototype=c;return new b},copy:function(c){var b=
24
24
  {},a;for(a in c)b[a]=c[a];return b},isArray:function(c){return"[object Array]"==Object.prototype.toString.call(c)},isEmpty:function(c){for(var b in c)if(c.hasOwnProperty(b))return!1;return!0},cssVendorPrefix:function(c,b,a){if(a)return f+c+":"+b+";"+c+":"+b;a={};a[c]=b;a[f+c]=b;return a},cssStyleToDomStyle:function(){var c=document.createElement("div").style,b="undefined"!=typeof c.cssFloat?"cssFloat":"undefined"!=typeof c.styleFloat?"styleFloat":"float";return function(c){return"float"==c?b:c.replace(/-./g,
25
- function(c){return c.substr(1).toUpperCase()})}}(),buildStyleHtml:function(c){c=[].concat(c);for(var b,a=[],k=0;k<c.length;k++)if(b=c[k])/@import|[{}]/.test(b)?a.push("\x3cstyle\x3e"+b+"\x3c/style\x3e"):a.push('\x3clink type\x3d"text/css" rel\x3dstylesheet href\x3d"'+b+'"\x3e');return a.join("")},htmlEncode:function(c){return void 0===c||null===c?"":String(c).replace(e,"\x26amp;").replace(m,"\x26gt;").replace(h,"\x26lt;")},htmlDecode:function(a){return a.replace(b,c)},htmlEncodeAttr:function(c){return CKEDITOR.tools.htmlEncode(c).replace(k,
25
+ function(c){return c.substr(1).toUpperCase()})}}(),buildStyleHtml:function(c){c=[].concat(c);for(var b,a=[],k=0;k<c.length;k++)if(b=c[k])/@import|[{}]/.test(b)?a.push("\x3cstyle\x3e"+b+"\x3c/style\x3e"):a.push('\x3clink type\x3d"text/css" rel\x3dstylesheet href\x3d"'+b+'"\x3e');return a.join("")},htmlEncode:function(c){return void 0===c||null===c?"":String(c).replace(e,"\x26amp;").replace(m,"\x26gt;").replace(h,"\x26lt;")},htmlDecode:function(n){return n.replace(b,c)},htmlEncodeAttr:function(c){return CKEDITOR.tools.htmlEncode(c).replace(k,
26
26
  "\x26quot;")},htmlDecodeAttr:function(c){return CKEDITOR.tools.htmlDecode(c)},transformPlainTextToHtml:function(c,b){var a=b==CKEDITOR.ENTER_BR,k=this.htmlEncode(c.replace(/\r\n/g,"\n")),k=k.replace(/\t/g,"\x26nbsp;\x26nbsp; \x26nbsp;"),d=b==CKEDITOR.ENTER_P?"p":"div";if(!a){var f=/\n{2}/g;if(f.test(k))var e="\x3c"+d+"\x3e",h="\x3c/"+d+"\x3e",k=e+k.replace(f,function(){return h+e})+h}k=k.replace(/\n/g,"\x3cbr\x3e");a||(k=k.replace(new RegExp("\x3cbr\x3e(?\x3d\x3c/"+d+"\x3e)"),function(c){return CKEDITOR.tools.repeat(c,
27
27
  2)}));k=k.replace(/^ | $/g,"\x26nbsp;");return k=k.replace(/(>|\s) /g,function(c,b){return b+"\x26nbsp;"}).replace(/ (?=<)/g,"\x26nbsp;")},getNextNumber:function(){var c=0;return function(){return++c}}(),getNextId:function(){return"cke_"+this.getNextNumber()},getUniqueId:function(){for(var c="e",b=0;8>b;b++)c+=Math.floor(65536*(1+Math.random())).toString(16).substring(1);return c},override:function(c,b){var a=b(c);a.prototype=c.prototype;return a},setTimeout:function(c,b,a,k,d){d||(d=window);a||(a=
28
28
  d);return d.setTimeout(function(){k?c.apply(a,[].concat(k)):c.apply(a)},b||0)},throttle:function(c,b,a){return new this.buffers.throttle(c,b,a)},trim:function(){var c=/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g;return function(b){return b.replace(c,"")}}(),ltrim:function(){var c=/^[ \t\n\r]+/g;return function(b){return b.replace(c,"")}}(),rtrim:function(){var c=/[ \t\n\r]+$/g;return function(b){return b.replace(c,"")}}(),indexOf:function(c,b){if("function"==typeof b)for(var a=0,k=c.length;a<k;a++){if(b(c[a]))return a}else{if(c.indexOf)return c.indexOf(b);
@@ -174,8 +174,8 @@ b){c.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[c.getName()]&&(b=c.getInde
174
174
  b){switch(b){case CKEDITOR.POSITION_AFTER_START:this.setStart(c,0);break;case CKEDITOR.POSITION_BEFORE_END:c.type==CKEDITOR.NODE_TEXT?this.setStart(c,c.getLength()):this.setStart(c,c.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setStartBefore(c);break;case CKEDITOR.POSITION_AFTER_END:this.setStartAfter(c)}a(this)},setEndAt:function(c,b){switch(b){case CKEDITOR.POSITION_AFTER_START:this.setEnd(c,0);break;case CKEDITOR.POSITION_BEFORE_END:c.type==CKEDITOR.NODE_TEXT?this.setEnd(c,
175
175
  c.getLength()):this.setEnd(c,c.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setEndBefore(c);break;case CKEDITOR.POSITION_AFTER_END:this.setEndAfter(c)}a(this)},fixBlock:function(c,a){var b=this.createBookmark(),d=this.document.createElement(a);this.collapse(c);this.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS);this.extractContents().appendTo(d);d.trim();this.insertNode(d);var f=d.getBogus();f&&f.remove();d.appendBogus();this.moveToBookmark(b);return d},splitBlock:function(c,a){var b=
176
176
  new CKEDITOR.dom.elementPath(this.startContainer,this.root),d=new CKEDITOR.dom.elementPath(this.endContainer,this.root),f=b.block,e=d.block,k=null;if(!b.blockLimit.equals(d.blockLimit))return null;"br"!=c&&(f||(f=this.fixBlock(!0,c),e=(new CKEDITOR.dom.elementPath(this.endContainer,this.root)).block),e||(e=this.fixBlock(!1,c)));b=f&&this.checkStartOfBlock();d=e&&this.checkEndOfBlock();this.deleteContents();f&&f.equals(e)&&(d?(k=new CKEDITOR.dom.elementPath(this.startContainer,this.root),this.moveToPosition(e,
177
- CKEDITOR.POSITION_AFTER_END),e=null):b?(k=new CKEDITOR.dom.elementPath(this.startContainer,this.root),this.moveToPosition(f,CKEDITOR.POSITION_BEFORE_START),f=null):(e=this.splitElement(f,a||!1),f.is("ul","ol")||f.appendBogus()));return{previousBlock:f,nextBlock:e,wasStartOfBlock:b,wasEndOfBlock:d,elementPath:k}},splitElement:function(a,b){if(!this.collapsed)return null;this.setEndAt(a,CKEDITOR.POSITION_BEFORE_END);var d=this.extractContents(!1,b||!1),f=a.clone(!1,b||!1);d.appendTo(f);f.insertAfter(a);
178
- this.moveToPosition(a,CKEDITOR.POSITION_AFTER_END);return f},removeEmptyBlocksAtEnd:function(){function a(c){return function(a){return b(a)||d(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.isEmptyInlineRemoveable()||c.is("table")&&a.is("caption")?!1:!0}}var b=CKEDITOR.dom.walker.whitespaces(),d=CKEDITOR.dom.walker.bookmark(!1);return function(b){for(var d=this.createBookmark(),f=this[b?"endPath":"startPath"](),e=f.block||f.blockLimit,k;e&&!e.equals(f.root)&&!e.getFirst(a(e));)k=e.getParent(),this[b?"setEndAt":
177
+ CKEDITOR.POSITION_AFTER_END),e=null):b?(k=new CKEDITOR.dom.elementPath(this.startContainer,this.root),this.moveToPosition(f,CKEDITOR.POSITION_BEFORE_START),f=null):(e=this.splitElement(f,a||!1),f.is("ul","ol")||f.appendBogus()));return{previousBlock:f,nextBlock:e,wasStartOfBlock:b,wasEndOfBlock:d,elementPath:k}},splitElement:function(c,a){if(!this.collapsed)return null;this.setEndAt(c,CKEDITOR.POSITION_BEFORE_END);var b=this.extractContents(!1,a||!1),d=c.clone(!1,a||!1);b.appendTo(d);d.insertAfter(c);
178
+ this.moveToPosition(c,CKEDITOR.POSITION_AFTER_END);return d},removeEmptyBlocksAtEnd:function(){function a(c){return function(a){return b(a)||d(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.isEmptyInlineRemoveable()||c.is("table")&&a.is("caption")?!1:!0}}var b=CKEDITOR.dom.walker.whitespaces(),d=CKEDITOR.dom.walker.bookmark(!1);return function(b){for(var d=this.createBookmark(),f=this[b?"endPath":"startPath"](),e=f.block||f.blockLimit,k;e&&!e.equals(f.root)&&!e.getFirst(a(e));)k=e.getParent(),this[b?"setEndAt":
179
179
  "setStartAt"](e,CKEDITOR.POSITION_AFTER_END),e.remove(1),e=k;this.moveToBookmark(d)}}(),startPath:function(){return new CKEDITOR.dom.elementPath(this.startContainer,this.root)},endPath:function(){return new CKEDITOR.dom.elementPath(this.endContainer,this.root)},checkBoundaryOfElement:function(a,b){var d=b==CKEDITOR.START,e=this.clone();e.collapse(d);e[d?"setStartAt":"setEndAt"](a,d?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END);e=new CKEDITOR.dom.walker(e);e.evaluator=f(d);return e[d?
180
180
  "checkBackward":"checkForward"]()},checkStartOfBlock:function(){var a=this.startContainer,b=this.startOffset;CKEDITOR.env.ie&&b&&a.type==CKEDITOR.NODE_TEXT&&(a=CKEDITOR.tools.ltrim(a.substring(0,b)),k.test(a)&&this.trim(0,1));this.trim();a=new CKEDITOR.dom.elementPath(this.startContainer,this.root);b=this.clone();b.collapse(!0);b.setStartAt(a.block||a.blockLimit,CKEDITOR.POSITION_AFTER_START);a=new CKEDITOR.dom.walker(b);a.evaluator=g();return a.checkBackward()},checkEndOfBlock:function(){var a=this.endContainer,
181
181
  b=this.endOffset;CKEDITOR.env.ie&&a.type==CKEDITOR.NODE_TEXT&&(a=CKEDITOR.tools.rtrim(a.substring(b)),k.test(a)&&this.trim(1,0));this.trim();a=new CKEDITOR.dom.elementPath(this.endContainer,this.root);b=this.clone();b.collapse(!1);b.setEndAt(a.block||a.blockLimit,CKEDITOR.POSITION_BEFORE_END);a=new CKEDITOR.dom.walker(b);a.evaluator=g();return a.checkForward()},getPreviousNode:function(a,b,d){var f=this.clone();f.collapse(1);f.setStartAt(d||this.root,CKEDITOR.POSITION_AFTER_START);d=new CKEDITOR.dom.walker(f);
@@ -360,7 +360,7 @@ c:a;(a=a.getParent())&&!d.equals(a)&&1==a.getChildCount();)c=a;c.remove()}var n,
360
360
  this.getDocument().equals(CKEDITOR.document)&&(this.editor._.previousScrollTop=this.$.scrollTop);try{if(!CKEDITOR.env.ie||CKEDITOR.env.edge&&14<CKEDITOR.env.version||!this.getDocument().equals(CKEDITOR.document))if(CKEDITOR.env.chrome){var c=this.$.scrollTop;this.$.focus();this.$.scrollTop=c}else this.$.focus();else this.$.setActive()}catch(b){if(!CKEDITOR.env.ie)throw b;}CKEDITOR.env.safari&&!this.isInline()&&(a=CKEDITOR.document.getActive(),a.equals(this.getWindow().getFrame())||this.getWindow().focus())},
361
361
  on:function(a,c){var b=Array.prototype.slice.call(arguments,0);CKEDITOR.env.ie&&/^focus|blur$/.exec(a)&&(a="focus"==a?"focusin":"focusout",c=e(c,this),b[0]=a,b[1]=c);return CKEDITOR.dom.element.prototype.on.apply(this,b)},attachListener:function(a){!this._.listeners&&(this._.listeners=[]);var c=Array.prototype.slice.call(arguments,1),c=a.on.apply(a,c);this._.listeners.push(c);return c},clearListeners:function(){var a=this._.listeners;try{for(;a.length;)a.pop().removeListener()}catch(c){}},restoreAttrs:function(){var a=
362
362
  this._.attrChanges,c,b;for(b in a)a.hasOwnProperty(b)&&(c=a[b],null!==c?this.setAttribute(b,c):this.removeAttribute(b))},attachClass:function(a){var c=this.getCustomData("classes");this.hasClass(a)||(!c&&(c=[]),c.push(a),this.setCustomData("classes",c),this.addClass(a))},changeAttr:function(a,c){var b=this.getAttribute(a);c!==b&&(!this._.attrChanges&&(this._.attrChanges={}),a in this._.attrChanges||(this._.attrChanges[a]=b),this.setAttribute(a,c))},insertText:function(a){this.editor.focus();this.insertHtml(this.transformPlainTextToHtml(a),
363
- "text")},transformPlainTextToHtml:function(a){var c=this.editor.getSelection().getStartElement().hasAscendant("pre",!0)?CKEDITOR.ENTER_BR:this.editor.activeEnterMode;return CKEDITOR.tools.transformPlainTextToHtml(a,c)},insertHtml:function(a,c,b){var e=this.editor;e.focus();e.fire("saveSnapshot");b||(b=e.getSelection().getRanges()[0]);u(this,c||"html",a,b);b.select();d(this);this.editor.fire("afterInsertHtml",{})},insertHtmlIntoRange:function(a,c,b){u(this,b||"html",a,c);this.editor.fire("afterInsertHtml",
363
+ "text")},transformPlainTextToHtml:function(a){var c=this.editor.getSelection().getStartElement().hasAscendant("pre",!0)?CKEDITOR.ENTER_BR:this.editor.activeEnterMode;return CKEDITOR.tools.transformPlainTextToHtml(a,c)},insertHtml:function(a,c,b){var e=this.editor;e.focus();e.fire("saveSnapshot");b||(b=e.getSelection().getRanges()[0]);u(this,c||"html",a,b);b&&b.select();d(this);this.editor.fire("afterInsertHtml",{})},insertHtmlIntoRange:function(a,c,b){u(this,b||"html",a,c);this.editor.fire("afterInsertHtml",
364
364
  {intoRange:c})},insertElement:function(a,c){var b=this.editor;b.focus();b.fire("saveSnapshot");var e=b.activeEnterMode,b=b.getSelection(),h=a.getName(),h=CKEDITOR.dtd.$block[h];c||(c=b.getRanges()[0]);this.insertElementIntoRange(a,c)&&(c.moveToPosition(a,CKEDITOR.POSITION_AFTER_END),h&&((h=a.getNext(function(a){return f(a)&&!r(a)}))&&h.type==CKEDITOR.NODE_ELEMENT&&h.is(CKEDITOR.dtd.$block)?h.getDtd()["#"]?c.moveToElementEditStart(h):c.moveToElementEditEnd(a):h||e==CKEDITOR.ENTER_BR||(h=c.fixBlock(!0,
365
365
  e==CKEDITOR.ENTER_DIV?"div":"p"),c.moveToElementEditStart(h))));b.selectRanges([c]);d(this)},insertElementIntoSelection:function(a){this.insertElement(a)},insertElementIntoRange:function(a,c){var d=this.editor,e=d.config.enterMode,f=a.getName(),h=CKEDITOR.dtd.$block[f];if(c.checkReadOnly())return!1;c.deleteContents(1);c.startContainer.type==CKEDITOR.NODE_ELEMENT&&(c.startContainer.is({tr:1,table:1,tbody:1,thead:1,tfoot:1})?y(c):c.startContainer.is(CKEDITOR.dtd.$list)&&v(c));var k,g;if(h)for(;(k=c.getCommonAncestor(0,
366
366
  1))&&(g=CKEDITOR.dtd[k.getName()])&&(!g||!g[f]);)if(k.getName()in CKEDITOR.dtd.span){var h=c.splitElement(k),l=c.createBookmark();b(k);b(h);c.moveToBookmark(l)}else c.checkStartOfBlock()&&c.checkEndOfBlock()?(c.setStartBefore(k),c.collapse(!0),k.remove()):c.splitBlock(e==CKEDITOR.ENTER_DIV?"div":"p",d.editable());c.insertNode(a);return!0},setData:function(a,c){c||(a=this.editor.dataProcessor.toHtml(a));this.setHtml(a);this.fixInitialSelection();"unloaded"==this.status&&(this.status="ready");this.editor.fire("dataReady")},
@@ -391,7 +391,7 @@ n=CKEDITOR.dom.walker.whitespaces(!0);q=CKEDITOR.dom.walker.bookmark(!1,!0);t=CK
391
391
  u;++m)e=q.getItem(m),a(e)?(h=e.getName(),y&&h in CKEDITOR.dtd.$list?g=g.concat(c(e,d)):(k=!!l[h],"br"!=h||!e.data("cke-eol")||m&&m!=u-1||(G=(f=m?g[m-1].node:q.getItem(m+1))&&(!a(f)||!f.is("br")),f=f&&a(f)&&n.$block[f.getName()]),-1!=t||k||(t=m),k||(v=m),g.push({isElement:1,isLineBreak:G,isBlock:e.isBlockBoundary(),hasBlockSibling:f,node:e,name:h,allowed:k}),f=G=0)):g.push({isElement:0,node:e,allowed:1});-1<t&&(g[t].firstNotAllowed=1);-1<v&&(g[v].lastNotAllowed=1);return g}function d(c,b){var e=[],
392
392
  f=c.getChildren(),h=f.count(),k,g=0,l=n[b],m=!c.is(n.$inline)||c.is("br");for(m&&e.push(" ");g<h;g++)k=f.getItem(g),a(k)&&!k.is(l)?e=e.concat(d(k,b)):e.push(k);m&&e.push(" ");return e}function e(c){return a(c.startContainer)&&c.startContainer.getChild(c.startOffset-1)}function g(c){return c&&a(c)&&(c.is(n.$removeEmpty)||c.is("a")&&!c.isBlockBoundary())}function l(c,b,d,e){var f=c.clone(),h,k;f.setEndAt(b,CKEDITOR.POSITION_BEFORE_END);(h=(new CKEDITOR.dom.walker(f)).next())&&a(h)&&q[h.getName()]&&
393
393
  (k=h.getPrevious())&&a(k)&&!k.getParent().equals(c.startContainer)&&d.contains(k)&&e.contains(h)&&h.isIdentical(k)&&(h.moveChildren(k),h.remove(),l(c,b,d,e))}function m(c,b){function d(c,b){if(b.isBlock&&b.isElement&&!b.node.is("br")&&a(c)&&c.is("br"))return c.remove(),1}var e=b.endContainer.getChild(b.endOffset),f=b.endContainer.getChild(b.endOffset-1);e&&d(e,c[c.length-1]);f&&d(f,c[0])&&(b.setEnd(b.endContainer,b.endOffset-1),b.collapse())}var n=CKEDITOR.dtd,q={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,
394
- h6:1,ul:1,ol:1,li:1,pre:1,dl:1,blockquote:1},u={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},t=CKEDITOR.tools.extend({},n.$inline);delete t.br;return function(q,F,L,v){var y=q.editor,p=!1;"unfiltered_html"==F&&(F="html",p=!0);if(!v.checkReadOnly()){var A=(new CKEDITOR.dom.elementPath(v.startContainer,v.root)).blockLimit||v.root;F={type:F,dontFilter:p,editable:q,editor:y,range:v,blockLimit:A,mergeCandidates:[],zombies:[]};var p=F.range,A=F.mergeCandidates,r="html"===F.type,z,E,T,ba,ca,V;"text"==F.type&&
394
+ h6:1,ul:1,ol:1,li:1,pre:1,dl:1,blockquote:1},u={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},t=CKEDITOR.tools.extend({},n.$inline);delete t.br;return function(q,F,L,v){var y=q.editor,p=!1;"unfiltered_html"==F&&(F="html",p=!0);if(v&&!v.checkReadOnly()){var A=(new CKEDITOR.dom.elementPath(v.startContainer,v.root)).blockLimit||v.root;F={type:F,dontFilter:p,editable:q,editor:y,range:v,blockLimit:A,mergeCandidates:[],zombies:[]};var p=F.range,A=F.mergeCandidates,r="html"===F.type,z,E,T,ba,ca,V;"text"==F.type&&
395
395
  p.shrink(CKEDITOR.SHRINK_ELEMENT,!0,!1)&&(E=CKEDITOR.dom.element.createFromHtml("\x3cspan\x3e\x26nbsp;\x3c/span\x3e",p.document),p.insertNode(E),p.setStartAfter(E));T=new CKEDITOR.dom.elementPath(p.startContainer);F.endPath=ba=new CKEDITOR.dom.elementPath(p.endContainer);if(!p.collapsed){z=ba.block||ba.blockLimit;var ea=p.getCommonAncestor();z&&!z.equals(ea)&&!z.contains(ea)&&p.checkEndOfBlock()&&F.zombies.push(z);p.deleteContents()}for(;(ca=e(p))&&a(ca)&&ca.isBlockBoundary()&&T.contains(ca);)p.moveToPosition(ca,
396
396
  CKEDITOR.POSITION_BEFORE_END);l(p,F.blockLimit,T,ba);E&&(p.setEndBefore(E),p.collapse(),E.remove());E=p.startPath();if(z=E.contains(g,!1,1))V=p.splitElement(z),F.inlineStylesRoot=z,F.inlineStylesPeak=E.lastElement;E=p.createBookmark();r&&(b(z),b(V));(z=E.startNode.getPrevious(f))&&a(z)&&g(z)&&A.push(z);(z=E.startNode.getNext(f))&&a(z)&&g(z)&&A.push(z);for(z=E.startNode;(z=z.getParent())&&g(z);)A.push(z);p.moveToBookmark(E);y.enterMode===CKEDITOR.ENTER_DIV&&""===y.getData(!0)&&((y=q.getFirst())&&y.remove(),
397
397
  v.setStartAt(q,CKEDITOR.POSITION_AFTER_START),v.collapse(!0));if(q=L){q=F.range;if("text"==F.type&&F.inlineStylesRoot){v=F.inlineStylesPeak;y=v.getDocument().createText("{cke-peak}");for(V=F.inlineStylesRoot.getParent();!v.equals(V);)y=y.appendTo(v.clone()),v=v.getParent();L=y.getOuterHtml().split("{cke-peak}").join(L)}v=F.blockLimit.getName();if(/^\s+|\s+$/.test(L)&&"span"in CKEDITOR.dtd[v]){var X='\x3cspan data-cke-marker\x3d"1"\x3e\x26nbsp;\x3c/span\x3e';L=X+L+X}L=F.editor.dataProcessor.toHtml(L,
@@ -892,8 +892,8 @@ a.config.enterMode==CKEDITOR.ENTER_BR;this.isIndent=!!g;this.relatedGlobal=g?"in
892
892
  l=l.getCustomData("listarray_index");l<=m.getCustomData("listarray_index");l++)if(p[l].indent+=h,0<h){for(var x=p[l].parent,D=l-1;0<=D;D--)if(p[D].indent===h){x=p[D].parent;break}p[l].parent=new CKEDITOR.dom.element(x.getName(),x.getDocument())}for(l=m.getCustomData("listarray_index")+1;l<p.length&&p[l].indent>w;l++)p[l].indent+=h;h=CKEDITOR.plugins.list.arrayToList(p,c,null,a.config.enterMode,b.getDirection());if(!d.isIndent){var C;if((C=b.getParent())&&C.is("li"))for(var m=h.listNode.getChildren(),
893
893
  B=[],t,l=m.count()-1;0<=l;l--)(t=m.getItem(l))&&t.is&&t.is("li")&&B.push(t)}h&&h.listNode.replace(b);if(B&&B.length)for(l=0;l<B.length;l++){for(t=b=B[l];(t=t.getNext())&&t.is&&t.getName()in e;)CKEDITOR.env.needsNbspFiller&&!b.getFirst(g)&&b.append(f.document.createText(" ")),b.append(t);b.insertAfter(C)}h&&a.fire("contentDomInvalidated");return!0}for(var d=this,c=this.database,e=this.context,f,h=a.getSelection(),h=(h&&h.getRanges()).createIterator();f=h.getNextRange();){for(var m=f.getCommonAncestor();m&&
894
894
  (m.type!=CKEDITOR.NODE_ELEMENT||!e[m.getName()]);){if(a.editable().equals(m)){m=!1;break}m=m.getParent()}m||(m=f.startPath().contains(e))&&f.setEndAt(m,CKEDITOR.POSITION_BEFORE_END);if(!m){var p=f.getEnclosedNode();p&&p.type==CKEDITOR.NODE_ELEMENT&&p.getName()in e&&(f.setStartAt(p,CKEDITOR.POSITION_AFTER_START),f.setEndAt(p,CKEDITOR.POSITION_BEFORE_END),m=p)}m&&f.startContainer.type==CKEDITOR.NODE_ELEMENT&&f.startContainer.getName()in e&&(p=new CKEDITOR.dom.walker(f),p.evaluator=l,f.startContainer=
895
- p.next());m&&f.endContainer.type==CKEDITOR.NODE_ELEMENT&&f.endContainer.getName()in e&&(p=new CKEDITOR.dom.walker(f),p.evaluator=l,f.endContainer=p.previous());if(m)return b(m)}return 0}function l(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.is("li")}function g(a){return f(a)&&e(a)}var f=CKEDITOR.dom.walker.whitespaces(!0),e=CKEDITOR.dom.walker.bookmark(!1,!0),m=CKEDITOR.TRISTATE_DISABLED,h=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indentlist",{requires:"indent",init:function(e){function b(b){d.specificDefinition.apply(this,
896
- arguments);this.requiredContent=["ul","ol"];b.on("key",function(a){var d=b.elementPath();if("wysiwyg"==b.mode&&a.data.keyCode==this.indentKey&&d){var e=this.getContext(d);!e||this.isIndent&&CKEDITOR.plugins.indentList.firstItemInPath(this.context,d,e)||(b.execCommand(this.relatedGlobal),a.cancel())}},this);this.jobs[this.isIndent?10:30]={refresh:this.isIndent?function(a,b){var c=this.getContext(b),d=CKEDITOR.plugins.indentList.firstItemInPath(this.context,b,c);return c&&this.isIndent&&!d?h:m}:function(a,
895
+ p.next());m&&f.endContainer.type==CKEDITOR.NODE_ELEMENT&&f.endContainer.getName()in e&&(p=new CKEDITOR.dom.walker(f),p.evaluator=l,f.endContainer=p.previous());if(m)return b(m)}return 0}function l(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.is("li")}function g(a){return f(a)&&e(a)}var f=CKEDITOR.dom.walker.whitespaces(!0),e=CKEDITOR.dom.walker.bookmark(!1,!0),m=CKEDITOR.TRISTATE_DISABLED,h=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indentlist",{requires:"indent",init:function(e){function b(c){d.specificDefinition.apply(this,
896
+ arguments);this.requiredContent=["ul","ol"];c.on("key",function(a){var b=c.elementPath();if("wysiwyg"==c.mode&&a.data.keyCode==this.indentKey&&b){var d=this.getContext(b);!d||this.isIndent&&CKEDITOR.plugins.indentList.firstItemInPath(this.context,b,d)||(c.execCommand(this.relatedGlobal),a.cancel())}},this);this.jobs[this.isIndent?10:30]={refresh:this.isIndent?function(a,b){var c=this.getContext(b),d=CKEDITOR.plugins.indentList.firstItemInPath(this.context,b,c);return c&&this.isIndent&&!d?h:m}:function(a,
897
897
  b){return!this.getContext(b)||this.isIndent?m:h},exec:CKEDITOR.tools.bind(a,this)}}var d=CKEDITOR.plugins.indent;d.registerCommands(e,{indentlist:new b(e,"indentlist",!0),outdentlist:new b(e,"outdentlist")});CKEDITOR.tools.extend(b.prototype,d.specificDefinition.prototype,{context:{ol:1,ul:1}})}});CKEDITOR.plugins.indentList={};CKEDITOR.plugins.indentList.firstItemInPath=function(a,b,d){var c=b.contains(l);d||(d=b.contains(a));return d&&c&&c.equals(d.getFirst(l))}})();(function(){function a(a,e,b){if(!a.getCustomData("indent_processed")){var d=
898
898
  this.editor,c=this.isIndent;if(e){d=a.$.className.match(this.classNameRegex);b=0;d&&(d=d[1],b=CKEDITOR.tools.indexOf(e,d)+1);if(0>(b+=c?1:-1))return;b=Math.min(b,e.length);b=Math.max(b,0);a.$.className=CKEDITOR.tools.ltrim(a.$.className.replace(this.classNameRegex,""));0<b&&a.addClass(e[b-1])}else{e=l(a,b);b=parseInt(a.getStyle(e),10);var f=d.config.indentOffset||40;isNaN(b)&&(b=0);b+=(c?1:-1)*f;if(0>b)return;b=Math.max(b,0);b=Math.ceil(b/f)*f;a.setStyle(e,b?b+(d.config.indentUnit||"px"):"");""===
899
899
  a.getAttribute("style")&&a.removeAttribute("style")}CKEDITOR.dom.element.setMarker(this.database,a,"indent_processed",1)}}function l(a,e){return"ltr"==(e||a.getComputedStyle("direction"))?"margin-left":"margin-right"}var g=CKEDITOR.dtd.$listItem,f=CKEDITOR.dtd.$list,e=CKEDITOR.TRISTATE_DISABLED,m=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indentblock",{requires:"indent",init:function(h){function k(){b.specificDefinition.apply(this,arguments);this.allowedContent={"div h1 h2 h3 h4 h5 h6 ol p pre ul":{propertiesOnly:!0,
@@ -1031,9 +1031,9 @@ command:"specialchar",toolbar:"insert,50"})}});CKEDITOR.config.specialChars="! \
1031
1031
  c+1E3*(d==CKEDITOR.STYLE_OBJECT?1:d==CKEDITOR.STYLE_BLOCK?2:3),f[b]=g,e.push(g),m.push(g));e.sort(function(a,b){return a._.weight-b._.weight})}});a.ui.addRichCombo("Styles",{label:g.label,title:g.panelTitle,toolbar:"styles,10",allowedContent:m,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(l.contentsCss),multiSelect:!0,attributes:{"aria-label":g.panelTitle}},init:function(){var a,f,b,d,c,l;c=0;for(l=e.length;c<l;c++)a=e[c],f=a._name,d=a._.type,d!=b&&(this.startGroup(g["panelTitle"+String(d)]),
1032
1032
  b=d),this.add(f,a.type==CKEDITOR.STYLE_OBJECT?f:a.buildPreview(),f);this.commit()},onClick:function(e){a.focus();a.fire("saveSnapshot");e=f[e];var g=a.elementPath();if(e.group&&e.removeStylesFromSameGroup(a))a.applyStyle(e);else a[e.checkActive(g,a)?"removeStyle":"applyStyle"](e);a.fire("saveSnapshot")},onRender:function(){a.on("selectionChange",function(e){var g=this.getValue();e=e.data.path.elements;for(var b=0,d=e.length,c;b<d;b++){c=e[b];for(var l in f)if(f[l].checkElementRemovable(c,!0,a)){l!=
1033
1033
  g&&this.setValue(l);return}}this.setValue("")},this)},onOpen:function(){var e=a.getSelection(),e=e.getSelectedElement()||e.getStartElement()||a.editable(),e=a.elementPath(e),k=[0,0,0,0];this.showAll();this.unmarkAll();for(var b in f){var d=f[b],c=d._.type;d.checkApplicable(e,a,a.activeFilter)?k[c]++:this.hideItem(b);d.checkActive(e,a)&&this.mark(b)}k[CKEDITOR.STYLE_BLOCK]||this.hideGroup(g["panelTitle"+String(CKEDITOR.STYLE_BLOCK)]);k[CKEDITOR.STYLE_INLINE]||this.hideGroup(g["panelTitle"+String(CKEDITOR.STYLE_INLINE)]);
1034
- k[CKEDITOR.STYLE_OBJECT]||this.hideGroup(g["panelTitle"+String(CKEDITOR.STYLE_OBJECT)])},refresh:function(){var e=a.elementPath();if(e){for(var g in f)if(f[g].checkApplicable(e,a,a.activeFilter))return;this.setState(CKEDITOR.TRISTATE_DISABLED)}},reset:function(){f={};e=[]}})}})})();(function(){function a(a){return{editorFocus:!1,canUndo:!1,modes:{wysiwyg:1},exec:function(f){if(f.editable().hasFocus){var h=f.getSelection(),g;if(g=(new CKEDITOR.dom.elementPath(h.getCommonAncestor(),h.root)).contains({td:1,
1035
- th:1},1)){var h=f.createRange(),b=CKEDITOR.tools.tryThese(function(){var b=g.getParent().$.cells[g.$.cellIndex+(a?-1:1)];b.parentNode.parentNode;return b},function(){var b=g.getParent(),b=b.getAscendant("table").$.rows[b.$.rowIndex+(a?-1:1)];return b.cells[a?b.cells.length-1:0]});if(b||a)if(b)b=new CKEDITOR.dom.element(b),h.moveToElementEditStart(b),h.checkStartOfBlock()&&h.checkEndOfBlock()||h.selectNodeContents(b);else return!0;else{for(var d=g.getAscendant("table").$,b=g.getParent().$.cells,d=
1036
- new CKEDITOR.dom.element(d.insertRow(-1),f.document),c=0,l=b.length;c<l;c++)d.append((new CKEDITOR.dom.element(b[c],f.document)).clone(!1,!1)).appendBogus();h.moveToElementEditStart(d)}h.select(!0);return!0}}return!1}}}var l={editorFocus:!1,modes:{wysiwyg:1,source:1}},g={exec:function(a){a.container.focusNext(!0,a.tabIndex)}},f={exec:function(a){a.container.focusPrevious(!0,a.tabIndex)}};CKEDITOR.plugins.add("tab",{init:function(e){for(var m=!1!==e.config.enableTabKeyTools,h=e.config.tabSpaces||0,
1034
+ k[CKEDITOR.STYLE_OBJECT]||this.hideGroup(g["panelTitle"+String(CKEDITOR.STYLE_OBJECT)])},refresh:function(){var e=a.elementPath();if(e){for(var g in f)if(f[g].checkApplicable(e,a,a.activeFilter))return;this.setState(CKEDITOR.TRISTATE_DISABLED)}},reset:function(){f={};e=[]}})}})})();(function(){function a(a){return{editorFocus:!1,canUndo:!1,modes:{wysiwyg:1},exec:function(f){if(f.editable().hasFocus){var g=f.getSelection(),k;if(k=(new CKEDITOR.dom.elementPath(g.getCommonAncestor(),g.root)).contains({td:1,
1035
+ th:1},1)){var g=f.createRange(),b=CKEDITOR.tools.tryThese(function(){var b=k.getParent().$.cells[k.$.cellIndex+(a?-1:1)];b.parentNode.parentNode;return b},function(){var b=k.getParent(),b=b.getAscendant("table").$.rows[b.$.rowIndex+(a?-1:1)];return b.cells[a?b.cells.length-1:0]});if(b||a)if(b)b=new CKEDITOR.dom.element(b),g.moveToElementEditStart(b),g.checkStartOfBlock()&&g.checkEndOfBlock()||g.selectNodeContents(b);else return!0;else{for(var d=k.getAscendant("table").$,b=k.getParent().$.cells,d=
1036
+ new CKEDITOR.dom.element(d.insertRow(-1),f.document),c=0,l=b.length;c<l;c++)d.append((new CKEDITOR.dom.element(b[c],f.document)).clone(!1,!1)).appendBogus();g.moveToElementEditStart(d)}g.select(!0);return!0}}return!1}}}var l={editorFocus:!1,modes:{wysiwyg:1,source:1}},g={exec:function(a){a.container.focusNext(!0,a.tabIndex)}},f={exec:function(a){a.container.focusPrevious(!0,a.tabIndex)}};CKEDITOR.plugins.add("tab",{init:function(e){for(var m=!1!==e.config.enableTabKeyTools,h=e.config.tabSpaces||0,
1037
1037
  k="";h--;)k+=" ";if(k)e.on("key",function(a){9==a.data.keyCode&&(e.insertText(k),a.cancel())});if(m)e.on("key",function(a){(9==a.data.keyCode&&e.execCommand("selectNextCell")||a.data.keyCode==CKEDITOR.SHIFT+9&&e.execCommand("selectPreviousCell"))&&a.cancel()});e.addCommand("blur",CKEDITOR.tools.extend(g,l));e.addCommand("blurBack",CKEDITOR.tools.extend(f,l));e.addCommand("selectNextCell",a());e.addCommand("selectPreviousCell",a(!0))}})})();CKEDITOR.dom.element.prototype.focusNext=function(a,l){var g=
1038
1038
  void 0===l?this.getTabIndex():l,f,e,m,h,k,b;if(0>=g)for(k=this.getNextSourceNode(a,CKEDITOR.NODE_ELEMENT);k;){if(k.isVisible()&&0===k.getTabIndex()){m=k;break}k=k.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT)}else for(k=this.getDocument().getBody().getFirst();k=k.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!f)if(!e&&k.equals(this)){if(e=!0,a){if(!(k=k.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;f=1}}else e&&!this.contains(k)&&(f=1);if(k.isVisible()&&!(0>(b=k.getTabIndex()))){if(f&&b==g){m=
1039
1039
  k;break}b>g&&(!m||!h||b<h)?(m=k,h=b):m||0!==b||(m=k,h=b)}}m&&m.focus()};CKEDITOR.dom.element.prototype.focusPrevious=function(a,l){for(var g=void 0===l?this.getTabIndex():l,f,e,m,h=0,k,b=this.getDocument().getBody().getLast();b=b.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!f)if(!e&&b.equals(this)){if(e=!0,a){if(!(b=b.getPreviousSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;f=1}}else e&&!this.contains(b)&&(f=1);if(b.isVisible()&&!(0>(k=b.getTabIndex())))if(0>=g){if(f&&0===k){m=b;break}k>h&&
@@ -1046,18 +1046,18 @@ a,"selected_cell",!0),e.push(a))}var e=[],f={};if(!a)return e;for(var g=a.getRan
1046
1046
  return e}function l(b,c){for(var d=r(b)?b:a(b),e=d[0],f=e.getAscendant("table"),e=e.getDocument(),g=d[0].getParent(),h=g.$.rowIndex,d=d[d.length-1],k=d.getParent().$.rowIndex+d.$.rowSpan-1,d=new CKEDITOR.dom.element(f.$.rows[k]),h=c?h:k,g=c?g:d,d=CKEDITOR.tools.buildTableMap(f),f=d[h],h=c?d[h-1]:d[h+1],d=d[0].length,e=e.createElement("tr"),k=0;f[k]&&k<d;k++){var l;1<f[k].rowSpan&&h&&f[k]==h[k]?(l=f[k],l.rowSpan+=1):(l=(new CKEDITOR.dom.element(f[k])).clone(),l.removeAttribute("rowSpan"),l.appendBogus(),
1047
1047
  e.append(l),l=l.$);k+=l.colSpan-1}c?e.insertBefore(g):e.insertAfter(g);return e}function g(b){if(b instanceof CKEDITOR.dom.selection){var c=b.getRanges(),d=a(b),e=d[0].getAscendant("table"),f=CKEDITOR.tools.buildTableMap(e),h=d[0].getParent().$.rowIndex,d=d[d.length-1],k=d.getParent().$.rowIndex+d.$.rowSpan-1,d=[];b.reset();for(b=h;b<=k;b++){for(var l=f[b],m=new CKEDITOR.dom.element(e.$.rows[b]),n=0;n<l.length;n++){var q=new CKEDITOR.dom.element(l[n]),t=q.getParent().$.rowIndex;1==q.$.rowSpan?q.remove():
1048
1048
  (--q.$.rowSpan,t==b&&(t=f[b+1],t[n-1]?q.insertAfter(new CKEDITOR.dom.element(t[n-1])):(new CKEDITOR.dom.element(e.$.rows[b+1])).append(q,1)));n+=q.$.colSpan-1}d.push(m)}f=e.$.rows;c[0].moveToPosition(e,CKEDITOR.POSITION_BEFORE_START);h=new CKEDITOR.dom.element(f[k+1]||(0<h?f[h-1]:null)||e.$.parentNode);for(b=d.length;0<=b;b--)g(d[b]);return e.$.parentNode?h:(c[0].select(),null)}b instanceof CKEDITOR.dom.element&&(e=b.getAscendant("table"),1==e.$.rows.length?e.remove():b.remove());return null}function f(a){for(var b=
1049
- a.getParent().$.cells,c=0,d=0;d<b.length;d++){var e=b[d],c=c+e.colSpan;if(e==a.$)break}return c-1}function e(a,b){for(var c=b?Infinity:0,d=0;d<a.length;d++){var e=f(a[d]);if(b?e<c:e>c)c=e}return c}function m(b,c){for(var d=r(b)?b:a(b),f=d[0].getAscendant("table"),h=e(d,1),d=e(d),g=c?h:d,k=CKEDITOR.tools.buildTableMap(f),f=[],h=[],d=[],l=k.length,m=0;m<l;m++){var n=c?k[m][g-1]:k[m][g+1];f.push(k[m][g]);h.push(n)}for(m=0;m<l;m++)f[m]&&(1<f[m].colSpan&&h[m]==f[m]?(k=f[m],k.colSpan+=1):(g=new CKEDITOR.dom.element(f[m]),
1050
- k=g.clone(),k.removeAttribute("colSpan"),k.appendBogus(),k[c?"insertBefore":"insertAfter"].call(k,g),d.push(k),k=k.$),m+=k.rowSpan-1);return d}function h(b){function c(a){var b=a.getRanges(),d,e;if(1!==b.length)return a;b=b[0];if(b.collapsed||0!==b.endOffset)return a;d=b.endContainer;e=d.getName().toLowerCase();if("td"!==e&&"th"!==e)return a;for((e=d.getPrevious())||(e=d.getParent().getPrevious().getLast());e.type!==CKEDITOR.NODE_TEXT&&"br"!==e.getName().toLowerCase();)if(e=e.getLast(),!e)return a;
1051
- b.setEndAt(e,CKEDITOR.POSITION_BEFORE_END);return b.select()}CKEDITOR.env.webkit&&!b.isFake&&(b=c(b));var d=b.getRanges(),e=a(b),f=e[0],h=e[e.length-1],e=f.getAscendant("table"),g=CKEDITOR.tools.buildTableMap(e),k,l,m=[];b.reset();var n=0;for(b=g.length;n<b;n++)for(var q=0,t=g[n].length;q<t;q++)void 0===k&&g[n][q]==f.$&&(k=q),g[n][q]==h.$&&(l=q);for(n=k;n<=l;n++)for(q=0;q<g.length;q++)h=g[q],f=new CKEDITOR.dom.element(e.$.rows[q]),h=new CKEDITOR.dom.element(h[n]),h.$&&(1==h.$.colSpan?h.remove():--h.$.colSpan,
1052
- q+=h.$.rowSpan-1,f.$.cells.length||m.push(f));k=g[0].length-1>l?new CKEDITOR.dom.element(g[0][l+1]):k&&-1!==g[0][k-1].cellIndex?new CKEDITOR.dom.element(g[0][k-1]):new CKEDITOR.dom.element(e.$.parentNode);m.length==b&&(d[0].moveToPosition(e,CKEDITOR.POSITION_AFTER_END),d[0].select(),e.remove());return k}function k(a,b){var c=a.getStartElement().getAscendant({td:1,th:1},!0);if(c){var d=c.clone();d.appendBogus();b?d.insertBefore(c):d.insertAfter(c)}}function b(c){if(c instanceof CKEDITOR.dom.selection){var e=
1049
+ a.getParent().$.cells,c=0,d=0;d<b.length;d++){var e=b[d],c=c+e.colSpan;if(e==a.$)break}return c-1}function e(a,b){for(var c=b?Infinity:0,d=0;d<a.length;d++){var e=f(a[d]);if(b?e<c:e>c)c=e}return c}function m(b,c){for(var d=r(b)?b:a(b),f=d[0].getAscendant("table"),g=e(d,1),d=e(d),h=c?g:d,k=CKEDITOR.tools.buildTableMap(f),f=[],g=[],d=[],l=k.length,m=0;m<l;m++){var n=c?k[m][h-1]:k[m][h+1];f.push(k[m][h]);g.push(n)}for(m=0;m<l;m++)f[m]&&(1<f[m].colSpan&&g[m]==f[m]?(k=f[m],k.colSpan+=1):(h=new CKEDITOR.dom.element(f[m]),
1050
+ k=h.clone(),k.removeAttribute("colSpan"),k.appendBogus(),k[c?"insertBefore":"insertAfter"].call(k,h),d.push(k),k=k.$),m+=k.rowSpan-1);return d}function h(b){function c(a){var b=a.getRanges(),d,e;if(1!==b.length)return a;b=b[0];if(b.collapsed||0!==b.endOffset)return a;d=b.endContainer;e=d.getName().toLowerCase();if("td"!==e&&"th"!==e)return a;for((e=d.getPrevious())||(e=d.getParent().getPrevious().getLast());e.type!==CKEDITOR.NODE_TEXT&&"br"!==e.getName().toLowerCase();)if(e=e.getLast(),!e)return a;
1051
+ b.setEndAt(e,CKEDITOR.POSITION_BEFORE_END);return b.select()}CKEDITOR.env.webkit&&!b.isFake&&(b=c(b));var d=b.getRanges(),e=a(b),f=e[0],g=e[e.length-1],e=f.getAscendant("table"),h=CKEDITOR.tools.buildTableMap(e),k,l,m=[];b.reset();var n=0;for(b=h.length;n<b;n++)for(var q=0,t=h[n].length;q<t;q++)void 0===k&&h[n][q]==f.$&&(k=q),h[n][q]==g.$&&(l=q);for(n=k;n<=l;n++)for(q=0;q<h.length;q++)g=h[q],f=new CKEDITOR.dom.element(e.$.rows[q]),g=new CKEDITOR.dom.element(g[n]),g.$&&(1==g.$.colSpan?g.remove():--g.$.colSpan,
1052
+ q+=g.$.rowSpan-1,f.$.cells.length||m.push(f));k=h[0].length-1>l?new CKEDITOR.dom.element(h[0][l+1]):k&&-1!==h[0][k-1].cellIndex?new CKEDITOR.dom.element(h[0][k-1]):new CKEDITOR.dom.element(e.$.parentNode);m.length==b&&(d[0].moveToPosition(e,CKEDITOR.POSITION_AFTER_END),d[0].select(),e.remove());return k}function k(a,b){var c=a.getStartElement().getAscendant({td:1,th:1},!0);if(c){var d=c.clone();d.appendBogus();b?d.insertBefore(c):d.insertAfter(c)}}function b(c){if(c instanceof CKEDITOR.dom.selection){var e=
1053
1053
  c.getRanges(),f=a(c),g=f[0]&&f[0].getAscendant("table"),h;a:{var k=0;h=f.length-1;for(var l={},m,n;m=f[k++];)CKEDITOR.dom.element.setMarker(l,m,"delete_cell",!0);for(k=0;m=f[k++];)if((n=m.getPrevious())&&!n.getCustomData("delete_cell")||(n=m.getNext())&&!n.getCustomData("delete_cell")){CKEDITOR.dom.element.clearAllMarkers(l);h=n;break a}CKEDITOR.dom.element.clearAllMarkers(l);k=f[0].getParent();(k=k.getPrevious())?h=k.getLast():(k=f[h].getParent(),h=(k=k.getNext())?k.getChild(0):null)}c.reset();for(c=
1054
1054
  f.length-1;0<=c;c--)b(f[c]);h?d(h,!0):g&&(e[0].moveToPosition(g,CKEDITOR.POSITION_BEFORE_START),e[0].select(),g.remove())}else c instanceof CKEDITOR.dom.element&&(e=c.getParent(),1==e.getChildCount()?e.remove():c.remove())}function d(a,b){var c=a.getDocument(),d=CKEDITOR.document;CKEDITOR.env.ie&&10==CKEDITOR.env.version&&(d.focus(),c.focus());c=new CKEDITOR.dom.range(c);c["moveToElementEdit"+(b?"End":"Start")](a)||(c.selectNodeContents(a),c.collapse(b?!1:!0));c.select(!0)}function c(a,b,c){a=a[b];
1055
- if("undefined"==typeof c)return a;for(b=0;a&&b<a.length;b++){if(c.is&&a[b]==c.$)return b;if(b==c)return new CKEDITOR.dom.element(a[b])}return c.is?-1:null}function n(b,d,e){var f=a(b),h;if((d?1!=f.length:2>f.length)||(h=b.getCommonAncestor())&&h.type==CKEDITOR.NODE_ELEMENT&&h.is("table"))return!1;b=f[0];h=b.getAscendant("table");var g=CKEDITOR.tools.buildTableMap(h),k=g.length,l=g[0].length,m=b.getParent().$.rowIndex,n=c(g,m,b),q;if(d){var t;try{var r=parseInt(b.getAttribute("rowspan"),10)||1;q=parseInt(b.getAttribute("colspan"),
1056
- 10)||1;t=g["up"==d?m-r:"down"==d?m+r:m]["left"==d?n-q:"right"==d?n+q:n]}catch(H){return!1}if(!t||b.$==t)return!1;f["up"==d||"left"==d?"unshift":"push"](new CKEDITOR.dom.element(t))}d=b.getDocument();var E=m,r=t=0,M=!e&&new CKEDITOR.dom.documentFragment(d),I=0;for(d=0;d<f.length;d++){q=f[d];var K=q.getParent(),F=q.getFirst(),L=q.$.colSpan,O=q.$.rowSpan,K=K.$.rowIndex,N=c(g,K,q),I=I+L*O,r=Math.max(r,N-n+L);t=Math.max(t,K-m+O);e||(L=q,(O=L.getBogus())&&O.remove(),L.trim(),q.getChildren().count()&&(K==
1057
- E||!F||F.isBlockBoundary&&F.isBlockBoundary({br:1})||(E=M.getLast(CKEDITOR.dom.walker.whitespaces(!0)),!E||E.is&&E.is("br")||M.append("br")),q.moveChildren(M)),d?q.remove():q.setHtml(""));E=K}if(e)return t*r==I;M.moveChildren(b);b.appendBogus();r>=l?b.removeAttribute("rowSpan"):b.$.rowSpan=t;t>=k?b.removeAttribute("colSpan"):b.$.colSpan=r;e=new CKEDITOR.dom.nodeList(h.$.rows);f=e.count();for(d=f-1;0<=d;d--)h=e.getItem(d),h.$.cells.length||(h.remove(),f++);return b}function q(b,d){var e=a(b);if(1<
1058
- e.length)return!1;if(d)return!0;var e=e[0],f=e.getParent(),h=f.getAscendant("table"),g=CKEDITOR.tools.buildTableMap(h),k=f.$.rowIndex,l=c(g,k,e),m=e.$.rowSpan,n;if(1<m){n=Math.ceil(m/2);for(var m=Math.floor(m/2),f=k+n,h=new CKEDITOR.dom.element(h.$.rows[f]),g=c(g,f),q,f=e.clone(),k=0;k<g.length;k++)if(q=g[k],q.parentNode==h.$&&k>l){f.insertBefore(new CKEDITOR.dom.element(q));break}else q=null;q||h.append(f)}else for(m=n=1,h=f.clone(),h.insertAfter(f),h.append(f=e.clone()),q=c(g,k),l=0;l<q.length;l++)q[l].rowSpan++;
1059
- f.appendBogus();e.$.rowSpan=n;f.$.rowSpan=m;1==n&&e.removeAttribute("rowSpan");1==m&&f.removeAttribute("rowSpan");return f}function t(b,d){var e=a(b);if(1<e.length)return!1;if(d)return!0;var e=e[0],f=e.getParent(),h=f.getAscendant("table"),h=CKEDITOR.tools.buildTableMap(h),g=c(h,f.$.rowIndex,e),k=e.$.colSpan;if(1<k)f=Math.ceil(k/2),k=Math.floor(k/2);else{for(var k=f=1,l=[],m=0;m<h.length;m++){var n=h[m];l.push(n[g]);1<n[g].rowSpan&&(m+=n[g].rowSpan-1)}for(h=0;h<l.length;h++)l[h].colSpan++}h=e.clone();
1060
- h.insertAfter(e);h.appendBogus();e.$.colSpan=f;h.$.colSpan=k;1==f&&e.removeAttribute("colSpan");1==k&&h.removeAttribute("colSpan");return h}var r=CKEDITOR.tools.isArray;CKEDITOR.plugins.tabletools={requires:"table,dialog,contextmenu",init:function(c){function e(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,b){this.setState(b.contains({td:1,th:1},1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}function f(a,b){var d=c.addCommand(a,b);c.addFeature(d)}var r=c.lang.table,
1055
+ if("undefined"==typeof c)return a;for(b=0;a&&b<a.length;b++){if(c.is&&a[b]==c.$)return b;if(b==c)return new CKEDITOR.dom.element(a[b])}return c.is?-1:null}function n(b,d,e){var f=a(b),g;if((d?1!=f.length:2>f.length)||(g=b.getCommonAncestor())&&g.type==CKEDITOR.NODE_ELEMENT&&g.is("table"))return!1;b=f[0];g=b.getAscendant("table");var h=CKEDITOR.tools.buildTableMap(g),k=h.length,l=h[0].length,m=b.getParent().$.rowIndex,n=c(h,m,b),q;if(d){var t;try{var r=parseInt(b.getAttribute("rowspan"),10)||1;q=parseInt(b.getAttribute("colspan"),
1056
+ 10)||1;t=h["up"==d?m-r:"down"==d?m+r:m]["left"==d?n-q:"right"==d?n+q:n]}catch(H){return!1}if(!t||b.$==t)return!1;f["up"==d||"left"==d?"unshift":"push"](new CKEDITOR.dom.element(t))}d=b.getDocument();var E=m,r=t=0,M=!e&&new CKEDITOR.dom.documentFragment(d),I=0;for(d=0;d<f.length;d++){q=f[d];var K=q.getParent(),F=q.getFirst(),L=q.$.colSpan,O=q.$.rowSpan,K=K.$.rowIndex,N=c(h,K,q),I=I+L*O,r=Math.max(r,N-n+L);t=Math.max(t,K-m+O);e||(L=q,(O=L.getBogus())&&O.remove(),L.trim(),q.getChildren().count()&&(K==
1057
+ E||!F||F.isBlockBoundary&&F.isBlockBoundary({br:1})||(E=M.getLast(CKEDITOR.dom.walker.whitespaces(!0)),!E||E.is&&E.is("br")||M.append("br")),q.moveChildren(M)),d?q.remove():q.setHtml(""));E=K}if(e)return t*r==I;M.moveChildren(b);b.appendBogus();r>=l?b.removeAttribute("rowSpan"):b.$.rowSpan=t;t>=k?b.removeAttribute("colSpan"):b.$.colSpan=r;e=new CKEDITOR.dom.nodeList(g.$.rows);f=e.count();for(d=f-1;0<=d;d--)g=e.getItem(d),g.$.cells.length||(g.remove(),f++);return b}function q(b,d){var e=a(b);if(1<
1058
+ e.length)return!1;if(d)return!0;var e=e[0],f=e.getParent(),g=f.getAscendant("table"),h=CKEDITOR.tools.buildTableMap(g),k=f.$.rowIndex,l=c(h,k,e),m=e.$.rowSpan,n;if(1<m){n=Math.ceil(m/2);for(var m=Math.floor(m/2),f=k+n,g=new CKEDITOR.dom.element(g.$.rows[f]),h=c(h,f),q,f=e.clone(),k=0;k<h.length;k++)if(q=h[k],q.parentNode==g.$&&k>l){f.insertBefore(new CKEDITOR.dom.element(q));break}else q=null;q||g.append(f)}else for(m=n=1,g=f.clone(),g.insertAfter(f),g.append(f=e.clone()),q=c(h,k),l=0;l<q.length;l++)q[l].rowSpan++;
1059
+ f.appendBogus();e.$.rowSpan=n;f.$.rowSpan=m;1==n&&e.removeAttribute("rowSpan");1==m&&f.removeAttribute("rowSpan");return f}function t(b,d){var e=a(b);if(1<e.length)return!1;if(d)return!0;var e=e[0],f=e.getParent(),g=f.getAscendant("table"),g=CKEDITOR.tools.buildTableMap(g),h=c(g,f.$.rowIndex,e),k=e.$.colSpan;if(1<k)f=Math.ceil(k/2),k=Math.floor(k/2);else{for(var k=f=1,l=[],m=0;m<g.length;m++){var n=g[m];l.push(n[h]);1<n[h].rowSpan&&(m+=n[h].rowSpan-1)}for(g=0;g<l.length;g++)l[g].colSpan++}g=e.clone();
1060
+ g.insertAfter(e);g.appendBogus();e.$.colSpan=f;g.$.colSpan=k;1==f&&e.removeAttribute("colSpan");1==k&&g.removeAttribute("colSpan");return g}var r=CKEDITOR.tools.isArray;CKEDITOR.plugins.tabletools={requires:"table,dialog,contextmenu",init:function(c){function e(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,b){this.setState(b.contains({td:1,th:1},1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}function f(a,b){var d=c.addCommand(a,b);c.addFeature(d)}var r=c.lang.table,
1061
1061
  A=CKEDITOR.tools.style.parse,z="td{width} td{height} td{border-color} td{background-color} td{white-space} td{vertical-align} td{text-align} td[colspan] td[rowspan] th".split(" ");f("cellProperties",new CKEDITOR.dialogCommand("cellProperties",e({allowedContent:"td th{width,height,border-color,background-color,white-space,vertical-align,text-align}[colspan,rowspan]",requiredContent:z,contentTransformations:[[{element:"td",left:function(a){return a.styles.background&&A.background(a.styles.background).color},
1062
1062
  right:function(a){a.styles["background-color"]=A.background(a.styles.background).color}},{element:"td",check:"td{vertical-align}",left:function(a){return a.attributes&&a.attributes.valign},right:function(a){a.styles["vertical-align"]=a.attributes.valign;delete a.attributes.valign}}],[{element:"tr",check:"td{height}",left:function(a){return a.styles&&a.styles.height},right:function(a){CKEDITOR.tools.array.forEach(a.children,function(b){b.name in{td:1,th:1}&&(b.attributes["cke-row-height"]=a.styles.height)});
1063
1063
  delete a.styles.height}}],[{element:"td",check:"td{height}",left:function(a){return(a=a.attributes)&&a["cke-row-height"]},right:function(a){a.styles.height=a.attributes["cke-row-height"];delete a.attributes["cke-row-height"]}}]]})));CKEDITOR.dialog.add("cellProperties",this.path+"dialogs/tableCell.js");f("rowDelete",e({requiredContent:"table",exec:function(a){a=a.getSelection();(a=g(a))&&d(a)}}));f("rowInsertBefore",e({requiredContent:"table",exec:function(b){b=b.getSelection();b=a(b);l(b,!0)}}));
@@ -1071,91 +1071,93 @@ order:21},tablerow:{label:r.row.menu,group:"tablerow",order:1,getItems:function(
1071
1071
  tablecolumn:{label:r.column.menu,group:"tablecolumn",order:1,getItems:function(){return{tablecolumn_insertBefore:CKEDITOR.TRISTATE_OFF,tablecolumn_insertAfter:CKEDITOR.TRISTATE_OFF,tablecolumn_delete:CKEDITOR.TRISTATE_OFF}}},tablecolumn_insertBefore:{label:r.column.insertBefore,group:"tablecolumn",command:"columnInsertBefore",order:5},tablecolumn_insertAfter:{label:r.column.insertAfter,group:"tablecolumn",command:"columnInsertAfter",order:10},tablecolumn_delete:{label:r.column.deleteColumn,group:"tablecolumn",
1072
1072
  command:"columnDelete",order:15}});c.contextMenu&&c.contextMenu.addListener(function(a,b,c){return(a=c.contains({td:1,th:1},1))&&!a.isReadOnly()?{tablecell:CKEDITOR.TRISTATE_OFF,tablerow:CKEDITOR.TRISTATE_OFF,tablecolumn:CKEDITOR.TRISTATE_OFF}:null})},getCellColIndex:f,insertRow:l,insertColumn:m,getSelectedCells:a};CKEDITOR.plugins.add("tabletools",CKEDITOR.plugins.tabletools)})();CKEDITOR.tools.buildTableMap=function(a,l,g,f,e){a=a.$.rows;g=g||0;f="number"===typeof f?f:a.length-1;e="number"===typeof e?
1073
1073
  e:-1;var m=-1,h=[];for(l=l||0;l<=f;l++){m++;!h[m]&&(h[m]=[]);for(var k=-1,b=g;b<=(-1===e?a[l].cells.length-1:e);b++){var d=a[l].cells[b];if(!d)break;for(k++;h[m][k];)k++;for(var c=isNaN(d.colSpan)?1:d.colSpan,d=isNaN(d.rowSpan)?1:d.rowSpan,n=0;n<d&&!(l+n>f);n++){h[m+n]||(h[m+n]=[]);for(var q=0;q<c;q++)h[m+n][k+q]=a[l].cells[b]}k+=c-1;if(-1!==e&&k>=e)break}}return h};(function(){function a(a){return CKEDITOR.plugins.widget&&CKEDITOR.plugins.widget.isDomWidget(a)}function l(a,c){var d=a.getAscendant("table"),
1074
- e=c.getAscendant("table"),f=CKEDITOR.tools.buildTableMap(d),h=b(a),g=b(c),k=[],l={},m,n;d.contains(e)&&(c=c.getAscendant({td:1,th:1}),g=b(c));h>g&&(d=h,h=g,g=d,d=a,a=c,c=d);for(d=0;d<f[h].length;d++)if(a.$===f[h][d]){m=d;break}for(d=0;d<f[g].length;d++)if(c.$===f[g][d]){n=d;break}m>n&&(d=m,m=n,n=d);for(d=h;d<=g;d++)for(h=m;h<=n;h++)e=new CKEDITOR.dom.element(f[d][h]),e.$&&!e.getCustomData("selected_cell")&&(k.push(e),CKEDITOR.dom.element.setMarker(l,e,"selected_cell",!0));CKEDITOR.dom.element.clearAllMarkers(l);
1074
+ e=c.getAscendant("table"),f=CKEDITOR.tools.buildTableMap(d),g=b(a),h=b(c),k=[],l={},m,n;d.contains(e)&&(c=c.getAscendant({td:1,th:1}),h=b(c));g>h&&(d=g,g=h,h=d,d=a,a=c,c=d);for(d=0;d<f[g].length;d++)if(a.$===f[g][d]){m=d;break}for(d=0;d<f[h].length;d++)if(c.$===f[h][d]){n=d;break}m>n&&(d=m,m=n,n=d);for(d=g;d<=h;d++)for(g=m;g<=n;g++)e=new CKEDITOR.dom.element(f[d][g]),e.$&&!e.getCustomData("selected_cell")&&(k.push(e),CKEDITOR.dom.element.setMarker(l,e,"selected_cell",!0));CKEDITOR.dom.element.clearAllMarkers(l);
1075
1075
  return k}function g(a){return(a=a.editable().findOne(".cke_table-faked-selection"))&&a.getAscendant("table")}function f(a,b){var c=a.editable().find(".cke_table-faked-selection"),d=a.editable().findOne("[data-cke-table-faked-selection-table]"),e;a.fire("lockSnapshot");a.editable().removeClass("cke_table-faked-selection-editor");for(e=0;e<c.count();e++)c.getItem(e).removeClass("cke_table-faked-selection");d&&d.data("cke-table-faked-selection-table",!1);a.fire("unlockSnapshot");b&&(p={active:!1},a.getSelection().isInTable()&&
1076
- a.getSelection().reset())}function e(a,b){var c=[],d,e;for(e=0;e<b.length;e++)d=a.createRange(),d.setStartBefore(b[e]),d.setEndAfter(b[e]),c.push(d);a.getSelection().selectRanges(c)}function m(a){var b=a.editable().find(".cke_table-faked-selection");1>b.count()||(b=l(b.getItem(0),b.getItem(b.count()-1)),e(a,b))}function h(b,c,d){var h=y(b.getSelection(!0));c=c.is("table")?null:c;var g;(g=p.active&&!p.first)&&!(g=c)&&(g=b.getSelection().getRanges(),g=1<h.length||g[0]&&!g[0].collapsed?!0:!1);if(g)p.first=
1077
- c||h[0],p.dirty=c?!1:1!==h.length;else if(p.active&&c&&p.first.getAscendant("table").equals(c.getAscendant("table"))){h=l(p.first,c);if(!p.dirty&&1===h.length&&!a(d.data.getTarget()))return f(b,"mouseup"===d.name);p.dirty=!0;p.last=c;e(b,h)}}function k(a){var b=(a=a.editor||a.sender.editor)&&a.getSelection(),c=b&&b.getRanges()||[],d=c&&c[0].getEnclosedNode(),d=d&&d.type==CKEDITOR.NODE_ELEMENT&&d.is("img"),e;if(b&&(f(a),b.isInTable()&&b.isFake))if(d)a.getSelection().reset();else if(!c[0]._getTableElement({table:1}).hasAttribute("data-cke-tableselection-ignored")){1===
1076
+ a.getSelection().reset())}function e(a,b){var c=[],d,e;for(e=0;e<b.length;e++)d=a.createRange(),d.setStartBefore(b[e]),d.setEndAfter(b[e]),c.push(d);a.getSelection().selectRanges(c)}function m(a){var b=a.editable().find(".cke_table-faked-selection");1>b.count()||(b=l(b.getItem(0),b.getItem(b.count()-1)),e(a,b))}function h(b,c,d){var g=y(b.getSelection(!0));c=c.is("table")?null:c;var h;(h=p.active&&!p.first)&&!(h=c)&&(h=b.getSelection().getRanges(),h=1<g.length||h[0]&&!h[0].collapsed?!0:!1);if(h)p.first=
1077
+ c||g[0],p.dirty=c?!1:1!==g.length;else if(p.active&&c&&p.first.getAscendant("table").equals(c.getAscendant("table"))){g=l(p.first,c);if(!p.dirty&&1===g.length&&!a(d.data.getTarget()))return f(b,"mouseup"===d.name);p.dirty=!0;p.last=c;e(b,g)}}function k(a){var b=(a=a.editor||a.sender.editor)&&a.getSelection(),c=b&&b.getRanges()||[],d=c&&c[0].getEnclosedNode(),d=d&&d.type==CKEDITOR.NODE_ELEMENT&&d.is("img"),e;if(b&&(f(a),b.isInTable()&&b.isFake))if(d)a.getSelection().reset();else if(!c[0]._getTableElement({table:1}).hasAttribute("data-cke-tableselection-ignored")){1===
1078
1078
  c.length&&c[0]._getTableElement()&&c[0]._getTableElement().is("table")&&(e=c[0]._getTableElement());e=y(b,e);a.fire("lockSnapshot");for(b=0;b<e.length;b++)e[b].addClass("cke_table-faked-selection");0<e.length&&(a.editable().addClass("cke_table-faked-selection-editor"),e[0].getAscendant("table").data("cke-table-faked-selection-table",""));a.fire("unlockSnapshot")}}function b(a){return a.getAscendant("tr",!0).$.rowIndex}function d(b){function c(a,b){return a&&b?a.equals(b)||a.contains(b)||b.contains(a)||
1079
1079
  a.getCommonAncestor(b).is(u):!1}function e(a){return!a.getAscendant("table",!0)&&a.getDocument().equals(l.document)}function k(a,b,c,d){if("mousedown"===a.name&&(CKEDITOR.tools.getMouseButton(a)===CKEDITOR.MOUSE_BUTTON_LEFT||!d))return!0;if(b=a.name===(CKEDITOR.env.gecko?"mousedown":"mouseup")&&!e(a.data.getTarget()))a=a.data.getTarget().getAscendant({td:1,th:1},!0),b=!(a&&a.hasClass("cke_table-faked-selection"));return b}if(b.data.getTarget().getName&&("mouseup"===b.name||!a(b.data.getTarget()))){var l=
1080
1080
  b.editor||b.listenerData.editor,n=l.getSelection(1),q=g(l),t=b.data.getTarget(),r=t&&t.getAscendant({td:1,th:1},!0),t=t&&t.getAscendant("table",!0),u={table:1,thead:1,tbody:1,tfoot:1,tr:1,td:1,th:1};t&&t.hasAttribute("data-cke-tableselection-ignored")||(k(b,n,q,t)&&f(l,!0),!p.active&&"mousedown"===b.name&&CKEDITOR.tools.getMouseButton(b)===CKEDITOR.MOUSE_BUTTON_LEFT&&t&&(p={active:!0},CKEDITOR.document.on("mouseup",d,null,{editor:l})),(r||t)&&h(l,r||t,b),"mouseup"===b.name&&(CKEDITOR.tools.getMouseButton(b)===
1081
- CKEDITOR.MOUSE_BUTTON_LEFT&&(e(b.data.getTarget())||c(q,t))&&m(l),p={active:!1},CKEDITOR.document.removeListener("mouseup",d)))}}function c(a){var b=a.data.getTarget().getAscendant("table",!0);b&&b.hasAttribute("data-cke-tableselection-ignored")||(b=a.data.getTarget().getAscendant({td:1,th:1},!0))&&!b.hasClass("cke_table-faked-selection")&&(a.cancel(),a.data.preventDefault())}function n(a,b){function c(a){a.cancel()}var d=a.getSelection(),e=d.createBookmarks(),f=a.document,h=a.createRange(),g=f.getDocumentElement().$,
1081
+ CKEDITOR.MOUSE_BUTTON_LEFT&&(e(b.data.getTarget())||c(q,t))&&m(l),p={active:!1},CKEDITOR.document.removeListener("mouseup",d)))}}function c(a){var b=a.data.getTarget().getAscendant("table",!0);b&&b.hasAttribute("data-cke-tableselection-ignored")||(b=a.data.getTarget().getAscendant({td:1,th:1},!0))&&!b.hasClass("cke_table-faked-selection")&&(a.cancel(),a.data.preventDefault())}function n(a,b){function c(a){a.cancel()}var d=a.getSelection(),e=d.createBookmarks(),f=a.document,g=a.createRange(),h=f.getDocumentElement().$,
1082
1082
  k=CKEDITOR.env.ie&&9>CKEDITOR.env.version,l=a.blockless||CKEDITOR.env.ie?"span":"div",m,n,p,q;f.getById("cke_table_copybin")||(m=f.createElement(l),n=f.createElement(l),n.setAttributes({id:"cke_table_copybin","data-cke-temp":"1"}),m.setStyles({position:"absolute",width:"1px",height:"1px",overflow:"hidden"}),m.setStyle("ltr"==a.config.contentsLangDirection?"left":"right","-5000px"),m.setHtml(a.getSelectedHtml(!0)),a.fire("lockSnapshot"),n.append(m),a.editable().append(n),q=a.on("selectionChange",c,
1083
- null,null,0),k&&(p=g.scrollTop),h.selectNodeContents(m),h.select(),k&&(g.scrollTop=p),setTimeout(function(){n.remove();d.selectBookmarks(e);q.removeListener();a.fire("unlockSnapshot");b&&(a.extractSelectedHtml(),a.fire("saveSnapshot"))},100))}function q(a){var b=a.editor||a.sender.editor,c=b.getSelection();c.isInTable()&&(c.getRanges()[0]._getTableElement({table:1}).hasAttribute("data-cke-tableselection-ignored")||n(b,"cut"===a.name))}function t(a){this._reset();a&&this.setSelectedCells(a)}function r(a,
1083
+ null,null,0),k&&(p=h.scrollTop),g.selectNodeContents(m),g.select(),k&&(h.scrollTop=p),setTimeout(function(){n.remove();d.selectBookmarks(e);q.removeListener();a.fire("unlockSnapshot");b&&(a.extractSelectedHtml(),a.fire("saveSnapshot"))},100))}function q(a){var b=a.editor||a.sender.editor,c=b.getSelection();c.isInTable()&&(c.getRanges()[0]._getTableElement({table:1}).hasAttribute("data-cke-tableselection-ignored")||n(b,"cut"===a.name))}function t(a){this._reset();a&&this.setSelectedCells(a)}function r(a,
1084
1084
  b,c){a.on("beforeCommandExec",function(c){-1!==CKEDITOR.tools.array.indexOf(b,c.data.name)&&(c.data.selectedCells=y(a.getSelection()))});a.on("afterCommandExec",function(d){-1!==CKEDITOR.tools.array.indexOf(b,d.data.name)&&c(a,d.data)})}var p={active:!1},u,y,v,A,z;t.prototype={};t.prototype._reset=function(){this.cells={first:null,last:null,all:[]};this.rows={first:null,last:null}};t.prototype.setSelectedCells=function(a){this._reset();a=a.slice(0);this._arraySortByDOMOrder(a);this.cells.all=a;this.cells.first=
1085
1085
  a[0];this.cells.last=a[a.length-1];this.rows.first=a[0].getAscendant("tr");this.rows.last=this.cells.last.getAscendant("tr")};t.prototype.getTableMap=function(){var a=v(this.cells.first),c;a:{c=this.cells.last;var d=c.getAscendant("table"),e=b(c),d=CKEDITOR.tools.buildTableMap(d),f;for(f=0;f<d[e].length;f++)if((new CKEDITOR.dom.element(d[e][f])).equals(c)){c=f;break a}c=void 0}return CKEDITOR.tools.buildTableMap(this._getTable(),b(this.rows.first),a,b(this.rows.last),c)};t.prototype._getTable=function(){return this.rows.first.getAscendant("table")};
1086
- t.prototype.insertRow=function(a,b,c){if("undefined"===typeof a)a=1;else if(0>=a)return;for(var d=this.cells.first.$.cellIndex,e=this.cells.last.$.cellIndex,f=c?[]:this.cells.all,h,g=0;g<a;g++)h=A(c?this.cells.all:f,b),h=CKEDITOR.tools.array.filter(h.find("td, th").toArray(),function(a){return c?!0:a.$.cellIndex>=d&&a.$.cellIndex<=e}),f=b?h.concat(f):f.concat(h);this.setSelectedCells(f)};t.prototype.insertColumn=function(a){function c(a){a=b(a);return a>=f&&a<=h}if("undefined"===typeof a)a=1;else if(0>=
1087
- a)return;for(var d=this.cells,e=d.all,f=b(d.first),h=b(d.last),d=0;d<a;d++)e=e.concat(CKEDITOR.tools.array.filter(z(e),c));this.setSelectedCells(e)};t.prototype.emptyCells=function(a){a=a||this.cells.all;for(var b=0;b<a.length;b++)a[b].setHtml("")};t.prototype._arraySortByDOMOrder=function(a){a.sort(function(a,b){return a.getPosition(b)&CKEDITOR.POSITION_PRECEDING?-1:1})};var w={onPaste:function(a){function b(a){var c=d.createRange();c.selectNodeContents(a);c.select()}function c(a){return Math.max.apply(null,
1088
- CKEDITOR.tools.array.map(a,function(a){return a.length},0))}var d=a.editor,f=d.getSelection(),h=y(f),g=f.isInTable(!0)&&this.isBoundarySelection(f),k=this.findTableInPastedContent(d,a.data.dataValue),m,n;(function(a,b,c,d){a=a.getRanges();var e=a.length&&a[0]._getTableElement({table:1});if(!b.length||e&&e.hasAttribute("data-cke-tableselection-ignored")||d&&!c)return!1;if(b=!d)(b=a[0])?(b=b.clone(),b.enlarge(CKEDITOR.ENLARGE_ELEMENT),b=(b=b.getEnclosedNode())&&b.is&&b.is(CKEDITOR.dtd.$tableContent)):
1089
- b=void 0,b=!b;return b?!1:!0})(f,h,k,g)&&(h=h[0].getAscendant("table"),m=new t(y(f,h)),d.once("afterPaste",function(){var a;if(n){a=new CKEDITOR.dom.element(n[0][0]);var b=n[n.length-1];a=l(a,new CKEDITOR.dom.element(b[b.length-1]))}else a=m.cells.all;e(d,a)}),k?(a.stop(),g?(m.insertRow(1,1===g,!0),f.selectElement(m.rows.first)):(m.emptyCells(),e(d,m.cells.all)),a=m.getTableMap(),n=CKEDITOR.tools.buildTableMap(k),m.insertRow(n.length-a.length),m.insertColumn(c(n)-c(a)),a=m.getTableMap(),this.pasteTable(m,
1086
+ t.prototype.insertRow=function(a,b,c){if("undefined"===typeof a)a=1;else if(0>=a)return;for(var d=this.cells.first.$.cellIndex,e=this.cells.last.$.cellIndex,f=c?[]:this.cells.all,g,h=0;h<a;h++)g=A(c?this.cells.all:f,b),g=CKEDITOR.tools.array.filter(g.find("td, th").toArray(),function(a){return c?!0:a.$.cellIndex>=d&&a.$.cellIndex<=e}),f=b?g.concat(f):f.concat(g);this.setSelectedCells(f)};t.prototype.insertColumn=function(a){function c(a){a=b(a);return a>=f&&a<=g}if("undefined"===typeof a)a=1;else if(0>=
1087
+ a)return;for(var d=this.cells,e=d.all,f=b(d.first),g=b(d.last),d=0;d<a;d++)e=e.concat(CKEDITOR.tools.array.filter(z(e),c));this.setSelectedCells(e)};t.prototype.emptyCells=function(a){a=a||this.cells.all;for(var b=0;b<a.length;b++)a[b].setHtml("")};t.prototype._arraySortByDOMOrder=function(a){a.sort(function(a,b){return a.getPosition(b)&CKEDITOR.POSITION_PRECEDING?-1:1})};var w={onPaste:function(a){function b(a){var c=d.createRange();c.selectNodeContents(a);c.select()}function c(a){return Math.max.apply(null,
1088
+ CKEDITOR.tools.array.map(a,function(a){return a.length},0))}var d=a.editor,f=d.getSelection(),g=y(f),h=f.isInTable(!0)&&this.isBoundarySelection(f),k=this.findTableInPastedContent(d,a.data.dataValue),m,n;(function(a,b,c,d){a=a.getRanges();var e=a.length&&a[0]._getTableElement({table:1});if(!b.length||e&&e.hasAttribute("data-cke-tableselection-ignored")||d&&!c)return!1;if(b=!d)(b=a[0])?(b=b.clone(),b.enlarge(CKEDITOR.ENLARGE_ELEMENT),b=(b=b.getEnclosedNode())&&b.is&&b.is(CKEDITOR.dtd.$tableContent)):
1089
+ b=void 0,b=!b;return b?!1:!0})(f,g,k,h)&&(g=g[0].getAscendant("table"),m=new t(y(f,g)),d.once("afterPaste",function(){var a;if(n){a=new CKEDITOR.dom.element(n[0][0]);var b=n[n.length-1];a=l(a,new CKEDITOR.dom.element(b[b.length-1]))}else a=m.cells.all;e(d,a)}),k?(a.stop(),h?(m.insertRow(1,1===h,!0),f.selectElement(m.rows.first)):(m.emptyCells(),e(d,m.cells.all)),a=m.getTableMap(),n=CKEDITOR.tools.buildTableMap(k),m.insertRow(n.length-a.length),m.insertColumn(c(n)-c(a)),a=m.getTableMap(),this.pasteTable(m,
1090
1090
  a,n),d.fire("saveSnapshot"),setTimeout(function(){d.fire("afterPaste")},0)):(b(m.cells.first),d.once("afterPaste",function(){d.fire("lockSnapshot");m.emptyCells(m.cells.all.slice(1));e(d,m.cells.all);d.fire("unlockSnapshot")})))},isBoundarySelection:function(a){a=a.getRanges()[0];var b=a.endContainer.getAscendant("tr",!0);if(b&&a.collapsed){if(a.checkBoundaryOfElement(b,CKEDITOR.START))return 1;if(a.checkBoundaryOfElement(b,CKEDITOR.END))return 2}return 0},findTableInPastedContent:function(a,b){var c=
1091
- a.dataProcessor,d=new CKEDITOR.dom.element("body");c||(c=new CKEDITOR.htmlDataProcessor(a));d.setHtml(c.toHtml(b),{fixForBody:!1});return 1<d.getChildCount()?null:d.findOne("table")},pasteTable:function(a,b,c){var d,e=v(a.cells.first),f=a._getTable(),h={},g,k,l,m;for(l=0;l<c.length;l++)for(g=new CKEDITOR.dom.element(f.$.rows[a.rows.first.$.rowIndex+l]),m=0;m<c[l].length;m++)if(k=new CKEDITOR.dom.element(c[l][m]),d=b[l]&&b[l][m]?new CKEDITOR.dom.element(b[l][m]):null,k&&!k.getCustomData("processed")){if(d&&
1092
- d.getParent())k.replace(d);else if(0===m||c[l][m-1])(d=0!==m?new CKEDITOR.dom.element(c[l][m-1]):null)&&g.equals(d.getParent())?k.insertAfter(d):0<e?g.$.cells[e]?k.insertAfter(new CKEDITOR.dom.element(g.$.cells[e])):g.append(k):g.append(k,!0);CKEDITOR.dom.element.setMarker(h,k,"processed",!0)}else k.getCustomData("processed")&&d&&d.remove();CKEDITOR.dom.element.clearAllMarkers(h)}};CKEDITOR.plugins.tableselection={getCellsBetween:l,keyboardIntegration:function(a){function b(a){var c=a.getEnclosedNode();
1093
- c&&"function"===typeof c.is&&c.is({td:1,th:1})?c.setText(""):a.deleteContents();CKEDITOR.tools.array.forEach(a._find("td"),function(a){a.appendBogus()})}var c=a.editable();c.attachListener(c,"keydown",function(a){function c(b,d){if(!d.length)return null;var f=a.createRange(),h=CKEDITOR.dom.range.mergeRanges(d);CKEDITOR.tools.array.forEach(h,function(a){a.enlarge(CKEDITOR.ENLARGE_ELEMENT)});var g=h[0].getBoundaryNodes(),k=g.startNode,g=g.endNode;if(k&&k.is&&k.is(e)){for(var l=k.getAscendant("table",
1094
- !0),m=k.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT,l),n=!1,p=function(a){return!k.contains(a)&&a.is&&a.is("td","th")};m&&!p(m);)m=m.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT,l);!m&&g&&g.is&&!g.is("table")&&g.getNext()&&(m=g.getNext().findOne("td, th"),n=!0);if(m)f["moveToElementEdit"+(n?"Start":"End")](m);else f.setStartBefore(k.getAscendant("table",!0)),f.collapse(!0);h[0].deleteContents();return[f]}if(k)return f.moveToElementEditablePosition(k),[f]}var d={37:1,38:1,39:1,40:1,8:1,46:1,13:1},
1095
- e=CKEDITOR.tools.extend({table:1},CKEDITOR.dtd.$tableContent);delete e.td;delete e.th;return function(e){var f=e.data.getKey(),h=e.data.getKeystroke(),g,k=37===f||38==f,l,m,n;if(d[f]&&!a.readOnly&&(g=a.getSelection())&&g.isInTable()&&g.isFake){l=g.getRanges();m=l[0]._getTableElement();n=l[l.length-1]._getTableElement();if(13!==f||a.plugins.enterkey)e.data.preventDefault(),e.cancel();if(36<f&&41>f)l[0].moveToElementEditablePosition(k?m:n,!k),g.selectRanges([l[0]]);else if(13!==f||13===h||h===CKEDITOR.SHIFT+
1096
- 13){for(e=0;e<l.length;e++)b(l[e]);(e=c(m,l))?l=e:l[0].moveToElementEditablePosition(m);g.selectRanges(l);13===f&&a.plugins.enterkey?(a.fire("lockSnapshot"),13===h?a.execCommand("enter"):a.execCommand("shiftEnter"),a.fire("unlockSnapshot"),a.fire("saveSnapshot")):13!==f&&a.fire("saveSnapshot")}}}}(a),null,null,-1);c.attachListener(c,"keypress",function(c){var d=a.getSelection(),e=c.data.$.charCode||13===c.data.getKey(),f;if(!a.readOnly&&d&&d.isInTable()&&d.isFake&&e&&!(c.data.getKeystroke()&CKEDITOR.CTRL)){c=
1091
+ a.dataProcessor,d=new CKEDITOR.dom.element("body");c||(c=new CKEDITOR.htmlDataProcessor(a));d.setHtml(c.toHtml(b),{fixForBody:!1});return 1<d.getChildCount()?null:d.findOne("table")},pasteTable:function(a,b,c){var d,e=v(a.cells.first),f=a._getTable(),g={},h,k,l,m;for(l=0;l<c.length;l++)for(h=new CKEDITOR.dom.element(f.$.rows[a.rows.first.$.rowIndex+l]),m=0;m<c[l].length;m++)if(k=new CKEDITOR.dom.element(c[l][m]),d=b[l]&&b[l][m]?new CKEDITOR.dom.element(b[l][m]):null,k&&!k.getCustomData("processed")){if(d&&
1092
+ d.getParent())k.replace(d);else if(0===m||c[l][m-1])(d=0!==m?new CKEDITOR.dom.element(c[l][m-1]):null)&&h.equals(d.getParent())?k.insertAfter(d):0<e?h.$.cells[e]?k.insertAfter(new CKEDITOR.dom.element(h.$.cells[e])):h.append(k):h.append(k,!0);CKEDITOR.dom.element.setMarker(g,k,"processed",!0)}else k.getCustomData("processed")&&d&&d.remove();CKEDITOR.dom.element.clearAllMarkers(g)}};CKEDITOR.plugins.tableselection={getCellsBetween:l,keyboardIntegration:function(a){function b(a){var c=a.getEnclosedNode();
1093
+ c&&"function"===typeof c.is&&c.is({td:1,th:1})?c.setText(""):a.deleteContents();CKEDITOR.tools.array.forEach(a._find("td"),function(a){a.appendBogus()})}var c=a.editable();c.attachListener(c,"keydown",function(a){function c(b,d){if(!d.length)return null;var f=a.createRange(),g=CKEDITOR.dom.range.mergeRanges(d);CKEDITOR.tools.array.forEach(g,function(a){a.enlarge(CKEDITOR.ENLARGE_ELEMENT)});var h=g[0].getBoundaryNodes(),k=h.startNode,h=h.endNode;if(k&&k.is&&k.is(e)){for(var l=k.getAscendant("table",
1094
+ !0),m=k.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT,l),n=!1,p=function(a){return!k.contains(a)&&a.is&&a.is("td","th")};m&&!p(m);)m=m.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT,l);!m&&h&&h.is&&!h.is("table")&&h.getNext()&&(m=h.getNext().findOne("td, th"),n=!0);if(m)f["moveToElementEdit"+(n?"Start":"End")](m);else f.setStartBefore(k.getAscendant("table",!0)),f.collapse(!0);g[0].deleteContents();return[f]}if(k)return f.moveToElementEditablePosition(k),[f]}var d={37:1,38:1,39:1,40:1,8:1,46:1,13:1},
1095
+ e=CKEDITOR.tools.extend({table:1},CKEDITOR.dtd.$tableContent);delete e.td;delete e.th;return function(e){var f=e.data.getKey(),g=e.data.getKeystroke(),h,k=37===f||38==f,l,m,n;if(d[f]&&!a.readOnly&&(h=a.getSelection())&&h.isInTable()&&h.isFake){l=h.getRanges();m=l[0]._getTableElement();n=l[l.length-1]._getTableElement();if(13!==f||a.plugins.enterkey)e.data.preventDefault(),e.cancel();if(36<f&&41>f)l[0].moveToElementEditablePosition(k?m:n,!k),h.selectRanges([l[0]]);else if(13!==f||13===g||g===CKEDITOR.SHIFT+
1096
+ 13){for(e=0;e<l.length;e++)b(l[e]);(e=c(m,l))?l=e:l[0].moveToElementEditablePosition(m);h.selectRanges(l);13===f&&a.plugins.enterkey?(a.fire("lockSnapshot"),13===g?a.execCommand("enter"):a.execCommand("shiftEnter"),a.fire("unlockSnapshot"),a.fire("saveSnapshot")):13!==f&&a.fire("saveSnapshot")}}}}(a),null,null,-1);c.attachListener(c,"keypress",function(c){var d=a.getSelection(),e=c.data.$.charCode||13===c.data.getKey(),f;if(!a.readOnly&&d&&d.isInTable()&&d.isFake&&e&&!(c.data.getKeystroke()&CKEDITOR.CTRL)){c=
1097
1097
  d.getRanges();e=c[0].getEnclosedNode().getAscendant({td:1,th:1},!0);for(f=0;f<c.length;f++)b(c[f]);e&&(c[0].moveToElementEditablePosition(e),d.selectRanges([c[0]]))}},null,null,-1)}};CKEDITOR.plugins.add("tableselection",{requires:"clipboard,tabletools",isSupportedEnvironment:function(){return!(CKEDITOR.env.ie&&11>CKEDITOR.env.version)},onLoad:function(){u=CKEDITOR.plugins.tabletools;y=u.getSelectedCells;v=u.getCellColIndex;A=u.insertRow;z=u.insertColumn;CKEDITOR.document.appendStyleSheet(this.path+
1098
1098
  "styles/tableselection.css")},init:function(a){this.isSupportedEnvironment()&&(a.addContentsCss&&a.addContentsCss(this.path+"styles/tableselection.css"),a.on("contentDom",function(){var b=a.editable(),e=b.isInline()?b:a.document,f={editor:a};b.attachListener(e,"mousedown",d,null,f);b.attachListener(e,"mousemove",d,null,f);b.attachListener(e,"mouseup",d,null,f);b.attachListener(b,"dragstart",c);b.attachListener(a,"selectionCheck",k);CKEDITOR.plugins.tableselection.keyboardIntegration(a);CKEDITOR.plugins.clipboard&&
1099
- !CKEDITOR.plugins.clipboard.isCustomCopyCutSupported&&(b.attachListener(b,"cut",q),b.attachListener(b,"copy",q))}),a.on("paste",w.onPaste,w),r(a,"rowInsertBefore rowInsertAfter columnInsertBefore columnInsertAfter cellInsertBefore cellInsertAfter".split(" "),function(a,b){e(a,b.selectedCells)}),r(a,["cellMerge","cellMergeRight","cellMergeDown"],function(a,b){e(a,[b.commandData.cell])}),r(a,["cellDelete"],function(a){f(a,!0)}))}})})();CKEDITOR.plugins.add("taoqtiimage",{init:function(a){a.addCommand("insertQtiImage",
1100
- {exec:function(a){var g=a.config.taoQtiItem;"function"===typeof g.insert&&(a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"img" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),g.insert.call(a))}});a.ui.addButton("TaoQtiImage",{label:a.lang.insertQtiImage.button,command:"insertQtiImage",icon:this.path+"images/taoqtiimage.png"})}});CKEDITOR.plugins.add("taoqtimaths",{init:function(a){a.addCommand("insertQtiMaths",{exec:function(a){var g=a.config.taoQtiItem;"function"===typeof g.insert&&
1101
- (a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"math" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),g.insert.call(a))}});a.ui.addButton("TaoQtiMaths",{label:a.lang.insertQtiMaths.button,command:"insertQtiMaths",icon:this.path+"images/taoqtimaths.png"})}});CKEDITOR.plugins.add("taoqtimedia",{init:function(a){a.addCommand("insertQtiMedia",{exec:function(a){var g=a.config.taoQtiItem;"function"===typeof g.insert&&(a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"object" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),
1102
- g.insert.call(a))}});a.ui.addButton("TaoQtiMedia",{label:a.lang.insertQtiMedia.button,command:"insertQtiMedia",icon:this.path+"images/taoqtimedia.png"})}});CKEDITOR.plugins.add("taoqtitable",{requires:"dialog",icons:this.path+"images/taoqtitable.png",hidpi:!1,init:function(a){var l=!0;if("table"===a.element.getAttribute("data-qti-class"))l=!1;else if(a.blockless)return;var g=a.lang.table;a.addCommand("taoqtitable",new CKEDITOR.dialogCommand("taoqtitable",{context:"table",allowedContent:"table[summary];caption tbody thead tfoot;th td tr[scope];"+
1103
- (a.plugins.dialogadvtab?"table"+a.plugins.dialogadvtab.allowedContent():""),requiredContent:"table"}));a.addCommand("taoqtitableProperties",new CKEDITOR.dialogCommand("taoqtitableProperties"));l&&a.ui.addButton&&a.ui.addButton("TaoQtiTable",{label:g.toolbar,command:"taoqtitable",toolbar:"insert,30",icon:this.path+"images/taoqtitable.png"});CKEDITOR.dialog.add("taoqtitable",this.path+"dialogs/taoqtitable.js");CKEDITOR.dialog.add("taoqtitableProperties",this.path+"dialogs/taoqtitable.js")}});CKEDITOR.plugins.add("menubutton",
1104
- {requires:"button,menu",onLoad:function(){var a=function(a){var g=this._,f=g.menu;g.state!==CKEDITOR.TRISTATE_DISABLED&&(g.on&&f?f.hide():(g.previousState=g.state,f||(f=g.menu=new CKEDITOR.menu(a,{panel:{className:"cke_menu_panel",attributes:{"aria-label":a.lang.common.options}}}),f.onHide=CKEDITOR.tools.bind(function(){var e=this.command?a.getCommand(this.command).modes:this.modes;this.setState(!e||e[a.mode]?g.previousState:CKEDITOR.TRISTATE_DISABLED);g.on=0},this),this.onMenu&&f.addListener(this.onMenu)),
1105
- this.setState(CKEDITOR.TRISTATE_ON),g.on=1,setTimeout(function(){f.show(CKEDITOR.document.getById(g.id),4)},0)))};CKEDITOR.ui.menuButton=CKEDITOR.tools.createClass({base:CKEDITOR.ui.button,$:function(l){delete l.panel;this.base(l);this.hasArrow="menu";this.click=a},statics:{handler:{create:function(a){return new CKEDITOR.ui.menuButton(a)}}}})},beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_MENUBUTTON,CKEDITOR.ui.menuButton.handler)}});CKEDITOR.UI_MENUBUTTON="menubutton";CKEDITOR.plugins.add("taounderline",
1106
- {requires:"menubutton",init:function(a){function l(b){[e,m,h].forEach(function(c){c!==b&&a.removeStyle(c)});b.checkActive(a.elementPath(),a)?a.removeStyle(b):a.applyStyle(b)}function g(){if(!a.readOnly){var b=a.elementPath(),b=e.checkActive(b,a)||m.checkActive(b,a)||h.checkActive(b,a),c=a.ui.get("TaoUnderline");c&&c.setState(b?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)}}function f(){if(c)try{a.focus();var b=a.getSelection();b&&b.selectBookmarks(c)}catch(d){var e=a.getSelection();if(e){var f=e.getRanges();
1107
- if(f.length){var h=f[0];h.shrink(CKEDITOR.SHRINK_TEXT);h.trim();e.selectRanges([h])}}}finally{c=null}}var e=new CKEDITOR.style({element:"span",attributes:{"class":"txt-underline"}}),m=new CKEDITOR.style({element:"span",attributes:{"class":"txt-dashed"}}),h=new CKEDITOR.style({element:"span",attributes:{"class":"txt-wavy"}}),k=["u",["span",function(a){return"underline"===a.styles["text-decoration"]}]];k.unshift(e);var b=[["span",function(a){return"underline dashed"===a.styles["text-decoration"]}]];
1108
- b.unshift(m);var d=[["span",function(a){return"underline wavy"===a.styles["text-decoration"]}]];d.unshift(h);a.addCommand("spanUnderline",new CKEDITOR.styleCommand(e,{contentForms:k}));a.addCommand("spanDashed",new CKEDITOR.styleCommand(m,{contentForms:b}));a.addCommand("spanWavy",new CKEDITOR.styleCommand(h,{contentForms:d}));a.attachStyleStateChange(e,g);a.attachStyleStateChange(m,g);a.attachStyleStateChange(h,g);var c=null,k={taounderline_underline:{label:a.lang.spanUnderline.menu.solid,group:"taounderline",
1109
- order:1,role:"menuitemcheckbox",onClick:function(){f();l(e)},style:e},taounderline_dashed:{label:a.lang.spanUnderline.menu.dashed,group:"taounderline",order:2,role:"menuitemcheckbox",onClick:function(){f();l(m)},style:m},taounderline_wavy:{label:a.lang.spanUnderline.menu.wavy,group:"taounderline",order:3,role:"menuitemcheckbox",onClick:function(){f();l(h)},style:h}};a.addMenuGroup("taounderline",1);a.addMenuItems(k);a.ui.add("TaoUnderline",CKEDITOR.UI_MENUBUTTON,{label:a.lang.spanUnderline.button,
1110
- toolbar:"basicstyles,20",icon:this.path+"images/taounderline.png",command:"spanUnderline",onMenu:function(){document&&document.body&&document.body.classList.add("cke_panel_visible");var b=a.getSelection();if(b){var d=b.getRanges();d.length&&(d=d[0],d.shrink(CKEDITOR.SHRINK_TEXT),d.trim(),b.selectRanges([d]),c=b.createBookmarks())}var f=a.elementPath(),b=e.checkActive(f,a),d=m.checkActive(f,a),f=h.checkActive(f,a);return{taounderline_underline:b?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF,taounderline_dashed:d?
1111
- CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF,taounderline_wavy:f?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF}}})}});CKEDITOR.plugins.add("taotooltip",{init:function(a){function l(a){a=a.getSelection();var c=a.getNative(),h;if(h=null!==c)if(h=c.getRangeAt(0),!(h=c&&c.isCollapsed&&!e(c.getRangeAt(h.startContainer))))if(c=!c.isCollapsed&&c.getRangeAt(0)){b=!1;g(c.cloneContents());if(h=""!==c.toString().trim()){h=f(c.startContainer);var k=f(c.endContainer);h=h.isSameNode(k)}h=h&&!b&&!e(c.startContainer)}else h=
1112
- !1;if(c=h)c=null===a.getRanges()[0].startContainer.getAscendant("ruby");return c}function g(a){a=a.childNodes;var c,e;for(e=0;e<a.length;e++)if(c=a[e],!b&&c.nodeType===window.Node.ELEMENT_NODE){var f=c.nodeName&&c.nodeName.toLowerCase();-1===k.indexOf(f)?b=!0:g(c)}}function f(a){return a.nodeType===window.Node.TEXT_NODE?a.parentNode:a}function e(a){return(new CKEDITOR.dom.element(a)).getAscendant(function(a){return a.$&&a.$.dataset&&"_tooltip"===a.$.dataset.qtiClass})}function m(a){a=a.getRanges()[0].extractContents().$;
1113
- return new CKEDITOR.dom.element(a)}function h(a){var b=a.getCommand("insertTaoTooltip");b&&(l(a)?b.setState(CKEDITOR.TRISTATE_OFF):b.setState(CKEDITOR.TRISTATE_DISABLED))}var k="b strong i em s sub sup u".split(" "),b;a.addCommand("insertTaoTooltip",{exec:function(a){var b=a.config.taoQtiItem,e=a.getSelection(),f=e.getNative(),h;l(a)&&"function"===typeof b.insert&&(h=new CKEDITOR.dom.element("span",a.document),h.setAttributes({"data-new":!0,"data-qti-class":"_tooltip","class":"widget-box"}),f&&f.isCollapsed?
1114
- h.appendHtml("\x26nbsp;"):h.append(m(e)),a.insertElement(h),b.insert.call(a,h.$))}});a.on("instanceReady",function(){var b=a.editable();b.attachListener(b,"mouseup",function(){h(a)});b.attachListener(b,"keyup",function(){h(a)})});a.ui.addButton("TaoTooltip",{label:a.lang.insertTaoTooltip.button,command:"insertTaoTooltip",icon:this.path+"images/taotooltip.png"})}});CKEDITOR.plugins.add("taohighlight",{init:function(a){var l=new CKEDITOR.style({element:"span",attributes:{"class":"txt-highlight"}}),
1115
- g=["span"];g.unshift(l);a.attachStyleStateChange(l,function(f){!a.readOnly&&a.getCommand("spanHighlight").setState(f)});a.addCommand("spanHighlight",new CKEDITOR.styleCommand(l,{contentForms:g}));a.ui.addButton("TaoHighlight",{label:a.lang.spanHighlight.button,command:"spanHighlight",icon:this.path+"images/taohighlight.png"})}});CKEDITOR.plugins.add("taoqtiinclude",{init:function(a){a.addCommand("insertQtiInclude",{exec:function(a){var g=a.config.taoQtiItem;"function"===typeof g.insert&&(a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"include" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),
1116
- g.insert.call(a))}});a.ui.addButton("TaoQtiInclude",{label:a.lang.insertQtiInclude.button,command:"insertQtiInclude",icon:this.path+"images/taoqtiimage.png"})}});CKEDITOR.plugins.add("taoqtiprintedvariable",{init:function(a){a.addCommand("insertQtiPrintedVariable",{exec:function(a){var g=a.config.taoQtiItem;"function"===typeof g.insert&&(a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"printedVariable" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),g.insert.call(a))}});a.ui.addButton("TaoQtiPrintedVariable",
1117
- {label:a.lang.insertQtiPrintedVariable.button,command:"insertQtiPrintedVariable",icon:this.path+"images/taoqtiprintedvariable.png"})}});CKEDITOR.plugins.add("taofurigana",{init:function(a){function l(a){a=a.getRanges()[0].extractContents().$;return new CKEDITOR.dom.element(a)}function g(a){return a.nodeType===window.Node.TEXT_NODE?a.parentNode:a}function f(a){return null!==a.getAscendant("ruby")}function e(a){var b=a.getSelection();a=b.getNative();var d;if(d=null!==a)d=!(b&&b.isCollapsed())&&b.getRanges()[0]&&
1118
- !f(b.getRanges()[0].startContainer);if(b=d)if(a=!a.isCollapsed&&a.getRangeAt(0)){k=!1;var b=a.cloneContents().childNodes,e;for(e=0;e<b.length;e++)if(d=b[e],!k&&d.nodeType!==window.Node.TEXT_NODE){k=!0;break}if(b=""!==a.toString().trim())b=g(a.startContainer),a=g(a.endContainer),b=b.isSameNode(a);b=b&&!k}else b=!1;return b}function m(b,d,e){b=b.getAscendant("ruby");if(!b)return!1;var f=b.find("rb"),h=b.find("rt"),g;if(f.$.length&&!h.$.length||d&&f.$.length&&h.$.length&&!h.$[0].innerText.trim()){a.fire("saveSnapshot");
1119
- a.fire("lockSnapshot");try{var k=f.count()?f.getItem(0):null,l=k?k.getText():"",m=new CKEDITOR.dom.text(l,a.document);m.replace(b);d||(g=new CKEDITOR.dom.range(a.document),g.selectNodeContents(m),e.selectRanges([g]));a.updateElement();a.fire("change")}finally{a.fire("unlockSnapshot")}return!0}}function h(a){function h(e){b.forEach(function(b){a.getCommand(b).setState(!e);a.getCommand(b).setState(e)});d.forEach(function(a){a.setState(e)})}var g=a.getCommand("rubyFurigana"),k=a.getSelection(),l=k.getRanges()[0];
1120
- b.length||a.toolbar.forEach(function(a){a.items&&a.items.length&&a.items.forEach(function(a){a.command&&"rubyFurigana"!==a.command?b.push(a.command):a.command||"undefined"===typeof a.setState||d.push(a)})});g&&(e(a)?(g.setState(CKEDITOR.TRISTATE_OFF),h(CKEDITOR.TRISTATE_OFF)):k.getRanges()[0]&&f(l.startContainer)?m(l.startContainer,!1,k)?(g.setState(CKEDITOR.TRISTATE_DISABLED),h(CKEDITOR.TRISTATE_OFF)):(g.setState(CKEDITOR.TRISTATE_ON),setTimeout(function(){h(CKEDITOR.TRISTATE_DISABLED)},150)):(g.setState(CKEDITOR.TRISTATE_DISABLED),
1121
- h(CKEDITOR.TRISTATE_OFF)))}var k,b=[],d=[];a.addCommand("rubyFurigana",{exec:function(a){var b=a.getSelection(),d=b.getRanges()[0].startContainer,g,k,p;if(f(d))if(g=d.getAscendant("ruby"),k=g.find("rb"),m(d,!0))h(a);else{a.fire("saveSnapshot");a.fire("lockSnapshot");try{var d="",u=k.getItem(0);u&&(d=u.getText());var y=new CKEDITOR.dom.text(d,a.document);y.replace(g);p=new CKEDITOR.dom.range(a.document);p.setStartAfter(y);p.collapse(!0);b.selectRanges([p]);a.updateElement();a.fire("change");h(a)}finally{a.fire("unlockSnapshot")}}else e(a)&&
1122
- (a.fire("saveSnapshot"),a.fire("lockSnapshot"),g=new CKEDITOR.dom.element("ruby",a.document),k=new CKEDITOR.dom.element("rb",a.document),k.append(l(b)),p=new CKEDITOR.dom.element("rt",a.document),p.appendHtml("\x26nbsp;"),g.append(k),g.append(p),k=new CKEDITOR.dom.element("span",a.document),p.append(k),p.appendHtml("\x26nbsp;"),a.insertElement(g),p=g.getNext(),(!p||p.type===CKEDITOR.NODE_TEXT&&""===p.getText().trim())&&(new CKEDITOR.dom.text("​",a.document)).insertAfter(g),p=new CKEDITOR.dom.range(a.document),
1123
- p.setStart(k,0),p.collapse(!0),a.getSelection().removeAllRanges(),a.getSelection().selectRanges([p]),h(a),a.fire("unlockSnapshot"),k.remove())}});a.on("instanceReady",function(){var b=a.editable();a.getCommand("rubyFurigana").setState(CKEDITOR.TRISTATE_DISABLED);b.attachListener(b,"mouseup",function(){h(a)});b.attachListener(b,"keyup",function(){h(a)})});a.on("blur",function(){for(var b=a.document.find("ruby"),d=!1,e=0;e<b.count();e++){var f=b.getItem(e),g=f.find("rt");g.$.length&&""===g.$[0].innerText.trim()&&
1124
- (g=f.find("rb"),g.$.length&&(a.fire("saveSnapshot"),a.fire("lockSnapshot"),(new CKEDITOR.dom.element.createFromHtml(g.$[0].innerHTML)).replace(f),a.fire("unlockSnapshot"),d=!0))}d&&(a.updateElement(),a.fire("change"),h(a))});a.ui.addButton("TaoFurigana",{label:a.lang.rubyFurigana.button,command:"rubyFurigana",icon:this.path+"images/taofurigana.png"})}});"use strict";(function(){function a(a,d){return CKEDITOR.tools.array.reduce(d,function(a,b){return b(a)},a)}var l=[CKEDITOR.CTRL+90,CKEDITOR.CTRL+
1125
- 89,CKEDITOR.CTRL+CKEDITOR.SHIFT+90],g={8:1,46:1};CKEDITOR.plugins.add("undo",{init:function(a){function d(a){e.enabled&&!1!==a.data.command.canUndo&&e.save()}function c(){e.enabled=a.readOnly?!1:"wysiwyg"==a.mode;e.onChange()}var e=a.undoManager=new f(a),g=e.editingHandler=new h(e),k=a.addCommand("undo",{exec:function(){e.undo()&&(a.selectionChange(),this.fire("afterUndo"))},startDisabled:!0,canUndo:!1}),m=a.addCommand("redo",{exec:function(){e.redo()&&(a.selectionChange(),this.fire("afterRedo"))},
1126
- startDisabled:!0,canUndo:!1});a.setKeystroke([[l[0],"undo"],[l[1],"redo"],[l[2],"redo"]]);e.onChange=function(){k.setState(e.undoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED);m.setState(e.redoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)};a.on("beforeCommandExec",d);a.on("afterCommandExec",d);a.on("saveSnapshot",function(a){e.save(a.data&&a.data.contentOnly)});a.on("contentDom",g.attachListeners,g);a.on("instanceReady",function(){a.fire("saveSnapshot")});a.on("beforeModeUnload",
1127
- function(){"wysiwyg"==a.mode&&e.save(!0)});a.on("mode",c);a.on("readOnly",c);a.ui.addButton&&(a.ui.addButton("Undo",{label:a.lang.undo.undo,command:"undo",toolbar:"undo,10"}),a.ui.addButton("Redo",{label:a.lang.undo.redo,command:"redo",toolbar:"undo,20"}));a.resetUndo=function(){e.reset();a.fire("saveSnapshot")};a.on("updateSnapshot",function(){e.currentImage&&e.update()});a.on("lockSnapshot",function(a){a=a.data;e.lock(a&&a.dontUpdate,a&&a.forceUpdate)});a.on("unlockSnapshot",e.unlock,e)}});CKEDITOR.plugins.undo=
1128
- {};var f=CKEDITOR.plugins.undo.UndoManager=function(a){this.strokesRecorded=[0,0];this.locked=null;this.previousKeyGroup=-1;this.limit=a.config.undoStackSize||20;this.strokesLimit=25;this._filterRules=[];this.editor=a;this.reset();CKEDITOR.env.ie&&this.addFilterRule(function(a){return a.replace(/\s+data-cke-expando=".*?"/g,"")})};f.prototype={type:function(a,d){var c=f.getKeyGroup(a),e=this.strokesRecorded[c]+1;d=d||e>=this.strokesLimit;this.typing||(this.hasUndo=this.typing=!0,this.hasRedo=!1,this.onChange());
1129
- d?(e=0,this.editor.fire("saveSnapshot")):this.editor.fire("change");this.strokesRecorded[c]=e;this.previousKeyGroup=c},keyGroupChanged:function(a){return f.getKeyGroup(a)!=this.previousKeyGroup},reset:function(){this.snapshots=[];this.index=-1;this.currentImage=null;this.hasRedo=this.hasUndo=!1;this.locked=null;this.resetType()},resetType:function(){this.strokesRecorded=[0,0];this.typing=!1;this.previousKeyGroup=-1},refreshState:function(){this.hasUndo=!!this.getNextImage(!0);this.hasRedo=!!this.getNextImage(!1);
1130
- this.resetType();this.onChange()},save:function(a,d,c){var f=this.editor;if(this.locked||"ready"!=f.status||"wysiwyg"!=f.mode)return!1;var h=f.editable();if(!h||"ready"!=h.status)return!1;h=this.snapshots;d||(d=new e(f));if(!1===d.contents)return!1;if(this.currentImage)if(d.equalsContent(this.currentImage)){if(a||d.equalsSelection(this.currentImage))return!1}else!1!==c&&f.fire("change");h.splice(this.index+1,h.length-this.index-1);h.length==this.limit&&h.shift();this.index=h.push(d)-1;this.currentImage=
1131
- d;!1!==c&&this.refreshState();return!0},restoreImage:function(a){var d=this.editor,c;a.bookmarks&&(d.focus(),c=d.getSelection());this.locked={level:999};this.editor.loadSnapshot(a.contents);a.bookmarks?c.selectBookmarks(a.bookmarks):CKEDITOR.env.ie&&(c=this.editor.document.getBody().$.createTextRange(),c.collapse(!0),c.select());this.locked=null;this.index=a.index;this.currentImage=this.snapshots[this.index];this.update();this.refreshState();d.fire("change")},getNextImage:function(a){var d=this.snapshots,
1132
- c=this.currentImage,e;if(c)if(a)for(e=this.index-1;0<=e;e--){if(a=d[e],!c.equalsContent(a))return a.index=e,a}else for(e=this.index+1;e<d.length;e++)if(a=d[e],!c.equalsContent(a))return a.index=e,a;return null},redoable:function(){return this.enabled&&this.hasRedo},undoable:function(){return this.enabled&&this.hasUndo},undo:function(){if(this.undoable()){this.save(!0);var a=this.getNextImage(!0);if(a)return this.restoreImage(a),!0}return!1},redo:function(){if(this.redoable()&&(this.save(!0),this.redoable())){var a=
1133
- this.getNextImage(!1);if(a)return this.restoreImage(a),!0}return!1},update:function(a){if(!this.locked){a||(a=new e(this.editor));for(var d=this.index,c=this.snapshots;0<d&&this.currentImage.equalsContent(c[d-1]);)--d;c.splice(d,this.index-d+1,a);this.index=d;this.currentImage=a}},updateSelection:function(a){if(!this.snapshots.length)return!1;var d=this.snapshots,c=d[d.length-1];return c.equalsContent(a)&&!c.equalsSelection(a)?(this.currentImage=d[d.length-1]=a,!0):!1},lock:function(a,d){if(this.locked)this.locked.level++;
1134
- else if(a)this.locked={level:1};else{var c=null;if(d)c=!0;else{var f=new e(this.editor,!0);this.currentImage&&this.currentImage.equalsContent(f)&&(c=f)}this.locked={update:c,level:1}}},unlock:function(){if(this.locked&&!--this.locked.level){var a=this.locked.update;this.locked=null;if(!0===a)this.update();else if(a){var d=new e(this.editor,!0);a.equalsContent(d)||this.update()}}},addFilterRule:function(a){this._filterRules.push(a)}};f.navigationKeyCodes={37:1,38:1,39:1,40:1,36:1,35:1,33:1,34:1};f.keyGroups=
1135
- {PRINTABLE:0,FUNCTIONAL:1};f.isNavigationKey=function(a){return!!f.navigationKeyCodes[a]};f.getKeyGroup=function(a){var d=f.keyGroups;return g[a]?d.FUNCTIONAL:d.PRINTABLE};f.getOppositeKeyGroup=function(a){var d=f.keyGroups;return a==d.FUNCTIONAL?d.PRINTABLE:d.FUNCTIONAL};f.ieFunctionalKeysBug=function(a){return CKEDITOR.env.ie&&f.getKeyGroup(a)==f.keyGroups.FUNCTIONAL};var e=CKEDITOR.plugins.undo.Image=function(b,d){this.editor=b;b.fire("beforeUndoImage");var c=b.getSnapshot();c&&(this.contents=
1136
- a(c,b.undoManager._filterRules));d||(this.bookmarks=(c=c&&b.getSelection())&&c.createBookmarks2(!0));b.fire("afterUndoImage")},m=/\b(?:href|src|name)="[^"]*?"/gi;e.prototype={equalsContent:function(a){var d=this.contents;a=a.contents;CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)&&(d=d.replace(m,""),a=a.replace(m,""));return d!=a?!1:!0},equalsSelection:function(a){var d=this.bookmarks;a=a.bookmarks;if(d||a){if(!d||!a||d.length!=a.length)return!1;for(var c=0;c<d.length;c++){var e=d[c],
1137
- f=a[c];if(e.startOffset!=f.startOffset||e.endOffset!=f.endOffset||!CKEDITOR.tools.arrayCompare(e.start,f.start)||!CKEDITOR.tools.arrayCompare(e.end,f.end))return!1}}return!0}};var h=CKEDITOR.plugins.undo.NativeEditingHandler=function(a){this.undoManager=a;this.ignoreInputEvent=!1;this.keyEventsStack=new k;this.lastKeydownImage=null};h.prototype={onKeydown:function(a){var d=a.data.getKey();if(229!==d)if(-1<CKEDITOR.tools.indexOf(l,a.data.getKeystroke()))a.data.preventDefault();else if(this.keyEventsStack.cleanUp(a),
1138
- a=this.undoManager,this.keyEventsStack.getLast(d)||this.keyEventsStack.push(d),this.lastKeydownImage=new e(a.editor),f.isNavigationKey(d)||this.undoManager.keyGroupChanged(d))if(a.strokesRecorded[0]||a.strokesRecorded[1])a.save(!1,this.lastKeydownImage,!1),a.resetType()},onInput:function(){if(this.ignoreInputEvent)this.ignoreInputEvent=!1;else{var a=this.keyEventsStack.getLast();a||(a=this.keyEventsStack.push(0));this.keyEventsStack.increment(a.keyCode);this.keyEventsStack.getTotalInputs()>=this.undoManager.strokesLimit&&
1139
- (this.undoManager.type(a.keyCode,!0),this.keyEventsStack.resetInputs())}},onKeyup:function(a){var d=this.undoManager;a=a.data.getKey();var c=this.keyEventsStack.getTotalInputs();this.keyEventsStack.remove(a);if(!(f.ieFunctionalKeysBug(a)&&this.lastKeydownImage&&this.lastKeydownImage.equalsContent(new e(d.editor,!0))))if(0<c)d.type(a);else if(f.isNavigationKey(a))this.onNavigationKey(!0)},onNavigationKey:function(a){var d=this.undoManager;!a&&d.save(!0,null,!1)||d.updateSelection(new e(d.editor));
1140
- d.resetType()},ignoreInputEventListener:function(){this.ignoreInputEvent=!0},activateInputEventListener:function(){this.ignoreInputEvent=!1},attachListeners:function(){var a=this.undoManager.editor,d=a.editable(),c=this;d.attachListener(d,"keydown",function(a){c.onKeydown(a);if(f.ieFunctionalKeysBug(a.data.getKey()))c.onInput()},null,null,999);d.attachListener(d,CKEDITOR.env.ie?"keypress":"input",c.onInput,c,null,999);d.attachListener(d,"keyup",c.onKeyup,c,null,999);d.attachListener(d,"paste",c.ignoreInputEventListener,
1141
- c,null,999);d.attachListener(d,"drop",c.ignoreInputEventListener,c,null,999);a.on("afterPaste",c.activateInputEventListener,c,null,999);d.attachListener(d.isInline()?d:a.document.getDocumentElement(),"click",function(){c.onNavigationKey()},null,null,999);d.attachListener(this.undoManager.editor,"blur",function(){c.keyEventsStack.remove(9)},null,null,999)}};var k=CKEDITOR.plugins.undo.KeyEventsStack=function(){this.stack=[]};k.prototype={push:function(a){a=this.stack.push({keyCode:a,inputs:0});return this.stack[a-
1142
- 1]},getLastIndex:function(a){if("number"!=typeof a)return this.stack.length-1;for(var d=this.stack.length;d--;)if(this.stack[d].keyCode==a)return d;return-1},getLast:function(a){a=this.getLastIndex(a);return-1!=a?this.stack[a]:null},increment:function(a){this.getLast(a).inputs++},remove:function(a){a=this.getLastIndex(a);-1!=a&&this.stack.splice(a,1)},resetInputs:function(a){if("number"==typeof a)this.getLast(a).inputs=0;else for(a=this.stack.length;a--;)this.stack[a].inputs=0},getTotalInputs:function(){for(var a=
1143
- this.stack.length,d=0;a--;)d+=this.stack[a].inputs;return d},cleanUp:function(a){a=a.data.$;a.ctrlKey||a.metaKey||this.remove(17);a.shiftKey||this.remove(16);a.altKey||this.remove(18)}}})();(function(){function a(a){function f(a){var b=!1;c.attachListener(c,"keydown",function(){var c=g.getBody().getElementsByTag(a);if(!b){for(var d=0;d<c.count();d++)c.getItem(d).setCustomData("retain",!0);b=!0}},null,null,1);c.attachListener(c,"keyup",function(){var c=g.getElementsByTag(a);b&&(1==c.count()&&!c.getItem(0).getCustomData("retain")&&
1144
- CKEDITOR.tools.isEmpty(c.getItem(0).getAttributes())&&c.getItem(0).remove(1),b=!1)})}var h=this.editor;if(h&&!h.isDetached()){var g=a.document,b=g.body,d=g.getElementById("cke_actscrpt");d&&d.parentNode.removeChild(d);(d=g.getElementById("cke_shimscrpt"))&&d.parentNode.removeChild(d);(d=g.getElementById("cke_basetagscrpt"))&&d.parentNode.removeChild(d);b.contentEditable=!0;CKEDITOR.env.ie&&(b.hideFocus=!0,b.disabled=!0,b.removeAttribute("disabled"));delete this._.isLoadingData;this.$=b;g=new CKEDITOR.dom.document(g);
1145
- this.setup();this.fixInitialSelection();var c=this;CKEDITOR.env.ie&&!CKEDITOR.env.edge&&g.getDocumentElement().addClass(g.$.compatMode);CKEDITOR.env.ie&&!CKEDITOR.env.edge&&h.enterMode!=CKEDITOR.ENTER_P?f("p"):CKEDITOR.env.edge&&15>CKEDITOR.env.version&&h.enterMode!=CKEDITOR.ENTER_DIV&&f("div");if(CKEDITOR.env.webkit||CKEDITOR.env.ie&&10<CKEDITOR.env.version)g.getDocumentElement().on("mousedown",function(a){a.data.getTarget().is("html")&&setTimeout(function(){h.editable().focus()})});l(h);try{h.document.$.execCommand("2D-position",
1146
- !1,!0)}catch(n){}(CKEDITOR.env.gecko||CKEDITOR.env.ie&&"CSS1Compat"==h.document.$.compatMode)&&this.attachListener(this,"keydown",function(a){var b=a.data.getKeystroke();if(33==b||34==b)if(CKEDITOR.env.ie)setTimeout(function(){h.getSelection().scrollIntoView()},0);else if(h.window.$.innerHeight>this.$.offsetHeight){var c=h.createRange();c[33==b?"moveToElementEditStart":"moveToElementEditEnd"](this);c.select();a.data.preventDefault()}});CKEDITOR.env.ie&&this.attachListener(g,"blur",function(){try{g.$.selection.empty()}catch(a){}});
1147
- CKEDITOR.env.iOS&&this.attachListener(g,"touchend",function(){a.focus()});b=h.document.getElementsByTag("title").getItem(0);b.data("cke-title",b.getText());CKEDITOR.env.ie&&(h.document.$.title=this._.docTitle);CKEDITOR.tools.setTimeout(function(){"unloaded"==this.status&&(this.status="ready");h.fire("contentDom");this._.isPendingFocus&&(h.focus(),this._.isPendingFocus=!1);setTimeout(function(){h.fire("dataReady")},0)},0,this)}}function l(a){function f(){var b;a.editable().attachListener(a,"selectionChange",
1148
- function(){var c=a.getSelection().getSelectedElement();c&&(b&&(b.detachEvent("onresizestart",h),b=null),c.$.attachEvent("onresizestart",h),b=c.$)})}function h(a){a.returnValue=!1}if(CKEDITOR.env.gecko)try{var g=a.document.$;g.execCommand("enableObjectResizing",!1,!a.config.disableObjectResizing);g.execCommand("enableInlineTableEditing",!1,!a.config.disableNativeTableHandles)}catch(b){}else CKEDITOR.env.ie&&11>CKEDITOR.env.version&&a.config.disableObjectResizing&&f(a)}function g(){var a=[];if(8<=CKEDITOR.document.$.documentMode){a.push("html.CSS1Compat [contenteditable\x3dfalse]{min-height:0 !important}");
1149
- var f=[],h;for(h in CKEDITOR.dtd.$removeEmpty)f.push("html.CSS1Compat "+h+"[contenteditable\x3dfalse]");a.push(f.join(",")+"{display:inline-block}")}else CKEDITOR.env.gecko&&(a.push("html{height:100% !important}"),a.push("img:-moz-broken{-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}"));a.push("html{cursor:text;*cursor:auto}");a.push("img,input,textarea{cursor:default}");return a.join("\n")}var f;CKEDITOR.plugins.add("wysiwygarea",{init:function(a){a.config.fullPage&&a.addFeature({allowedContent:"html head title; style [media,type]; body (*)[id]; meta link [*]",
1150
- requiredContent:"body"});a.addMode("wysiwyg",function(g){function h(c){c&&c.removeListener();a.isDestroyed()||a.isDetached()||(a.editable(new f(a,b.$.contentWindow.document.body)),a.setData(a.getData(1),g))}var k="document.open();"+(CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"")+"document.close();",k=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie&&!CKEDITOR.env.edge?"javascript:void(function(){"+encodeURIComponent(k)+"}())":"",b=CKEDITOR.dom.element.createFromHtml('\x3ciframe src\x3d"'+
1151
- k+'" frameBorder\x3d"0"\x3e\x3c/iframe\x3e');b.setStyles({width:"100%",height:"100%"});b.addClass("cke_wysiwyg_frame").addClass("cke_reset");k=a.ui.space("contents");k.append(b);var d=CKEDITOR.env.ie&&!CKEDITOR.env.edge||CKEDITOR.env.gecko;if(d)b.on("load",h);var c=a.title,l=a.fire("ariaEditorHelpLabel",{}).label;c&&(CKEDITOR.env.ie&&l&&(c+=", "+l),b.setAttribute("title",c));if(l){var c=CKEDITOR.tools.getNextId(),q=CKEDITOR.dom.element.createFromHtml('\x3cspan id\x3d"'+c+'" class\x3d"cke_voice_label"\x3e'+
1152
- l+"\x3c/span\x3e");k.append(q,1);b.setAttribute("aria-describedby",c)}a.on("beforeModeUnload",function(a){a.removeListener();q&&q.remove()});b.setAttributes({tabIndex:a.tabIndex,allowTransparency:"true"});!d&&h();a.fire("ariaWidget",b)})}});CKEDITOR.editor.prototype.addContentsCss=function(a){var f=this.config,h=f.contentsCss;CKEDITOR.tools.isArray(h)||(f.contentsCss=h?[h]:[]);f.contentsCss.push(a)};f=CKEDITOR.tools.createClass({$:function(){this.base.apply(this,arguments);this._.frameLoadedHandler=
1153
- CKEDITOR.tools.addFunction(function(e){CKEDITOR.tools.setTimeout(a,0,this,e)},this);this._.docTitle=this.getWindow().getFrame().getAttribute("title")},base:CKEDITOR.editable,proto:{setData:function(a,f){var h=this.editor;if(f)this.setHtml(a),this.fixInitialSelection(),h.fire("dataReady");else{this._.isLoadingData=!0;h._.dataStore={id:1};var k=h.config,b=k.fullPage,d=k.docType,c=CKEDITOR.tools.buildStyleHtml(g()).replace(/<style>/,'\x3cstyle data-cke-temp\x3d"1"\x3e');b||(c+=CKEDITOR.tools.buildStyleHtml(h.config.contentsCss));
1154
- var l=k.baseHref?'\x3cbase href\x3d"'+k.baseHref+'" data-cke-temp\x3d"1" /\x3e':"";b&&(a=a.replace(/<!DOCTYPE[^>]*>/i,function(a){h.docType=d=a;return""}).replace(/<\?xml\s[^\?]*\?>/i,function(a){h.xmlDeclaration=a;return""}));a=h.dataProcessor.toHtml(a);b?(/<body[\s|>]/.test(a)||(a="\x3cbody\x3e"+a),/<html[\s|>]/.test(a)||(a="\x3chtml\x3e"+a+"\x3c/html\x3e"),/<head[\s|>]/.test(a)?/<title[\s|>]/.test(a)||(a=a.replace(/<head[^>]*>/,"$\x26\x3ctitle\x3e\x3c/title\x3e")):a=a.replace(/<html[^>]*>/,"$\x26\x3chead\x3e\x3ctitle\x3e\x3c/title\x3e\x3c/head\x3e"),
1155
- l&&(a=a.replace(/<head[^>]*?>/,"$\x26"+l)),a=a.replace(/<\/head\s*>/,c+"$\x26"),a=d+a):a=k.docType+'\x3chtml dir\x3d"'+k.contentsLangDirection+'" lang\x3d"'+(k.contentsLanguage||h.langCode)+'"\x3e\x3chead\x3e\x3ctitle\x3e'+this._.docTitle+"\x3c/title\x3e"+l+c+"\x3c/head\x3e\x3cbody"+(k.bodyId?' id\x3d"'+k.bodyId+'"':"")+(k.bodyClass?' class\x3d"'+k.bodyClass+'"':"")+"\x3e"+a+"\x3c/body\x3e\x3c/html\x3e";CKEDITOR.env.gecko&&(a=a.replace(/<body/,'\x3cbody contenteditable\x3d"true" '),2E4>CKEDITOR.env.version&&
1156
- (a=a.replace(/<body[^>]*>/,"$\x26\x3c!-- cke-content-start --\x3e")));k='\x3cscript id\x3d"cke_actscrpt" type\x3d"text/javascript"'+(CKEDITOR.env.ie?' defer\x3d"defer" ':"")+"\x3evar wasLoaded\x3d0;function onload(){if(!wasLoaded)window.parent.CKEDITOR.tools.callFunction("+this._.frameLoadedHandler+",window);wasLoaded\x3d1;}"+(CKEDITOR.env.ie?"onload();":'document.addEventListener("DOMContentLoaded", onload, false );')+"\x3c/script\x3e";CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(k+='\x3cscript id\x3d"cke_shimscrpt"\x3ewindow.parent.CKEDITOR.tools.enableHtml5Elements(document)\x3c/script\x3e');
1157
- l&&CKEDITOR.env.ie&&10>CKEDITOR.env.version&&(k+='\x3cscript id\x3d"cke_basetagscrpt"\x3evar baseTag \x3d document.querySelector( "base" );baseTag.href \x3d baseTag.href;\x3c/script\x3e');a=a.replace(/(?=\s*<\/(:?head)>)/,k);this.clearCustomData();this.clearListeners();h.fire("contentDomUnload");var q=this.getDocument();try{q.write(a)}catch(t){setTimeout(function(){q.write(a)},0)}}},getData:function(a){if(a)return this.getHtml();a=this.editor;var f=a.config,h=f.fullPage,g=h&&a.docType,b=h&&a.xmlDeclaration,
1158
- d=this.getDocument(),h=h?d.getDocumentElement().getOuterHtml():d.getBody().getHtml();CKEDITOR.env.gecko&&f.enterMode!=CKEDITOR.ENTER_BR&&(h=h.replace(/<br>(?=\s*(:?$|<\/body>))/,""));h=a.dataProcessor.toDataFormat(h);b&&(h=b+"\n"+h);g&&(h=g+"\n"+h);return h},focus:function(){this._.isLoadingData?this._.isPendingFocus=!0:f.baseProto.focus.call(this)},detach:function(){var a=this.editor,g=a.document,a=a.container.findOne("iframe.cke_wysiwyg_frame");f.baseProto.detach.call(this);this.clearCustomData(this._.expandoNumber);
1099
+ !CKEDITOR.plugins.clipboard.isCustomCopyCutSupported&&(b.attachListener(b,"cut",q),b.attachListener(b,"copy",q))}),a.on("paste",w.onPaste,w),r(a,"rowInsertBefore rowInsertAfter columnInsertBefore columnInsertAfter cellInsertBefore cellInsertAfter".split(" "),function(a,b){e(a,b.selectedCells)}),r(a,["cellMerge","cellMergeRight","cellMergeDown"],function(a,b){e(a,[b.commandData.cell])}),r(a,["cellDelete"],function(a){f(a,!0)}))}})})();CKEDITOR.plugins.add("taoqtiimage",{init:function(a){var l;a.addCommand("insertQtiImage",
1100
+ {exec:function(a){var f=a.config.taoQtiItem;"function"===typeof f.insert&&(l=a.getSelection().getRanges(),a.focus(),l&&0<l.length&&a.getSelection().selectRanges(l),a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"img" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),f.insert.call(a),l=null)}});a.ui.addButton("TaoQtiImage",{label:a.lang.insertQtiImage.button,command:"insertQtiImage",icon:this.path+"images/taoqtiimage.png"})}});CKEDITOR.plugins.add("taoqtimaths",{init:function(a){var l;
1101
+ a.addCommand("insertQtiMaths",{exec:function(a){var f=a.config.taoQtiItem;"function"===typeof f.insert&&(l=a.getSelection().getRanges(),a.focus(),l&&0<l.length&&a.getSelection().selectRanges(l),a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"math" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),f.insert.call(a),l=null)}});a.ui.addButton("TaoQtiMaths",{label:a.lang.insertQtiMaths.button,command:"insertQtiMaths",icon:this.path+"images/taoqtimaths.png"})}});CKEDITOR.plugins.add("taoqtimedia",
1102
+ {init:function(a){var l;a.addCommand("insertQtiMedia",{exec:function(a){var f=a.config.taoQtiItem;"function"===typeof f.insert&&(l=a.getSelection().getRanges(),a.focus(),l&&0<l.length&&a.getSelection().selectRanges(l),a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"object" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),f.insert.call(a),l=null)}});a.ui.addButton("TaoQtiMedia",{label:a.lang.insertQtiMedia.button,command:"insertQtiMedia",icon:this.path+"images/taoqtimedia.png"})}});CKEDITOR.plugins.add("taoqtitable",
1103
+ {requires:"dialog",icons:this.path+"images/taoqtitable.png",hidpi:!1,init:function(a){var l=!0;if("table"===a.element.getAttribute("data-qti-class"))l=!1;else if(a.blockless)return;var g=a.lang.table;a.addCommand("taoqtitable",new CKEDITOR.dialogCommand("taoqtitable",{context:"table",allowedContent:"table[summary];caption tbody thead tfoot;th td tr[scope];"+(a.plugins.dialogadvtab?"table"+a.plugins.dialogadvtab.allowedContent():""),requiredContent:"table"}));a.addCommand("taoqtitableProperties",new CKEDITOR.dialogCommand("taoqtitableProperties"));
1104
+ l&&a.ui.addButton&&a.ui.addButton("TaoQtiTable",{label:g.toolbar,command:"taoqtitable",toolbar:"insert,30",icon:this.path+"images/taoqtitable.png"});CKEDITOR.dialog.add("taoqtitable",this.path+"dialogs/taoqtitable.js");CKEDITOR.dialog.add("taoqtitableProperties",this.path+"dialogs/taoqtitable.js")}});CKEDITOR.plugins.add("menubutton",{requires:"button,menu",onLoad:function(){var a=function(a){var g=this._,f=g.menu;g.state!==CKEDITOR.TRISTATE_DISABLED&&(g.on&&f?f.hide():(g.previousState=g.state,f||
1105
+ (f=g.menu=new CKEDITOR.menu(a,{panel:{className:"cke_menu_panel",attributes:{"aria-label":a.lang.common.options}}}),f.onHide=CKEDITOR.tools.bind(function(){var e=this.command?a.getCommand(this.command).modes:this.modes;this.setState(!e||e[a.mode]?g.previousState:CKEDITOR.TRISTATE_DISABLED);g.on=0},this),this.onMenu&&f.addListener(this.onMenu)),this.setState(CKEDITOR.TRISTATE_ON),g.on=1,setTimeout(function(){f.show(CKEDITOR.document.getById(g.id),4)},0)))};CKEDITOR.ui.menuButton=CKEDITOR.tools.createClass({base:CKEDITOR.ui.button,
1106
+ $:function(l){delete l.panel;this.base(l);this.hasArrow="menu";this.click=a},statics:{handler:{create:function(a){return new CKEDITOR.ui.menuButton(a)}}}})},beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_MENUBUTTON,CKEDITOR.ui.menuButton.handler)}});CKEDITOR.UI_MENUBUTTON="menubutton";CKEDITOR.plugins.add("taounderline",{requires:"menubutton",init:function(a){function l(b){[e,m,h].forEach(function(c){c!==b&&a.removeStyle(c)});b.checkActive(a.elementPath(),a)?a.removeStyle(b):a.applyStyle(b)}function g(){if(!a.readOnly){var b=
1107
+ a.elementPath(),b=e.checkActive(b,a)||m.checkActive(b,a)||h.checkActive(b,a),c=a.ui.get("TaoUnderline");c&&c.setState(b?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)}}function f(){if(c)try{a.focus();var b=a.getSelection();b&&b.selectBookmarks(c)}catch(d){var e=a.getSelection();if(e){var f=e.getRanges();if(f.length){var g=f[0];g.shrink(CKEDITOR.SHRINK_TEXT);g.trim();e.selectRanges([g])}}}finally{c=null}}var e=new CKEDITOR.style({element:"span",attributes:{"class":"txt-underline"}}),m=new CKEDITOR.style({element:"span",
1108
+ attributes:{"class":"txt-dashed"}}),h=new CKEDITOR.style({element:"span",attributes:{"class":"txt-wavy"}}),k=["u",["span",function(a){return"underline"===a.styles["text-decoration"]}]];k.unshift(e);var b=[["span",function(a){return"underline dashed"===a.styles["text-decoration"]}]];b.unshift(m);var d=[["span",function(a){return"underline wavy"===a.styles["text-decoration"]}]];d.unshift(h);a.addCommand("spanUnderline",new CKEDITOR.styleCommand(e,{contentForms:k}));a.addCommand("spanDashed",new CKEDITOR.styleCommand(m,
1109
+ {contentForms:b}));a.addCommand("spanWavy",new CKEDITOR.styleCommand(h,{contentForms:d}));a.attachStyleStateChange(e,g);a.attachStyleStateChange(m,g);a.attachStyleStateChange(h,g);var c=null,k={taounderline_underline:{label:a.lang.spanUnderline.menu.solid,group:"taounderline",order:1,role:"menuitemcheckbox",onClick:function(){f();l(e)},style:e},taounderline_dashed:{label:a.lang.spanUnderline.menu.dashed,group:"taounderline",order:2,role:"menuitemcheckbox",onClick:function(){f();l(m)},style:m},taounderline_wavy:{label:a.lang.spanUnderline.menu.wavy,
1110
+ group:"taounderline",order:3,role:"menuitemcheckbox",onClick:function(){f();l(h)},style:h}};a.addMenuGroup("taounderline",1);a.addMenuItems(k);a.ui.add("TaoUnderline",CKEDITOR.UI_MENUBUTTON,{label:a.lang.spanUnderline.button,toolbar:"basicstyles,20",icon:this.path+"images/taounderline.png",command:"spanUnderline",onMenu:function(){document&&document.body&&document.body.classList.add("cke_panel_visible");var b=a.getSelection();if(b){var d=b.getRanges();d.length&&(d=d[0],d.shrink(CKEDITOR.SHRINK_TEXT),
1111
+ d.trim(),b.selectRanges([d]),c=b.createBookmarks())}var f=a.elementPath(),b=e.checkActive(f,a),d=m.checkActive(f,a),f=h.checkActive(f,a);return{taounderline_underline:b?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF,taounderline_dashed:d?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF,taounderline_wavy:f?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF}}})}});CKEDITOR.plugins.add("taotooltip",{init:function(a){function l(a){var c=a.getSelection(),h=c.getNative();a=null;c.getRanges()[0]&&(a=c.getRanges()[0].startContainer);
1112
+ if(c=null!==h)if(c=h.getRangeAt(0),!(c=h&&h.isCollapsed&&!e(h.getRangeAt(c.startContainer))))if(h=!h.isCollapsed&&h.getRangeAt(0)){b=!1;g(h.cloneContents());if(c=""!==h.toString().trim())var c=f(h.startContainer),k=f(h.endContainer),c=c.isSameNode(k);c=c&&!b&&!e(h.startContainer)}else c=!1;if(h=c)a=a?null!==a.getAscendant("ruby"):!1,h=!a;return h}function g(a){a=a.childNodes;var c,e;for(e=0;e<a.length;e++)if(c=a[e],!b&&c.nodeType===window.Node.ELEMENT_NODE){var f=c.nodeName&&c.nodeName.toLowerCase();
1113
+ -1===k.indexOf(f)?b=!0:g(c)}}function f(a){return a.nodeType===window.Node.TEXT_NODE?a.parentNode:a}function e(a){return(new CKEDITOR.dom.element(a)).getAscendant(function(a){return a.$&&a.$.dataset&&"_tooltip"===a.$.dataset.qtiClass})}function m(a){a=a.getRanges()[0].extractContents().$;return new CKEDITOR.dom.element(a)}function h(a){var b=a.getCommand("insertTaoTooltip");b&&(l(a)?b.setState(CKEDITOR.TRISTATE_OFF):b.setState(CKEDITOR.TRISTATE_DISABLED))}var k="b strong i em s sub sup u".split(" "),
1114
+ b;a.addCommand("insertTaoTooltip",{exec:function(a){var b=a.config.taoQtiItem,e=a.getSelection(),f=e.getNative(),g;l(a)&&"function"===typeof b.insert&&(g=new CKEDITOR.dom.element("span",a.document),g.setAttributes({"data-new":!0,"data-qti-class":"_tooltip","class":"widget-box"}),f&&f.isCollapsed?g.appendHtml("\x26nbsp;"):g.append(m(e)),a.insertElement(g),b.insert.call(a,g.$))}});a.on("instanceReady",function(){var b=a.editable();b.attachListener(b,"mouseup",function(){h(a)});b.attachListener(b,"keyup",
1115
+ function(){h(a)})});a.ui.addButton("TaoTooltip",{label:a.lang.insertTaoTooltip.button,command:"insertTaoTooltip",icon:this.path+"images/taotooltip.png"})}});CKEDITOR.plugins.add("taohighlight",{init:function(a){var l=new CKEDITOR.style({element:"span",attributes:{"class":"txt-highlight"}}),g=["span"];g.unshift(l);a.attachStyleStateChange(l,function(f){!a.readOnly&&a.getCommand("spanHighlight").setState(f)});a.addCommand("spanHighlight",new CKEDITOR.styleCommand(l,{contentForms:g}));a.ui.addButton("TaoHighlight",
1116
+ {label:a.lang.spanHighlight.button,command:"spanHighlight",icon:this.path+"images/taohighlight.png"})}});CKEDITOR.plugins.add("taoqtiinclude",{init:function(a){var l;a.addCommand("insertQtiInclude",{exec:function(a){var f=a.config.taoQtiItem;"function"===typeof f.insert&&(l=a.getSelection().getRanges(),a.focus(),l&&0<l.length&&a.getSelection().selectRanges(l),a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"include" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),f.insert.call(a),l=
1117
+ null)}});a.ui.addButton("TaoQtiInclude",{label:a.lang.insertQtiInclude.button,command:"insertQtiInclude",icon:this.path+"images/taoqtiimage.png"})}});CKEDITOR.plugins.add("taoqtiprintedvariable",{init:function(a){var l;a.addCommand("insertQtiPrintedVariable",{exec:function(a){var f=a.config.taoQtiItem;"function"===typeof f.insert&&(l=a.getSelection().getRanges(),a.focus(),l&&0<l.length&&a.getSelection().selectRanges(l),a.insertHtml('\x3cspan data-new\x3d"true" data-qti-class\x3d"printedVariable" class\x3d"widget-box"\x3e\x26nbsp;\x3c/span\x3e'),
1118
+ f.insert.call(a),l=null)}});a.ui.addButton("TaoQtiPrintedVariable",{label:a.lang.insertQtiPrintedVariable.button,command:"insertQtiPrintedVariable",icon:this.path+"images/taoqtiprintedvariable.png"})}});CKEDITOR.plugins.add("taofurigana",{init:function(a){function l(a){a=a.getRanges()[0].extractContents().$;return new CKEDITOR.dom.element(a)}function g(a){return a.nodeType===window.Node.TEXT_NODE?a.parentNode:a}function f(a){return a?null!==a.getAscendant("ruby"):!1}function e(a){var b=a.getSelection();
1119
+ a=b.getNative();var d;if(d=null!==a)d=!(b&&b.isCollapsed())&&b.getRanges()[0]&&!f(b.getRanges()[0].startContainer);if(b=d)if(a=!a.isCollapsed&&a.getRangeAt(0)){k=!1;var b=a.cloneContents().childNodes,e;for(e=0;e<b.length;e++)if(d=b[e],!k&&d.nodeType!==window.Node.TEXT_NODE){k=!0;break}if(b=""!==a.toString().trim())b=g(a.startContainer),a=g(a.endContainer),b=b.isSameNode(a);b=b&&!k}else b=!1;return b}function m(b,d,e){b=b.getAscendant("ruby");if(!b)return!1;var f=b.find("rb"),h=b.find("rt"),g;if(f.$.length&&
1120
+ !h.$.length||d&&f.$.length&&h.$.length&&!h.$[0].innerText.trim()){a.fire("saveSnapshot");a.fire("lockSnapshot");try{var k=f.count()?f.getItem(0):null,l=k?k.getText():"",m=new CKEDITOR.dom.text(l,a.document);m.replace(b);d||(g=new CKEDITOR.dom.range(a.document),g.selectNodeContents(m),e.selectRanges([g]));a.updateElement();a.fire("change")}finally{a.fire("unlockSnapshot")}return!0}}function h(a){function h(e){b.forEach(function(b){a.getCommand(b).setState(!e);a.getCommand(b).setState(e)});d.forEach(function(a){a.setState(e)})}
1121
+ var g=a.getCommand("rubyFurigana"),k=a.getSelection(),l=k.getRanges()[0];b.length||a.toolbar.forEach(function(a){a.items&&a.items.length&&a.items.forEach(function(a){a.command&&"rubyFurigana"!==a.command?b.push(a.command):a.command||"undefined"===typeof a.setState||d.push(a)})});g&&(e(a)?(g.setState(CKEDITOR.TRISTATE_OFF),h(CKEDITOR.TRISTATE_OFF)):k.getRanges()[0]&&f(l.startContainer)?m(l.startContainer,!1,k)?(g.setState(CKEDITOR.TRISTATE_DISABLED),h(CKEDITOR.TRISTATE_OFF)):(g.setState(CKEDITOR.TRISTATE_ON),
1122
+ setTimeout(function(){h(CKEDITOR.TRISTATE_DISABLED)},150)):(g.setState(CKEDITOR.TRISTATE_DISABLED),h(CKEDITOR.TRISTATE_OFF)))}var k,b=[],d=[];a.addCommand("rubyFurigana",{exec:function(a){var b=a.getSelection(),d=b.getRanges()[0].startContainer,g,k,p;if(f(d))if(g=d.getAscendant("ruby"),k=g.find("rb"),m(d,!0))h(a);else{a.fire("saveSnapshot");a.fire("lockSnapshot");try{var d="",u=k.getItem(0);u&&(d=u.getText());var y=new CKEDITOR.dom.text(d,a.document);y.replace(g);p=new CKEDITOR.dom.range(a.document);
1123
+ p.setStartAfter(y);p.collapse(!0);b.selectRanges([p]);a.updateElement();a.fire("change");h(a)}finally{a.fire("unlockSnapshot")}}else e(a)&&(a.fire("saveSnapshot"),a.fire("lockSnapshot"),g=new CKEDITOR.dom.element("ruby",a.document),k=new CKEDITOR.dom.element("rb",a.document),k.append(l(b)),p=new CKEDITOR.dom.element("rt",a.document),p.appendHtml("\x26nbsp;"),g.append(k),g.append(p),k=new CKEDITOR.dom.element("span",a.document),p.append(k),p.appendHtml("\x26nbsp;"),a.insertElement(g),p=g.getNext(),
1124
+ (!p||p.type===CKEDITOR.NODE_TEXT&&""===p.getText().trim())&&(new CKEDITOR.dom.text("",a.document)).insertAfter(g),p=new CKEDITOR.dom.range(a.document),p.setStart(k,0),p.collapse(!0),a.getSelection().removeAllRanges(),a.getSelection().selectRanges([p]),h(a),a.fire("unlockSnapshot"),k.remove())}});a.on("instanceReady",function(){var b=a.editable();a.getCommand("rubyFurigana").setState(CKEDITOR.TRISTATE_DISABLED);b.attachListener(b,"mouseup",function(){h(a)});b.attachListener(b,"keyup",function(){h(a)})});
1125
+ a.on("blur",function(){for(var b=a.document.find("ruby"),d=!1,e=0;e<b.count();e++){var f=b.getItem(e),g=f.find("rt");g.$.length&&""===g.$[0].innerText.trim()&&(g=f.find("rb"),g.$.length&&(a.fire("saveSnapshot"),a.fire("lockSnapshot"),(new CKEDITOR.dom.element.createFromHtml(g.$[0].innerHTML)).replace(f),a.fire("unlockSnapshot"),d=!0))}d&&(a.updateElement(),a.fire("change"),h(a))});a.ui.addButton("TaoFurigana",{label:a.lang.rubyFurigana.button,command:"rubyFurigana",icon:this.path+"images/taofurigana.png"})}});
1126
+ "use strict";(function(){function a(a,d){return CKEDITOR.tools.array.reduce(d,function(a,b){return b(a)},a)}var l=[CKEDITOR.CTRL+90,CKEDITOR.CTRL+89,CKEDITOR.CTRL+CKEDITOR.SHIFT+90],g={8:1,46:1};CKEDITOR.plugins.add("undo",{init:function(a){function d(a){e.enabled&&!1!==a.data.command.canUndo&&e.save()}function c(){e.enabled=a.readOnly?!1:"wysiwyg"==a.mode;e.onChange()}var e=a.undoManager=new f(a),g=e.editingHandler=new h(e),k=a.addCommand("undo",{exec:function(){e.undo()&&(a.selectionChange(),this.fire("afterUndo"))},
1127
+ startDisabled:!0,canUndo:!1}),m=a.addCommand("redo",{exec:function(){e.redo()&&(a.selectionChange(),this.fire("afterRedo"))},startDisabled:!0,canUndo:!1});a.setKeystroke([[l[0],"undo"],[l[1],"redo"],[l[2],"redo"]]);e.onChange=function(){k.setState(e.undoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED);m.setState(e.redoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)};a.on("beforeCommandExec",d);a.on("afterCommandExec",d);a.on("saveSnapshot",function(a){e.save(a.data&&a.data.contentOnly)});
1128
+ a.on("contentDom",g.attachListeners,g);a.on("instanceReady",function(){a.fire("saveSnapshot")});a.on("beforeModeUnload",function(){"wysiwyg"==a.mode&&e.save(!0)});a.on("mode",c);a.on("readOnly",c);a.ui.addButton&&(a.ui.addButton("Undo",{label:a.lang.undo.undo,command:"undo",toolbar:"undo,10"}),a.ui.addButton("Redo",{label:a.lang.undo.redo,command:"redo",toolbar:"undo,20"}));a.resetUndo=function(){e.reset();a.fire("saveSnapshot")};a.on("updateSnapshot",function(){e.currentImage&&e.update()});a.on("lockSnapshot",
1129
+ function(a){a=a.data;e.lock(a&&a.dontUpdate,a&&a.forceUpdate)});a.on("unlockSnapshot",e.unlock,e)}});CKEDITOR.plugins.undo={};var f=CKEDITOR.plugins.undo.UndoManager=function(a){this.strokesRecorded=[0,0];this.locked=null;this.previousKeyGroup=-1;this.limit=a.config.undoStackSize||20;this.strokesLimit=25;this._filterRules=[];this.editor=a;this.reset();CKEDITOR.env.ie&&this.addFilterRule(function(a){return a.replace(/\s+data-cke-expando=".*?"/g,"")})};f.prototype={type:function(a,d){var c=f.getKeyGroup(a),
1130
+ e=this.strokesRecorded[c]+1;d=d||e>=this.strokesLimit;this.typing||(this.hasUndo=this.typing=!0,this.hasRedo=!1,this.onChange());d?(e=0,this.editor.fire("saveSnapshot")):this.editor.fire("change");this.strokesRecorded[c]=e;this.previousKeyGroup=c},keyGroupChanged:function(a){return f.getKeyGroup(a)!=this.previousKeyGroup},reset:function(){this.snapshots=[];this.index=-1;this.currentImage=null;this.hasRedo=this.hasUndo=!1;this.locked=null;this.resetType()},resetType:function(){this.strokesRecorded=
1131
+ [0,0];this.typing=!1;this.previousKeyGroup=-1},refreshState:function(){this.hasUndo=!!this.getNextImage(!0);this.hasRedo=!!this.getNextImage(!1);this.resetType();this.onChange()},save:function(a,d,c){var f=this.editor;if(this.locked||"ready"!=f.status||"wysiwyg"!=f.mode)return!1;var g=f.editable();if(!g||"ready"!=g.status)return!1;g=this.snapshots;d||(d=new e(f));if(!1===d.contents)return!1;if(this.currentImage)if(d.equalsContent(this.currentImage)){if(a||d.equalsSelection(this.currentImage))return!1}else!1!==
1132
+ c&&f.fire("change");g.splice(this.index+1,g.length-this.index-1);g.length==this.limit&&g.shift();this.index=g.push(d)-1;this.currentImage=d;!1!==c&&this.refreshState();return!0},restoreImage:function(a){var d=this.editor,c;a.bookmarks&&(d.focus(),c=d.getSelection());this.locked={level:999};this.editor.loadSnapshot(a.contents);a.bookmarks?c.selectBookmarks(a.bookmarks):CKEDITOR.env.ie&&(c=this.editor.document.getBody().$.createTextRange(),c.collapse(!0),c.select());this.locked=null;this.index=a.index;
1133
+ this.currentImage=this.snapshots[this.index];this.update();this.refreshState();d.fire("change")},getNextImage:function(a){var d=this.snapshots,c=this.currentImage,e;if(c)if(a)for(e=this.index-1;0<=e;e--){if(a=d[e],!c.equalsContent(a))return a.index=e,a}else for(e=this.index+1;e<d.length;e++)if(a=d[e],!c.equalsContent(a))return a.index=e,a;return null},redoable:function(){return this.enabled&&this.hasRedo},undoable:function(){return this.enabled&&this.hasUndo},undo:function(){if(this.undoable()){this.save(!0);
1134
+ var a=this.getNextImage(!0);if(a)return this.restoreImage(a),!0}return!1},redo:function(){if(this.redoable()&&(this.save(!0),this.redoable())){var a=this.getNextImage(!1);if(a)return this.restoreImage(a),!0}return!1},update:function(a){if(!this.locked){a||(a=new e(this.editor));for(var d=this.index,c=this.snapshots;0<d&&this.currentImage.equalsContent(c[d-1]);)--d;c.splice(d,this.index-d+1,a);this.index=d;this.currentImage=a}},updateSelection:function(a){if(!this.snapshots.length)return!1;var d=this.snapshots,
1135
+ c=d[d.length-1];return c.equalsContent(a)&&!c.equalsSelection(a)?(this.currentImage=d[d.length-1]=a,!0):!1},lock:function(a,d){if(this.locked)this.locked.level++;else if(a)this.locked={level:1};else{var c=null;if(d)c=!0;else{var f=new e(this.editor,!0);this.currentImage&&this.currentImage.equalsContent(f)&&(c=f)}this.locked={update:c,level:1}}},unlock:function(){if(this.locked&&!--this.locked.level){var a=this.locked.update;this.locked=null;if(!0===a)this.update();else if(a){var d=new e(this.editor,
1136
+ !0);a.equalsContent(d)||this.update()}}},addFilterRule:function(a){this._filterRules.push(a)}};f.navigationKeyCodes={37:1,38:1,39:1,40:1,36:1,35:1,33:1,34:1};f.keyGroups={PRINTABLE:0,FUNCTIONAL:1};f.isNavigationKey=function(a){return!!f.navigationKeyCodes[a]};f.getKeyGroup=function(a){var d=f.keyGroups;return g[a]?d.FUNCTIONAL:d.PRINTABLE};f.getOppositeKeyGroup=function(a){var d=f.keyGroups;return a==d.FUNCTIONAL?d.PRINTABLE:d.FUNCTIONAL};f.ieFunctionalKeysBug=function(a){return CKEDITOR.env.ie&&
1137
+ f.getKeyGroup(a)==f.keyGroups.FUNCTIONAL};var e=CKEDITOR.plugins.undo.Image=function(b,d){this.editor=b;b.fire("beforeUndoImage");var c=b.getSnapshot();c&&(this.contents=a(c,b.undoManager._filterRules));d||(this.bookmarks=(c=c&&b.getSelection())&&c.createBookmarks2(!0));b.fire("afterUndoImage")},m=/\b(?:href|src|name)="[^"]*?"/gi;e.prototype={equalsContent:function(a){var d=this.contents;a=a.contents;CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)&&(d=d.replace(m,""),a=a.replace(m,
1138
+ ""));return d!=a?!1:!0},equalsSelection:function(a){var d=this.bookmarks;a=a.bookmarks;if(d||a){if(!d||!a||d.length!=a.length)return!1;for(var c=0;c<d.length;c++){var e=d[c],f=a[c];if(e.startOffset!=f.startOffset||e.endOffset!=f.endOffset||!CKEDITOR.tools.arrayCompare(e.start,f.start)||!CKEDITOR.tools.arrayCompare(e.end,f.end))return!1}}return!0}};var h=CKEDITOR.plugins.undo.NativeEditingHandler=function(a){this.undoManager=a;this.ignoreInputEvent=!1;this.keyEventsStack=new k;this.lastKeydownImage=
1139
+ null};h.prototype={onKeydown:function(a){var d=a.data.getKey();if(229!==d)if(-1<CKEDITOR.tools.indexOf(l,a.data.getKeystroke()))a.data.preventDefault();else if(this.keyEventsStack.cleanUp(a),a=this.undoManager,this.keyEventsStack.getLast(d)||this.keyEventsStack.push(d),this.lastKeydownImage=new e(a.editor),f.isNavigationKey(d)||this.undoManager.keyGroupChanged(d))if(a.strokesRecorded[0]||a.strokesRecorded[1])a.save(!1,this.lastKeydownImage,!1),a.resetType()},onInput:function(){if(this.ignoreInputEvent)this.ignoreInputEvent=
1140
+ !1;else{var a=this.keyEventsStack.getLast();a||(a=this.keyEventsStack.push(0));this.keyEventsStack.increment(a.keyCode);this.keyEventsStack.getTotalInputs()>=this.undoManager.strokesLimit&&(this.undoManager.type(a.keyCode,!0),this.keyEventsStack.resetInputs())}},onKeyup:function(a){var d=this.undoManager;a=a.data.getKey();var c=this.keyEventsStack.getTotalInputs();this.keyEventsStack.remove(a);if(!(f.ieFunctionalKeysBug(a)&&this.lastKeydownImage&&this.lastKeydownImage.equalsContent(new e(d.editor,
1141
+ !0))))if(0<c)d.type(a);else if(f.isNavigationKey(a))this.onNavigationKey(!0)},onNavigationKey:function(a){var d=this.undoManager;!a&&d.save(!0,null,!1)||d.updateSelection(new e(d.editor));d.resetType()},ignoreInputEventListener:function(){this.ignoreInputEvent=!0},activateInputEventListener:function(){this.ignoreInputEvent=!1},attachListeners:function(){var a=this.undoManager.editor,d=a.editable(),c=this;d.attachListener(d,"keydown",function(a){c.onKeydown(a);if(f.ieFunctionalKeysBug(a.data.getKey()))c.onInput()},
1142
+ null,null,999);d.attachListener(d,CKEDITOR.env.ie?"keypress":"input",c.onInput,c,null,999);d.attachListener(d,"keyup",c.onKeyup,c,null,999);d.attachListener(d,"paste",c.ignoreInputEventListener,c,null,999);d.attachListener(d,"drop",c.ignoreInputEventListener,c,null,999);a.on("afterPaste",c.activateInputEventListener,c,null,999);d.attachListener(d.isInline()?d:a.document.getDocumentElement(),"click",function(){c.onNavigationKey()},null,null,999);d.attachListener(this.undoManager.editor,"blur",function(){c.keyEventsStack.remove(9)},
1143
+ null,null,999)}};var k=CKEDITOR.plugins.undo.KeyEventsStack=function(){this.stack=[]};k.prototype={push:function(a){a=this.stack.push({keyCode:a,inputs:0});return this.stack[a-1]},getLastIndex:function(a){if("number"!=typeof a)return this.stack.length-1;for(var d=this.stack.length;d--;)if(this.stack[d].keyCode==a)return d;return-1},getLast:function(a){a=this.getLastIndex(a);return-1!=a?this.stack[a]:null},increment:function(a){this.getLast(a).inputs++},remove:function(a){a=this.getLastIndex(a);-1!=
1144
+ a&&this.stack.splice(a,1)},resetInputs:function(a){if("number"==typeof a)this.getLast(a).inputs=0;else for(a=this.stack.length;a--;)this.stack[a].inputs=0},getTotalInputs:function(){for(var a=this.stack.length,d=0;a--;)d+=this.stack[a].inputs;return d},cleanUp:function(a){a=a.data.$;a.ctrlKey||a.metaKey||this.remove(17);a.shiftKey||this.remove(16);a.altKey||this.remove(18)}}})();(function(){function a(a){function f(a){var b=!1;c.attachListener(c,"keydown",function(){var c=k.getBody().getElementsByTag(a);
1145
+ if(!b){for(var d=0;d<c.count();d++)c.getItem(d).setCustomData("retain",!0);b=!0}},null,null,1);c.attachListener(c,"keyup",function(){var c=k.getElementsByTag(a);b&&(1==c.count()&&!c.getItem(0).getCustomData("retain")&&CKEDITOR.tools.isEmpty(c.getItem(0).getAttributes())&&c.getItem(0).remove(1),b=!1)})}var g=this.editor;if(g&&!g.isDetached()){var k=a.document,b=k.body,d=k.getElementById("cke_actscrpt");d&&d.parentNode.removeChild(d);(d=k.getElementById("cke_shimscrpt"))&&d.parentNode.removeChild(d);
1146
+ (d=k.getElementById("cke_basetagscrpt"))&&d.parentNode.removeChild(d);b.contentEditable=!0;CKEDITOR.env.ie&&(b.hideFocus=!0,b.disabled=!0,b.removeAttribute("disabled"));delete this._.isLoadingData;this.$=b;k=new CKEDITOR.dom.document(k);this.setup();this.fixInitialSelection();var c=this;CKEDITOR.env.ie&&!CKEDITOR.env.edge&&k.getDocumentElement().addClass(k.$.compatMode);CKEDITOR.env.ie&&!CKEDITOR.env.edge&&g.enterMode!=CKEDITOR.ENTER_P?f("p"):CKEDITOR.env.edge&&15>CKEDITOR.env.version&&g.enterMode!=
1147
+ CKEDITOR.ENTER_DIV&&f("div");if(CKEDITOR.env.webkit||CKEDITOR.env.ie&&10<CKEDITOR.env.version)k.getDocumentElement().on("mousedown",function(a){a.data.getTarget().is("html")&&setTimeout(function(){g.editable().focus()})});l(g);try{g.document.$.execCommand("2D-position",!1,!0)}catch(n){}(CKEDITOR.env.gecko||CKEDITOR.env.ie&&"CSS1Compat"==g.document.$.compatMode)&&this.attachListener(this,"keydown",function(a){var b=a.data.getKeystroke();if(33==b||34==b)if(CKEDITOR.env.ie)setTimeout(function(){g.getSelection().scrollIntoView()},
1148
+ 0);else if(g.window.$.innerHeight>this.$.offsetHeight){var c=g.createRange();c[33==b?"moveToElementEditStart":"moveToElementEditEnd"](this);c.select();a.data.preventDefault()}});CKEDITOR.env.ie&&this.attachListener(k,"blur",function(){try{k.$.selection.empty()}catch(a){}});CKEDITOR.env.iOS&&this.attachListener(k,"touchend",function(){a.focus()});b=g.document.getElementsByTag("title").getItem(0);b.data("cke-title",b.getText());CKEDITOR.env.ie&&(g.document.$.title=this._.docTitle);CKEDITOR.tools.setTimeout(function(){"unloaded"==
1149
+ this.status&&(this.status="ready");g.fire("contentDom");this._.isPendingFocus&&(g.focus(),this._.isPendingFocus=!1);setTimeout(function(){g.fire("dataReady")},0)},0,this)}}function l(a){function f(){var b;a.editable().attachListener(a,"selectionChange",function(){var c=a.getSelection().getSelectedElement();c&&(b&&(b.detachEvent("onresizestart",g),b=null),c.$.attachEvent("onresizestart",g),b=c.$)})}function g(a){a.returnValue=!1}if(CKEDITOR.env.gecko)try{var k=a.document.$;k.execCommand("enableObjectResizing",
1150
+ !1,!a.config.disableObjectResizing);k.execCommand("enableInlineTableEditing",!1,!a.config.disableNativeTableHandles)}catch(b){}else CKEDITOR.env.ie&&11>CKEDITOR.env.version&&a.config.disableObjectResizing&&f(a)}function g(){var a=[];if(8<=CKEDITOR.document.$.documentMode){a.push("html.CSS1Compat [contenteditable\x3dfalse]{min-height:0 !important}");var f=[],g;for(g in CKEDITOR.dtd.$removeEmpty)f.push("html.CSS1Compat "+g+"[contenteditable\x3dfalse]");a.push(f.join(",")+"{display:inline-block}")}else CKEDITOR.env.gecko&&
1151
+ (a.push("html{height:100% !important}"),a.push("img:-moz-broken{-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}"));a.push("html{cursor:text;*cursor:auto}");a.push("img,input,textarea{cursor:default}");return a.join("\n")}var f;CKEDITOR.plugins.add("wysiwygarea",{init:function(a){a.config.fullPage&&a.addFeature({allowedContent:"html head title; style [media,type]; body (*)[id]; meta link [*]",requiredContent:"body"});a.addMode("wysiwyg",function(g){function h(c){c&&c.removeListener();
1152
+ a.isDestroyed()||a.isDetached()||(a.editable(new f(a,b.$.contentWindow.document.body)),a.setData(a.getData(1),g))}var k="document.open();"+(CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"")+"document.close();",k=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie&&!CKEDITOR.env.edge?"javascript:void(function(){"+encodeURIComponent(k)+"}())":"",b=CKEDITOR.dom.element.createFromHtml('\x3ciframe src\x3d"'+k+'" frameBorder\x3d"0"\x3e\x3c/iframe\x3e');b.setStyles({width:"100%",height:"100%"});
1153
+ b.addClass("cke_wysiwyg_frame").addClass("cke_reset");k=a.ui.space("contents");k.append(b);var d=CKEDITOR.env.ie&&!CKEDITOR.env.edge||CKEDITOR.env.gecko;if(d)b.on("load",h);var c=a.title,l=a.fire("ariaEditorHelpLabel",{}).label;c&&(CKEDITOR.env.ie&&l&&(c+=", "+l),b.setAttribute("title",c));if(l){var c=CKEDITOR.tools.getNextId(),q=CKEDITOR.dom.element.createFromHtml('\x3cspan id\x3d"'+c+'" class\x3d"cke_voice_label"\x3e'+l+"\x3c/span\x3e");k.append(q,1);b.setAttribute("aria-describedby",c)}a.on("beforeModeUnload",
1154
+ function(a){a.removeListener();q&&q.remove()});b.setAttributes({tabIndex:a.tabIndex,allowTransparency:"true"});!d&&h();a.fire("ariaWidget",b)})}});CKEDITOR.editor.prototype.addContentsCss=function(a){var f=this.config,g=f.contentsCss;CKEDITOR.tools.isArray(g)||(f.contentsCss=g?[g]:[]);f.contentsCss.push(a)};f=CKEDITOR.tools.createClass({$:function(){this.base.apply(this,arguments);this._.frameLoadedHandler=CKEDITOR.tools.addFunction(function(e){CKEDITOR.tools.setTimeout(a,0,this,e)},this);this._.docTitle=
1155
+ this.getWindow().getFrame().getAttribute("title")},base:CKEDITOR.editable,proto:{setData:function(a,f){var h=this.editor;if(f)this.setHtml(a),this.fixInitialSelection(),h.fire("dataReady");else{this._.isLoadingData=!0;h._.dataStore={id:1};var k=h.config,b=k.fullPage,d=k.docType,c=CKEDITOR.tools.buildStyleHtml(g()).replace(/<style>/,'\x3cstyle data-cke-temp\x3d"1"\x3e');b||(c+=CKEDITOR.tools.buildStyleHtml(h.config.contentsCss));var l=k.baseHref?'\x3cbase href\x3d"'+k.baseHref+'" data-cke-temp\x3d"1" /\x3e':
1156
+ "";b&&(a=a.replace(/<!DOCTYPE[^>]*>/i,function(a){h.docType=d=a;return""}).replace(/<\?xml\s[^\?]*\?>/i,function(a){h.xmlDeclaration=a;return""}));a=h.dataProcessor.toHtml(a);b?(/<body[\s|>]/.test(a)||(a="\x3cbody\x3e"+a),/<html[\s|>]/.test(a)||(a="\x3chtml\x3e"+a+"\x3c/html\x3e"),/<head[\s|>]/.test(a)?/<title[\s|>]/.test(a)||(a=a.replace(/<head[^>]*>/,"$\x26\x3ctitle\x3e\x3c/title\x3e")):a=a.replace(/<html[^>]*>/,"$\x26\x3chead\x3e\x3ctitle\x3e\x3c/title\x3e\x3c/head\x3e"),l&&(a=a.replace(/<head[^>]*?>/,
1157
+ "$\x26"+l)),a=a.replace(/<\/head\s*>/,c+"$\x26"),a=d+a):a=k.docType+'\x3chtml dir\x3d"'+k.contentsLangDirection+'" lang\x3d"'+(k.contentsLanguage||h.langCode)+'"\x3e\x3chead\x3e\x3ctitle\x3e'+this._.docTitle+"\x3c/title\x3e"+l+c+"\x3c/head\x3e\x3cbody"+(k.bodyId?' id\x3d"'+k.bodyId+'"':"")+(k.bodyClass?' class\x3d"'+k.bodyClass+'"':"")+"\x3e"+a+"\x3c/body\x3e\x3c/html\x3e";CKEDITOR.env.gecko&&(a=a.replace(/<body/,'\x3cbody contenteditable\x3d"true" '),2E4>CKEDITOR.env.version&&(a=a.replace(/<body[^>]*>/,
1158
+ "$\x26\x3c!-- cke-content-start --\x3e")));k='\x3cscript id\x3d"cke_actscrpt" type\x3d"text/javascript"'+(CKEDITOR.env.ie?' defer\x3d"defer" ':"")+"\x3evar wasLoaded\x3d0;function onload(){if(!wasLoaded)window.parent.CKEDITOR.tools.callFunction("+this._.frameLoadedHandler+",window);wasLoaded\x3d1;}"+(CKEDITOR.env.ie?"onload();":'document.addEventListener("DOMContentLoaded", onload, false );')+"\x3c/script\x3e";CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(k+='\x3cscript id\x3d"cke_shimscrpt"\x3ewindow.parent.CKEDITOR.tools.enableHtml5Elements(document)\x3c/script\x3e');
1159
+ l&&CKEDITOR.env.ie&&10>CKEDITOR.env.version&&(k+='\x3cscript id\x3d"cke_basetagscrpt"\x3evar baseTag \x3d document.querySelector( "base" );baseTag.href \x3d baseTag.href;\x3c/script\x3e');a=a.replace(/(?=\s*<\/(:?head)>)/,k);this.clearCustomData();this.clearListeners();h.fire("contentDomUnload");var q=this.getDocument();try{q.write(a)}catch(t){setTimeout(function(){q.write(a)},0)}}},getData:function(a){if(a)return this.getHtml();a=this.editor;var f=a.config,g=f.fullPage,k=g&&a.docType,b=g&&a.xmlDeclaration,
1160
+ d=this.getDocument(),g=g?d.getDocumentElement().getOuterHtml():d.getBody().getHtml();CKEDITOR.env.gecko&&f.enterMode!=CKEDITOR.ENTER_BR&&(g=g.replace(/<br>(?=\s*(:?$|<\/body>))/,""));g=a.dataProcessor.toDataFormat(g);b&&(g=b+"\n"+g);k&&(g=k+"\n"+g);return g},focus:function(){this._.isLoadingData?this._.isPendingFocus=!0:f.baseProto.focus.call(this)},detach:function(){var a=this.editor,g=a.document,a=a.container.findOne("iframe.cke_wysiwyg_frame");f.baseProto.detach.call(this);this.clearCustomData(this._.expandoNumber);
1159
1161
  g.getDocumentElement().clearCustomData();CKEDITOR.tools.removeFunction(this._.frameLoadedHandler);a&&(a.clearCustomData(),(g=a.removeCustomData("onResize"))&&g.removeListener(),a.isDetached()||a.remove())}}})})();CKEDITOR.config.disableObjectResizing=!1;CKEDITOR.config.disableNativeTableHandles=!0;CKEDITOR.config.disableNativeSpellChecker=!0;CKEDITOR.plugins.add("interactionsource",{lang:"en",requires:"dialog",icons:"sourcedialog,sourcedialog-rtl",hidpi:!0,init:function(a){function l(a){if(!a||"function"!==
1160
1162
  typeof a.getName||"div"!==a.getName())return!1;try{var e=a.getAttribute("class")||"",b=a.getAttribute("data-units")||"";if(-1!==e.indexOf("col-12")&&"12"===b)return!0;a=["grid-row","qti-itemBody","item-editor-drop-area"];for(b=0;b<a.length;b++)if(-1!==e.indexOf(a[b]))return!0;return!1}catch(d){return console.error("Error in isBoundaryElement:",d),!1}}function g(a){if(!a||"function"!==typeof a.getName||"function"!==typeof a.getAttribute)return!1;try{if("div"===a.getName()&&!a.getAttribute("data-qti-class")){if(l(a))return!1;
1161
1163
  if("function"===typeof a.hasClass&&a.hasClass("custom-interaction-wrapper"))return!0;if("function"===typeof a.getChildren){var e=a.getChildren();for(a=0;a<e.count();a++){var b=e.getItem(a);if(f(b))return!0}}}return!1}catch(d){return console.error("Error in isCustomWrapperDiv:",d),!1}}function f(a){if(!a||"function"!==typeof a.getAttribute)return!1;try{return a.getAttribute("data-serial")&&a.getAttribute("data-qti-class")}catch(e){return console.error("Error in isInteractionElement:",e),!1}}function e(){try{a.interactionElement=