2 Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
3 For licensing, see LICENSE.md or http://ckeditor.com/license
5 (function(){function r(a
){for(var e
=0,l
=0,k
=0,m
,g
=a
.$.rows
.length
;k
<g
;k
++){m
=a
.$.rows
[k
];for(var d
=e
=0,c
,b
=m
.cells
.length
;d
<b
;d
++)c
=m
.cells
[d
],e
+=c
.colSpan
;e
>l
&&(l
=e
)}return l
}function o(a
){return function(){var e
=this.getValue(),e
=!!(CKEDITOR
.dialog
.validate
.integer()(e
)&&0<e
);e
||(alert(a
),this.select());return e
}}function n(a
,e
){var l=function(g
){return new CKEDITOR
.dom
.element(g
,a
.document
)},n
=a
.editable(),m
=a
.plugins
.dialogadvtab
;return{title
:a
.lang
.table
.title
,minWidth
:310,minHeight
:CKEDITOR
.env
.ie
?
6 310:280,onLoad:function(){var g
=this,a
=g
.getContentElement("advanced","advStyles");if(a
)a
.on("change",function(){var a
=this.getStyle("width",""),b
=g
.getContentElement("info","txtWidth");b
&&b
.setValue(a
,!0);a
=this.getStyle("height","");(b
=g
.getContentElement("info","txtHeight"))&&b
.setValue(a
,!0)})},onShow:function(){var g
=a
.getSelection(),d
=g
.getRanges(),c
,b
=this.getContentElement("info","txtRows"),h
=this.getContentElement("info","txtCols"),p
=this.getContentElement("info","txtWidth"),f
=this.getContentElement("info",
7 "txtHeight");"tableProperties"==e
&&((g
=g
.getSelectedElement())&&g
.is("table")?c
=g
:0<d
.length
&&(CKEDITOR
.env
.webkit
&&d
[0].shrink(CKEDITOR
.NODE_ELEMENT
),c
=a
.elementPath(d
[0].getCommonAncestor(!0)).contains("table",1)),this._
.selectedElement
=c
);c
?(this.setupContent(c
),b
&&b
.disable(),h
&&h
.disable()):(b
&&b
.enable(),h
&&h
.enable());p
&&p
.onChange();f
&&f
.onChange()},onOk:function(){var g
=a
.getSelection(),d
=this._
.selectedElement
&&g
.createBookmarks(),c
=this._
.selectedElement
||l("table"),b
={};this.commitContent(b
,
8 c
);if(b
.info
){b
=b
.info
;if(!this._
.selectedElement
)for(var h
=c
.append(l("tbody")),e
=parseInt(b
.txtRows
,10)||0,f
=parseInt(b
.txtCols
,10)||0,i
=0;i
<e
;i
++)for(var j
=h
.append(l("tr")),k
=0;k
<f
;k
++)j
.append(l("td")).appendBogus();e
=b
.selHeaders
;if(!c
.$.tHead
&&("row"==e
||"both"==e
)){j
=new CKEDITOR
.dom
.element(c
.$.createTHead());h
=c
.getElementsByTag("tbody").getItem(0);h
=h
.getElementsByTag("tr").getItem(0);for(i
=0;i
<h
.getChildCount();i
++)f
=h
.getChild(i
),f
.type
==CKEDITOR
.NODE_ELEMENT
&&!f
.data("cke-bookmark")&&
9 (f
.renameNode("th"),f
.setAttribute("scope","col"));j
.append(h
.remove())}if(null!==c
.$.tHead
&&!("row"==e
||"both"==e
)){j
=new CKEDITOR
.dom
.element(c
.$.tHead
);h
=c
.getElementsByTag("tbody").getItem(0);for(k
=h
.getFirst();0<j
.getChildCount();){h
=j
.getFirst();for(i
=0;i
<h
.getChildCount();i
++)f
=h
.getChild(i
),f
.type
==CKEDITOR
.NODE_ELEMENT
&&(f
.renameNode("td"),f
.removeAttribute("scope"));h
.insertBefore(k
)}j
.remove()}if(!this.hasColumnHeaders
&&("col"==e
||"both"==e
))for(j
=0;j
<c
.$.rows
.length
;j
++)f
=new CKEDITOR
.dom
.element(c
.$.rows
[j
].cells
[0]),
10 f
.renameNode("th"),f
.setAttribute("scope","row");if(this.hasColumnHeaders
&&!("col"==e
||"both"==e
))for(i
=0;i
<c
.$.rows
.length
;i
++)j
=new CKEDITOR
.dom
.element(c
.$.rows
[i
]),"tbody"==j
.getParent().getName()&&(f
=new CKEDITOR
.dom
.element(j
.$.cells
[0]),f
.renameNode("td"),f
.removeAttribute("scope"));b
.txtHeight
?c
.setStyle("height",b
.txtHeight
):c
.removeStyle("height");b
.txtWidth
?c
.setStyle("width",b
.txtWidth
):c
.removeStyle("width");c
.getAttribute("style")||c
.removeAttribute("style")}if(this._
.selectedElement
)try{g
.selectBookmarks(d
)}catch(m
){}else a
.insertElement(c
),
11 setTimeout(function(){var g
=new CKEDITOR
.dom
.element(c
.$.rows
[0].cells
[0]),b
=a
.createRange();b
.moveToPosition(g
,CKEDITOR
.POSITION_AFTER_START
);b
.select()},0)},contents
:[{id
:"info",label
:a
.lang
.table
.title
,elements
:[{type
:"hbox",widths
:[null,null],styles
:["vertical-align:top"],children
:[{type
:"vbox",padding
:0,children
:[{type
:"text",id
:"txtRows","default":3,label
:a
.lang
.table
.rows
,required
:!0,controlStyle
:"width:5em",validate
:o(a
.lang
.table
.invalidRows
),setup:function(a
){this.setValue(a
.$.rows
.length
)},
12 commit
:k
},{type
:"text",id
:"txtCols","default":2,label
:a
.lang
.table
.columns
,required
:!0,controlStyle
:"width:5em",validate
:o(a
.lang
.table
.invalidCols
),setup:function(a
){this.setValue(r(a
))},commit
:k
},{type
:"html",html
:" "},{type
:"select",id
:"selHeaders",requiredContent
:"th","default":"",label
:a
.lang
.table
.headers
,items
:[[a
.lang
.table
.headersNone
,""],[a
.lang
.table
.headersRow
,"row"],[a
.lang
.table
.headersColumn
,"col"],[a
.lang
.table
.headersBoth
,"both"]],setup:function(a
){var d
=this.getDialog();d
.hasColumnHeaders
=
13 !0;for(var c
=0;c
<a
.$.rows
.length
;c
++){var b
=a
.$.rows
[c
].cells
[0];if(b
&&"th"!=b
.nodeName
.toLowerCase()){d
.hasColumnHeaders
=!1;break}}null!==a
.$.tHead
?this.setValue(d
.hasColumnHeaders
?"both":"row"):this.setValue(d
.hasColumnHeaders
?"col":"")},commit
:k
},{type
:"text",id
:"txtBorder",requiredContent
:"table[border]","default":a
.filter
.check("table[border]")?1:0,label
:a
.lang
.table
.border
,controlStyle
:"width:3em",validate
:CKEDITOR
.dialog
.validate
.number(a
.lang
.table
.invalidBorder
),setup:function(a
){this.setValue(a
.getAttribute("border")||
14 "")},commit:function(a
,d
){this.getValue()?d
.setAttribute("border",this.getValue()):d
.removeAttribute("border")}},{id
:"cmbAlign",type
:"select",requiredContent
:"table[align]","default":"",label
:a
.lang
.common
.align
,items
:[[a
.lang
.common
.notSet
,""],[a
.lang
.common
.alignLeft
,"left"],[a
.lang
.common
.alignCenter
,"center"],[a
.lang
.common
.alignRight
,"right"]],setup:function(a
){this.setValue(a
.getAttribute("align")||"")},commit:function(a
,d
){this.getValue()?d
.setAttribute("align",this.getValue()):d
.removeAttribute("align")}}]},
15 {type
:"vbox",padding
:0,children
:[{type
:"hbox",widths
:["5em"],children
:[{type
:"text",id
:"txtWidth",requiredContent
:"table{width}",controlStyle
:"width:5em",label
:a
.lang
.common
.width
,title
:a
.lang
.common
.cssLengthTooltip
,"default":a
.filter
.check("table{width}")?500>n
.getSize("width")?"100%":500:0,getValue
:q
,validate
:CKEDITOR
.dialog
.validate
.cssLength(a
.lang
.common
.invalidCssLength
.replace("%1",a
.lang
.common
.width
)),onChange:function(){var a
=this.getDialog().getContentElement("advanced","advStyles");a
&&
16 a
.updateStyle("width",this.getValue())},setup:function(a
){this.setValue(a
.getStyle("width"))},commit
:k
}]},{type
:"hbox",widths
:["5em"],children
:[{type
:"text",id
:"txtHeight",requiredContent
:"table{height}",controlStyle
:"width:5em",label
:a
.lang
.common
.height
,title
:a
.lang
.common
.cssLengthTooltip
,"default":"",getValue
:q
,validate
:CKEDITOR
.dialog
.validate
.cssLength(a
.lang
.common
.invalidCssLength
.replace("%1",a
.lang
.common
.height
)),onChange:function(){var a
=this.getDialog().getContentElement("advanced","advStyles");
17 a
&&a
.updateStyle("height",this.getValue())},setup:function(a
){(a
=a
.getStyle("height"))&&this.setValue(a
)},commit
:k
}]},{type
:"html",html
:" "},{type
:"text",id
:"txtCellSpace",requiredContent
:"table[cellspacing]",controlStyle
:"width:3em",label
:a
.lang
.table
.cellSpace
,"default":a
.filter
.check("table[cellspacing]")?1:0,validate
:CKEDITOR
.dialog
.validate
.number(a
.lang
.table
.invalidCellSpacing
),setup:function(a
){this.setValue(a
.getAttribute("cellSpacing")||"")},commit:function(a
,d
){this.getValue()?d
.setAttribute("cellSpacing",
18 this.getValue()):d
.removeAttribute("cellSpacing")}},{type
:"text",id
:"txtCellPad",requiredContent
:"table[cellpadding]",controlStyle
:"width:3em",label
:a
.lang
.table
.cellPad
,"default":a
.filter
.check("table[cellpadding]")?1:0,validate
:CKEDITOR
.dialog
.validate
.number(a
.lang
.table
.invalidCellPadding
),setup:function(a
){this.setValue(a
.getAttribute("cellPadding")||"")},commit:function(a
,d
){this.getValue()?d
.setAttribute("cellPadding",this.getValue()):d
.removeAttribute("cellPadding")}}]}]},{type
:"html",align
:"right",
19 html
:""},{type
:"vbox",padding
:0,children
:[{type
:"text",id
:"txtCaption",requiredContent
:"caption",label
:a
.lang
.table
.caption
,setup:function(a
){this.enable();a
=a
.getElementsByTag("caption");if(0<a
.count()){var a
=a
.getItem(0),d
=a
.getFirst(CKEDITOR
.dom
.walker
.nodeType(CKEDITOR
.NODE_ELEMENT
));d
&&!d
.equals(a
.getBogus())?(this.disable(),this.setValue(a
.getText())):(a
=CKEDITOR
.tools
.trim(a
.getText()),this.setValue(a
))}},commit:function(e
,d
){if(this.isEnabled()){var c
=this.getValue(),b
=d
.getElementsByTag("caption");
20 if(c
)0<b
.count()?(b
=b
.getItem(0),b
.setHtml("")):(b
=new CKEDITOR
.dom
.element("caption",a
.document
),d
.getChildCount()?b
.insertBefore(d
.getFirst()):b
.appendTo(d
)),b
.append(new CKEDITOR
.dom
.text(c
,a
.document
));else if(0<b
.count())for(c
=b
.count()-1;0<=c
;c
--)b
.getItem(c
).remove()}}},{type
:"text",id
:"txtSummary",requiredContent
:"table[summary]",label
:a
.lang
.table
.summary
,setup:function(a
){this.setValue(a
.getAttribute("summary")||"")},commit:function(a
,d
){this.getValue()?d
.setAttribute("summary",this.getValue()):
21 d
.removeAttribute("summary")}}]}]},m
&&m
.createAdvancedTab(a
,null,"table")]}}var q
=CKEDITOR
.tools
.cssLength
,k=function(a
){var e
=this.id
;a
.info
||(a
.info
={});a
.info
[e
]=this.getValue()};CKEDITOR
.dialog
.add("table",function(a
){return n(a
,"table")});CKEDITOR
.dialog
.add("tableProperties",function(a
){return n(a
,"tableProperties")})})();