1 line
22 KiB
JavaScript
1 line
22 KiB
JavaScript
!function(e,t){"use strict";function n(e,t){for(var n,o=[],i=0;i<e.length;++i){if(n=l[e[i]]||r(e[i]),!n)throw"module definition dependecy not found: "+e[i];o.push(n)}t.apply(null,o)}function o(e,o,r){if("string"!=typeof e)throw"invalid module definition, module id must be defined and be a string";if(o===t)throw"invalid module definition, dependencies must be specified";if(r===t)throw"invalid module definition, definition function must be specified";n(o,function(){l[e]=r.apply(null,arguments)})}function r(t){for(var n=e,o=t.split(/[.\/]/),r=0;r<o.length;++r){if(!n[o[r]])return;n=n[o[r]]}return n}function i(n){for(var o=0;o<n.length;o++){for(var r=e,i=n[o],a=i.split(/[.\/]/),c=0;c<a.length-1;++c)r[a[c]]===t&&(r[a[c]]={}),r=r[a[c]];r[a[a.length-1]]=l[i]}}var l={};o("tinymce/tableplugin/TableGrid",["tinymce/util/Tools","tinymce/Env"],function(e,t){function n(e,t){return parseInt(e.getAttribute(t)||1,10)}var o=e.each;return function(r,i){function l(){var e=0;B=[],o(["thead","tbody","tfoot"],function(t){var r=E.select("> "+t+" tr",i);o(r,function(r,i){i+=e,o(E.select("> td, > th",r),function(e,o){var r,l,a,c;if(B[i])for(;B[i][o];)o++;for(a=n(e,"rowspan"),c=n(e,"colspan"),l=i;i+a>l;l++)for(B[l]||(B[l]=[]),r=o;o+c>r;r++)B[l][r]={part:t,real:l==i&&r==o,elm:e,rowspan:a,colspan:c}})}),e+=r.length})}function a(e,t){return e=e.cloneNode(t),e.removeAttribute("id"),e}function c(e,t){var n;return n=B[t],n?n[e]:void 0}function s(e,t,n){e&&(n=parseInt(n,10),1===n?e.removeAttribute(t,1):e.setAttribute(t,n,1))}function d(e){return e&&(E.hasClass(e.elm,"mce-item-selected")||e==D)}function u(){var e=[];return o(i.rows,function(t){o(t.cells,function(n){return E.hasClass(n,"mce-item-selected")||n==D.elm?(e.push(t),!1):void 0})}),e}function m(){var e=E.createRng();e.setStartAfter(i),e.setEndAfter(i),I.setRng(e),E.remove(i)}function f(n){var i,l={};return r.settings.table_clone_elements!==!1&&(l=e.makeMap((r.settings.table_clone_elements||"strong em b i span font h1 h2 h3 h4 h5 h6 p div").toUpperCase(),/[ ,]/)),e.walk(n,function(e){var r;return 3==e.nodeType?(o(E.getParents(e.parentNode,null,n).reverse(),function(e){l[e.nodeName]&&(e=a(e,!1),i?r&&r.appendChild(e):i=r=e,r=e)}),r&&(r.innerHTML=t.ie?" ":'<br data-mce-bogus="1" />'),!1):void 0},"childNodes"),n=a(n,!1),s(n,"rowSpan",1),s(n,"colSpan",1),i?n.appendChild(i):t.ie||(n.innerHTML='<br data-mce-bogus="1" />'),n}function g(){var e,t=E.createRng();return o(E.select("tr",i),function(e){0===e.cells.length&&E.remove(e)}),0===E.select("tr",i).length?(t.setStartBefore(i),t.setEndBefore(i),I.setRng(t),void E.remove(i)):(o(E.select("thead,tbody,tfoot",i),function(e){0===e.rows.length&&E.remove(e)}),l(),e=B[Math.min(B.length-1,k.y)],void(e&&(I.select(e[Math.min(e.length-1,k.x)].elm,!0),I.collapse(!0))))}function p(e,t,n,o){var r,i,l,a,c;for(r=B[t][e].elm.parentNode,l=1;n>=l;l++)if(r=E.getNext(r,"tr")){for(i=e;i>=0;i--)if(c=B[t+l][i].elm,c.parentNode==r){for(a=1;o>=a;a++)E.insertAfter(f(c),c);break}if(-1==i)for(a=1;o>=a;a++)r.insertBefore(f(r.cells[0]),r.cells[0])}}function h(){o(B,function(e,t){o(e,function(e,o){var r,i,l;if(d(e)&&(e=e.elm,r=n(e,"colspan"),i=n(e,"rowspan"),r>1||i>1)){for(s(e,"rowSpan",1),s(e,"colSpan",1),l=0;r-1>l;l++)E.insertAfter(f(e),e);p(o,t,i-1,r)}})})}function b(t,n,r){var i,a,u,m,f,p,b,v,w,y,x;if(t?(i=T(t),a=i.x,u=i.y,m=a+(n-1),f=u+(r-1)):(k=M=null,o(B,function(e,t){o(e,function(e,n){d(e)&&(k||(k={x:n,y:t}),M={x:n,y:t})})}),a=k.x,u=k.y,m=M.x,f=M.y),v=c(a,u),w=c(m,f),v&&w&&v.part==w.part){for(h(),l(),v=c(a,u).elm,s(v,"colSpan",m-a+1),s(v,"rowSpan",f-u+1),b=u;f>=b;b++)for(p=a;m>=p;p++)B[b]&&B[b][p]&&(t=B[b][p].elm,t!=v&&(y=e.grep(t.childNodes),o(y,function(e){v.appendChild(e)}),y.length&&(y=e.grep(v.childNodes),x=0,o(y,function(e){"BR"==e.nodeName&&E.getAttrib(e,"data-mce-bogus")&&x++<y.length-1&&v.removeChild(e)})),E.remove(t)));g()}}function v(e){var t,r,i,l,c,u,m,g,p;for(o(B,function(n,r){return o(n,function(n){return d(n)&&(n=n.elm,c=n.parentNode,u=a(c,!1),t=r,e)?!1:void 0}),e?!t:void 0}),l=0;l<B[0].length;l++)if(B[t][l]&&(r=B[t][l].elm,r!=i)){if(e){if(t>0&&B[t-1][l]&&(g=B[t-1][l].elm,p=n(g,"rowSpan"),p>1)){s(g,"rowSpan",p+1);continue}}else if(p=n(r,"rowspan"),p>1){s(r,"rowSpan",p+1);continue}m=f(r),s(m,"colSpan",r.colSpan),u.appendChild(m),i=r}u.hasChildNodes()&&(e?c.parentNode.insertBefore(u,c):E.insertAfter(u,c))}function w(e){var t,r;o(B,function(n){return o(n,function(n,o){return d(n)&&(t=o,e)?!1:void 0}),e?!t:void 0}),o(B,function(o,i){var l,a,c;o[t]&&(l=o[t].elm,l!=r&&(c=n(l,"colspan"),a=n(l,"rowspan"),1==c?e?(l.parentNode.insertBefore(f(l),l),p(t,i,a-1,c)):(E.insertAfter(f(l),l),p(t,i,a-1,c)):s(l,"colSpan",l.colSpan+1),r=l))})}function y(){var t=[];o(B,function(r){o(r,function(r,i){d(r)&&-1===e.inArray(t,i)&&(o(B,function(e){var t,o=e[i].elm;t=n(o,"colSpan"),t>1?s(o,"colSpan",t-1):E.remove(o)}),t.push(i))})}),g()}function x(){function e(e){var t,r,i;t=E.getNext(e,"tr"),o(e.cells,function(e){var t=n(e,"rowSpan");t>1&&(s(e,"rowSpan",t-1),r=T(e),p(r.x,r.y,1,1))}),r=T(e.cells[0]),o(B[r.y],function(e){var t;e=e.elm,e!=i&&(t=n(e,"rowSpan"),1>=t?E.remove(e):s(e,"rowSpan",t-1),i=e)})}var t;t=u(),o(t.reverse(),function(t){e(t)}),g()}function C(){var e=u();return E.remove(e),g(),e}function R(){var e=u();return o(e,function(t,n){e[n]=a(t,!0)}),e}function S(e,t){var n=u(),r=n[t?0:n.length-1],i=r.cells.length;e&&(o(B,function(e){var t;return i=0,o(e,function(e){e.real&&(i+=e.colspan),e.elm.parentNode==r&&(t=1)}),t?!1:void 0}),t||e.reverse(),o(e,function(e){var n,o,l=e.cells.length;for(n=0;l>n;n++)o=e.cells[n],s(o,"colSpan",1),s(o,"rowSpan",1);for(n=l;i>n;n++)e.appendChild(f(e.cells[l-1]));for(n=i;l>n;n++)E.remove(e.cells[n]);t?r.parentNode.insertBefore(e,r):E.insertAfter(e,r)}),E.removeClass(E.select("td.mce-item-selected,th.mce-item-selected"),"mce-item-selected"))}function T(e){var t;return o(B,function(n,r){return o(n,function(n,o){return n.elm==e?(t={x:o,y:r},!1):void 0}),!t}),t}function N(e){k=T(e)}function P(){var e,t;return e=t=0,o(B,function(n,r){o(n,function(n,o){var i,l;d(n)&&(n=B[r][o],o>e&&(e=o),r>t&&(t=r),n.real&&(i=n.colspan-1,l=n.rowspan-1,i&&o+i>e&&(e=o+i),l&&r+l>t&&(t=r+l)))})}),{x:e,y:t}}function A(e){var t,n,o,r,i,l,a,c,s,d;if(M=T(e),k&&M){for(t=Math.min(k.x,M.x),n=Math.min(k.y,M.y),o=Math.max(k.x,M.x),r=Math.max(k.y,M.y),i=o,l=r,d=n;l>=d;d++)e=B[d][t],e.real||t-(e.colspan-1)<t&&(t-=e.colspan-1);for(s=t;i>=s;s++)e=B[n][s],e.real||n-(e.rowspan-1)<n&&(n-=e.rowspan-1);for(d=n;r>=d;d++)for(s=t;o>=s;s++)e=B[d][s],e.real&&(a=e.colspan-1,c=e.rowspan-1,a&&s+a>i&&(i=s+a),c&&d+c>l&&(l=d+c));for(E.removeClass(E.select("td.mce-item-selected,th.mce-item-selected"),"mce-item-selected"),d=n;l>=d;d++)for(s=t;i>=s;s++)B[d][s]&&E.addClass(B[d][s].elm,"mce-item-selected")}}var B,k,M,D,I=r.selection,E=I.dom;i=i||E.getParent(I.getStart(),"table"),l(),D=E.getParent(I.getStart(),"th,td"),D&&(k=T(D),M=P(),D=c(k.x,k.y)),e.extend(this,{deleteTable:m,split:h,merge:b,insertRow:v,insertCol:w,deleteCols:y,deleteRows:x,cutRows:C,copyRows:R,pasteRows:S,getPos:T,setStartCell:N,setEndCell:A})}}),o("tinymce/tableplugin/Quirks",["tinymce/util/VK","tinymce/Env","tinymce/util/Tools"],function(e,t,n){function o(e,t){return parseInt(e.getAttribute(t)||1,10)}var r=n.each;return function(n){function i(){function t(t){function i(e,o){var r=e?"previousSibling":"nextSibling",i=n.dom.getParent(o,"tr"),a=i[r];if(a)return h(n,o,a,e),t.preventDefault(),!0;var d=n.dom.getParent(i,"table"),u=i.parentNode,m=u.nodeName.toLowerCase();if("tbody"===m||m===(e?"tfoot":"thead")){var f=l(e,d,u,"tbody");if(null!==f)return c(e,f,o)}return s(e,i,r,d)}function l(e,t,o,r){var i=n.dom.select(">"+r,t),l=i.indexOf(o);if(e&&0===l||!e&&l===i.length-1)return a(e,t);if(-1===l){var c="thead"===o.tagName.toLowerCase()?0:i.length-1;return i[c]}return i[l+(e?-1:1)]}function a(e,t){var o=e?"thead":"tfoot",r=n.dom.select(">"+o,t);return 0!==r.length?r[0]:null}function c(e,o,r){var i=d(o,e);return i&&h(n,r,i,e),t.preventDefault(),!0}function s(e,o,r,l){var a=l[r];if(a)return u(a),!0;var c=n.dom.getParent(l,"td,th");if(c)return i(e,c,t);var s=d(o,!e);return u(s),t.preventDefault(),!1}function d(e,t){var o=e&&e[t?"lastChild":"firstChild"];return o&&"BR"===o.nodeName?n.dom.getParent(o,"td,th"):o}function u(e){n.selection.setCursorLocation(e,0)}function m(){return w==e.UP||w==e.DOWN}function f(e){var t=e.selection.getNode(),n=e.dom.getParent(t,"tr");return null!==n}function g(e){for(var t=0,n=e;n.previousSibling;)n=n.previousSibling,t+=o(n,"colspan");return t}function p(e,t){var n=0,i=0;return r(e.children,function(e,r){return n+=o(e,"colspan"),i=r,n>t?!1:void 0}),i}function h(e,t,o,r){var i=g(n.dom.getParent(t,"td,th")),l=p(o,i),a=o.childNodes[l],c=d(a,r);u(c||a)}function b(e){var t=n.selection.getNode(),o=n.dom.getParent(t,"td,th"),r=n.dom.getParent(e,"td,th");return o&&o!==r&&v(o,r)}function v(e,t){return n.dom.getParent(e,"TABLE")===n.dom.getParent(t,"TABLE")}var w=t.keyCode;if(m()&&f(n)){var y=n.selection.getNode();setTimeout(function(){b(y)&&i(!t.shiftKey&&w===e.UP,y,t)},0)}}n.on("KeyDown",function(e){t(e)})}function l(){function e(e,t){var n,o=t.ownerDocument,r=o.createRange();return r.setStartBefore(t),r.setEnd(e.endContainer,e.endOffset),n=o.createElement("body"),n.appendChild(r.cloneContents()),0===n.innerHTML.replace(/<(br|img|object|embed|input|textarea)[^>]*>/gi,"-").replace(/<[^>]+>/g,"").length}n.on("KeyDown",function(t){var o,r,i=n.dom;(37==t.keyCode||38==t.keyCode)&&(o=n.selection.getRng(),r=i.getParent(o.startContainer,"table"),r&&n.getBody().firstChild==r&&e(o,r)&&(o=i.createRng(),o.setStartBefore(r),o.setEndBefore(r),n.selection.setRng(o),t.preventDefault()))})}function a(){n.on("KeyDown SetContent VisualAid",function(){var e;for(e=n.getBody().lastChild;e;e=e.previousSibling)if(3==e.nodeType){if(e.nodeValue.length>0)break}else if(1==e.nodeType&&!e.getAttribute("data-mce-bogus"))break;e&&"TABLE"==e.nodeName&&(n.settings.forced_root_block?n.dom.add(n.getBody(),n.settings.forced_root_block,n.settings.forced_root_block_attrs,t.ie&&t.ie<11?" ":'<br data-mce-bogus="1" />'):n.dom.add(n.getBody(),"br",{"data-mce-bogus":"1"}))}),n.on("PreProcess",function(e){var t=e.node.lastChild;t&&("BR"==t.nodeName||1==t.childNodes.length&&("BR"==t.firstChild.nodeName||" "==t.firstChild.nodeValue))&&t.previousSibling&&"TABLE"==t.previousSibling.nodeName&&n.dom.remove(t)})}function c(){function e(e,t,n,o){var r,i,l,a=3,c=e.dom.getParent(t.startContainer,"TABLE");return c&&(r=c.parentNode),i=t.startContainer.nodeType==a&&0===t.startOffset&&0===t.endOffset&&o&&("TR"==n.nodeName||n==r),l=("TD"==n.nodeName||"TH"==n.nodeName)&&!o,i||l}function t(){var t=n.selection.getRng(),o=n.selection.getNode(),r=n.dom.getParent(t.startContainer,"TD,TH");if(e(n,t,o,r)){r||(r=o);for(var i=r.lastChild;i.lastChild;)i=i.lastChild;t.setEnd(i,i.nodeValue.length),n.selection.setRng(t)}}n.on("KeyDown",function(){t()}),n.on("MouseDown",function(e){2!=e.button&&t()})}t.webkit&&(i(),c()),t.gecko&&(l(),a()),t.ie>10&&(l(),a())}}),o("tinymce/tableplugin/CellSelection",["tinymce/tableplugin/TableGrid","tinymce/dom/TreeWalker","tinymce/util/Tools"],function(e,t,n){return function(o){function r(){o.getBody().style.webkitUserSelect="",d&&(o.dom.removeClass(o.dom.select("td.mce-item-selected,th.mce-item-selected"),"mce-item-selected"),d=!1)}function i(t){var n,r,i=t.target;if(a&&(l||i!=a)&&("TD"==i.nodeName||"TH"==i.nodeName)){r=s.getParent(i,"table"),r==c&&(l||(l=new e(o,r),l.setStartCell(a),o.getBody().style.webkitUserSelect="none"),l.setEndCell(i),d=!0),n=o.selection.getSel();try{n.removeAllRanges?n.removeAllRanges():n.empty()}catch(u){}t.preventDefault()}}var l,a,c,s=o.dom,d=!0;return o.on("MouseDown",function(e){2!=e.button&&(r(),a=s.getParent(e.target,"td,th"),c=s.getParent(a,"table"))}),s.bind(o.getDoc(),"mouseover",i),o.on("remove",function(){s.unbind(o.getDoc(),"mouseover",i)}),o.on("MouseUp",function(){function e(e,o){var i=new t(e,e);do{if(3==e.nodeType&&0!==n.trim(e.nodeValue).length)return void(o?r.setStart(e,0):r.setEnd(e,e.nodeValue.length));if("BR"==e.nodeName)return void(o?r.setStartBefore(e):r.setEndBefore(e))}while(e=o?i.next():i.prev())}var r,i,d,u,m,f,g=o.selection;if(a){if(l&&(o.getBody().style.webkitUserSelect=""),i=s.select("td.mce-item-selected,th.mce-item-selected"),i.length>0){r=s.createRng(),u=i[0],f=i[i.length-1],r.setStartBefore(u),r.setEndAfter(u),e(u,1),d=new t(u,s.getParent(i[0],"table"));do if("TD"==u.nodeName||"TH"==u.nodeName){if(!s.hasClass(u,"mce-item-selected"))break;m=u}while(u=d.next());e(m),g.setRng(r)}o.nodeChanged(),a=l=c=null}}),o.on("KeyUp",function(){r()}),{clear:r}}}),o("tinymce/tableplugin/Plugin",["tinymce/tableplugin/TableGrid","tinymce/tableplugin/Quirks","tinymce/tableplugin/CellSelection","tinymce/util/Tools","tinymce/dom/TreeWalker","tinymce/Env","tinymce/PluginManager"],function(e,t,n,o,r,i,l){function a(o){function r(e){return e?e.replace(/px$/,""):""}function l(e){return/^[0-9]+$/.test(e)&&(e+="px"),e}function a(e){c("left center right".split(" "),function(t){o.formatter.remove("align"+t,{},e)})}function s(){var e,t,n,s=o.dom;e=o.dom.getParent(o.selection.getStart(),"table"),n=!1,t={width:r(s.getStyle(e,"width")||s.getAttrib(e,"width")),height:r(s.getStyle(e,"height")||s.getAttrib(e,"height")),cellspacing:s.getAttrib(e,"cellspacing"),cellpadding:s.getAttrib(e,"cellpadding"),border:s.getAttrib(e,"border"),caption:!!s.select("caption",e)[0]},c("left center right".split(" "),function(n){o.formatter.matchNode(e,"align"+n)&&(t.align=n)}),o.windowManager.open({title:"Table properties",items:{type:"form",layout:"grid",columns:2,data:t,defaults:{type:"textbox",maxWidth:50},items:[n?{label:"Cols",name:"cols",disabled:!0}:null,n?{label:"Rows",name:"rows",disabled:!0}:null,{label:"Width",name:"width"},{label:"Height",name:"height"},{label:"Cell spacing",name:"cellspacing"},{label:"Cell padding",name:"cellpadding"},{label:"Border",name:"border"},{label:"Caption",name:"caption",type:"checkbox"},{label:"Alignment",minWidth:90,name:"align",type:"listbox",text:"None",maxWidth:null,values:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]}]},onsubmit:function(){var t,n=this.toJSON();o.undoManager.transact(function(){o.dom.setAttribs(e,{cellspacing:n.cellspacing,cellpadding:n.cellpadding,border:n.border}),o.dom.setStyles(e,{width:l(n.width),height:l(n.height)}),t=s.select("caption",e)[0],t&&!n.caption&&s.remove(t),!t&&n.caption&&(t=s.create("caption"),i.ie||(t.innerHTML='<br data-mce-bogus="1"/>'),e.insertBefore(t,e.firstChild)),a(e),n.align&&o.formatter.apply("align"+n.align,{},e),o.focus(),o.addVisual()})}})}function d(e,t){o.windowManager.open({title:"Merge cells",body:[{label:"Cols",name:"cols",type:"textbox",size:10},{label:"Rows",name:"rows",type:"textbox",size:10}],onsubmit:function(){var n=this.toJSON();o.undoManager.transact(function(){e.merge(t,n.cols,n.rows)})}})}function u(){var e,t,n=o.dom,i=[];i=o.dom.select("td.mce-item-selected,th.mce-item-selected"),e=o.dom.getParent(o.selection.getStart(),"td,th"),!i.length&&e&&i.push(e),e=e||i[0],t={width:r(n.getStyle(e,"width")||n.getAttrib(e,"width")),height:r(n.getStyle(e,"height")||n.getAttrib(e,"height")),scope:n.getAttrib(e,"scope")},t.type=e.nodeName.toLowerCase(),c("left center right".split(" "),function(n){o.formatter.matchNode(e,"align"+n)&&(t.align=n)}),o.windowManager.open({title:"Cell properties",items:{type:"form",data:t,layout:"grid",columns:2,defaults:{type:"textbox",maxWidth:50},items:[{label:"Width",name:"width"},{label:"Height",name:"height"},{label:"Cell type",name:"type",type:"listbox",text:"None",minWidth:90,maxWidth:null,menu:[{text:"Cell",value:"td"},{text:"Header cell",value:"th"}]},{label:"Scope",name:"scope",type:"listbox",text:"None",minWidth:90,maxWidth:null,menu:[{text:"None",value:""},{text:"Row",value:"row"},{text:"Column",value:"col"},{text:"Row group",value:"rowgroup"},{text:"Column group",value:"colgroup"}]},{label:"Alignment",name:"align",type:"listbox",text:"None",minWidth:90,maxWidth:null,values:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]}]},onsubmit:function(){var e=this.toJSON();o.undoManager.transact(function(){c(i,function(t){o.dom.setAttrib(t,"scope",e.scope),o.dom.setStyles(t,{width:l(e.width),height:l(e.height)}),e.type&&t.nodeName.toLowerCase()!=e.type&&(t=n.rename(t,e.type)),a(t),e.align&&o.formatter.apply("align"+e.align,{},t)}),o.focus()})}})}function m(){var e,t,n,i,s=o.dom,d=[];e=o.dom.getParent(o.selection.getStart(),"table"),t=o.dom.getParent(o.selection.getStart(),"td,th"),c(e.rows,function(e){c(e.cells,function(n){return s.hasClass(n,"mce-item-selected")||n==t?(d.push(e),!1):void 0})}),n=d[0],i={height:r(s.getStyle(n,"height")||s.getAttrib(n,"height")),scope:s.getAttrib(n,"scope")},i.type=n.parentNode.nodeName.toLowerCase(),c("left center right".split(" "),function(e){o.formatter.matchNode(n,"align"+e)&&(i.align=e)}),o.windowManager.open({title:"Row properties",items:{type:"form",data:i,columns:2,defaults:{type:"textbox"},items:[{type:"listbox",name:"type",label:"Row type",text:"None",maxWidth:null,menu:[{text:"Header",value:"thead"},{text:"Body",value:"tbody"},{text:"Footer",value:"tfoot"}]},{type:"listbox",name:"align",label:"Alignment",text:"None",maxWidth:null,menu:[{text:"None",value:""},{text:"Left",value:"left"},{text:"Center",value:"center"},{text:"Right",value:"right"}]},{label:"Height",name:"height"}]},onsubmit:function(){var e,t,n,r=this.toJSON();o.undoManager.transact(function(){var i=r.type;c(d,function(c){o.dom.setAttrib(c,"scope",r.scope),o.dom.setStyles(c,{height:l(r.height)}),i!=c.parentNode.nodeName.toLowerCase()&&(e=s.getParent(c,"table"),t=c.parentNode,n=s.select(i,e)[0],n||(n=s.create(i),e.firstChild?e.insertBefore(n,e.firstChild):e.appendChild(n)),n.appendChild(c),t.hasChildNodes()||s.remove(t)),a(c),r.align&&o.formatter.apply("align"+r.align,{},c)}),o.focus()})}})}function f(e){return function(){o.execCommand(e)}}function g(e,t){var n,r,l;for(l='<table style="width: 100%"><tbody>',n=0;t>n;n++){for(l+="<tr>",r=0;e>r;r++)l+="<td>"+(i.ie?" ":"<br>")+"</td>";l+="</tr>"}l+="</tbody></table>",o.insertContent(l)}function p(e,t){function n(){e.disabled(!o.dom.getParent(o.selection.getStart(),t)),o.selection.selectorChanged(t,function(t){e.disabled(!t)})}o.initialized?n():o.on("init",n)}function h(){p(this,"table")}function b(){p(this,"td,th")}function v(){var e="";e='<table role="presentation" class="mce-grid mce-grid-border">';for(var t=0;10>t;t++){e+="<tr>";for(var n=0;10>n;n++)e+='<td><a href="#" data-mce-index="'+n+","+t+'"></a></td>';e+="</tr>"}return e+="</table>",e+='<div class="mce-text-center">0 x 0</div>'}var w,y,x=this;o.addMenuItem("inserttable",{text:"Insert table",icon:"table",context:"table",onhide:function(){o.dom.removeClass(this.menu.items()[0].getEl().getElementsByTagName("a"),"mce-active")},menu:[{type:"container",html:v(),onmousemove:function(e){var t,n,r=e.target;if("A"==r.nodeName){var i=o.dom.getParent(r,"table"),l=r.getAttribute("data-mce-index"),a=e.control.parent().rel;if(l!=this.lastPos){if(l=l.split(","),l[0]=parseInt(l[0],10),l[1]=parseInt(l[1],10),e.control.isRtl()||"tl-tr"==a){for(n=9;n>=0;n--)for(t=0;10>t;t++)o.dom.toggleClass(i.rows[n].childNodes[t].firstChild,"mce-active",t>=l[0]&&n<=l[1]);l[0]=9-l[0],i.nextSibling.innerHTML=l[0]+" x "+(l[1]+1)}else{for(n=0;10>n;n++)for(t=0;10>t;t++)o.dom.toggleClass(i.rows[n].childNodes[t].firstChild,"mce-active",t<=l[0]&&n<=l[1]);i.nextSibling.innerHTML=l[0]+1+" x "+(l[1]+1)}this.lastPos=l}}},onclick:function(e){"A"==e.target.nodeName&&this.lastPos&&(e.preventDefault(),g(this.lastPos[0]+1,this.lastPos[1]+1),this.parent().cancel())}}]}),o.addMenuItem("tableprops",{text:"Table properties",context:"table",onPostRender:h,onclick:s}),o.addMenuItem("deletetable",{text:"Delete table",context:"table",onPostRender:h,cmd:"mceTableDelete"}),o.addMenuItem("cell",{separator:"before",text:"Cell",context:"table",menu:[{text:"Cell properties",onclick:f("mceTableCellProps"),onPostRender:b},{text:"Merge cells",onclick:f("mceTableMergeCells"),onPostRender:b},{text:"Split cell",onclick:f("mceTableSplitCells"),onPostRender:b}]}),o.addMenuItem("row",{text:"Row",context:"table",menu:[{text:"Insert row before",onclick:f("mceTableInsertRowBefore"),onPostRender:b},{text:"Insert row after",onclick:f("mceTableInsertRowAfter"),onPostRender:b},{text:"Delete row",onclick:f("mceTableDeleteRow"),onPostRender:b},{text:"Row properties",onclick:f("mceTableRowProps"),onPostRender:b},{text:"-"},{text:"Cut row",onclick:f("mceTableCutRow"),onPostRender:b},{text:"Copy row",onclick:f("mceTableCopyRow"),onPostRender:b},{text:"Paste row before",onclick:f("mceTablePasteRowBefore"),onPostRender:b},{text:"Paste row after",onclick:f("mceTablePasteRowAfter"),onPostRender:b}]}),o.addMenuItem("column",{text:"Column",context:"table",menu:[{text:"Insert column before",onclick:f("mceTableInsertColBefore"),onPostRender:b},{text:"Insert column after",onclick:f("mceTableInsertColAfter"),onPostRender:b},{text:"Delete column",onclick:f("mceTableDeleteCol"),onPostRender:b}]});var C=[];c("inserttable tableprops deletetable | cell row column".split(" "),function(e){C.push("|"==e?{text:"-"}:o.menuItems[e])}),o.addButton("table",{type:"menubutton",title:"Table",menu:C}),i.isIE||o.on("click",function(e){e=e.target,"TABLE"===e.nodeName&&(o.selection.select(e),o.nodeChanged())}),x.quirks=new t(o),o.on("Init",function(){w=o.windowManager,x.cellSelection=new n(o)}),c({mceTableSplitCells:function(e){e.split()},mceTableMergeCells:function(e){var t,n,r;r=o.dom.getParent(o.selection.getStart(),"th,td"),r&&(t=r.rowSpan,n=r.colSpan),o.dom.select("td.mce-item-selected,th.mce-item-selected").length?e.merge():d(e,r)},mceTableInsertRowBefore:function(e){e.insertRow(!0)},mceTableInsertRowAfter:function(e){e.insertRow()},mceTableInsertColBefore:function(e){e.insertCol(!0)},mceTableInsertColAfter:function(e){e.insertCol()},mceTableDeleteCol:function(e){e.deleteCols()},mceTableDeleteRow:function(e){e.deleteRows()},mceTableCutRow:function(e){y=e.cutRows()},mceTableCopyRow:function(e){y=e.copyRows()},mceTablePasteRowBefore:function(e){e.pasteRows(y,!0)},mceTablePasteRowAfter:function(e){e.pasteRows(y)},mceTableDelete:function(e){e.deleteTable()}},function(t,n){o.addCommand(n,function(){var n=new e(o);n&&(t(n),o.execCommand("mceRepaint"),x.cellSelection.clear())})}),c({mceInsertTable:function(){s()},mceTableRowProps:m,mceTableCellProps:u},function(e,t){o.addCommand(t,function(t,n){e(n)})})}var c=o.each;l.add("table",a)}),i(["tinymce/tableplugin/TableGrid","tinymce/tableplugin/Quirks","tinymce/tableplugin/CellSelection","tinymce/tableplugin/Plugin"])}(this); |