diff options
Diffstat (limited to 'plugins/forms/dialogs/checkbox.js')
| -rwxr-xr-x | plugins/forms/dialogs/checkbox.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/plugins/forms/dialogs/checkbox.js b/plugins/forms/dialogs/checkbox.js new file mode 100755 index 0000000..d56fb78 --- /dev/null +++ b/plugins/forms/dialogs/checkbox.js @@ -0,0 +1,21 @@ +/* + Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved. + For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license +*/ +CKEDITOR.dialog.add("checkbox", function(d) { + return { + title: d.lang.forms.checkboxAndRadio.checkboxTitle, minWidth: 350, minHeight: 140, onShow: function() { delete this.checkbox; var a = this.getParentEditor().getSelection().getSelectedElement(); a && "checkbox" == a.getAttribute("type") && (this.checkbox = a, this.setupContent(a)) }, onOk: function() { var a, b = this.checkbox; b || (a = this.getParentEditor(), b = a.document.createElement("input"), b.setAttribute("type", "checkbox"), a.insertElement(b)); this.commitContent({ element: b }) }, contents: [{ + id: "info", + label: d.lang.forms.checkboxAndRadio.checkboxTitle, title: d.lang.forms.checkboxAndRadio.checkboxTitle, startupFocus: "txtName", elements: [{ id: "txtName", type: "text", label: d.lang.common.name, "default": "", accessKey: "N", setup: function(a) { this.setValue(a.data("cke-saved-name") || a.getAttribute("name") || "") }, commit: function(a) { a = a.element; this.getValue() ? a.data("cke-saved-name", this.getValue()) : (a.data("cke-saved-name", !1), a.removeAttribute("name")) } }, { + id: "txtValue", type: "text", label: d.lang.forms.checkboxAndRadio.value, + "default": "", accessKey: "V", setup: function(a) { a = a.getAttribute("value"); this.setValue(CKEDITOR.env.ie && "on" == a ? "" : a) }, commit: function(a) { var b = a.element, c = this.getValue(); !c || CKEDITOR.env.ie && "on" == c ? CKEDITOR.env.ie ? (c = new CKEDITOR.dom.element("input", b.getDocument()), b.copyAttributes(c, { value: 1 }), c.replace(b), d.getSelection().selectElement(c), a.element = c) : b.removeAttribute("value") : b.setAttribute("value", c) } + }, { + id: "cmbSelected", type: "checkbox", label: d.lang.forms.checkboxAndRadio.selected, "default": "", + accessKey: "S", value: "checked", setup: function(a) { this.setValue(a.getAttribute("checked")) }, commit: function(a) { + var b = a.element; if (CKEDITOR.env.ie) { var c = !!b.getAttribute("checked"), e = !!this.getValue(); c != e && (c = CKEDITOR.dom.element.createFromHtml('\x3cinput type\x3d"checkbox"' + (e ? ' checked\x3d"checked"' : "") + "/\x3e", d.document), b.copyAttributes(c, { type: 1, checked: 1 }), c.replace(b), d.getSelection().selectElement(c), a.element = c) } else a = this.getValue(), CKEDITOR.env.webkit && (b.$.checked = a), a ? b.setAttribute("checked", + "checked") : b.removeAttribute("checked") + } + }, { id: "required", type: "checkbox", label: d.lang.forms.checkboxAndRadio.required, "default": "", accessKey: "Q", value: "required", setup: CKEDITOR.plugins.forms._setupRequiredAttribute, commit: function(a) { a = a.element; this.getValue() ? a.setAttribute("required", "required") : a.removeAttribute("required") } }] + }] + } +});
\ No newline at end of file |
