123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594 |
- /*
- Copyright (c) 2003-2019, CKSource - Frederico Knabben. All rights reserved.
- For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
- */
- (function() {
- function b(a, b, c) {
- var h = n[this.id];
- if (h)
- for (
- var f = this instanceof CKEDITOR.ui.dialog.checkbox, e = 0;
- e < h.length;
- e++
- ) {
- var d = h[e];
- switch (d.type) {
- case 1:
- if (!a) continue;
- if (null !== a.getAttribute(d.name)) {
- a = a.getAttribute(d.name);
- f ? this.setValue("true" == a.toLowerCase()) : this.setValue(a);
- return;
- }
- f && this.setValue(!!d["default"]);
- break;
- case 2:
- if (!a) continue;
- if (d.name in c) {
- a = c[d.name];
- f ? this.setValue("true" == a.toLowerCase()) : this.setValue(a);
- return;
- }
- f && this.setValue(!!d["default"]);
- break;
- case 4:
- if (!b) continue;
- if (b.getAttribute(d.name)) {
- a = b.getAttribute(d.name);
- f ? this.setValue("true" == a.toLowerCase()) : this.setValue(a);
- return;
- }
- f && this.setValue(!!d["default"]);
- }
- }
- }
- function c(a, b, c) {
- var h = n[this.id];
- if (h)
- for (
- var f = "" === this.getValue(),
- e = this instanceof CKEDITOR.ui.dialog.checkbox,
- d = 0;
- d < h.length;
- d++
- ) {
- var g = h[d];
- switch (g.type) {
- case 1:
- if (!a || ("data" == g.name && b && !a.hasAttribute("data")))
- continue;
- var m = this.getValue();
- f || (e && m === g["default"])
- ? a.removeAttribute(g.name)
- : a.setAttribute(g.name, m);
- break;
- case 2:
- if (!a) continue;
- m = this.getValue();
- if (f || (e && m === g["default"]))
- g.name in c && c[g.name].remove();
- else if (g.name in c) c[g.name].setAttribute("value", m);
- else {
- var p = CKEDITOR.dom.element.createFromHtml(
- "\x3ccke:param\x3e\x3c/cke:param\x3e",
- a.getDocument()
- );
- p.setAttributes({ name: g.name, value: m });
- 1 > a.getChildCount()
- ? p.appendTo(a)
- : p.insertBefore(a.getFirst());
- }
- break;
- case 4:
- if (!b) continue;
- m = this.getValue();
- f || (e && m === g["default"])
- ? b.removeAttribute(g.name)
- : b.setAttribute(g.name, m);
- }
- }
- }
- for (
- var n = {
- id: [{ type: 1, name: "id" }],
- classid: [{ type: 1, name: "classid" }],
- codebase: [{ type: 1, name: "codebase" }],
- pluginspage: [{ type: 4, name: "pluginspage" }],
- src: [
- { type: 2, name: "movie" },
- { type: 4, name: "src" },
- { type: 1, name: "data" }
- ],
- name: [{ type: 4, name: "name" }],
- align: [{ type: 1, name: "align" }],
- class: [{ type: 1, name: "class" }, { type: 4, name: "class" }],
- width: [{ type: 1, name: "width" }, { type: 4, name: "width" }],
- height: [{ type: 1, name: "height" }, { type: 4, name: "height" }],
- hSpace: [{ type: 1, name: "hSpace" }, { type: 4, name: "hSpace" }],
- vSpace: [{ type: 1, name: "vSpace" }, { type: 4, name: "vSpace" }],
- style: [{ type: 1, name: "style" }, { type: 4, name: "style" }],
- type: [{ type: 4, name: "type" }]
- },
- k = "play loop menu quality scale salign wmode bgcolor base flashvars allowScriptAccess allowFullScreen".split(
- " "
- ),
- l = 0;
- l < k.length;
- l++
- )
- n[k[l]] = [{ type: 4, name: k[l] }, { type: 2, name: k[l] }];
- k = ["play", "loop", "menu"];
- for (l = 0; l < k.length; l++)
- n[k[l]][0]["default"] = n[k[l]][1]["default"] = !0;
- CKEDITOR.dialog.add("flash", function(a) {
- var l = !a.config.flashEmbedTagOnly,
- k = a.config.flashAddEmbedTag || a.config.flashEmbedTagOnly,
- h,
- f =
- "\x3cdiv\x3e" +
- CKEDITOR.tools.htmlEncode(a.lang.common.preview) +
- '\x3cbr\x3e\x3cdiv id\x3d"cke_FlashPreviewLoader' +
- CKEDITOR.tools.getNextNumber() +
- '" style\x3d"display:none"\x3e\x3cdiv class\x3d"loading"\x3e\x26nbsp;\x3c/div\x3e\x3c/div\x3e\x3cdiv id\x3d"cke_FlashPreviewBox' +
- CKEDITOR.tools.getNextNumber() +
- '" class\x3d"FlashPreviewBox"\x3e\x3c/div\x3e\x3c/div\x3e';
- return {
- title: a.lang.flash.title,
- minWidth: 420,
- minHeight: 310,
- onShow: function() {
- this.fakeImage = this.objectNode = this.embedNode = null;
- h = new CKEDITOR.dom.element("embed", a.document);
- var e = this.getSelectedElement();
- if (
- e &&
- e.data("cke-real-element-type") &&
- "flash" == e.data("cke-real-element-type")
- ) {
- this.fakeImage = e;
- var d = a.restoreRealElement(e),
- g = null,
- b = null,
- c = {};
- if ("cke:object" == d.getName()) {
- g = d;
- d = g.getElementsByTag("embed", "cke");
- 0 < d.count() && (b = d.getItem(0));
- for (
- var d = g.getElementsByTag("param", "cke"), f = 0, l = d.count();
- f < l;
- f++
- ) {
- var k = d.getItem(f),
- n = k.getAttribute("name"),
- k = k.getAttribute("value");
- c[n] = k;
- }
- } else "cke:embed" == d.getName() && (b = d);
- this.objectNode = g;
- this.embedNode = b;
- this.setupContent(g, b, c, e);
- }
- },
- onOk: function() {
- var e = null,
- d = null,
- b = null;
- this.fakeImage
- ? ((e = this.objectNode), (d = this.embedNode))
- : (l &&
- ((e = CKEDITOR.dom.element.createFromHtml(
- "\x3ccke:object\x3e\x3c/cke:object\x3e",
- a.document
- )),
- e.setAttributes({
- classid: "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000",
- codebase:
- "http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version\x3d6,0,40,0"
- })),
- k &&
- ((d = CKEDITOR.dom.element.createFromHtml(
- "\x3ccke:embed\x3e\x3c/cke:embed\x3e",
- a.document
- )),
- d.setAttributes({
- type: "application/x-shockwave-flash",
- pluginspage: "http://www.macromedia.com/go/getflashplayer"
- }),
- e && d.appendTo(e)));
- if (e)
- for (
- var b = {},
- c = e.getElementsByTag("param", "cke"),
- f = 0,
- h = c.count();
- f < h;
- f++
- )
- b[c.getItem(f).getAttribute("name")] = c.getItem(f);
- c = {};
- f = {};
- this.commitContent(e, d, b, c, f);
- e = a.createFakeElement(e || d, "cke_flash", "flash", !0);
- e.setAttributes(f);
- e.setStyles(c);
- this.fakeImage
- ? (e.replace(this.fakeImage), a.getSelection().selectElement(e))
- : a.insertElement(e);
- },
- onHide: function() {
- this.preview && this.preview.setHtml("");
- },
- contents: [
- {
- id: "info",
- label: a.lang.common.generalTab,
- accessKey: "I",
- elements: [
- {
- type: "vbox",
- padding: 0,
- children: [
- {
- type: "hbox",
- widths: ["280px", "110px"],
- align: "right",
- className: "cke_dialog_flash_url",
- children: [
- {
- id: "src",
- type: "text",
- label: a.lang.common.url,
- required: !0,
- validate: CKEDITOR.dialog.validate.notEmpty(
- a.lang.flash.validateSrc
- ),
- setup: b,
- commit: c,
- onLoad: function() {
- var a = this.getDialog(),
- b = function(b) {
- h.setAttribute("src", b);
- a.preview.setHtml(
- '\x3cembed height\x3d"100%" width\x3d"100%" src\x3d"' +
- CKEDITOR.tools.htmlEncode(
- h.getAttribute("src")
- ) +
- '" type\x3d"application/x-shockwave-flash"\x3e\x3c/embed\x3e'
- );
- };
- a.preview = a
- .getContentElement("info", "preview")
- .getElement()
- .getChild(3);
- this.on("change", function(a) {
- a.data && a.data.value && b(a.data.value);
- });
- this.getInputElement().on(
- "change",
- function() {
- b(this.getValue());
- },
- this
- );
- }
- },
- {
- type: "button",
- id: "browse",
- filebrowser: "info:src",
- hidden: !0,
- style: "display:inline-block;margin-top:14px;",
- label: a.lang.common.browseServer
- }
- ]
- }
- ]
- },
- {
- type: "hbox",
- widths: ["25%", "25%", "25%", "25%", "25%"],
- children: [
- {
- type: "text",
- id: "width",
- requiredContent: "embed[width]",
- style: "width:95px",
- label: a.lang.common.width,
- validate: CKEDITOR.dialog.validate.htmlLength(
- a.lang.common.invalidHtmlLength.replace(
- "%1",
- a.lang.common.width
- )
- ),
- setup: b,
- commit: c
- },
- {
- type: "text",
- id: "height",
- requiredContent: "embed[height]",
- style: "width:95px",
- label: a.lang.common.height,
- validate: CKEDITOR.dialog.validate.htmlLength(
- a.lang.common.invalidHtmlLength.replace(
- "%1",
- a.lang.common.height
- )
- ),
- setup: b,
- commit: c
- },
- {
- type: "text",
- id: "hSpace",
- requiredContent: "embed[hspace]",
- style: "width:95px",
- label: a.lang.flash.hSpace,
- validate: CKEDITOR.dialog.validate.integer(
- a.lang.flash.validateHSpace
- ),
- setup: b,
- commit: c
- },
- {
- type: "text",
- id: "vSpace",
- requiredContent: "embed[vspace]",
- style: "width:95px",
- label: a.lang.flash.vSpace,
- validate: CKEDITOR.dialog.validate.integer(
- a.lang.flash.validateVSpace
- ),
- setup: b,
- commit: c
- }
- ]
- },
- {
- type: "vbox",
- children: [
- { type: "html", id: "preview", style: "width:95%;", html: f }
- ]
- }
- ]
- },
- {
- id: "Upload",
- hidden: !0,
- filebrowser: "uploadButton",
- label: a.lang.common.upload,
- elements: [
- {
- type: "file",
- id: "upload",
- label: a.lang.common.upload,
- size: 38
- },
- {
- type: "fileButton",
- id: "uploadButton",
- label: a.lang.common.uploadSubmit,
- filebrowser: "info:src",
- for: ["Upload", "upload"]
- }
- ]
- },
- {
- id: "properties",
- label: a.lang.flash.propertiesTab,
- elements: [
- {
- type: "hbox",
- widths: ["50%", "50%"],
- children: [
- {
- id: "scale",
- type: "select",
- requiredContent: "embed[scale]",
- label: a.lang.flash.scale,
- default: "",
- style: "width : 100%;",
- items: [
- [a.lang.common.notSet, ""],
- [a.lang.flash.scaleAll, "showall"],
- [a.lang.flash.scaleNoBorder, "noborder"],
- [a.lang.flash.scaleFit, "exactfit"]
- ],
- setup: b,
- commit: c
- },
- {
- id: "allowScriptAccess",
- type: "select",
- requiredContent: "embed[allowscriptaccess]",
- label: a.lang.flash.access,
- default: "",
- style: "width : 100%;",
- items: [
- [a.lang.common.notSet, ""],
- [a.lang.flash.accessAlways, "always"],
- [a.lang.flash.accessSameDomain, "samedomain"],
- [a.lang.flash.accessNever, "never"]
- ],
- setup: b,
- commit: c
- }
- ]
- },
- {
- type: "hbox",
- widths: ["50%", "50%"],
- children: [
- {
- id: "wmode",
- type: "select",
- requiredContent: "embed[wmode]",
- label: a.lang.flash.windowMode,
- default: "",
- style: "width : 100%;",
- items: [
- [a.lang.common.notSet, ""],
- [a.lang.flash.windowModeWindow, "window"],
- [a.lang.flash.windowModeOpaque, "opaque"],
- [a.lang.flash.windowModeTransparent, "transparent"]
- ],
- setup: b,
- commit: c
- },
- {
- id: "quality",
- type: "select",
- requiredContent: "embed[quality]",
- label: a.lang.flash.quality,
- default: "high",
- style: "width : 100%;",
- items: [
- [a.lang.common.notSet, ""],
- [a.lang.flash.qualityBest, "best"],
- [a.lang.flash.qualityHigh, "high"],
- [a.lang.flash.qualityAutoHigh, "autohigh"],
- [a.lang.flash.qualityMedium, "medium"],
- [a.lang.flash.qualityAutoLow, "autolow"],
- [a.lang.flash.qualityLow, "low"]
- ],
- setup: b,
- commit: c
- }
- ]
- },
- {
- type: "hbox",
- widths: ["50%", "50%"],
- children: [
- {
- id: "align",
- type: "select",
- requiredContent: "object[align]",
- label: a.lang.common.align,
- default: "",
- style: "width : 100%;",
- items: [
- [a.lang.common.notSet, ""],
- [a.lang.common.left, "left"],
- [a.lang.flash.alignAbsBottom, "absBottom"],
- [a.lang.flash.alignAbsMiddle, "absMiddle"],
- [a.lang.flash.alignBaseline, "baseline"],
- [a.lang.common.alignBottom, "bottom"],
- [a.lang.common.alignMiddle, "middle"],
- [a.lang.common.right, "right"],
- [a.lang.flash.alignTextTop, "textTop"],
- [a.lang.common.alignTop, "top"]
- ],
- setup: b,
- commit: function(a, b, f, k, l) {
- var h = this.getValue();
- c.apply(this, arguments);
- h && (l.align = h);
- }
- },
- { type: "html", html: "\x3cdiv\x3e\x3c/div\x3e" }
- ]
- },
- {
- type: "fieldset",
- label: CKEDITOR.tools.htmlEncode(a.lang.flash.flashvars),
- children: [
- {
- type: "vbox",
- padding: 0,
- children: [
- {
- type: "checkbox",
- id: "menu",
- label: a.lang.flash.chkMenu,
- default: !0,
- setup: b,
- commit: c
- },
- {
- type: "checkbox",
- id: "play",
- label: a.lang.flash.chkPlay,
- default: !0,
- setup: b,
- commit: c
- },
- {
- type: "checkbox",
- id: "loop",
- label: a.lang.flash.chkLoop,
- default: !0,
- setup: b,
- commit: c
- },
- {
- type: "checkbox",
- id: "allowFullScreen",
- label: a.lang.flash.chkFull,
- default: !0,
- setup: b,
- commit: c
- }
- ]
- }
- ]
- }
- ]
- },
- {
- id: "advanced",
- label: a.lang.common.advancedTab,
- elements: [
- {
- type: "hbox",
- children: [
- {
- type: "text",
- id: "id",
- requiredContent: "object[id]",
- label: a.lang.common.id,
- setup: b,
- commit: c
- }
- ]
- },
- {
- type: "hbox",
- widths: ["45%", "55%"],
- children: [
- {
- type: "text",
- id: "bgcolor",
- requiredContent: "embed[bgcolor]",
- label: a.lang.flash.bgcolor,
- setup: b,
- commit: c
- },
- {
- type: "text",
- id: "class",
- requiredContent: "embed(cke-xyz)",
- label: a.lang.common.cssClass,
- setup: b,
- commit: c
- }
- ]
- },
- {
- type: "text",
- id: "style",
- requiredContent: "embed{cke-xyz}",
- validate: CKEDITOR.dialog.validate.inlineStyle(
- a.lang.common.invalidInlineStyle
- ),
- label: a.lang.common.cssStyle,
- setup: b,
- commit: c
- }
- ]
- }
- ]
- };
- });
- })();
|