(function (e) {
var a = /^\s*|\s*$/g,
b,
d = "B".replace(/A(.)|B/, "$1") === "$1";
var c = {
majorVersion: "3",
minorVersion: "5.8",
releaseDate: "2012-11-20",
_init: function () {
var s = this,
q = document,
o = navigator,
g = o.userAgent,
m,
f,
l,
k,
j,
r;
s.isOpera = e.opera && opera.buildNumber;
s.isWebKit = /WebKit/.test(g);
s.isIE =
!s.isWebKit &&
!s.isOpera &&
/MSIE/gi.test(g) &&
/Explorer/gi.test(o.appName);
s.isIE6 = s.isIE && /MSIE [56]/.test(g);
s.isIE7 = s.isIE && /MSIE [7]/.test(g);
s.isIE8 = s.isIE && /MSIE [8]/.test(g);
s.isIE9 = s.isIE && /MSIE [9]/.test(g);
s.isGecko = !s.isWebKit && /Gecko/.test(g);
s.isMac = g.indexOf("Mac") != -1;
s.isAir = /adobeair/i.test(g);
s.isIDevice = /(iPad|iPhone)/.test(g);
s.isIOS5 = s.isIDevice && g.match(/AppleWebKit\/(\d*)/)[1] >= 534;
if (e.tinyMCEPreInit) {
s.suffix = tinyMCEPreInit.suffix;
s.baseURL = tinyMCEPreInit.base;
s.query = tinyMCEPreInit.query;
return;
}
s.suffix = "";
f = q.getElementsByTagName("base");
for (m = 0; m < f.length; m++) {
r = f[m].href;
if (r) {
if (/^https?:\/\/[^\/]+$/.test(r)) {
r += "/";
}
k = r ? r.match(/.*\//)[0] : "";
}
}
function h(i) {
if (
i.src &&
/tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(i.src)
) {
if (/_(src|dev)\.js/g.test(i.src)) {
s.suffix = "_src";
}
if ((j = i.src.indexOf("?")) != -1) {
s.query = i.src.substring(j + 1);
}
s.baseURL = i.src.substring(0, i.src.lastIndexOf("/"));
if (
k &&
s.baseURL.indexOf("://") == -1 &&
s.baseURL.indexOf("/") !== 0
) {
s.baseURL = k + s.baseURL;
}
return s.baseURL;
}
return null;
}
f = q.getElementsByTagName("script");
for (m = 0; m < f.length; m++) {
if (h(f[m])) {
return;
}
}
l = q.getElementsByTagName("head")[0];
if (l) {
f = l.getElementsByTagName("script");
for (m = 0; m < f.length; m++) {
if (h(f[m])) {
return;
}
}
}
return;
},
is: function (g, f) {
if (!f) {
return g !== b;
}
if (f == "array" && c.isArray(g)) {
return true;
}
return typeof g == f;
},
isArray:
Array.isArray ||
function (f) {
return Object.prototype.toString.call(f) === "[object Array]";
},
makeMap: function (f, j, h) {
var g;
f = f || [];
j = j || ",";
if (typeof f == "string") {
f = f.split(j);
}
h = h || {};
g = f.length;
while (g--) {
h[f[g]] = {};
}
return h;
},
each: function (i, f, h) {
var j, g;
if (!i) {
return 0;
}
h = h || i;
if (i.length !== b) {
for (j = 0, g = i.length; j < g; j++) {
if (f.call(h, i[j], j, i) === false) {
return 0;
}
}
} else {
for (j in i) {
if (i.hasOwnProperty(j)) {
if (f.call(h, i[j], j, i) === false) {
return 0;
}
}
}
}
return 1;
},
map: function (g, h) {
var i = [];
c.each(g, function (f) {
i.push(h(f));
});
return i;
},
grep: function (g, h) {
var i = [];
c.each(g, function (f) {
if (!h || h(f)) {
i.push(f);
}
});
return i;
},
inArray: function (g, h) {
var j, f;
if (g) {
for (j = 0, f = g.length; j < f; j++) {
if (g[j] === h) {
return j;
}
}
}
return -1;
},
extend: function (n, k) {
var j,
f,
h,
g = arguments,
m;
for (j = 1, f = g.length; j < f; j++) {
k = g[j];
for (h in k) {
if (k.hasOwnProperty(h)) {
m = k[h];
if (m !== b) {
n[h] = m;
}
}
}
}
return n;
},
trim: function (f) {
return (f ? "" + f : "").replace(a, "");
},
create: function (o, f, j) {
var n = this,
g,
i,
k,
l,
h,
m = 0;
o = /^((static) )?([\w.]+)(:([\w.]+))?/.exec(o);
k = o[3].match(/(^|\.)(\w+)$/i)[2];
i = n.createNS(o[3].replace(/\.\w+$/, ""), j);
if (i[k]) {
return;
}
if (o[2] == "static") {
i[k] = f;
if (this.onCreate) {
this.onCreate(o[2], o[3], i[k]);
}
return;
}
if (!f[k]) {
f[k] = function () {};
m = 1;
}
i[k] = f[k];
n.extend(i[k].prototype, f);
if (o[5]) {
g = n.resolve(o[5]).prototype;
l = o[5].match(/\.(\w+)$/i)[1];
h = i[k];
if (m) {
i[k] = function () {
return g[l].apply(this, arguments);
};
} else {
i[k] = function () {
this.parent = g[l];
return h.apply(this, arguments);
};
}
i[k].prototype[k] = i[k];
n.each(g, function (p, q) {
i[k].prototype[q] = g[q];
});
n.each(f, function (p, q) {
if (g[q]) {
i[k].prototype[q] = function () {
this.parent = g[q];
return p.apply(this, arguments);
};
} else {
if (q != k) {
i[k].prototype[q] = p;
}
}
});
}
n.each(f["static"], function (p, q) {
i[k][q] = p;
});
if (this.onCreate) {
this.onCreate(o[2], o[3], i[k].prototype);
}
},
walk: function (i, h, j, g) {
g = g || this;
if (i) {
if (j) {
i = i[j];
}
c.each(i, function (k, f) {
if (h.call(g, k, f, j) === false) {
return false;
}
c.walk(k, h, j, g);
});
}
},
createNS: function (j, h) {
var g, f;
h = h || e;
j = j.split(".");
for (g = 0; g < j.length; g++) {
f = j[g];
if (!h[f]) {
h[f] = {};
}
h = h[f];
}
return h;
},
resolve: function (j, h) {
var g, f;
h = h || e;
j = j.split(".");
for (g = 0, f = j.length; g < f; g++) {
h = h[j[g]];
if (!h) {
break;
}
}
return h;
},
addUnload: function (j, i) {
var h = this,
g;
g = function () {
var f = h.unloads,
l,
m;
if (f) {
for (m in f) {
l = f[m];
if (l && l.func) {
l.func.call(l.scope, 1);
}
}
if (e.detachEvent) {
e.detachEvent("onbeforeunload", k);
e.detachEvent("onunload", g);
} else {
if (e.removeEventListener) {
e.removeEventListener("unload", g, false);
}
}
h.unloads = l = f = w = g = 0;
if (e.CollectGarbage) {
CollectGarbage();
}
}
};
function k() {
var l = document;
function f() {
l.detachEvent("onstop", f);
if (g) {
g();
}
l = 0;
}
if (l.readyState == "interactive") {
if (l) {
l.attachEvent("onstop", f);
}
e.setTimeout(function () {
if (l) {
l.detachEvent("onstop", f);
}
}, 0);
}
}
j = { func: j, scope: i || this };
if (!h.unloads) {
if (e.attachEvent) {
e.attachEvent("onunload", g);
e.attachEvent("onbeforeunload", k);
} else {
if (e.addEventListener) {
e.addEventListener("unload", g, false);
}
}
h.unloads = [j];
} else {
h.unloads.push(j);
}
return j;
},
removeUnload: function (i) {
var g = this.unloads,
h = null;
c.each(g, function (j, f) {
if (j && j.func == i) {
g.splice(f, 1);
h = i;
return false;
}
});
return h;
},
explode: function (f, g) {
if (!f || c.is(f, "array")) {
return f;
}
return c.map(f.split(g || ","), c.trim);
},
_addVer: function (g) {
var f;
if (!this.query) {
return g;
}
f = (g.indexOf("?") == -1 ? "?" : "&") + this.query;
if (g.indexOf("#") == -1) {
return g + f;
}
return g.replace("#", f + "#");
},
_replace: function (h, f, g) {
if (d) {
return g.replace(h, function () {
var l = f,
j = arguments,
k;
for (k = 0; k < j.length - 2; k++) {
if (j[k] === b) {
l = l.replace(new RegExp("\\$" + k, "g"), "");
} else {
l = l.replace(new RegExp("\\$" + k, "g"), j[k]);
}
}
return l;
});
}
return g.replace(h, f);
},
};
c._init();
e.tinymce = e.tinyMCE = c;
})(window);
tinymce.create("tinymce.util.Dispatcher", {
scope: null,
listeners: null,
inDispatch: false,
Dispatcher: function (a) {
this.scope = a || this;
this.listeners = [];
},
add: function (b, a) {
this.listeners.push({ cb: b, scope: a || this.scope });
return b;
},
addToTop: function (d, b) {
var a = this,
c = { cb: d, scope: b || a.scope };
if (a.inDispatch) {
a.listeners = [c].concat(a.listeners);
} else {
a.listeners.unshift(c);
}
return d;
},
remove: function (c) {
var b = this.listeners,
a = null;
tinymce.each(b, function (e, d) {
if (c == e.cb) {
a = e;
b.splice(d, 1);
return false;
}
});
return a;
},
dispatch: function () {
var a = this,
e,
b = arguments,
c,
d = a.listeners,
f;
a.inDispatch = true;
for (c = 0; c < d.length; c++) {
f = d[c];
e = f.cb.apply(f.scope, b.length > 0 ? b : [f.scope]);
if (e === false) {
break;
}
}
a.inDispatch = false;
return e;
},
});
(function () {
var a = tinymce.each;
tinymce.create("tinymce.util.URI", {
URI: function (e, g) {
var f = this,
i,
d,
c,
h;
e = tinymce.trim(e);
g = f.settings = g || {};
if (/^([\w\-]+):([^\/]{2})/i.test(e) || /^\s*#/.test(e)) {
f.source = e;
return;
}
if (e.indexOf("/") === 0 && e.indexOf("//") !== 0) {
e =
(g.base_uri ? g.base_uri.protocol || "http" : "http") +
"://mce_host" +
e;
}
if (!/^[\w\-]*:?\/\//.test(e)) {
h = g.base_uri
? g.base_uri.path
: new tinymce.util.URI(location.href).directory;
e =
((g.base_uri && g.base_uri.protocol) || "http") +
"://mce_host" +
f.toAbsPath(h, e);
}
e = e.replace(/@@/g, "(mce_at)");
e =
/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(
e,
);
a(
[
"source",
"protocol",
"authority",
"userInfo",
"user",
"password",
"host",
"port",
"relative",
"path",
"directory",
"file",
"query",
"anchor",
],
function (b, j) {
var k = e[j];
if (k) {
k = k.replace(/\(mce_at\)/g, "@@");
}
f[b] = k;
},
);
c = g.base_uri;
if (c) {
if (!f.protocol) {
f.protocol = c.protocol;
}
if (!f.userInfo) {
f.userInfo = c.userInfo;
}
if (!f.port && f.host === "mce_host") {
f.port = c.port;
}
if (!f.host || f.host === "mce_host") {
f.host = c.host;
}
f.source = "";
}
},
setPath: function (c) {
var b = this;
c = /^(.*?)\/?(\w+)?$/.exec(c);
b.path = c[0];
b.directory = c[1];
b.file = c[2];
b.source = "";
b.getURI();
},
toRelative: function (b) {
var d = this,
f;
if (b === "./") {
return b;
}
b = new tinymce.util.URI(b, { base_uri: d });
if (
(b.host != "mce_host" && d.host != b.host && b.host) ||
d.port != b.port ||
d.protocol != b.protocol
) {
return b.getURI();
}
var c = d.getURI(),
e = b.getURI();
if (
c == e ||
(c.charAt(c.length - 1) == "/" && c.substr(0, c.length - 1) == e)
) {
return c;
}
f = d.toRelPath(d.path, b.path);
if (b.query) {
f += "?" + b.query;
}
if (b.anchor) {
f += "#" + b.anchor;
}
return f;
},
toAbsolute: function (b, c) {
b = new tinymce.util.URI(b, { base_uri: this });
return b.getURI(
this.host == b.host && this.protocol == b.protocol ? c : 0,
);
},
toRelPath: function (g, h) {
var c,
f = 0,
d = "",
e,
b;
g = g.substring(0, g.lastIndexOf("/"));
g = g.split("/");
c = h.split("/");
if (g.length >= c.length) {
for (e = 0, b = g.length; e < b; e++) {
if (e >= c.length || g[e] != c[e]) {
f = e + 1;
break;
}
}
}
if (g.length < c.length) {
for (e = 0, b = c.length; e < b; e++) {
if (e >= g.length || g[e] != c[e]) {
f = e + 1;
break;
}
}
}
if (f === 1) {
return h;
}
for (e = 0, b = g.length - (f - 1); e < b; e++) {
d += "../";
}
for (e = f - 1, b = c.length; e < b; e++) {
if (e != f - 1) {
d += "/" + c[e];
} else {
d += c[e];
}
}
return d;
},
toAbsPath: function (e, f) {
var c,
b = 0,
h = [],
d,
g;
d = /\/$/.test(f) ? "/" : "";
e = e.split("/");
f = f.split("/");
a(e, function (i) {
if (i) {
h.push(i);
}
});
e = h;
for (c = f.length - 1, h = []; c >= 0; c--) {
if (f[c].length === 0 || f[c] === ".") {
continue;
}
if (f[c] === "..") {
b++;
continue;
}
if (b > 0) {
b--;
continue;
}
h.push(f[c]);
}
c = e.length - b;
if (c <= 0) {
g = h.reverse().join("/");
} else {
g = e.slice(0, c).join("/") + "/" + h.reverse().join("/");
}
if (g.indexOf("/") !== 0) {
g = "/" + g;
}
if (d && g.lastIndexOf("/") !== g.length - 1) {
g += d;
}
return g;
},
getURI: function (d) {
var c,
b = this;
if (!b.source || d) {
c = "";
if (!d) {
if (b.protocol) {
c += b.protocol + "://";
}
if (b.userInfo) {
c += b.userInfo + "@";
}
if (b.host) {
c += b.host;
}
if (b.port) {
c += ":" + b.port;
}
}
if (b.path) {
c += b.path;
}
if (b.query) {
c += "?" + b.query;
}
if (b.anchor) {
c += "#" + b.anchor;
}
b.source = c;
}
return b.source;
},
});
})();
(function () {
var a = tinymce.each;
tinymce.create("static tinymce.util.Cookie", {
getHash: function (d) {
var b = this.get(d),
c;
if (b) {
a(b.split("&"), function (e) {
e = e.split("=");
c = c || {};
c[unescape(e[0])] = unescape(e[1]);
});
}
return c;
},
setHash: function (j, b, g, f, i, c) {
var h = "";
a(b, function (e, d) {
h += (!h ? "" : "&") + escape(d) + "=" + escape(e);
});
this.set(j, h, g, f, i, c);
},
get: function (i) {
var h = document.cookie,
g,
f = i + "=",
d;
if (!h) {
return;
}
d = h.indexOf("; " + f);
if (d == -1) {
d = h.indexOf(f);
if (d !== 0) {
return null;
}
} else {
d += 2;
}
g = h.indexOf(";", d);
if (g == -1) {
g = h.length;
}
return unescape(h.substring(d + f.length, g));
},
set: function (i, b, g, f, h, c) {
document.cookie =
i +
"=" +
escape(b) +
(g ? "; expires=" + g.toGMTString() : "") +
(f ? "; path=" + escape(f) : "") +
(h ? "; domain=" + h : "") +
(c ? "; secure" : "");
},
remove: function (c, e, d) {
var b = new Date();
b.setTime(b.getTime() - 1000);
this.set(c, "", b, e, d);
},
});
})();
(function () {
function serialize(o, quote) {
var i, v, t, name;
quote = quote || '"';
if (o == null) {
return "null";
}
t = typeof o;
if (t == "string") {
v = "\bb\tt\nn\ff\rr\"\"''\\\\";
return (
quote +
o.replace(/([\u0080-\uFFFF\x00-\x1f\"\'\\])/g, function (a, b) {
if (quote === '"' && a === "'") {
return a;
}
i = v.indexOf(b);
if (i + 1) {
return "\\" + v.charAt(i + 1);
}
a = b.charCodeAt().toString(16);
return "\\u" + "0000".substring(a.length) + a;
}) +
quote
);
}
if (t == "object") {
if (
o.hasOwnProperty &&
Object.prototype.toString.call(o) === "[object Array]"
) {
for (i = 0, v = "["; i < o.length; i++) {
v += (i > 0 ? "," : "") + serialize(o[i], quote);
}
return v + "]";
}
v = "{";
for (name in o) {
if (o.hasOwnProperty(name)) {
v +=
typeof o[name] != "function"
? (v.length > 1 ? "," + quote : quote) +
name +
quote +
":" +
serialize(o[name], quote)
: "";
}
}
return v + "}";
}
return "" + o;
}
tinymce.util.JSON = {
serialize: serialize,
parse: function (s) {
try {
return eval("(" + s + ")");
} catch (ex) {}
},
};
})();
tinymce.create("static tinymce.util.XHR", {
send: function (g) {
var a,
e,
b = window,
h = 0;
function f() {
if (!g.async || a.readyState == 4 || h++ > 10000) {
if (g.success && h < 10000 && a.status == 200) {
g.success.call(g.success_scope, "" + a.responseText, a, g);
} else {
if (g.error) {
g.error.call(
g.error_scope,
h > 10000 ? "TIMED_OUT" : "GENERAL",
a,
g,
);
}
}
a = null;
} else {
b.setTimeout(f, 10);
}
}
g.scope = g.scope || this;
g.success_scope = g.success_scope || g.scope;
g.error_scope = g.error_scope || g.scope;
g.async = g.async === false ? false : true;
g.data = g.data || "";
function d(i) {
a = 0;
try {
a = new ActiveXObject(i);
} catch (c) {}
return a;
}
a = b.XMLHttpRequest
? new XMLHttpRequest()
: d("Microsoft.XMLHTTP") || d("Msxml2.XMLHTTP");
if (a) {
if (a.overrideMimeType) {
a.overrideMimeType(g.content_type);
}
a.open(g.type || (g.data ? "POST" : "GET"), g.url, g.async);
if (g.content_type) {
a.setRequestHeader("Content-Type", g.content_type);
}
a.setRequestHeader("X-Requested-With", "XMLHttpRequest");
a.send(g.data);
if (!g.async) {
return f();
}
e = b.setTimeout(f, 10);
}
},
});
(function () {
var c = tinymce.extend,
b = tinymce.util.JSON,
a = tinymce.util.XHR;
tinymce.create("tinymce.util.JSONRequest", {
JSONRequest: function (d) {
this.settings = c({}, d);
this.count = 0;
},
send: function (f) {
var e = f.error,
d = f.success;
f = c(this.settings, f);
f.success = function (h, g) {
h = b.parse(h);
if (typeof h == "undefined") {
h = { error: "JSON Parse error." };
}
if (h.error) {
e.call(f.error_scope || f.scope, h.error, g);
} else {
d.call(f.success_scope || f.scope, h.result);
}
};
f.error = function (h, g) {
if (e) {
e.call(f.error_scope || f.scope, h, g);
}
};
f.data = b.serialize({
id: f.id || "c" + this.count++,
method: f.method,
params: f.params,
});
f.content_type = "application/json";
a.send(f);
},
static: {
sendRPC: function (d) {
return new tinymce.util.JSONRequest().send(d);
},
},
});
})();
(function (a) {
a.VK = {
BACKSPACE: 8,
DELETE: 46,
DOWN: 40,
ENTER: 13,
LEFT: 37,
RIGHT: 39,
SPACEBAR: 32,
TAB: 9,
UP: 38,
modifierPressed: function (b) {
return b.shiftKey || b.ctrlKey || b.altKey;
},
metaKeyPressed: function (b) {
return a.isMac ? b.metaKey : b.ctrlKey && !b.altKey;
},
};
})(tinymce);
tinymce.util.Quirks = function (a) {
var j = tinymce.VK,
f = j.BACKSPACE,
k = j.DELETE,
e = a.dom,
l = a.selection,
H = a.settings,
v = a.parser,
o = a.serializer,
E = tinymce.each;
function A(N, M) {
try {
a.getDoc().execCommand(N, false, M);
} catch (L) {}
}
function n() {
var L = a.getDoc().documentMode;
return L ? L : 6;
}
function z(L) {
return L.isDefaultPrevented();
}
function J() {
function L(O) {
var M, Q, N, P;
M = l.getRng();
Q = e.getParent(M.startContainer, e.isBlock);
if (O) {
Q = e.getNext(Q, e.isBlock);
}
if (Q) {
N = Q.firstChild;
while (N && N.nodeType == 3 && N.nodeValue.length === 0) {
N = N.nextSibling;
}
if (N && N.nodeName === "SPAN") {
P = N.cloneNode(false);
}
}
E(e.select("span", Q), function (R) {
R.setAttribute("data-mce-mark", "1");
});
a.getDoc().execCommand(O ? "ForwardDelete" : "Delete", false, null);
Q = e.getParent(M.startContainer, e.isBlock);
E(e.select("span", Q), function (R) {
var S = l.getBookmark();
if (P) {
e.replace(P.cloneNode(false), R, true);
} else {
if (!R.getAttribute("data-mce-mark")) {
e.remove(R, true);
} else {
R.removeAttribute("data-mce-mark");
}
}
l.moveToBookmark(S);
});
}
a.onKeyDown.add(function (M, O) {
var N;
N = O.keyCode == k;
if (!z(O) && (N || O.keyCode == f) && !j.modifierPressed(O)) {
O.preventDefault();
L(N);
}
});
a.addCommand("Delete", function () {
L();
});
}
function q() {
function L(O) {
var N = e.create("body");
var P = O.cloneContents();
N.appendChild(P);
return l.serializer.serialize(N, { format: "html" });
}
function M(N) {
var P = L(N);
var Q = e.createRng();
Q.selectNode(a.getBody());
var O = L(Q);
return P === O;
}
a.onKeyDown.add(function (O, Q) {
var P = Q.keyCode,
N;
if (!z(Q) && (P == k || P == f)) {
N = O.selection.isCollapsed();
if (N && !e.isEmpty(O.getBody())) {
return;
}
if (tinymce.isIE && !N) {
return;
}
if (!N && !M(O.selection.getRng())) {
return;
}
O.setContent("");
O.selection.setCursorLocation(O.getBody(), 0);
O.nodeChanged();
}
});
}
function I() {
a.onKeyDown.add(function (L, M) {
if (!z(M) && M.keyCode == 65 && j.metaKeyPressed(M)) {
M.preventDefault();
L.execCommand("SelectAll");
}
});
}
function K() {
if (!a.settings.content_editable) {
e.bind(a.getDoc(), "focusin", function (L) {
l.setRng(l.getRng());
});
e.bind(a.getDoc(), "mousedown", function (L) {
if (L.target == a.getDoc().documentElement) {
a.getWin().focus();
l.setRng(l.getRng());
}
});
}
}
function B() {
a.onKeyDown.add(function (L, O) {
if (!z(O) && O.keyCode === f) {
if (l.isCollapsed() && l.getRng(true).startOffset === 0) {
var N = l.getNode();
var M = N.previousSibling;
if (M && M.nodeName && M.nodeName.toLowerCase() === "hr") {
e.remove(M);
tinymce.dom.Event.cancel(O);
}
}
}
});
}
function y() {
if (!Range.prototype.getClientRects) {
a.onMouseDown.add(function (M, N) {
if (!z(N) && N.target.nodeName === "HTML") {
var L = M.getBody();
L.blur();
setTimeout(function () {
L.focus();
}, 0);
}
});
}
}
function h() {
a.onClick.add(function (L, M) {
M = M.target;
if (/^(IMG|HR)$/.test(M.nodeName)) {
l.getSel().setBaseAndExtent(M, 0, M, 1);
}
if (M.nodeName == "A" && e.hasClass(M, "mceItemAnchor")) {
l.select(M);
}
L.nodeChanged();
});
}
function c() {
function M() {
var O = e.getAttribs(l.getStart().cloneNode(false));
return function () {
var P = l.getStart();
if (P !== a.getBody()) {
e.setAttrib(P, "style", null);
E(O, function (Q) {
P.setAttributeNode(Q.cloneNode(true));
});
}
};
}
function L() {
return (
!l.isCollapsed() &&
e.getParent(l.getStart(), e.isBlock) !=
e.getParent(l.getEnd(), e.isBlock)
);
}
function N(O, P) {
P.preventDefault();
return false;
}
a.onKeyPress.add(function (O, Q) {
var P;
if (!z(Q) && (Q.keyCode == 8 || Q.keyCode == 46) && L()) {
P = M();
O.getDoc().execCommand("delete", false, null);
P();
Q.preventDefault();
return false;
}
});
e.bind(a.getDoc(), "cut", function (P) {
var O;
if (!z(P) && L()) {
O = M();
a.onKeyUp.addToTop(N);
setTimeout(function () {
O();
a.onKeyUp.remove(N);
}, 0);
}
});
}
function b() {
var M, L;
e.bind(a.getDoc(), "selectionchange", function () {
if (L) {
clearTimeout(L);
L = 0;
}
L = window.setTimeout(function () {
var N = l.getRng();
if (!M || !tinymce.dom.RangeUtils.compareRanges(N, M)) {
a.nodeChanged();
M = N;
}
}, 50);
});
}
function x() {
document.body.setAttribute("role", "application");
}
function t() {
a.onKeyDown.add(function (L, N) {
if (!z(N) && N.keyCode === f) {
if (l.isCollapsed() && l.getRng(true).startOffset === 0) {
var M = l.getNode().previousSibling;
if (M && M.nodeName && M.nodeName.toLowerCase() === "table") {
return tinymce.dom.Event.cancel(N);
}
}
}
});
}
function C() {
if (n() > 7) {
return;
}
A("RespectVisibilityInDesign", true);
a.contentStyles.push(".mceHideBrInPre pre br {display: none}");
e.addClass(a.getBody(), "mceHideBrInPre");
v.addNodeFilter("pre", function (L, N) {
var O = L.length,
Q,
M,
R,
P;
while (O--) {
Q = L[O].getAll("br");
M = Q.length;
while (M--) {
R = Q[M];
P = R.prev;
if (P && P.type === 3 && P.value.charAt(P.value - 1) != "\n") {
P.value += "\n";
} else {
R.parent.insert(new tinymce.html.Node("#text", 3), R, true).value =
"\n";
}
}
}
});
o.addNodeFilter("pre", function (L, N) {
var O = L.length,
Q,
M,
R,
P;
while (O--) {
Q = L[O].getAll("br");
M = Q.length;
while (M--) {
R = Q[M];
P = R.prev;
if (P && P.type == 3) {
P.value = P.value.replace(/\r?\n$/, "");
}
}
}
});
}
function g() {
e.bind(a.getBody(), "mouseup", function (N) {
var M,
L = l.getNode();
if (L.nodeName == "IMG") {
if ((M = e.getStyle(L, "width"))) {
e.setAttrib(L, "width", M.replace(/[^0-9%]+/g, ""));
e.setStyle(L, "width", "");
}
if ((M = e.getStyle(L, "height"))) {
e.setAttrib(L, "height", M.replace(/[^0-9%]+/g, ""));
e.setStyle(L, "height", "");
}
}
});
}
function d() {
a.onKeyDown.add(function (R, S) {
var Q, L, M, O, P, T, N;
Q = S.keyCode == k;
if (!z(S) && (Q || S.keyCode == f) && !j.modifierPressed(S)) {
L = l.getRng();
M = L.startContainer;
O = L.startOffset;
N = L.collapsed;
if (
M.nodeType == 3 &&
M.nodeValue.length > 0 &&
((O === 0 && !N) || (N && O === (Q ? 0 : 1)))
) {
nonEmptyElements = R.schema.getNonEmptyElements();
S.preventDefault();
P = e.create("br", { id: "__tmp" });
M.parentNode.insertBefore(P, M);
R.getDoc().execCommand(Q ? "ForwardDelete" : "Delete", false, null);
M = l.getRng().startContainer;
T = M.previousSibling;
if (
T &&
T.nodeType == 1 &&
!e.isBlock(T) &&
e.isEmpty(T) &&
!nonEmptyElements[T.nodeName.toLowerCase()]
) {
e.remove(T);
}
e.remove("__tmp");
}
}
});
}
function G() {
a.onKeyDown.add(function (P, Q) {
var N, M, R, L, O;
if (z(Q) || Q.keyCode != j.BACKSPACE) {
return;
}
N = l.getRng();
M = N.startContainer;
R = N.startOffset;
L = e.getRoot();
O = M;
if (!N.collapsed || R !== 0) {
return;
}
while (
O &&
O.parentNode &&
O.parentNode.firstChild == O &&
O.parentNode != L
) {
O = O.parentNode;
}
if (O.tagName === "BLOCKQUOTE") {
P.formatter.toggle("blockquote", null, O);
N = e.createRng();
N.setStart(M, 0);
N.setEnd(M, 0);
l.setRng(N);
}
});
}
function F() {
function L() {
a._refreshContentEditable();
A("StyleWithCSS", false);
A("enableInlineTableEditing", false);
if (!H.object_resizing) {
A("enableObjectResizing", false);
}
}
if (!H.readonly) {
a.onBeforeExecCommand.add(L);
a.onMouseDown.add(L);
}
}
function s() {
function L(M, N) {
E(e.select("a"), function (Q) {
var O = Q.parentNode,
P = e.getRoot();
if (O.lastChild === Q) {
while (O && !e.isBlock(O)) {
if (O.parentNode.lastChild !== O || O === P) {
return;
}
O = O.parentNode;
}
e.add(O, "br", { "data-mce-bogus": 1 });
}
});
}
a.onExecCommand.add(function (M, N) {
if (N === "CreateLink") {
L(M);
}
});
a.onSetContent.add(l.onSetContent.add(L));
}
function m() {
if (H.forced_root_block) {
a.onInit.add(function () {
A("DefaultParagraphSeparator", H.forced_root_block);
});
}
}
function p() {
function L(N, M) {
if (!N || !M.initial) {
a.execCommand("mceRepaint");
}
}
a.onUndo.add(L);
a.onRedo.add(L);
a.onSetContent.add(L);
}
function i() {
a.onKeyDown.add(function (M, N) {
var L;
if (!z(N) && N.keyCode == f) {
L = M.getDoc().selection.createRange();
if (L && L.item) {
N.preventDefault();
M.undoManager.beforeChange();
e.remove(L.item(0));
M.undoManager.add();
}
}
});
}
function r() {
var L;
if (n() >= 10) {
L = "";
E("p div h1 h2 h3 h4 h5 h6".split(" "), function (M, N) {
L += (N > 0 ? "," : "") + M + ":empty";
});
a.contentStyles.push(L + "{padding-right: 1px !important}");
}
}
function u() {
var N,
M,
ad,
L,
Y,
ab,
Z,
ac,
O,
P,
aa,
W,
V,
X = document,
T = a.getDoc();
if (!H.object_resizing || H.webkit_fake_resize === false) {
return;
}
A("enableObjectResizing", false);
aa = {
n: [0.5, 0, 0, -1],
e: [1, 0.5, 1, 0],
s: [0.5, 1, 0, 1],
w: [0, 0.5, -1, 0],
nw: [0, 0, -1, -1],
ne: [1, 0, 1, -1],
se: [1, 1, 1, 1],
sw: [0, 1, -1, 1],
};
function R(ah) {
var ag, af;
ag = ah.screenX - ab;
af = ah.screenY - Z;
W = ag * Y[2] + ac;
V = af * Y[3] + O;
W = W < 5 ? 5 : W;
V = V < 5 ? 5 : V;
if (
j.modifierPressed(ah) ||
(ad.nodeName == "IMG" && Y[2] * Y[3] !== 0)
) {
W = Math.round(V / P);
V = Math.round(W * P);
}
e.setStyles(L, { width: W, height: V });
if (Y[2] < 0 && L.clientWidth <= W) {
e.setStyle(L, "left", N + (ac - W));
}
if (Y[3] < 0 && L.clientHeight <= V) {
e.setStyle(L, "top", M + (O - V));
}
}
function ae() {
function af(ag, ah) {
if (ah) {
if (
ad.style[ag] ||
!a.schema.isValid(ad.nodeName.toLowerCase(), ag)
) {
e.setStyle(ad, ag, ah);
} else {
e.setAttrib(ad, ag, ah);
}
}
}
af("width", W);
af("height", V);
e.unbind(T, "mousemove", R);
e.unbind(T, "mouseup", ae);
if (X != T) {
e.unbind(X, "mousemove", R);
e.unbind(X, "mouseup", ae);
}
e.remove(L);
Q(ad);
}
function Q(ai) {
var ag, ah, af;
S();
ag = e.getPos(ai);
N = ag.x;
M = ag.y;
ah = ai.offsetWidth;
af = ai.offsetHeight;
if (ad != ai) {
ad = ai;
W = V = 0;
}
E(aa, function (al, aj) {
var ak;
ak = e.get("mceResizeHandle" + aj);
if (!ak) {
ak = e.add(T.documentElement, "div", {
id: "mceResizeHandle" + aj,
class: "mceResizeHandle",
style: "cursor:" + aj + "-resize; margin:0; padding:0",
});
e.bind(ak, "mousedown", function (am) {
am.preventDefault();
ae();
ab = am.screenX;
Z = am.screenY;
ac = ad.clientWidth;
O = ad.clientHeight;
P = O / ac;
Y = al;
L = ad.cloneNode(true);
e.addClass(L, "mceClonedResizable");
e.setStyles(L, { left: N, top: M, margin: 0 });
T.documentElement.appendChild(L);
e.bind(T, "mousemove", R);
e.bind(T, "mouseup", ae);
if (X != T) {
e.bind(X, "mousemove", R);
e.bind(X, "mouseup", ae);
}
});
} else {
e.show(ak);
}
e.setStyles(ak, {
left: ah * al[0] + N - ak.offsetWidth / 2,
top: af * al[1] + M - ak.offsetHeight / 2,
});
});
if (!tinymce.isOpera && ad.nodeName == "IMG") {
ad.setAttribute("data-mce-selected", "1");
}
}
function S() {
if (ad) {
ad.removeAttribute("data-mce-selected");
}
for (var af in aa) {
e.hide("mceResizeHandle" + af);
}
}
a.contentStyles.push(
".mceResizeHandle {position: absolute;border: 1px solid black;background: #FFF;width: 5px;height: 5px;z-index: 10000}.mceResizeHandle:hover {background: #000}img[data-mce-selected] {outline: 1px solid black}img.mceClonedResizable, table.mceClonedResizable {position: absolute;outline: 1px dashed black;opacity: .5;z-index: 10000}",
);
function U() {
var af = e.getParent(l.getNode(), "table,img");
E(e.select("img[data-mce-selected]"), function (ag) {
ag.removeAttribute("data-mce-selected");
});
if (af) {
Q(af);
} else {
S();
}
}
a.onNodeChange.add(U);
e.bind(T, "selectionchange", U);
a.serializer.addAttributeFilter("data-mce-selected", function (af, ag) {
var ah = af.length;
while (ah--) {
af[ah].attr(ag, null);
}
});
}
function D() {
if (n() < 9) {
v.addNodeFilter("noscript", function (L) {
var M = L.length,
N,
O;
while (M--) {
N = L[M];
O = N.firstChild;
if (O) {
N.attr("data-mce-innertext", O.value);
}
}
});
o.addNodeFilter("noscript", function (L) {
var M = L.length,
N,
P,
O;
while (M--) {
N = L[M];
P = L[M].firstChild;
if (P) {
P.value = tinymce.html.Entities.decode(P.value);
} else {
O = N.attributes.map["data-mce-innertext"];
if (O) {
N.attr("data-mce-innertext", null);
P = new tinymce.html.Node("#text", 3);
P.value = O;
P.raw = true;
N.append(P);
}
}
}
});
}
}
t();
G();
q();
if (tinymce.isWebKit) {
d();
J();
K();
h();
m();
if (tinymce.isIDevice) {
b();
} else {
u();
I();
}
}
if (tinymce.isIE) {
B();
x();
C();
g();
i();
r();
D();
}
if (tinymce.isGecko) {
B();
y();
c();
F();
s();
p();
}
if (tinymce.isOpera) {
u();
}
};
(function (j) {
var a,
g,
d,
k = /[&<>\"\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,
b = /[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,
f = /[<>&\"\']/g,
c = /&(#x|#)?([\w]+);/g,
i = {
128: "\u20AC",
130: "\u201A",
131: "\u0192",
132: "\u201E",
133: "\u2026",
134: "\u2020",
135: "\u2021",
136: "\u02C6",
137: "\u2030",
138: "\u0160",
139: "\u2039",
140: "\u0152",
142: "\u017D",
145: "\u2018",
146: "\u2019",
147: "\u201C",
148: "\u201D",
149: "\u2022",
150: "\u2013",
151: "\u2014",
152: "\u02DC",
153: "\u2122",
154: "\u0161",
155: "\u203A",
156: "\u0153",
158: "\u017E",
159: "\u0178",
};
g = { '"': """, "'": "'", "<": "<", ">": ">", "&": "&" };
d = { "<": "<", ">": ">", "&": "&", """: '"', "'": "'" };
function h(l) {
var m;
m = document.createElement("div");
m.innerHTML = l;
return m.textContent || m.innerText || l;
}
function e(m, p) {
var n,
o,
l,
q = {};
if (m) {
m = m.split(",");
p = p || 10;
for (n = 0; n < m.length; n += 2) {
o = String.fromCharCode(parseInt(m[n], p));
if (!g[o]) {
l = "&" + m[n + 1] + ";";
q[o] = l;
q[l] = o;
}
}
return q;
}
}
a = e(
"50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",
32,
);
j.html = j.html || {};
j.html.Entities = {
encodeRaw: function (m, l) {
return m.replace(l ? k : b, function (n) {
return g[n] || n;
});
},
encodeAllRaw: function (l) {
return ("" + l).replace(f, function (m) {
return g[m] || m;
});
},
encodeNumeric: function (m, l) {
return m.replace(l ? k : b, function (n) {
if (n.length > 1) {
return (
"" +
((n.charCodeAt(0) - 55296) * 1024 +
(n.charCodeAt(1) - 56320) +
65536) +
";"
);
}
return g[n] || "" + n.charCodeAt(0) + ";";
});
},
encodeNamed: function (n, l, m) {
m = m || a;
return n.replace(l ? k : b, function (o) {
return g[o] || m[o] || o;
});
},
getEncodeFunc: function (l, o) {
var p = j.html.Entities;
o = e(o) || a;
function m(r, q) {
return r.replace(q ? k : b, function (s) {
return g[s] || o[s] || "" + s.charCodeAt(0) + ";" || s;
});
}
function n(r, q) {
return p.encodeNamed(r, q, o);
}
l = j.makeMap(l.replace(/\+/g, ","));
if (l.named && l.numeric) {
return m;
}
if (l.named) {
if (o) {
return n;
}
return p.encodeNamed;
}
if (l.numeric) {
return p.encodeNumeric;
}
return p.encodeRaw;
},
decode: function (l) {
return l.replace(c, function (n, m, o) {
if (m) {
o = parseInt(o, m.length === 2 ? 16 : 10);
if (o > 65535) {
o -= 65536;
return String.fromCharCode(55296 + (o >> 10), 56320 + (o & 1023));
} else {
return i[o] || String.fromCharCode(o);
}
}
return d[n] || a[n] || h(n);
});
},
};
})(tinymce);
tinymce.html.Styles = function (d, f) {
var k = /rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,
h =
/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,
b = /\s*([^:]+):\s*([^;]+);?/g,
l = /\s+$/,
m = /rgb/,
e,
g,
a = {},
j;
d = d || {};
j = "\\\" \\' \\; \\: ; : \uFEFF".split(" ");
for (g = 0; g < j.length; g++) {
a[j[g]] = "\uFEFF" + g;
a["\uFEFF" + g] = j[g];
}
function c(n, q, p, i) {
function o(r) {
r = parseInt(r).toString(16);
return r.length > 1 ? r : "0" + r;
}
return "#" + o(q) + o(p) + o(i);
}
return {
toHex: function (i) {
return i.replace(k, c);
},
parse: function (s) {
var z = {},
q,
n,
x,
r,
v = d.url_converter,
y = d.url_converter_scope || this;
function p(D, G) {
var F, C, B, E;
F = z[D + "-top" + G];
if (!F) {
return;
}
C = z[D + "-right" + G];
if (F != C) {
return;
}
B = z[D + "-bottom" + G];
if (C != B) {
return;
}
E = z[D + "-left" + G];
if (B != E) {
return;
}
z[D + G] = E;
delete z[D + "-top" + G];
delete z[D + "-right" + G];
delete z[D + "-bottom" + G];
delete z[D + "-left" + G];
}
function u(C) {
var D = z[C],
B;
if (!D || D.indexOf(" ") < 0) {
return;
}
D = D.split(" ");
B = D.length;
while (B--) {
if (D[B] !== D[0]) {
return false;
}
}
z[C] = D[0];
return true;
}
function A(D, C, B, E) {
if (!u(C)) {
return;
}
if (!u(B)) {
return;
}
if (!u(E)) {
return;
}
z[D] = z[C] + " " + z[B] + " " + z[E];
delete z[C];
delete z[B];
delete z[E];
}
function t(B) {
r = true;
return a[B];
}
function i(C, B) {
if (r) {
C = C.replace(/\uFEFF[0-9]/g, function (D) {
return a[D];
});
}
if (!B) {
C = C.replace(/\\([\'\";:])/g, "$1");
}
return C;
}
function o(C, B, F, E, G, D) {
G = G || D;
if (G) {
G = i(G);
return "'" + G.replace(/\'/g, "\\'") + "'";
}
B = i(B || F || E);
if (v) {
B = v.call(y, B, "style");
}
return "url('" + B.replace(/\'/g, "\\'") + "')";
}
if (s) {
s = s
.replace(/\\[\"\';:\uFEFF]/g, t)
.replace(/\"[^\"]+\"|\'[^\']+\'/g, function (B) {
return B.replace(/[;:]/g, t);
});
while ((q = b.exec(s))) {
n = q[1].replace(l, "").toLowerCase();
x = q[2].replace(l, "");
if (n && x.length > 0) {
if (n === "font-weight" && x === "700") {
x = "bold";
} else {
if (n === "color" || n === "background-color") {
x = x.toLowerCase();
}
}
x = x.replace(k, c);
x = x.replace(h, o);
z[n] = r ? i(x, true) : x;
}
b.lastIndex = q.index + q[0].length;
}
p("border", "");
p("border", "-width");
p("border", "-color");
p("border", "-style");
p("padding", "");
p("margin", "");
A("border", "border-width", "border-style", "border-color");
if (z.border === "medium none") {
delete z.border;
}
}
return z;
},
serialize: function (p, r) {
var o = "",
n,
q;
function i(t) {
var x, u, s, v;
x = f.styles[t];
if (x) {
for (u = 0, s = x.length; u < s; u++) {
t = x[u];
v = p[t];
if (v !== e && v.length > 0) {
o += (o.length > 0 ? " " : "") + t + ": " + v + ";";
}
}
}
}
if (r && f && f.styles) {
i("*");
i(r);
} else {
for (n in p) {
q = p[n];
if (q !== e && q.length > 0) {
o += (o.length > 0 ? " " : "") + n + ": " + q + ";";
}
}
}
return o;
},
};
};
(function (f) {
var a = {},
e = f.makeMap,
g = f.each;
function d(j, i) {
return j.split(i || ",");
}
function h(m, l) {
var j,
k = {};
function i(n) {
return n.replace(/[A-Z]+/g, function (o) {
return i(m[o]);
});
}
for (j in m) {
if (m.hasOwnProperty(j)) {
m[j] = i(m[j]);
}
}
i(l)
.replace(/#/g, "#text")
.replace(/(\w+)\[([^\]]+)\]\[([^\]]*)\]/g, function (q, o, n, p) {
n = d(n, "|");
k[o] = {
attributes: e(n),
attributesOrder: n,
children: e(p, "|", { "#comment": {} }),
};
});
return k;
}
function b() {
var i = a.html5;
if (!i) {
i = a.html5 = h(
{
A: "id|accesskey|class|dir|draggable|item|hidden|itemprop|role|spellcheck|style|subject|title|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",
B: "#|a|abbr|area|audio|b|bdo|br|button|canvas|cite|code|command|datalist|del|dfn|em|embed|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|meta|meter|noscript|object|output|progress|q|ruby|samp|script|select|small|span|strong|sub|sup|svg|textarea|time|var|video|wbr",
C: "#|a|abbr|area|address|article|aside|audio|b|bdo|blockquote|br|button|canvas|cite|code|command|datalist|del|details|dfn|dialog|div|dl|em|embed|fieldset|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|menu|meta|meter|nav|noscript|ol|object|output|p|pre|progress|q|ruby|samp|script|section|select|small|span|strong|style|sub|sup|svg|table|textarea|time|ul|var|video",
},
"html[A|manifest][body|head]head[A][base|command|link|meta|noscript|script|style|title]title[A][#]base[A|href|target][]link[A|href|rel|media|type|sizes][]meta[A|http-equiv|name|content|charset][]style[A|type|media|scoped][#]script[A|charset|type|src|defer|async][#]noscript[A][C]body[A][C]section[A][C]nav[A][C]article[A][C]aside[A][C]h1[A][B]h2[A][B]h3[A][B]h4[A][B]h5[A][B]h6[A][B]hgroup[A][h1|h2|h3|h4|h5|h6]header[A][C]footer[A][C]address[A][C]p[A][B]br[A][]pre[A][B]dialog[A][dd|dt]blockquote[A|cite][C]ol[A|start|reversed][li]ul[A][li]li[A|value][C]dl[A][dd|dt]dt[A][B]dd[A][C]a[A|href|target|ping|rel|media|type][B]em[A][B]strong[A][B]small[A][B]cite[A][B]q[A|cite][B]dfn[A][B]abbr[A][B]code[A][B]var[A][B]samp[A][B]kbd[A][B]sub[A][B]sup[A][B]i[A][B]b[A][B]mark[A][B]progress[A|value|max][B]meter[A|value|min|max|low|high|optimum][B]time[A|datetime][B]ruby[A][B|rt|rp]rt[A][B]rp[A][B]bdo[A][B]span[A][B]ins[A|cite|datetime][B]del[A|cite|datetime][B]figure[A][C|legend|figcaption]figcaption[A][C]img[A|alt|src|height|width|usemap|ismap][]iframe[A|name|src|height|width|sandbox|seamless][]embed[A|src|height|width|type][]object[A|data|type|height|width|usemap|name|form|classid][param]param[A|name|value][]details[A|open][C|legend]command[A|type|label|icon|disabled|checked|radiogroup][]menu[A|type|label][C|li]legend[A][C|B]div[A][C]source[A|src|type|media][]audio[A|src|autobuffer|autoplay|loop|controls][source]video[A|src|autobuffer|autoplay|loop|controls|width|height|poster][source]hr[A][]form[A|accept-charset|action|autocomplete|enctype|method|name|novalidate|target][C]fieldset[A|disabled|form|name][C|legend]label[A|form|for][B]input[A|type|accept|alt|autocomplete|autofocus|checked|disabled|form|formaction|formenctype|formmethod|formnovalidate|formtarget|height|list|max|maxlength|min|multiple|pattern|placeholder|readonly|required|size|src|step|width|files|value|name][]button[A|autofocus|disabled|form|formaction|formenctype|formmethod|formnovalidate|formtarget|name|value|type][B]select[A|autofocus|disabled|form|multiple|name|size][option|optgroup]datalist[A][B|option]optgroup[A|disabled|label][option]option[A|disabled|selected|label|value][]textarea[A|autofocus|disabled|form|maxlength|name|placeholder|readonly|required|rows|cols|wrap][]keygen[A|autofocus|challenge|disabled|form|keytype|name][]output[A|for|form|name][B]canvas[A|width|height][]map[A|name][B|C]area[A|shape|coords|href|alt|target|media|rel|ping|type][]mathml[A][]svg[A][]table[A|border][caption|colgroup|thead|tfoot|tbody|tr]caption[A][C]colgroup[A|span][col]col[A|span][]thead[A][tr]tfoot[A][tr]tbody[A][tr]tr[A][th|td]th[A|headers|rowspan|colspan|scope][B]td[A|headers|rowspan|colspan][C]wbr[A][]",
);
}
return i;
}
function c() {
var i = a.html4;
if (!i) {
i = a.html4 = h(
{
Z: "H|K|N|O|P",
Y: "X|form|R|Q",
ZG: "E|span|width|align|char|charoff|valign",
X: "p|T|div|U|W|isindex|fieldset|table",
ZF: "E|align|char|charoff|valign",
W: "pre|hr|blockquote|address|center|noframes",
ZE: "abbr|axis|headers|scope|rowspan|colspan|align|char|charoff|valign|nowrap|bgcolor|width|height",
ZD: "[E][S]",
U: "ul|ol|dl|menu|dir",
ZC: "p|Y|div|U|W|table|br|span|bdo|object|applet|img|map|K|N|Q",
T: "h1|h2|h3|h4|h5|h6",
ZB: "X|S|Q",
S: "R|P",
ZA: "a|G|J|M|O|P",
R: "a|H|K|N|O",
Q: "noscript|P",
P: "ins|del|script",
O: "input|select|textarea|label|button",
N: "M|L",
M: "em|strong|dfn|code|q|samp|kbd|var|cite|abbr|acronym",
L: "sub|sup",
K: "J|I",
J: "tt|i|b|u|s|strike",
I: "big|small|font|basefont",
H: "G|F",
G: "br|span|bdo",
F: "object|applet|img|map|iframe",
E: "A|B|C",
D: "accesskey|tabindex|onfocus|onblur",
C: "onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",
B: "lang|xml:lang|dir",
A: "id|class|style|title",
},
"script[id|charset|type|language|src|defer|xml:space][]style[B|id|type|media|title|xml:space][]object[E|declare|classid|codebase|data|type|codetype|archive|standby|width|height|usemap|name|tabindex|align|border|hspace|vspace][#|param|Y]param[id|name|value|valuetype|type][]p[E|align][#|S]a[E|D|charset|type|name|href|hreflang|rel|rev|shape|coords|target][#|Z]br[A|clear][]span[E][#|S]bdo[A|C|B][#|S]applet[A|codebase|archive|code|object|alt|name|width|height|align|hspace|vspace][#|param|Y]h1[E|align][#|S]img[E|src|alt|name|longdesc|width|height|usemap|ismap|align|border|hspace|vspace][]map[B|C|A|name][X|form|Q|area]h2[E|align][#|S]iframe[A|longdesc|name|src|frameborder|marginwidth|marginheight|scrolling|align|width|height][#|Y]h3[E|align][#|S]tt[E][#|S]i[E][#|S]b[E][#|S]u[E][#|S]s[E][#|S]strike[E][#|S]big[E][#|S]small[E][#|S]font[A|B|size|color|face][#|S]basefont[id|size|color|face][]em[E][#|S]strong[E][#|S]dfn[E][#|S]code[E][#|S]q[E|cite][#|S]samp[E][#|S]kbd[E][#|S]var[E][#|S]cite[E][#|S]abbr[E][#|S]acronym[E][#|S]sub[E][#|S]sup[E][#|S]input[E|D|type|name|value|checked|disabled|readonly|size|maxlength|src|alt|usemap|onselect|onchange|accept|align][]select[E|name|size|multiple|disabled|tabindex|onfocus|onblur|onchange][optgroup|option]optgroup[E|disabled|label][option]option[E|selected|disabled|label|value][]textarea[E|D|name|rows|cols|disabled|readonly|onselect|onchange][]label[E|for|accesskey|onfocus|onblur][#|S]button[E|D|name|value|type|disabled][#|p|T|div|U|W|table|G|object|applet|img|map|K|N|Q]h4[E|align][#|S]ins[E|cite|datetime][#|Y]h5[E|align][#|S]del[E|cite|datetime][#|Y]h6[E|align][#|S]div[E|align][#|Y]ul[E|type|compact][li]li[E|type|value][#|Y]ol[E|type|compact|start][li]dl[E|compact][dt|dd]dt[E][#|S]dd[E][#|Y]menu[E|compact][li]dir[E|compact][li]pre[E|width|xml:space][#|ZA]hr[E|align|noshade|size|width][]blockquote[E|cite][#|Y]address[E][#|S|p]center[E][#|Y]noframes[E][#|Y]isindex[A|B|prompt][]fieldset[E][#|legend|Y]legend[E|accesskey|align][#|S]table[E|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor][caption|col|colgroup|thead|tfoot|tbody|tr]caption[E|align][#|S]col[ZG][]colgroup[ZG][col]thead[ZF][tr]tr[ZF|bgcolor][th|td]th[E|ZE][#|Y]form[E|action|method|name|enctype|onsubmit|onreset|accept|accept-charset|target][#|X|R|Q]noscript[E][#|Y]td[E|ZE][#|Y]tfoot[ZF][tr]tbody[ZF][tr]area[E|D|shape|coords|href|nohref|alt|target][]base[id|href|target][]body[E|onload|onunload|background|bgcolor|text|link|vlink|alink][#|Y]",
);
}
return i;
}
f.html.Schema = function (A) {
var u = this,
s = {},
k = {},
j = [],
D,
y;
var o,
q,
z,
r,
v,
n,
p = {};
function m(F, E, H) {
var G = A[F];
if (!G) {
G = a[F];
if (!G) {
G = e(E, " ", e(E.toUpperCase(), " "));
G = f.extend(G, H);
a[F] = G;
}
} else {
G = e(G, ",", e(G.toUpperCase(), " "));
}
return G;
}
A = A || {};
y = A.schema == "html5" ? b() : c();
if (A.verify_html === false) {
A.valid_elements = "*[*]";
}
if (A.valid_styles) {
D = {};
g(A.valid_styles, function (F, E) {
D[E] = f.explode(F);
});
}
o = m("whitespace_elements", "pre script noscript style textarea");
q = m(
"self_closing_elements",
"colgroup dd dt li option p td tfoot th thead tr",
);
z = m(
"short_ended_elements",
"area base basefont br col frame hr img input isindex link meta param embed source wbr",
);
r = m(
"boolean_attributes",
"checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls",
);
n = m("non_empty_elements", "td th iframe video audio object", z);
textBlockElementsMap = m(
"text_block_elements",
"h1 h2 h3 h4 h5 h6 p div address pre form blockquote center dir fieldset header footer article section hgroup aside nav figure",
);
v = m(
"block_elements",
"hr table tbody thead tfoot th tr td li ol ul caption dl dt dd noscript menu isindex samp option datalist select optgroup",
textBlockElementsMap,
);
function i(E) {
return new RegExp("^" + E.replace(/([?+*])/g, ".$1") + "$");
}
function C(L) {
var K,
G,
Z,
V,
aa,
F,
I,
U,
X,
Q,
Y,
ac,
O,
J,
W,
E,
S,
H,
ab,
ad,
P,
T,
N = /^([#+\-])?([^\[\/]+)(?:\/([^\[]+))?(?:\[([^\]]+)\])?$/,
R = /^([!\-])?(\w+::\w+|[^=:<]+)?(?:([=:<])(.*))?$/,
M = /[*?+]/;
if (L) {
L = d(L);
if (s["@"]) {
S = s["@"].attributes;
H = s["@"].attributesOrder;
}
for (K = 0, G = L.length; K < G; K++) {
F = N.exec(L[K]);
if (F) {
W = F[1];
Q = F[2];
E = F[3];
X = F[4];
O = {};
J = [];
I = { attributes: O, attributesOrder: J };
if (W === "#") {
I.paddEmpty = true;
}
if (W === "-") {
I.removeEmpty = true;
}
if (S) {
for (ad in S) {
O[ad] = S[ad];
}
J.push.apply(J, H);
}
if (X) {
X = d(X, "|");
for (Z = 0, V = X.length; Z < V; Z++) {
F = R.exec(X[Z]);
if (F) {
U = {};
ac = F[1];
Y = F[2].replace(/::/g, ":");
W = F[3];
T = F[4];
if (ac === "!") {
I.attributesRequired = I.attributesRequired || [];
I.attributesRequired.push(Y);
U.required = true;
}
if (ac === "-") {
delete O[Y];
J.splice(f.inArray(J, Y), 1);
continue;
}
if (W) {
if (W === "=") {
I.attributesDefault = I.attributesDefault || [];
I.attributesDefault.push({ name: Y, value: T });
U.defaultValue = T;
}
if (W === ":") {
I.attributesForced = I.attributesForced || [];
I.attributesForced.push({ name: Y, value: T });
U.forcedValue = T;
}
if (W === "<") {
U.validValues = e(T, "?");
}
}
if (M.test(Y)) {
I.attributePatterns = I.attributePatterns || [];
U.pattern = i(Y);
I.attributePatterns.push(U);
} else {
if (!O[Y]) {
J.push(Y);
}
O[Y] = U;
}
}
}
}
if (!S && Q == "@") {
S = O;
H = J;
}
if (E) {
I.outputName = Q;
s[E] = I;
}
if (M.test(Q)) {
I.pattern = i(Q);
j.push(I);
} else {
s[Q] = I;
}
}
}
}
}
function t(E) {
s = {};
j = [];
C(E);
g(y, function (G, F) {
k[F] = G.children;
});
}
function l(F) {
var E = /^(~)?(.+)$/;
if (F) {
g(d(F), function (J) {
var H = E.exec(J),
I = H[1] === "~",
K = I ? "span" : "div",
G = H[2];
k[G] = k[K];
p[G] = K;
if (!I) {
v[G.toUpperCase()] = {};
v[G] = {};
}
if (!s[G]) {
s[G] = s[K];
}
g(k, function (L, M) {
if (L[K]) {
L[G] = L[K];
}
});
});
}
}
function x(F) {
var E = /^([+\-]?)(\w+)\[([^\]]+)\]$/;
if (F) {
g(d(F), function (J) {
var I = E.exec(J),
G,
H;
if (I) {
H = I[1];
if (H) {
G = k[I[2]];
} else {
G = k[I[2]] = { "#comment": {} };
}
G = k[I[2]];
g(d(I[3], "|"), function (K) {
if (H === "-") {
delete G[K];
} else {
G[K] = {};
}
});
}
});
}
}
function B(E) {
var G = s[E],
F;
if (G) {
return G;
}
F = j.length;
while (F--) {
G = j[F];
if (G.pattern.test(E)) {
return G;
}
}
}
if (!A.valid_elements) {
g(y, function (F, E) {
s[E] = { attributes: F.attributes, attributesOrder: F.attributesOrder };
k[E] = F.children;
});
if (A.schema != "html5") {
g(d("strong/b,em/i"), function (E) {
E = d(E, "/");
s[E[1]].outputName = E[0];
});
}
s.img.attributesDefault = [{ name: "alt", value: "" }];
g(
d("ol,ul,sub,sup,blockquote,span,font,a,table,tbody,tr,strong,em,b,i"),
function (E) {
if (s[E]) {
s[E].removeEmpty = true;
}
},
);
g(d("p,h1,h2,h3,h4,h5,h6,th,td,pre,div,address,caption"), function (E) {
s[E].paddEmpty = true;
});
} else {
t(A.valid_elements);
}
l(A.custom_elements);
x(A.valid_children);
C(A.extended_valid_elements);
x("+ol[ul|ol],+ul[ul|ol]");
if (A.invalid_elements) {
f.each(f.explode(A.invalid_elements), function (E) {
if (s[E]) {
delete s[E];
}
});
}
if (!B("span")) {
C("span[!data-mce-type|*]");
}
u.children = k;
u.styles = D;
u.getBoolAttrs = function () {
return r;
};
u.getBlockElements = function () {
return v;
};
u.getTextBlockElements = function () {
return textBlockElementsMap;
};
u.getShortEndedElements = function () {
return z;
};
u.getSelfClosingElements = function () {
return q;
};
u.getNonEmptyElements = function () {
return n;
};
u.getWhiteSpaceElements = function () {
return o;
};
u.isValidChild = function (E, G) {
var F = k[E];
return !!(F && F[G]);
};
u.isValid = function (F, E) {
var H,
G,
I = B(F);
if (I) {
if (E) {
if (I.attributes[E]) {
return true;
}
H = I.attributePatterns;
if (H) {
G = H.length;
while (G--) {
if (H[G].pattern.test(F)) {
return true;
}
}
}
} else {
return true;
}
}
return false;
};
u.getElementRule = B;
u.getCustomElements = function () {
return p;
};
u.addValidElements = C;
u.setValidElements = t;
u.addCustomElements = l;
u.addValidChildren = x;
u.elements = s;
};
})(tinymce);
(function (a) {
a.html.SaxParser = function (c, e) {
var b = this,
d = function () {};
c = c || {};
b.schema = e = e || new a.html.Schema();
if (c.fix_self_closing !== false) {
c.fix_self_closing = true;
}
a.each("comment cdata text start end pi doctype".split(" "), function (f) {
if (f) {
b[f] = c[f] || d;
}
});
b.parse = function (E) {
var n = this,
g,
G = 0,
I,
B,
A = [],
N,
Q,
C,
r,
z,
s,
M,
H,
O,
v,
m,
k,
t,
R,
o,
P,
F,
S,
L,
f,
J,
l,
D,
K,
h,
x = 0,
j = a.html.Entities.decode,
y,
q;
function u(T) {
var V, U;
V = A.length;
while (V--) {
if (A[V].name === T) {
break;
}
}
if (V >= 0) {
for (U = A.length - 1; U >= V; U--) {
T = A[U];
if (T.valid) {
n.end(T.name);
}
}
A.length = V;
}
}
function p(U, T, Y, X, W) {
var Z, V;
T = T.toLowerCase();
Y = T in H ? T : j(Y || X || W || "");
if (v && !z && T.indexOf("data-") !== 0) {
Z = P[T];
if (!Z && F) {
V = F.length;
while (V--) {
Z = F[V];
if (Z.pattern.test(T)) {
break;
}
}
if (V === -1) {
Z = null;
}
}
if (!Z) {
return;
}
if (Z.validValues && !(Y in Z.validValues)) {
return;
}
}
N.map[T] = Y;
N.push({ name: T, value: Y });
}
l = new RegExp(
"<(?:(?:!--([\\w\\W]*?)-->)|(?:!\\[CDATA\\[([\\w\\W]*?)\\]\\]>)|(?:!DOCTYPE([\\w\\W]*?)>)|(?:\\?([^\\s\\/<>]+) ?([\\w\\W]*?)[?/]>)|(?:\\/([^>]+)>)|(?:([A-Za-z0-9\\-\\:\\.]+)((?:\\s+[^\"'>]+(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>]*))*|\\/|\\s+)>))",
"g",
);
D =
/([\w:\-]+)(?:\s*=\s*(?:(?:\"((?:[^\"])*)\")|(?:\'((?:[^\'])*)\')|([^>\s]+)))?/g;
K = {
script: /<\/script[^>]*>/gi,
style: /<\/style[^>]*>/gi,
noscript: /<\/noscript[^>]*>/gi,
};
M = e.getShortEndedElements();
J = c.self_closing_elements || e.getSelfClosingElements();
H = e.getBoolAttrs();
v = c.validate;
s = c.remove_internals;
y = c.fix_self_closing;
q = a.isIE;
o = /^:/;
while ((g = l.exec(E))) {
if (G < g.index) {
n.text(j(E.substr(G, g.index - G)));
}
if ((I = g[6])) {
I = I.toLowerCase();
if (q && o.test(I)) {
I = I.substr(1);
}
u(I);
} else {
if ((I = g[7])) {
I = I.toLowerCase();
if (q && o.test(I)) {
I = I.substr(1);
}
O = I in M;
if (y && J[I] && A.length > 0 && A[A.length - 1].name === I) {
u(I);
}
if (!v || (m = e.getElementRule(I))) {
k = true;
if (v) {
P = m.attributes;
F = m.attributePatterns;
}
if ((R = g[8])) {
z = R.indexOf("data-mce-type") !== -1;
if (z && s) {
k = false;
}
N = [];
N.map = {};
R.replace(D, p);
} else {
N = [];
N.map = {};
}
if (v && !z) {
S = m.attributesRequired;
L = m.attributesDefault;
f = m.attributesForced;
if (f) {
Q = f.length;
while (Q--) {
t = f[Q];
r = t.name;
h = t.value;
if (h === "{$uid}") {
h = "mce_" + x++;
}
N.map[r] = h;
N.push({ name: r, value: h });
}
}
if (L) {
Q = L.length;
while (Q--) {
t = L[Q];
r = t.name;
if (!(r in N.map)) {
h = t.value;
if (h === "{$uid}") {
h = "mce_" + x++;
}
N.map[r] = h;
N.push({ name: r, value: h });
}
}
}
if (S) {
Q = S.length;
while (Q--) {
if (S[Q] in N.map) {
break;
}
}
if (Q === -1) {
k = false;
}
}
if (N.map["data-mce-bogus"]) {
k = false;
}
}
if (k) {
n.start(I, N, O);
}
} else {
k = false;
}
if ((B = K[I])) {
B.lastIndex = G = g.index + g[0].length;
if ((g = B.exec(E))) {
if (k) {
C = E.substr(G, g.index - G);
}
G = g.index + g[0].length;
} else {
C = E.substr(G);
G = E.length;
}
if (k && C.length > 0) {
n.text(C, true);
}
if (k) {
n.end(I);
}
l.lastIndex = G;
continue;
}
if (!O) {
if (!R || R.indexOf("/") != R.length - 1) {
A.push({ name: I, valid: k });
} else {
if (k) {
n.end(I);
}
}
}
} else {
if ((I = g[1])) {
n.comment(I);
} else {
if ((I = g[2])) {
n.cdata(I);
} else {
if ((I = g[3])) {
n.doctype(I);
} else {
if ((I = g[4])) {
n.pi(I, g[5]);
}
}
}
}
}
}
G = g.index + g[0].length;
}
if (G < E.length) {
n.text(j(E.substr(G)));
}
for (Q = A.length - 1; Q >= 0; Q--) {
I = A[Q];
if (I.valid) {
n.end(I.name);
}
}
};
};
})(tinymce);
(function (d) {
var c = /^[ \t\r\n]*$/,
e = {
"#text": 3,
"#comment": 8,
"#cdata": 4,
"#pi": 7,
"#doctype": 10,
"#document-fragment": 11,
};
function a(k, l, j) {
var i,
h,
f = j ? "lastChild" : "firstChild",
g = j ? "prev" : "next";
if (k[f]) {
return k[f];
}
if (k !== l) {
i = k[g];
if (i) {
return i;
}
for (h = k.parent; h && h !== l; h = h.parent) {
i = h[g];
if (i) {
return i;
}
}
}
}
function b(f, g) {
this.name = f;
this.type = g;
if (g === 1) {
this.attributes = [];
this.attributes.map = {};
}
}
d.extend(b.prototype, {
replace: function (g) {
var f = this;
if (g.parent) {
g.remove();
}
f.insert(g, f);
f.remove();
return f;
},
attr: function (h, l) {
var f = this,
g,
j,
k;
if (typeof h !== "string") {
for (j in h) {
f.attr(j, h[j]);
}
return f;
}
if ((g = f.attributes)) {
if (l !== k) {
if (l === null) {
if (h in g.map) {
delete g.map[h];
j = g.length;
while (j--) {
if (g[j].name === h) {
g = g.splice(j, 1);
return f;
}
}
}
return f;
}
if (h in g.map) {
j = g.length;
while (j--) {
if (g[j].name === h) {
g[j].value = l;
break;
}
}
} else {
g.push({ name: h, value: l });
}
g.map[h] = l;
return f;
} else {
return g.map[h];
}
}
},
clone: function () {
var g = this,
n = new b(g.name, g.type),
h,
f,
m,
j,
k;
if ((m = g.attributes)) {
k = [];
k.map = {};
for (h = 0, f = m.length; h < f; h++) {
j = m[h];
if (j.name !== "id") {
k[k.length] = { name: j.name, value: j.value };
k.map[j.name] = j.value;
}
}
n.attributes = k;
}
n.value = g.value;
n.shortEnded = g.shortEnded;
return n;
},
wrap: function (g) {
var f = this;
f.parent.insert(g, f);
g.append(f);
return f;
},
unwrap: function () {
var f = this,
h,
g;
for (h = f.firstChild; h; ) {
g = h.next;
f.insert(h, f, true);
h = g;
}
f.remove();
},
remove: function () {
var f = this,
h = f.parent,
g = f.next,
i = f.prev;
if (h) {
if (h.firstChild === f) {
h.firstChild = g;
if (g) {
g.prev = null;
}
} else {
i.next = g;
}
if (h.lastChild === f) {
h.lastChild = i;
if (i) {
i.next = null;
}
} else {
g.prev = i;
}
f.parent = f.next = f.prev = null;
}
return f;
},
append: function (h) {
var f = this,
g;
if (h.parent) {
h.remove();
}
g = f.lastChild;
if (g) {
g.next = h;
h.prev = g;
f.lastChild = h;
} else {
f.lastChild = f.firstChild = h;
}
h.parent = f;
return h;
},
insert: function (h, f, i) {
var g;
if (h.parent) {
h.remove();
}
g = f.parent || this;
if (i) {
if (f === g.firstChild) {
g.firstChild = h;
} else {
f.prev.next = h;
}
h.prev = f.prev;
h.next = f;
f.prev = h;
} else {
if (f === g.lastChild) {
g.lastChild = h;
} else {
f.next.prev = h;
}
h.next = f.next;
h.prev = f;
f.next = h;
}
h.parent = g;
return h;
},
getAll: function (g) {
var f = this,
h,
i = [];
for (h = f.firstChild; h; h = a(h, f)) {
if (h.name === g) {
i.push(h);
}
}
return i;
},
empty: function () {
var g = this,
f,
h,
j;
if (g.firstChild) {
f = [];
for (j = g.firstChild; j; j = a(j, g)) {
f.push(j);
}
h = f.length;
while (h--) {
j = f[h];
j.parent = j.firstChild = j.lastChild = j.next = j.prev = null;
}
}
g.firstChild = g.lastChild = null;
return g;
},
isEmpty: function (k) {
var f = this,
j = f.firstChild,
h,
g;
if (j) {
do {
if (j.type === 1) {
if (j.attributes.map["data-mce-bogus"]) {
continue;
}
if (k[j.name]) {
return false;
}
h = j.attributes.length;
while (h--) {
g = j.attributes[h].name;
if (g === "name" || g.indexOf("data-mce-") === 0) {
return false;
}
}
}
if (j.type === 8) {
return false;
}
if (j.type === 3 && !c.test(j.value)) {
return false;
}
} while ((j = a(j, f)));
}
return true;
},
walk: function (f) {
return a(this, null, f);
},
});
d.extend(b, {
create: function (g, f) {
var i, h;
i = new b(g, e[g] || 1);
if (f) {
for (h in f) {
i.attr(h, f[h]);
}
}
return i;
},
});
d.html.Node = b;
})(tinymce);
(function (b) {
var a = b.html.Node;
b.html.DomParser = function (g, h) {
var f = this,
e = {},
d = [],
i = {},
c = {};
g = g || {};
g.validate = "validate" in g ? g.validate : true;
g.root_name = g.root_name || "body";
f.schema = h = h || new b.html.Schema();
function j(n) {
var p, q, y, x, A, o, r, l, u, v, k, t, m, z, s;
t = b.makeMap("tr,td,th,tbody,thead,tfoot,table");
k = h.getNonEmptyElements();
m = h.getTextBlockElements();
for (p = 0; p < n.length; p++) {
q = n[p];
if (!q.parent || q.fixed) {
continue;
}
if (m[q.name] && q.parent.name == "li") {
z = q.next;
while (z) {
if (m[z.name]) {
z.name = "li";
z.fixed = true;
q.parent.insert(z, q.parent);
} else {
break;
}
z = z.next;
}
q.unwrap(q);
continue;
}
x = [q];
for (
y = q.parent;
y && !h.isValidChild(y.name, q.name) && !t[y.name];
y = y.parent
) {
x.push(y);
}
if (y && x.length > 1) {
x.reverse();
A = o = f.filterNode(x[0].clone());
for (u = 0; u < x.length - 1; u++) {
if (h.isValidChild(o.name, x[u].name)) {
r = f.filterNode(x[u].clone());
o.append(r);
} else {
r = o;
}
for (l = x[u].firstChild; l && l != x[u + 1]; ) {
s = l.next;
r.append(l);
l = s;
}
o = r;
}
if (!A.isEmpty(k)) {
y.insert(A, x[0], true);
y.insert(q, A);
} else {
y.insert(q, x[0], true);
}
y = x[0];
if (
y.isEmpty(k) ||
(y.firstChild === y.lastChild && y.firstChild.name === "br")
) {
y.empty().remove();
}
} else {
if (q.parent) {
if (q.name === "li") {
z = q.prev;
if (z && (z.name === "ul" || z.name === "ul")) {
z.append(q);
continue;
}
z = q.next;
if (z && (z.name === "ul" || z.name === "ul")) {
z.insert(q, z.firstChild, true);
continue;
}
q.wrap(f.filterNode(new a("ul", 1)));
continue;
}
if (
h.isValidChild(q.parent.name, "div") &&
h.isValidChild("div", q.name)
) {
q.wrap(f.filterNode(new a("div", 1)));
} else {
if (q.name === "style" || q.name === "script") {
q.empty().remove();
} else {
q.unwrap();
}
}
}
}
}
}
f.filterNode = function (m) {
var l, k, n;
if (k in e) {
n = i[k];
if (n) {
n.push(m);
} else {
i[k] = [m];
}
}
l = d.length;
while (l--) {
k = d[l].name;
if (k in m.attributes.map) {
n = c[k];
if (n) {
n.push(m);
} else {
c[k] = [m];
}
}
}
return m;
};
f.addNodeFilter = function (k, l) {
b.each(b.explode(k), function (m) {
var n = e[m];
if (!n) {
e[m] = n = [];
}
n.push(l);
});
};
f.addAttributeFilter = function (k, l) {
b.each(b.explode(k), function (m) {
var n;
for (n = 0; n < d.length; n++) {
if (d[n].name === m) {
d[n].callbacks.push(l);
return;
}
}
d.push({ name: m, callbacks: [l] });
});
};
f.parse = function (v, m) {
var n,
J,
B,
A,
D,
C,
x,
r,
F,
N,
z,
o,
E,
M = [],
L,
t,
k,
y,
s,
p,
u,
q;
m = m || {};
i = {};
c = {};
o = b.extend(
b.makeMap("script,style,head,html,body,title,meta,param"),
h.getBlockElements(),
);
u = h.getNonEmptyElements();
p = h.children;
z = g.validate;
q = "forced_root_block" in m ? m.forced_root_block : g.forced_root_block;
s = h.getWhiteSpaceElements();
E = /^[ \t\r\n]+/;
t = /[ \t\r\n]+$/;
k = /[ \t\r\n]+/g;
y = /^[ \t\r\n]+$/;
function G() {
var O = J.firstChild,
l,
P;
while (O) {
l = O.next;
if (
O.type == 3 ||
(O.type == 1 &&
O.name !== "p" &&
!o[O.name] &&
!O.attr("data-mce-type"))
) {
if (!P) {
P = K(q, 1);
J.insert(P, O);
P.append(O);
} else {
P.append(O);
}
} else {
P = null;
}
O = l;
}
}
function K(l, O) {
var P = new a(l, O),
Q;
if (l in e) {
Q = i[l];
if (Q) {
Q.push(P);
} else {
i[l] = [P];
}
}
return P;
}
function I(P) {
var Q, l, O;
for (Q = P.prev; Q && Q.type === 3; ) {
l = Q.value.replace(t, "");
if (l.length > 0) {
Q.value = l;
Q = Q.prev;
} else {
O = Q.prev;
Q.remove();
Q = O;
}
}
}
function H(O) {
var P,
l = {};
for (P in O) {
if (P !== "li" && P != "p") {
l[P] = O[P];
}
}
return l;
}
n = new b.html.SaxParser(
{
validate: z,
self_closing_elements: H(h.getSelfClosingElements()),
cdata: function (l) {
B.append(K("#cdata", 4)).value = l;
},
text: function (P, l) {
var O;
if (!L) {
P = P.replace(k, " ");
if (B.lastChild && o[B.lastChild.name]) {
P = P.replace(E, "");
}
}
if (P.length !== 0) {
O = K("#text", 3);
O.raw = !!l;
B.append(O).value = P;
}
},
comment: function (l) {
B.append(K("#comment", 8)).value = l;
},
pi: function (l, O) {
B.append(K(l, 7)).value = O;
I(B);
},
doctype: function (O) {
var l;
l = B.append(K("#doctype", 10));
l.value = O;
I(B);
},
start: function (l, W, P) {
var U, R, Q, O, S, X, V, T;
Q = z ? h.getElementRule(l) : {};
if (Q) {
U = K(Q.outputName || l, 1);
U.attributes = W;
U.shortEnded = P;
B.append(U);
T = p[B.name];
if (T && p[U.name] && !T[U.name]) {
M.push(U);
}
R = d.length;
while (R--) {
S = d[R].name;
if (S in W.map) {
F = c[S];
if (F) {
F.push(U);
} else {
c[S] = [U];
}
}
}
if (o[l]) {
I(U);
}
if (!P) {
B = U;
}
if (!L && s[l]) {
L = true;
}
}
},
end: function (l) {
var S, P, R, O, Q;
P = z ? h.getElementRule(l) : {};
if (P) {
if (o[l]) {
if (!L) {
S = B.firstChild;
if (S && S.type === 3) {
R = S.value.replace(E, "");
if (R.length > 0) {
S.value = R;
S = S.next;
} else {
O = S.next;
S.remove();
S = O;
}
while (S && S.type === 3) {
R = S.value;
O = S.next;
if (R.length === 0 || y.test(R)) {
S.remove();
S = O;
}
S = O;
}
}
S = B.lastChild;
if (S && S.type === 3) {
R = S.value.replace(t, "");
if (R.length > 0) {
S.value = R;
S = S.prev;
} else {
O = S.prev;
S.remove();
S = O;
}
while (S && S.type === 3) {
R = S.value;
O = S.prev;
if (R.length === 0 || y.test(R)) {
S.remove();
S = O;
}
S = O;
}
}
}
}
if (L && s[l]) {
L = false;
}
if (P.removeEmpty || P.paddEmpty) {
if (B.isEmpty(u)) {
if (P.paddEmpty) {
B.empty().append(new a("#text", "3")).value = "\u00a0";
} else {
if (!B.attributes.map.name && !B.attributes.map.id) {
Q = B.parent;
B.empty().remove();
B = Q;
return;
}
}
}
}
B = B.parent;
}
},
},
h,
);
J = B = new a(m.context || g.root_name, 11);
n.parse(v);
if (z && M.length) {
if (!m.context) {
j(M);
} else {
m.invalid = true;
}
}
if (q && J.name == "body") {
G();
}
if (!m.invalid) {
for (N in i) {
F = e[N];
A = i[N];
x = A.length;
while (x--) {
if (!A[x].parent) {
A.splice(x, 1);
}
}
for (D = 0, C = F.length; D < C; D++) {
F[D](A, N, m);
}
}
for (D = 0, C = d.length; D < C; D++) {
F = d[D];
if (F.name in c) {
A = c[F.name];
x = A.length;
while (x--) {
if (!A[x].parent) {
A.splice(x, 1);
}
}
for (x = 0, r = F.callbacks.length; x < r; x++) {
F.callbacks[x](A, F.name, m);
}
}
}
}
return J;
};
if (g.remove_trailing_brs) {
f.addNodeFilter("br", function (n, m) {
var r,
q = n.length,
o,
v = b.extend({}, h.getBlockElements()),
k = h.getNonEmptyElements(),
t,
s,
p,
u;
v.body = 1;
for (r = 0; r < q; r++) {
o = n[r];
t = o.parent;
if (v[o.parent.name] && o === t.lastChild) {
p = o.prev;
while (p) {
u = p.name;
if (u !== "span" || p.attr("data-mce-type") !== "bookmark") {
if (u !== "br") {
break;
}
if (u === "br") {
o = null;
break;
}
}
p = p.prev;
}
if (o) {
o.remove();
if (t.isEmpty(k)) {
elementRule = h.getElementRule(t.name);
if (elementRule) {
if (elementRule.removeEmpty) {
t.remove();
} else {
if (elementRule.paddEmpty) {
t.empty().append(new b.html.Node("#text", 3)).value =
"\u00a0";
}
}
}
}
}
} else {
s = o;
while (t.firstChild === s && t.lastChild === s) {
s = t;
if (v[t.name]) {
break;
}
t = t.parent;
}
if (s === t) {
textNode = new b.html.Node("#text", 3);
textNode.value = "\u00a0";
o.replace(textNode);
}
}
}
});
}
if (!g.allow_html_in_named_anchor) {
f.addAttributeFilter("id,name", function (k, l) {
var n = k.length,
p,
m,
o,
q;
while (n--) {
q = k[n];
if (q.name === "a" && q.firstChild && !q.attr("href")) {
o = q.parent;
p = q.lastChild;
do {
m = p.prev;
o.insert(p, q);
p = m;
} while (p);
}
}
});
}
};
})(tinymce);
tinymce.html.Writer = function (e) {
var c = [],
a,
b,
d,
f,
g;
e = e || {};
a = e.indent;
b = tinymce.makeMap(e.indent_before || "");
d = tinymce.makeMap(e.indent_after || "");
f = tinymce.html.Entities.getEncodeFunc(
e.entity_encoding || "raw",
e.entities,
);
g = e.element_format == "html";
return {
start: function (m, k, p) {
var n, j, h, o;
if (a && b[m] && c.length > 0) {
o = c[c.length - 1];
if (o.length > 0 && o !== "\n") {
c.push("\n");
}
}
c.push("<", m);
if (k) {
for (n = 0, j = k.length; n < j; n++) {
h = k[n];
c.push(" ", h.name, '="', f(h.value, true), '"');
}
}
if (!p || g) {
c[c.length] = ">";
} else {
c[c.length] = " />";
}
if (p && a && d[m] && c.length > 0) {
o = c[c.length - 1];
if (o.length > 0 && o !== "\n") {
c.push("\n");
}
}
},
end: function (h) {
var i;
c.push("", h, ">");
if (a && d[h] && c.length > 0) {
i = c[c.length - 1];
if (i.length > 0 && i !== "\n") {
c.push("\n");
}
}
},
text: function (i, h) {
if (i.length > 0) {
c[c.length] = h ? i : f(i);
}
},
cdata: function (h) {
c.push("");
},
comment: function (h) {
c.push("");
},
pi: function (h, i) {
if (i) {
c.push("", h, " ", i, "?>");
} else {
c.push("", h, "?>");
}
if (a) {
c.push("\n");
}
},
doctype: function (h) {
c.push("", a ? "\n" : "");
},
reset: function () {
c.length = 0;
},
getContent: function () {
return c.join("").replace(/\n$/, "");
},
};
};
(function (a) {
a.html.Serializer = function (c, d) {
var b = this,
e = new a.html.Writer(c);
c = c || {};
c.validate = "validate" in c ? c.validate : true;
b.schema = d = d || new a.html.Schema();
b.writer = e;
b.serialize = function (h) {
var g, i;
i = c.validate;
g = {
3: function (k, j) {
e.text(k.value, k.raw);
},
8: function (j) {
e.comment(j.value);
},
7: function (j) {
e.pi(j.name, j.value);
},
10: function (j) {
e.doctype(j.value);
},
4: function (j) {
e.cdata(j.value);
},
11: function (j) {
if ((j = j.firstChild)) {
do {
f(j);
} while ((j = j.next));
}
},
};
e.reset();
function f(k) {
var t = g[k.type],
j,
o,
s,
r,
p,
u,
n,
m,
q;
if (!t) {
j = k.name;
o = k.shortEnded;
s = k.attributes;
if (i && s && s.length > 1) {
u = [];
u.map = {};
q = d.getElementRule(k.name);
for (n = 0, m = q.attributesOrder.length; n < m; n++) {
r = q.attributesOrder[n];
if (r in s.map) {
p = s.map[r];
u.map[r] = p;
u.push({ name: r, value: p });
}
}
for (n = 0, m = s.length; n < m; n++) {
r = s[n].name;
if (!(r in u.map)) {
p = s.map[r];
u.map[r] = p;
u.push({ name: r, value: p });
}
}
s = u;
}
e.start(k.name, s, o);
if (!o) {
if ((k = k.firstChild)) {
do {
f(k);
} while ((k = k.next));
}
e.end(j);
}
} else {
t(k);
}
}
if (h.type == 1 && !c.inner) {
f(h);
} else {
g[11](h);
}
return e.getContent();
};
};
})(tinymce);
tinymce.dom = {};
(function (b, h) {
var g = !!document.addEventListener;
function c(k, j, l, i) {
if (k.addEventListener) {
k.addEventListener(j, l, i || false);
} else {
if (k.attachEvent) {
k.attachEvent("on" + j, l);
}
}
}
function e(k, j, l, i) {
if (k.removeEventListener) {
k.removeEventListener(j, l, i || false);
} else {
if (k.detachEvent) {
k.detachEvent("on" + j, l);
}
}
}
function a(n, l) {
var i,
k = l || {};
function j() {
return false;
}
function m() {
return true;
}
for (i in n) {
if (i !== "layerX" && i !== "layerY") {
k[i] = n[i];
}
}
if (!k.target) {
k.target = k.srcElement || document;
}
k.preventDefault = function () {
k.isDefaultPrevented = m;
if (n) {
if (n.preventDefault) {
n.preventDefault();
} else {
n.returnValue = false;
}
}
};
k.stopPropagation = function () {
k.isPropagationStopped = m;
if (n) {
if (n.stopPropagation) {
n.stopPropagation();
} else {
n.cancelBubble = true;
}
}
};
k.stopImmediatePropagation = function () {
k.isImmediatePropagationStopped = m;
k.stopPropagation();
};
if (!k.isDefaultPrevented) {
k.isDefaultPrevented = j;
k.isPropagationStopped = j;
k.isImmediatePropagationStopped = j;
}
return k;
}
function d(m, n, l) {
var k = m.document,
j = { type: "ready" };
function i() {
if (!l.domLoaded) {
l.domLoaded = true;
n(j);
}
}
if (k.readyState == "complete") {
i();
return;
}
if (g) {
c(m, "DOMContentLoaded", i);
} else {
c(k, "readystatechange", function () {
if (k.readyState === "complete") {
e(k, "readystatechange", arguments.callee);
i();
}
});
if (k.documentElement.doScroll && m === m.top) {
(function () {
try {
k.documentElement.doScroll("left");
} catch (o) {
setTimeout(arguments.callee, 0);
return;
}
i();
})();
}
}
c(m, "load", i);
}
function f(k) {
var q = this,
p = {},
i,
o,
n,
m,
l;
m = "onmouseenter" in document.documentElement;
n = "onfocusin" in document.documentElement;
l = { mouseenter: "mouseover", mouseleave: "mouseout" };
i = 1;
q.domLoaded = false;
q.events = p;
function j(t, x) {
var s, u, r, v;
s = p[x][t.type];
if (s) {
for (u = 0, r = s.length; u < r; u++) {
v = s[u];
if (v && v.func.call(v.scope, t) === false) {
t.preventDefault();
}
if (t.isImmediatePropagationStopped()) {
return;
}
}
}
}
q.bind = function (x, A, D, E) {
var s,
t,
u,
r,
B,
z,
C,
v = window;
function y(F) {
j(a(F || v.event), s);
}
if (!x || x.nodeType === 3 || x.nodeType === 8) {
return;
}
if (!x[h]) {
s = i++;
x[h] = s;
p[s] = {};
} else {
s = x[h];
if (!p[s]) {
p[s] = {};
}
}
E = E || x;
A = A.split(" ");
u = A.length;
while (u--) {
r = A[u];
z = y;
B = C = false;
if (r === "DOMContentLoaded") {
r = "ready";
}
if ((q.domLoaded || x.readyState == "complete") && r === "ready") {
q.domLoaded = true;
D.call(E, a({ type: r }));
continue;
}
if (!m) {
B = l[r];
if (B) {
z = function (F) {
var H, G;
H = F.currentTarget;
G = F.relatedTarget;
if (G && H.contains) {
G = H.contains(G);
} else {
while (G && G !== H) {
G = G.parentNode;
}
}
if (!G) {
F = a(F || v.event);
F.type = F.type === "mouseout" ? "mouseleave" : "mouseenter";
F.target = H;
j(F, s);
}
};
}
}
if (!n && (r === "focusin" || r === "focusout")) {
C = true;
B = r === "focusin" ? "focus" : "blur";
z = function (F) {
F = a(F || v.event);
F.type = F.type === "focus" ? "focusin" : "focusout";
j(F, s);
};
}
t = p[s][r];
if (!t) {
p[s][r] = t = [{ func: D, scope: E }];
t.fakeName = B;
t.capture = C;
t.nativeHandler = z;
if (!g) {
t.proxyHandler = k(s);
}
if (r === "ready") {
d(x, z, q);
} else {
c(x, B || r, g ? z : t.proxyHandler, C);
}
} else {
t.push({ func: D, scope: E });
}
}
x = t = 0;
return D;
};
q.unbind = function (x, z, A) {
var s, u, v, B, r, t;
if (!x || x.nodeType === 3 || x.nodeType === 8) {
return q;
}
s = x[h];
if (s) {
t = p[s];
if (z) {
z = z.split(" ");
v = z.length;
while (v--) {
r = z[v];
u = t[r];
if (u) {
if (A) {
B = u.length;
while (B--) {
if (u[B].func === A) {
u.splice(B, 1);
}
}
}
if (!A || u.length === 0) {
delete t[r];
e(
x,
u.fakeName || r,
g ? u.nativeHandler : u.proxyHandler,
u.capture,
);
}
}
}
} else {
for (r in t) {
u = t[r];
e(
x,
u.fakeName || r,
g ? u.nativeHandler : u.proxyHandler,
u.capture,
);
}
t = {};
}
for (r in t) {
return q;
}
delete p[s];
try {
delete x[h];
} catch (y) {
x[h] = null;
}
}
return q;
};
q.fire = function (u, s, r) {
var v, t;
if (!u || u.nodeType === 3 || u.nodeType === 8) {
return q;
}
t = a(null, r);
t.type = s;
do {
v = u[h];
if (v) {
j(t, v);
}
u = u.parentNode || u.ownerDocument || u.defaultView || u.parentWindow;
} while (u && !t.isPropagationStopped());
return q;
};
q.clean = function (u) {
var s,
r,
t = q.unbind;
if (!u || u.nodeType === 3 || u.nodeType === 8) {
return q;
}
if (u[h]) {
t(u);
}
if (!u.getElementsByTagName) {
u = u.document;
}
if (u && u.getElementsByTagName) {
t(u);
r = u.getElementsByTagName("*");
s = r.length;
while (s--) {
u = r[s];
if (u[h]) {
t(u);
}
}
}
return q;
};
q.callNativeHandler = function (s, r) {
if (p) {
p[s][r.type].nativeHandler(r);
}
};
q.destory = function () {
p = {};
};
q.add = function (v, s, u, t) {
if (typeof v === "string") {
v = document.getElementById(v);
}
if (v && v instanceof Array) {
var r = v.length;
while (r--) {
q.add(v[r], s, u, t);
}
return;
}
if (s === "init") {
s = "ready";
}
return q.bind(v, s instanceof Array ? s.join(" ") : s, u, t);
};
q.remove = function (v, s, u, t) {
if (!v) {
return q;
}
if (typeof v === "string") {
v = document.getElementById(v);
}
if (v instanceof Array) {
var r = v.length;
while (r--) {
q.remove(v[r], s, u, t);
}
return q;
}
return q.unbind(v, s instanceof Array ? s.join(" ") : s, u);
};
q.clear = function (r) {
if (typeof r === "string") {
r = document.getElementById(r);
}
return q.clean(r);
};
q.cancel = function (r) {
if (r) {
q.prevent(r);
q.stop(r);
}
return false;
};
q.prevent = function (r) {
if (!r.preventDefault) {
r = a(r);
}
r.preventDefault();
return false;
};
q.stop = function (r) {
if (!r.stopPropagation) {
r = a(r);
}
r.stopPropagation();
return false;
};
}
b.EventUtils = f;
b.Event = new f(function (i) {
return function (j) {
tinymce.dom.Event.callNativeHandler(i, j);
};
});
b.Event.bind(window, "ready", function () {});
b = 0;
})(tinymce.dom, "data-mce-expando");
tinymce.dom.TreeWalker = function (a, c) {
var b = a;
function d(i, f, e, j) {
var h, g;
if (i) {
if (!j && i[f]) {
return i[f];
}
if (i != c) {
h = i[e];
if (h) {
return h;
}
for (g = i.parentNode; g && g != c; g = g.parentNode) {
h = g[e];
if (h) {
return h;
}
}
}
}
}
this.current = function () {
return b;
};
this.next = function (e) {
return (b = d(b, "firstChild", "nextSibling", e));
};
this.prev = function (e) {
return (b = d(b, "lastChild", "previousSibling", e));
};
};
(function (e) {
var g = e.each,
d = e.is,
f = e.isWebKit,
b = e.isIE,
h = e.html.Entities,
c = /^([a-z0-9],?)+$/i,
a = /^[ \t\r\n]*$/;
e.create("tinymce.dom.DOMUtils", {
doc: null,
root: null,
files: null,
pixelStyles: /^(top|left|bottom|right|width|height|borderWidth)$/,
props: {
for: "htmlFor",
class: "className",
className: "className",
checked: "checked",
disabled: "disabled",
maxlength: "maxLength",
readonly: "readOnly",
selected: "selected",
value: "value",
id: "id",
name: "name",
type: "type",
},
DOMUtils: function (o, l) {
var k = this,
i,
j,
n;
k.doc = o;
k.win = window;
k.files = {};
k.cssFlicker = false;
k.counter = 0;
k.stdMode = !e.isIE || o.documentMode >= 8;
k.boxModel = !e.isIE || o.compatMode == "CSS1Compat" || k.stdMode;
k.hasOuterHTML = "outerHTML" in o.createElement("a");
k.settings = l = e.extend({ keep_values: false, hex_colors: 1 }, l);
k.schema = l.schema;
k.styles = new e.html.Styles(
{
url_converter: l.url_converter,
url_converter_scope: l.url_converter_scope,
},
l.schema,
);
if (e.isIE6) {
try {
o.execCommand("BackgroundImageCache", false, true);
} catch (m) {
k.cssFlicker = true;
}
}
k.fixDoc(o);
k.events = l.ownEvents ? new e.dom.EventUtils(l.proxy) : e.dom.Event;
e.addUnload(k.destroy, k);
n = l.schema ? l.schema.getBlockElements() : {};
k.isBlock = function (q) {
if (!q) {
return false;
}
var p = q.nodeType;
if (p) {
return !!(p === 1 && n[q.nodeName]);
}
return !!n[q];
};
},
fixDoc: function (k) {
var j = this.settings,
i;
if (b && j.schema) {
"abbr article aside audio canvas details figcaption figure footer header hgroup mark menu meter nav output progress section summary time video".replace(
/\w+/g,
function (l) {
k.createElement(l);
},
);
for (i in j.schema.getCustomElements()) {
k.createElement(i);
}
}
},
clone: function (k, i) {
var j = this,
m,
l;
if (!b || k.nodeType !== 1 || i) {
return k.cloneNode(i);
}
l = j.doc;
if (!i) {
m = l.createElement(k.nodeName);
g(j.getAttribs(k), function (n) {
j.setAttrib(m, n.nodeName, j.getAttrib(k, n.nodeName));
});
return m;
}
return m.firstChild;
},
getRoot: function () {
var i = this,
j = i.settings;
return (j && i.get(j.root_element)) || i.doc.body;
},
getViewPort: function (j) {
var k, i;
j = !j ? this.win : j;
k = j.document;
i = this.boxModel ? k.documentElement : k.body;
return {
x: j.pageXOffset || i.scrollLeft,
y: j.pageYOffset || i.scrollTop,
w: j.innerWidth || i.clientWidth,
h: j.innerHeight || i.clientHeight,
};
},
getRect: function (l) {
var k,
i = this,
j;
l = i.get(l);
k = i.getPos(l);
j = i.getSize(l);
return { x: k.x, y: k.y, w: j.w, h: j.h };
},
getSize: function (l) {
var j = this,
i,
k;
l = j.get(l);
i = j.getStyle(l, "width");
k = j.getStyle(l, "height");
if (i.indexOf("px") === -1) {
i = 0;
}
if (k.indexOf("px") === -1) {
k = 0;
}
return {
w: parseInt(i, 10) || l.offsetWidth || l.clientWidth,
h: parseInt(k, 10) || l.offsetHeight || l.clientHeight,
};
},
getParent: function (k, j, i) {
return this.getParents(k, j, i, false);
},
getParents: function (s, m, k, q) {
var j = this,
i,
l = j.settings,
p = [];
s = j.get(s);
q = q === undefined;
if (l.strict_root) {
k = k || j.getRoot();
}
if (d(m, "string")) {
i = m;
if (m === "*") {
m = function (o) {
return o.nodeType == 1;
};
} else {
m = function (o) {
return j.is(o, i);
};
}
}
while (s) {
if (s == k || !s.nodeType || s.nodeType === 9) {
break;
}
if (!m || m(s)) {
if (q) {
p.push(s);
} else {
return s;
}
}
s = s.parentNode;
}
return q ? p : null;
},
get: function (i) {
var j;
if (i && this.doc && typeof i == "string") {
j = i;
i = this.doc.getElementById(i);
if (i && i.id !== j) {
return this.doc.getElementsByName(j)[1];
}
}
return i;
},
getNext: function (j, i) {
return this._findSib(j, i, "nextSibling");
},
getPrev: function (j, i) {
return this._findSib(j, i, "previousSibling");
},
select: function (k, j) {
var i = this;
return e.dom.Sizzle(
k,
i.get(j) || i.get(i.settings.root_element) || i.doc,
[],
);
},
is: function (l, j) {
var k;
if (l.length === undefined) {
if (j === "*") {
return l.nodeType == 1;
}
if (c.test(j)) {
j = j.toLowerCase().split(/,/);
l = l.nodeName.toLowerCase();
for (k = j.length - 1; k >= 0; k--) {
if (j[k] == l) {
return true;
}
}
return false;
}
}
return e.dom.Sizzle.matches(j, l.nodeType ? [l] : l).length > 0;
},
add: function (l, o, i, k, m) {
var j = this;
return this.run(l, function (r) {
var q, n;
q = d(o, "string") ? j.doc.createElement(o) : o;
j.setAttribs(q, i);
if (k) {
if (k.nodeType) {
q.appendChild(k);
} else {
j.setHTML(q, k);
}
}
return !m ? r.appendChild(q) : q;
});
},
create: function (k, i, j) {
return this.add(this.doc.createElement(k), k, i, j, 1);
},
createHTML: function (q, i, m) {
var p = "",
l = this,
j;
p += "<" + q;
for (j in i) {
if (i.hasOwnProperty(j)) {
p += " " + j + '="' + l.encode(i[j]) + '"';
}
}
if (typeof m != "undefined") {
return p + ">" + m + "" + q + ">";
}
return p + " />";
},
remove: function (i, j) {
return this.run(i, function (l) {
var m,
k = l.parentNode;
if (!k) {
return null;
}
if (j) {
while ((m = l.firstChild)) {
if (!e.isIE || m.nodeType !== 3 || m.nodeValue) {
k.insertBefore(m, l);
} else {
l.removeChild(m);
}
}
}
return k.removeChild(l);
});
},
setStyle: function (l, i, j) {
var k = this;
return k.run(l, function (o) {
var n, m;
n = o.style;
i = i.replace(/-(\D)/g, function (q, p) {
return p.toUpperCase();
});
if (
k.pixelStyles.test(i) &&
(e.is(j, "number") || /^[\-0-9\.]+$/.test(j))
) {
j += "px";
}
switch (i) {
case "opacity":
if (b) {
n.filter = j === "" ? "" : "alpha(opacity=" + j * 100 + ")";
if (!l.currentStyle || !l.currentStyle.hasLayout) {
n.display = "inline-block";
}
}
n[i] = n["-moz-opacity"] = n["-khtml-opacity"] = j || "";
break;
case "float":
b ? (n.styleFloat = j) : (n.cssFloat = j);
break;
default:
n[i] = j || "";
}
if (k.settings.update_styles) {
k.setAttrib(o, "data-mce-style");
}
});
},
getStyle: function (l, i, k) {
l = this.get(l);
if (!l) {
return;
}
if (this.doc.defaultView && k) {
i = i.replace(/[A-Z]/g, function (m) {
return "-" + m;
});
try {
return this.doc.defaultView
.getComputedStyle(l, null)
.getPropertyValue(i);
} catch (j) {
return null;
}
}
i = i.replace(/-(\D)/g, function (n, m) {
return m.toUpperCase();
});
if (i == "float") {
i = b ? "styleFloat" : "cssFloat";
}
if (l.currentStyle && k) {
return l.currentStyle[i];
}
return l.style ? l.style[i] : undefined;
},
setStyles: function (l, m) {
var j = this,
k = j.settings,
i;
i = k.update_styles;
k.update_styles = 0;
g(m, function (o, p) {
j.setStyle(l, p, o);
});
k.update_styles = i;
if (k.update_styles) {
j.setAttrib(l, k.cssText);
}
},
removeAllAttribs: function (i) {
return this.run(i, function (l) {
var k,
j = l.attributes;
for (k = j.length - 1; k >= 0; k--) {
l.removeAttributeNode(j.item(k));
}
});
},
setAttrib: function (k, l, i) {
var j = this;
if (!k || !l) {
return;
}
if (j.settings.strict) {
l = l.toLowerCase();
}
return this.run(k, function (p) {
var o = j.settings;
var m = p.getAttribute(l);
if (i !== null) {
switch (l) {
case "style":
if (!d(i, "string")) {
g(i, function (q, r) {
j.setStyle(p, r, q);
});
return;
}
if (o.keep_values) {
if (i && !j._isRes(i)) {
p.setAttribute("data-mce-style", i, 2);
} else {
p.removeAttribute("data-mce-style", 2);
}
}
p.style.cssText = i;
break;
case "class":
p.className = i || "";
break;
case "src":
case "href":
if (o.keep_values) {
if (o.url_converter) {
i = o.url_converter.call(o.url_converter_scope || j, i, l, p);
}
j.setAttrib(p, "data-mce-" + l, i, 2);
}
break;
case "shape":
p.setAttribute("data-mce-style", i);
break;
}
}
if (d(i) && i !== null && i.length !== 0) {
p.setAttribute(l, "" + i, 2);
} else {
p.removeAttribute(l, 2);
}
if (tinyMCE.activeEditor && m != i) {
var n = tinyMCE.activeEditor;
n.onSetAttrib.dispatch(n, p, l, i);
}
});
},
setAttribs: function (j, k) {
var i = this;
return this.run(j, function (l) {
g(k, function (m, o) {
i.setAttrib(l, o, m);
});
});
},
getAttrib: function (m, o, k) {
var i,
j = this,
l;
m = j.get(m);
if (!m || m.nodeType !== 1) {
return k === l ? false : k;
}
if (!d(k)) {
k = "";
}
if (/^(src|href|style|coords|shape)$/.test(o)) {
i = m.getAttribute("data-mce-" + o);
if (i) {
return i;
}
}
if (b && j.props[o]) {
i = m[j.props[o]];
i = i && i.nodeValue ? i.nodeValue : i;
}
if (!i) {
i = m.getAttribute(o, 2);
}
if (
/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(
o,
)
) {
if (m[j.props[o]] === true && i === "") {
return o;
}
return i ? o : "";
}
if (m.nodeName === "FORM" && m.getAttributeNode(o)) {
return m.getAttributeNode(o).nodeValue;
}
if (o === "style") {
i = i || m.style.cssText;
if (i) {
i = j.serializeStyle(j.parseStyle(i), m.nodeName);
if (j.settings.keep_values && !j._isRes(i)) {
m.setAttribute("data-mce-style", i);
}
}
}
if (f && o === "class" && i) {
i = i.replace(/(apple|webkit)\-[a-z\-]+/gi, "");
}
if (b) {
switch (o) {
case "rowspan":
case "colspan":
if (i === 1) {
i = "";
}
break;
case "size":
if (i === "+0" || i === 20 || i === 0) {
i = "";
}
break;
case "width":
case "height":
case "vspace":
case "checked":
case "disabled":
case "readonly":
if (i === 0) {
i = "";
}
break;
case "hspace":
if (i === -1) {
i = "";
}
break;
case "maxlength":
case "tabindex":
if (i === 32768 || i === 2147483647 || i === "32768") {
i = "";
}
break;
case "multiple":
case "compact":
case "noshade":
case "nowrap":
if (i === 65535) {
return o;
}
return k;
case "shape":
i = i.toLowerCase();
break;
default:
if (o.indexOf("on") === 0 && i) {
i = e._replace(
/^function\s+\w+\(\)\s+\{\s+(.*)\s+\}$/,
"$1",
"" + i,
);
}
}
}
return i !== l && i !== null && i !== "" ? "" + i : k;
},
getPos: function (q, l) {
var j = this,
i = 0,
p = 0,
m,
o = j.doc,
k;
q = j.get(q);
l = l || o.body;
if (q) {
if (q.getBoundingClientRect) {
q = q.getBoundingClientRect();
m = j.boxModel ? o.documentElement : o.body;
i =
q.left +
(o.documentElement.scrollLeft || o.body.scrollLeft) -
m.clientTop;
p =
q.top +
(o.documentElement.scrollTop || o.body.scrollTop) -
m.clientLeft;
return { x: i, y: p };
}
k = q;
while (k && k != l && k.nodeType) {
i += k.offsetLeft || 0;
p += k.offsetTop || 0;
k = k.offsetParent;
}
k = q.parentNode;
while (k && k != l && k.nodeType) {
i -= k.scrollLeft || 0;
p -= k.scrollTop || 0;
k = k.parentNode;
}
}
return { x: i, y: p };
},
parseStyle: function (i) {
return this.styles.parse(i);
},
serializeStyle: function (j, i) {
return this.styles.serialize(j, i);
},
addStyle: function (j) {
var k = this.doc,
i;
styleElm = k.getElementById("mceDefaultStyles");
if (!styleElm) {
((styleElm = k.createElement("style")),
(styleElm.id = "mceDefaultStyles"));
styleElm.type = "text/css";
i = k.getElementsByTagName("head")[0];
if (i.firstChild) {
i.insertBefore(styleElm, i.firstChild);
} else {
i.appendChild(styleElm);
}
}
if (styleElm.styleSheet) {
styleElm.styleSheet.cssText += j;
} else {
styleElm.appendChild(k.createTextNode(j));
}
},
loadCSS: function (i) {
var k = this,
l = k.doc,
j;
if (!i) {
i = "";
}
j = l.getElementsByTagName("head")[0];
g(i.split(","), function (m) {
var n;
if (k.files[m]) {
return;
}
k.files[m] = true;
n = k.create("link", { rel: "stylesheet", href: e._addVer(m) });
if (b && l.documentMode && l.recalc) {
n.onload = function () {
if (l.recalc) {
l.recalc();
}
n.onload = null;
};
}
j.appendChild(n);
});
},
addClass: function (i, j) {
return this.run(i, function (k) {
var l;
if (!j) {
return 0;
}
if (this.hasClass(k, j)) {
return k.className;
}
l = this.removeClass(k, j);
return (k.className = (l != "" ? l + " " : "") + j);
});
},
removeClass: function (k, l) {
var i = this,
j;
return i.run(k, function (n) {
var m;
if (i.hasClass(n, l)) {
if (!j) {
j = new RegExp("(^|\\s+)" + l + "(\\s+|$)", "g");
}
m = n.className.replace(j, " ");
m = e.trim(m != " " ? m : "");
n.className = m;
if (!m) {
n.removeAttribute("class");
n.removeAttribute("className");
}
return m;
}
return n.className;
});
},
hasClass: function (j, i) {
j = this.get(j);
if (!j || !i) {
return false;
}
return (" " + j.className + " ").indexOf(" " + i + " ") !== -1;
},
show: function (i) {
return this.setStyle(i, "display", "block");
},
hide: function (i) {
return this.setStyle(i, "display", "none");
},
isHidden: function (i) {
i = this.get(i);
return (
!i || i.style.display == "none" || this.getStyle(i, "display") == "none"
);
},
uniqueId: function (i) {
return (!i ? "mce_" : i) + this.counter++;
},
setHTML: function (k, j) {
var i = this;
return i.run(k, function (m) {
if (b) {
while (m.firstChild) {
m.removeChild(m.firstChild);
}
try {
m.innerHTML = "
" + j;
m.removeChild(m.firstChild);
} catch (l) {
var n = i.create("div");
n.innerHTML = "
" + j;
g(e.grep(n.childNodes), function (p, o) {
if (o && m.canHaveHTML) {
m.appendChild(p);
}
});
}
} else {
m.innerHTML = j;
}
return j;
});
},
getOuterHTML: function (k) {
var j,
i = this;
k = i.get(k);
if (!k) {
return null;
}
if (k.nodeType === 1 && i.hasOuterHTML) {
return k.outerHTML;
}
j = (k.ownerDocument || i.doc).createElement("body");
j.appendChild(k.cloneNode(true));
return j.innerHTML;
},
setOuterHTML: function (l, j, m) {
var i = this;
function k(p, o, r) {
var s, q;
q = r.createElement("body");
q.innerHTML = o;
s = q.lastChild;
while (s) {
i.insertAfter(s.cloneNode(true), p);
s = s.previousSibling;
}
i.remove(p);
}
return this.run(l, function (o) {
o = i.get(o);
if (o.nodeType == 1) {
m = m || o.ownerDocument || i.doc;
if (b) {
try {
if (b && o.nodeType == 1) {
o.outerHTML = j;
} else {
k(o, j, m);
}
} catch (n) {
k(o, j, m);
}
} else {
k(o, j, m);
}
}
});
},
decode: h.decode,
encode: h.encodeAllRaw,
insertAfter: function (i, j) {
j = this.get(j);
return this.run(i, function (l) {
var k, m;
k = j.parentNode;
m = j.nextSibling;
if (m) {
k.insertBefore(l, m);
} else {
k.appendChild(l);
}
return l;
});
},
replace: function (m, l, i) {
var j = this;
if (d(l, "array")) {
m = m.cloneNode(true);
}
return j.run(l, function (k) {
if (i) {
g(e.grep(k.childNodes), function (n) {
m.appendChild(n);
});
}
return k.parentNode.replaceChild(m, k);
});
},
rename: function (l, i) {
var k = this,
j;
if (l.nodeName != i.toUpperCase()) {
j = k.create(i);
g(k.getAttribs(l), function (m) {
k.setAttrib(j, m.nodeName, k.getAttrib(l, m.nodeName));
});
k.replace(j, l, 1);
}
return j || l;
},
findCommonAncestor: function (k, i) {
var l = k,
j;
while (l) {
j = i;
while (j && l != j) {
j = j.parentNode;
}
if (l == j) {
break;
}
l = l.parentNode;
}
if (!l && k.ownerDocument) {
return k.ownerDocument.documentElement;
}
return l;
},
toHex: function (i) {
var k =
/^\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*$/i.exec(
i,
);
function j(l) {
l = parseInt(l, 10).toString(16);
return l.length > 1 ? l : "0" + l;
}
if (k) {
i = "#" + j(k[1]) + j(k[2]) + j(k[3]);
return i;
}
return i;
},
getClasses: function () {
var n = this,
j = [],
m,
o = {},
p = n.settings.class_filter,
l;
if (n.classes) {
return n.classes;
}
function q(i) {
g(i.imports, function (s) {
q(s);
});
g(i.cssRules || i.rules, function (s) {
switch (s.type || 1) {
case 1:
if (s.selectorText) {
g(s.selectorText.split(","), function (r) {
r = r.replace(/^\s*|\s*$|^\s\./g, "");
if (/\.mce/.test(r) || !/\.[\w\-]+$/.test(r)) {
return;
}
l = r;
r = e._replace(/.*\.([a-z0-9_\-]+).*/i, "$1", r);
if (p && !(r = p(r, l))) {
return;
}
if (!o[r]) {
j.push({ class: r });
o[r] = 1;
}
});
}
break;
case 3:
q(s.styleSheet);
break;
}
});
}
try {
g(n.doc.styleSheets, q);
} catch (k) {}
if (j.length > 0) {
n.classes = j;
}
return j;
},
run: function (l, k, j) {
var i = this,
m;
if (i.doc && typeof l === "string") {
l = i.get(l);
}
if (!l) {
return false;
}
j = j || this;
if (!l.nodeType && (l.length || l.length === 0)) {
m = [];
g(l, function (o, n) {
if (o) {
if (typeof o == "string") {
o = i.doc.getElementById(o);
}
m.push(k.call(j, o, n));
}
});
return m;
}
return k.call(j, l);
},
getAttribs: function (j) {
var i;
j = this.get(j);
if (!j) {
return [];
}
if (b) {
i = [];
if (j.nodeName == "OBJECT") {
return j.attributes;
}
if (j.nodeName === "OPTION" && this.getAttrib(j, "selected")) {
i.push({ specified: 1, nodeName: "selected" });
}
j.cloneNode(false)
.outerHTML.replace(
/<\/?[\w:\-]+ ?|=[\"][^\"]+\"|=\'[^\']+\'|=[\w\-]+|>/gi,
"",
)
.replace(/[\w:\-]+/gi, function (k) {
i.push({ specified: 1, nodeName: k });
});
return i;
}
return j.attributes;
},
isEmpty: function (m, k) {
var r = this,
o,
n,
q,
j,
l,
p = 0;
m = m.firstChild;
if (m) {
j = new e.dom.TreeWalker(m, m.parentNode);
k = k || r.schema ? r.schema.getNonEmptyElements() : null;
do {
q = m.nodeType;
if (q === 1) {
if (m.getAttribute("data-mce-bogus")) {
continue;
}
l = m.nodeName.toLowerCase();
if (k && k[l]) {
if (l === "br") {
p++;
continue;
}
return false;
}
n = r.getAttribs(m);
o = m.attributes.length;
while (o--) {
l = m.attributes[o].nodeName;
if (l === "name" || l === "data-mce-bookmark") {
return false;
}
}
}
if (q == 8) {
return false;
}
if (q === 3 && !a.test(m.nodeValue)) {
return false;
}
} while ((m = j.next()));
}
return p <= 1;
},
destroy: function (j) {
var i = this;
i.win = i.doc = i.root = i.events = i.frag = null;
if (!j) {
e.removeUnload(i.destroy);
}
},
createRng: function () {
var i = this.doc;
return i.createRange ? i.createRange() : new e.dom.Range(this);
},
nodeIndex: function (m, n) {
var i = 0,
k,
l,
j;
if (m) {
for (
k = m.nodeType, m = m.previousSibling, l = m;
m;
m = m.previousSibling
) {
j = m.nodeType;
if (n && j == 3) {
if (j == k || !m.nodeValue.length) {
continue;
}
}
i++;
k = j;
}
}
return i;
},
split: function (m, l, p) {
var q = this,
i = q.createRng(),
n,
k,
o;
function j(v) {
var t,
s = v.childNodes,
u = v.nodeType;
function x(A) {
var z = A.previousSibling && A.previousSibling.nodeName == "SPAN";
var y = A.nextSibling && A.nextSibling.nodeName == "SPAN";
return z && y;
}
if (u == 1 && v.getAttribute("data-mce-type") == "bookmark") {
return;
}
for (t = s.length - 1; t >= 0; t--) {
j(s[t]);
}
if (u != 9) {
if (u == 3 && v.nodeValue.length > 0) {
var r = e.trim(v.nodeValue).length;
if (!q.isBlock(v.parentNode) || r > 0 || (r === 0 && x(v))) {
return;
}
} else {
if (u == 1) {
s = v.childNodes;
if (
s.length == 1 &&
s[0] &&
s[0].nodeType == 1 &&
s[0].getAttribute("data-mce-type") == "bookmark"
) {
v.parentNode.insertBefore(s[0], v);
}
if (s.length || /^(br|hr|input|img)$/i.test(v.nodeName)) {
return;
}
}
}
q.remove(v);
}
return v;
}
if (m && l) {
i.setStart(m.parentNode, q.nodeIndex(m));
i.setEnd(l.parentNode, q.nodeIndex(l));
n = i.extractContents();
i = q.createRng();
i.setStart(l.parentNode, q.nodeIndex(l) + 1);
i.setEnd(m.parentNode, q.nodeIndex(m) + 1);
k = i.extractContents();
o = m.parentNode;
o.insertBefore(j(n), m);
if (p) {
o.replaceChild(p, l);
} else {
o.insertBefore(l, m);
}
o.insertBefore(j(k), m);
q.remove(m);
return p || l;
}
},
bind: function (l, i, k, j) {
return this.events.add(l, i, k, j || this);
},
unbind: function (k, i, j) {
return this.events.remove(k, i, j);
},
fire: function (k, j, i) {
return this.events.fire(k, j, i);
},
getContentEditable: function (j) {
var i;
if (j.nodeType != 1) {
return null;
}
i = j.getAttribute("data-mce-contenteditable");
if (i && i !== "inherit") {
return i;
}
return j.contentEditable !== "inherit" ? j.contentEditable : null;
},
_findSib: function (l, i, j) {
var k = this,
m = i;
if (l) {
if (d(m, "string")) {
m = function (n) {
return k.is(n, i);
};
}
for (l = l[j]; l; l = l[j]) {
if (m(l)) {
return l;
}
}
}
return null;
},
_isRes: function (i) {
return (
/^(top|left|bottom|right|width|height)/i.test(i) ||
/;\s*(top|left|bottom|right|width|height)/i.test(i)
);
},
});
e.DOM = new e.dom.DOMUtils(document, { process_html: 0 });
})(tinymce);
(function (a) {
function b(c) {
var O = this,
e = c.doc,
U = 0,
F = 1,
j = 2,
E = true,
S = false,
W = "startOffset",
h = "startContainer",
Q = "endContainer",
A = "endOffset",
k = tinymce.extend,
n = c.nodeIndex;
k(O, {
startContainer: e,
startOffset: 0,
endContainer: e,
endOffset: 0,
collapsed: E,
commonAncestorContainer: e,
START_TO_START: 0,
START_TO_END: 1,
END_TO_END: 2,
END_TO_START: 3,
setStart: q,
setEnd: s,
setStartBefore: g,
setStartAfter: J,
setEndBefore: K,
setEndAfter: u,
collapse: B,
selectNode: y,
selectNodeContents: G,
compareBoundaryPoints: v,
deleteContents: p,
extractContents: I,
cloneContents: d,
insertNode: D,
surroundContents: N,
cloneRange: L,
toStringIE: T,
});
function x() {
return e.createDocumentFragment();
}
function q(X, t) {
C(E, X, t);
}
function s(X, t) {
C(S, X, t);
}
function g(t) {
q(t.parentNode, n(t));
}
function J(t) {
q(t.parentNode, n(t) + 1);
}
function K(t) {
s(t.parentNode, n(t));
}
function u(t) {
s(t.parentNode, n(t) + 1);
}
function B(t) {
if (t) {
O[Q] = O[h];
O[A] = O[W];
} else {
O[h] = O[Q];
O[W] = O[A];
}
O.collapsed = E;
}
function y(t) {
g(t);
u(t);
}
function G(t) {
q(t, 0);
s(t, t.nodeType === 1 ? t.childNodes.length : t.nodeValue.length);
}
function v(aa, t) {
var ad = O[h],
Y = O[W],
ac = O[Q],
X = O[A],
ab = t.startContainer,
af = t.startOffset,
Z = t.endContainer,
ae = t.endOffset;
if (aa === 0) {
return H(ad, Y, ab, af);
}
if (aa === 1) {
return H(ac, X, ab, af);
}
if (aa === 2) {
return H(ac, X, Z, ae);
}
if (aa === 3) {
return H(ad, Y, Z, ae);
}
}
function p() {
l(j);
}
function I() {
return l(U);
}
function d() {
return l(F);
}
function D(aa) {
var X = this[h],
t = this[W],
Z,
Y;
if ((X.nodeType === 3 || X.nodeType === 4) && X.nodeValue) {
if (!t) {
X.parentNode.insertBefore(aa, X);
} else {
if (t >= X.nodeValue.length) {
c.insertAfter(aa, X);
} else {
Z = X.splitText(t);
X.parentNode.insertBefore(aa, Z);
}
}
} else {
if (X.childNodes.length > 0) {
Y = X.childNodes[t];
}
if (Y) {
X.insertBefore(aa, Y);
} else {
X.appendChild(aa);
}
}
}
function N(X) {
var t = O.extractContents();
O.insertNode(X);
X.appendChild(t);
O.selectNode(X);
}
function L() {
return k(new b(c), {
startContainer: O[h],
startOffset: O[W],
endContainer: O[Q],
endOffset: O[A],
collapsed: O.collapsed,
commonAncestorContainer: O.commonAncestorContainer,
});
}
function P(t, X) {
var Y;
if (t.nodeType == 3) {
return t;
}
if (X < 0) {
return t;
}
Y = t.firstChild;
while (Y && X > 0) {
--X;
Y = Y.nextSibling;
}
if (Y) {
return Y;
}
return t;
}
function m() {
return O[h] == O[Q] && O[W] == O[A];
}
function H(Z, ab, X, aa) {
var ac, Y, t, ad, af, ae;
if (Z == X) {
if (ab == aa) {
return 0;
}
if (ab < aa) {
return -1;
}
return 1;
}
ac = X;
while (ac && ac.parentNode != Z) {
ac = ac.parentNode;
}
if (ac) {
Y = 0;
t = Z.firstChild;
while (t != ac && Y < ab) {
Y++;
t = t.nextSibling;
}
if (ab <= Y) {
return -1;
}
return 1;
}
ac = Z;
while (ac && ac.parentNode != X) {
ac = ac.parentNode;
}
if (ac) {
Y = 0;
t = X.firstChild;
while (t != ac && Y < aa) {
Y++;
t = t.nextSibling;
}
if (Y < aa) {
return -1;
}
return 1;
}
ad = c.findCommonAncestor(Z, X);
af = Z;
while (af && af.parentNode != ad) {
af = af.parentNode;
}
if (!af) {
af = ad;
}
ae = X;
while (ae && ae.parentNode != ad) {
ae = ae.parentNode;
}
if (!ae) {
ae = ad;
}
if (af == ae) {
return 0;
}
t = ad.firstChild;
while (t) {
if (t == af) {
return -1;
}
if (t == ae) {
return 1;
}
t = t.nextSibling;
}
}
function C(X, aa, Z) {
var t, Y;
if (X) {
O[h] = aa;
O[W] = Z;
} else {
O[Q] = aa;
O[A] = Z;
}
t = O[Q];
while (t.parentNode) {
t = t.parentNode;
}
Y = O[h];
while (Y.parentNode) {
Y = Y.parentNode;
}
if (Y == t) {
if (H(O[h], O[W], O[Q], O[A]) > 0) {
O.collapse(X);
}
} else {
O.collapse(X);
}
O.collapsed = m();
O.commonAncestorContainer = c.findCommonAncestor(O[h], O[Q]);
}
function l(ad) {
var ac,
Z = 0,
af = 0,
X,
ab,
Y,
aa,
t,
ae;
if (O[h] == O[Q]) {
return f(ad);
}
for (ac = O[Q], X = ac.parentNode; X; ac = X, X = X.parentNode) {
if (X == O[h]) {
return r(ac, ad);
}
++Z;
}
for (ac = O[h], X = ac.parentNode; X; ac = X, X = X.parentNode) {
if (X == O[Q]) {
return V(ac, ad);
}
++af;
}
ab = af - Z;
Y = O[h];
while (ab > 0) {
Y = Y.parentNode;
ab--;
}
aa = O[Q];
while (ab < 0) {
aa = aa.parentNode;
ab++;
}
for (
t = Y.parentNode, ae = aa.parentNode;
t != ae;
t = t.parentNode, ae = ae.parentNode
) {
Y = t;
aa = ae;
}
return o(Y, aa, ad);
}
function f(ac) {
var ae, af, t, Y, Z, ad, aa, X, ab;
if (ac != j) {
ae = x();
}
if (O[W] == O[A]) {
return ae;
}
if (O[h].nodeType == 3) {
af = O[h].nodeValue;
t = af.substring(O[W], O[A]);
if (ac != F) {
Y = O[h];
X = O[W];
ab = O[A] - O[W];
if (X === 0 && ab >= Y.nodeValue.length - 1) {
Y.parentNode.removeChild(Y);
} else {
Y.deleteData(X, ab);
}
O.collapse(E);
}
if (ac == j) {
return;
}
if (t.length > 0) {
ae.appendChild(e.createTextNode(t));
}
return ae;
}
Y = P(O[h], O[W]);
Z = O[A] - O[W];
while (Y && Z > 0) {
ad = Y.nextSibling;
aa = z(Y, ac);
if (ae) {
ae.appendChild(aa);
}
--Z;
Y = ad;
}
if (ac != F) {
O.collapse(E);
}
return ae;
}
function r(ad, aa) {
var ac, ab, X, t, Z, Y;
if (aa != j) {
ac = x();
}
ab = i(ad, aa);
if (ac) {
ac.appendChild(ab);
}
X = n(ad);
t = X - O[W];
if (t <= 0) {
if (aa != F) {
O.setEndBefore(ad);
O.collapse(S);
}
return ac;
}
ab = ad.previousSibling;
while (t > 0) {
Z = ab.previousSibling;
Y = z(ab, aa);
if (ac) {
ac.insertBefore(Y, ac.firstChild);
}
--t;
ab = Z;
}
if (aa != F) {
O.setEndBefore(ad);
O.collapse(S);
}
return ac;
}
function V(ab, aa) {
var ad, X, ac, t, Z, Y;
if (aa != j) {
ad = x();
}
ac = R(ab, aa);
if (ad) {
ad.appendChild(ac);
}
X = n(ab);
++X;
t = O[A] - X;
ac = ab.nextSibling;
while (ac && t > 0) {
Z = ac.nextSibling;
Y = z(ac, aa);
if (ad) {
ad.appendChild(Y);
}
--t;
ac = Z;
}
if (aa != F) {
O.setStartAfter(ab);
O.collapse(E);
}
return ad;
}
function o(ab, t, ae) {
var Y, ag, aa, ac, ad, X, af, Z;
if (ae != j) {
ag = x();
}
Y = R(ab, ae);
if (ag) {
ag.appendChild(Y);
}
aa = ab.parentNode;
ac = n(ab);
ad = n(t);
++ac;
X = ad - ac;
af = ab.nextSibling;
while (X > 0) {
Z = af.nextSibling;
Y = z(af, ae);
if (ag) {
ag.appendChild(Y);
}
af = Z;
--X;
}
Y = i(t, ae);
if (ag) {
ag.appendChild(Y);
}
if (ae != F) {
O.setStartAfter(ab);
O.collapse(E);
}
return ag;
}
function i(ac, ad) {
var Y = P(O[Q], O[A] - 1),
ae,
ab,
aa,
t,
X,
Z = Y != O[Q];
if (Y == ac) {
return M(Y, Z, S, ad);
}
ae = Y.parentNode;
ab = M(ae, S, S, ad);
while (ae) {
while (Y) {
aa = Y.previousSibling;
t = M(Y, Z, S, ad);
if (ad != j) {
ab.insertBefore(t, ab.firstChild);
}
Z = E;
Y = aa;
}
if (ae == ac) {
return ab;
}
Y = ae.previousSibling;
ae = ae.parentNode;
X = M(ae, S, S, ad);
if (ad != j) {
X.appendChild(ab);
}
ab = X;
}
}
function R(ac, ad) {
var Z = P(O[h], O[W]),
aa = Z != O[h],
ae,
ab,
Y,
t,
X;
if (Z == ac) {
return M(Z, aa, E, ad);
}
ae = Z.parentNode;
ab = M(ae, S, E, ad);
while (ae) {
while (Z) {
Y = Z.nextSibling;
t = M(Z, aa, E, ad);
if (ad != j) {
ab.appendChild(t);
}
aa = E;
Z = Y;
}
if (ae == ac) {
return ab;
}
Z = ae.nextSibling;
ae = ae.parentNode;
X = M(ae, S, E, ad);
if (ad != j) {
X.appendChild(ab);
}
ab = X;
}
}
function M(t, aa, ad, ae) {
var Z, Y, ab, X, ac;
if (aa) {
return z(t, ae);
}
if (t.nodeType == 3) {
Z = t.nodeValue;
if (ad) {
X = O[W];
Y = Z.substring(X);
ab = Z.substring(0, X);
} else {
X = O[A];
Y = Z.substring(0, X);
ab = Z.substring(X);
}
if (ae != F) {
t.nodeValue = ab;
}
if (ae == j) {
return;
}
ac = c.clone(t, S);
ac.nodeValue = Y;
return ac;
}
if (ae == j) {
return;
}
return c.clone(t, S);
}
function z(X, t) {
if (t != j) {
return t == F ? c.clone(X, E) : X;
}
X.parentNode.removeChild(X);
}
function T() {
return c.create("body", null, d()).outerText;
}
return O;
}
a.Range = b;
b.prototype.toString = function () {
return this.toStringIE();
};
})(tinymce.dom);
(function () {
function a(d) {
var b = this,
h = d.dom,
c = true,
f = false;
function e(i, j) {
var k,
t = 0,
q,
n,
m,
l,
o,
r,
p = -1,
s;
k = i.duplicate();
k.collapse(j);
s = k.parentElement();
if (s.ownerDocument !== d.dom.doc) {
return;
}
while (s.contentEditable === "false") {
s = s.parentNode;
}
if (!s.hasChildNodes()) {
return { node: s, inside: 1 };
}
m = s.children;
q = m.length - 1;
while (t <= q) {
r = Math.floor((t + q) / 2);
l = m[r];
k.moveToElementText(l);
p = k.compareEndPoints(j ? "StartToStart" : "EndToEnd", i);
if (p > 0) {
q = r - 1;
} else {
if (p < 0) {
t = r + 1;
} else {
return { node: l };
}
}
}
if (p < 0) {
if (!l) {
k.moveToElementText(s);
k.collapse(true);
l = s;
n = true;
} else {
k.collapse(false);
}
o = 0;
while (k.compareEndPoints(j ? "StartToStart" : "StartToEnd", i) !== 0) {
if (k.move("character", 1) === 0 || s != k.parentElement()) {
break;
}
o++;
}
} else {
k.collapse(true);
o = 0;
while (k.compareEndPoints(j ? "StartToStart" : "StartToEnd", i) !== 0) {
if (k.move("character", -1) === 0 || s != k.parentElement()) {
break;
}
o++;
}
}
return { node: l, position: p, offset: o, inside: n };
}
function g() {
var i = d.getRng(),
r = h.createRng(),
l,
k,
p,
q,
m,
j;
l = i.item ? i.item(0) : i.parentElement();
if (l.ownerDocument != h.doc) {
return r;
}
k = d.isCollapsed();
if (i.item) {
r.setStart(l.parentNode, h.nodeIndex(l));
r.setEnd(r.startContainer, r.startOffset + 1);
return r;
}
function o(A) {
var u = e(i, A),
s,
y,
z = 0,
x,
v,
t;
s = u.node;
y = u.offset;
if (u.inside && !s.hasChildNodes()) {
r[A ? "setStart" : "setEnd"](s, 0);
return;
}
if (y === v) {
r[A ? "setStartBefore" : "setEndAfter"](s);
return;
}
if (u.position < 0) {
x = u.inside ? s.firstChild : s.nextSibling;
if (!x) {
r[A ? "setStartAfter" : "setEndAfter"](s);
return;
}
if (!y) {
if (x.nodeType == 3) {
r[A ? "setStart" : "setEnd"](x, 0);
} else {
r[A ? "setStartBefore" : "setEndBefore"](x);
}
return;
}
while (x) {
t = x.nodeValue;
z += t.length;
if (z >= y) {
s = x;
z -= y;
z = t.length - z;
break;
}
x = x.nextSibling;
}
} else {
x = s.previousSibling;
if (!x) {
return r[A ? "setStartBefore" : "setEndBefore"](s);
}
if (!y) {
if (s.nodeType == 3) {
r[A ? "setStart" : "setEnd"](x, s.nodeValue.length);
} else {
r[A ? "setStartAfter" : "setEndAfter"](x);
}
return;
}
while (x) {
z += x.nodeValue.length;
if (z >= y) {
s = x;
z -= y;
break;
}
x = x.previousSibling;
}
}
r[A ? "setStart" : "setEnd"](s, z);
}
try {
o(true);
if (!k) {
o();
}
} catch (n) {
if (n.number == -2147024809) {
m = b.getBookmark(2);
p = i.duplicate();
p.collapse(true);
l = p.parentElement();
if (!k) {
p = i.duplicate();
p.collapse(false);
q = p.parentElement();
q.innerHTML = q.innerHTML;
}
l.innerHTML = l.innerHTML;
b.moveToBookmark(m);
i = d.getRng();
o(true);
if (!k) {
o();
}
} else {
throw n;
}
}
return r;
}
this.getBookmark = function (m) {
var j = d.getRng(),
o,
i,
l = {};
function n(u) {
var t,
p,
s,
r,
q = [];
t = u.parentNode;
p = h.getRoot().parentNode;
while (t != p && t.nodeType !== 9) {
s = t.children;
r = s.length;
while (r--) {
if (u === s[r]) {
q.push(r);
break;
}
}
u = t;
t = t.parentNode;
}
return q;
}
function k(q) {
var p;
p = e(j, q);
if (p) {
return {
position: p.position,
offset: p.offset,
indexes: n(p.node),
inside: p.inside,
};
}
}
if (m === 2) {
if (!j.item) {
l.start = k(true);
if (!d.isCollapsed()) {
l.end = k();
}
} else {
l.start = { ctrl: true, indexes: n(j.item(0)) };
}
}
return l;
};
this.moveToBookmark = function (k) {
var j,
i = h.doc.body;
function m(o) {
var r, q, n, p;
r = h.getRoot();
for (q = o.length - 1; q >= 0; q--) {
p = r.children;
n = o[q];
if (n <= p.length - 1) {
r = p[n];
}
}
return r;
}
function l(r) {
var n = k[r ? "start" : "end"],
q,
p,
o;
if (n) {
q = n.position > 0;
p = i.createTextRange();
p.moveToElementText(m(n.indexes));
offset = n.offset;
if (offset !== o) {
p.collapse(n.inside || q);
p.moveStart("character", q ? -offset : offset);
} else {
p.collapse(r);
}
j.setEndPoint(r ? "StartToStart" : "EndToStart", p);
if (r) {
j.collapse(true);
}
}
}
if (k.start) {
if (k.start.ctrl) {
j = i.createControlRange();
j.addElement(m(k.start.indexes));
j.select();
} else {
j = i.createTextRange();
l(true);
l();
j.select();
}
}
};
this.addRange = function (i) {
var n,
l,
k,
p,
v,
q,
t,
s = d.dom.doc,
m = s.body,
r,
u;
function j(C) {
var y, B, x, A, z;
x = h.create("a");
y = C ? k : v;
B = C ? p : q;
A = n.duplicate();
if (y == s || y == s.documentElement) {
y = m;
B = 0;
}
if (y.nodeType == 3) {
y.parentNode.insertBefore(x, y);
A.moveToElementText(x);
A.moveStart("character", B);
h.remove(x);
n.setEndPoint(C ? "StartToStart" : "EndToEnd", A);
} else {
z = y.childNodes;
if (z.length) {
if (B >= z.length) {
h.insertAfter(x, z[z.length - 1]);
} else {
y.insertBefore(x, z[B]);
}
A.moveToElementText(x);
} else {
if (y.canHaveHTML) {
y.innerHTML = "\uFEFF";
x = y.firstChild;
A.moveToElementText(x);
A.collapse(f);
}
}
n.setEndPoint(C ? "StartToStart" : "EndToEnd", A);
h.remove(x);
}
}
k = i.startContainer;
p = i.startOffset;
v = i.endContainer;
q = i.endOffset;
n = m.createTextRange();
if (k == v && k.nodeType == 1) {
if (p == q && !k.hasChildNodes()) {
if (k.canHaveHTML) {
t = k.previousSibling;
if (t && !t.hasChildNodes() && h.isBlock(t)) {
t.innerHTML = "\uFEFF";
} else {
t = null;
}
k.innerHTML = "\uFEFF\uFEFF";
n.moveToElementText(k.lastChild);
n.select();
h.doc.selection.clear();
k.innerHTML = "";
if (t) {
t.innerHTML = "";
}
return;
} else {
p = h.nodeIndex(k);
k = k.parentNode;
}
}
if (p == q - 1) {
try {
u = k.childNodes[p];
l = m.createControlRange();
l.addElement(u);
l.select();
r = d.getRng();
if (r.item && u === r.item(0)) {
return;
}
} catch (o) {}
}
}
j(true);
j();
n.select();
};
this.getRangeAt = g;
}
tinymce.dom.TridentSelection = a;
})();
(function () {
var n =
/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
i = "sizcache",
o = 0,
r = Object.prototype.toString,
h = false,
g = true,
q = /\\/g,
u = /\r\n/g,
x = /\W/;
[0, 0].sort(function () {
g = false;
return 0;
});
var d = function (C, e, F, G) {
F = F || [];
e = e || document;
var I = e;
if (e.nodeType !== 1 && e.nodeType !== 9) {
return [];
}
if (!C || typeof C !== "string") {
return F;
}
var z,
K,
N,
y,
J,
M,
L,
E,
B = true,
A = d.isXML(e),
D = [],
H = C;
do {
n.exec("");
z = n.exec(H);
if (z) {
H = z[3];
D.push(z[1]);
if (z[2]) {
y = z[3];
break;
}
}
} while (z);
if (D.length > 1 && j.exec(C)) {
if (D.length === 2 && k.relative[D[0]]) {
K = s(D[0] + D[1], e, G);
} else {
K = k.relative[D[0]] ? [e] : d(D.shift(), e);
while (D.length) {
C = D.shift();
if (k.relative[C]) {
C += D.shift();
}
K = s(C, K, G);
}
}
} else {
if (
!G &&
D.length > 1 &&
e.nodeType === 9 &&
!A &&
k.match.ID.test(D[0]) &&
!k.match.ID.test(D[D.length - 1])
) {
J = d.find(D.shift(), e, A);
e = J.expr ? d.filter(J.expr, J.set)[0] : J.set[0];
}
if (e) {
J = G
? { expr: D.pop(), set: l(G) }
: d.find(
D.pop(),
D.length === 1 && (D[0] === "~" || D[0] === "+") && e.parentNode
? e.parentNode
: e,
A,
);
K = J.expr ? d.filter(J.expr, J.set) : J.set;
if (D.length > 0) {
N = l(K);
} else {
B = false;
}
while (D.length) {
M = D.pop();
L = M;
if (!k.relative[M]) {
M = "";
} else {
L = D.pop();
}
if (L == null) {
L = e;
}
k.relative[M](N, L, A);
}
} else {
N = D = [];
}
}
if (!N) {
N = K;
}
if (!N) {
d.error(M || C);
}
if (r.call(N) === "[object Array]") {
if (!B) {
F.push.apply(F, N);
} else {
if (e && e.nodeType === 1) {
for (E = 0; N[E] != null; E++) {
if (
N[E] &&
(N[E] === true || (N[E].nodeType === 1 && d.contains(e, N[E])))
) {
F.push(K[E]);
}
}
} else {
for (E = 0; N[E] != null; E++) {
if (N[E] && N[E].nodeType === 1) {
F.push(K[E]);
}
}
}
}
} else {
l(N, F);
}
if (y) {
d(y, I, F, G);
d.uniqueSort(F);
}
return F;
};
d.uniqueSort = function (y) {
if (p) {
h = g;
y.sort(p);
if (h) {
for (var e = 1; e < y.length; e++) {
if (y[e] === y[e - 1]) {
y.splice(e--, 1);
}
}
}
}
return y;
};
d.matches = function (e, y) {
return d(e, null, null, y);
};
d.matchesSelector = function (e, y) {
return d(y, null, null, [e]).length > 0;
};
d.find = function (E, e, F) {
var D, z, B, A, C, y;
if (!E) {
return [];
}
for (z = 0, B = k.order.length; z < B; z++) {
C = k.order[z];
if ((A = k.leftMatch[C].exec(E))) {
y = A[1];
A.splice(1, 1);
if (y.substr(y.length - 1) !== "\\") {
A[1] = (A[1] || "").replace(q, "");
D = k.find[C](A, e, F);
if (D != null) {
E = E.replace(k.match[C], "");
break;
}
}
}
}
if (!D) {
D =
typeof e.getElementsByTagName !== "undefined"
? e.getElementsByTagName("*")
: [];
}
return { set: D, expr: E };
};
d.filter = function (I, H, L, B) {
var D,
e,
G,
N,
K,
y,
A,
C,
J,
z = I,
M = [],
F = H,
E = H && H[0] && d.isXML(H[0]);
while (I && H.length) {
for (G in k.filter) {
if ((D = k.leftMatch[G].exec(I)) != null && D[2]) {
y = k.filter[G];
A = D[1];
e = false;
D.splice(1, 1);
if (A.substr(A.length - 1) === "\\") {
continue;
}
if (F === M) {
M = [];
}
if (k.preFilter[G]) {
D = k.preFilter[G](D, F, L, M, B, E);
if (!D) {
e = N = true;
} else {
if (D === true) {
continue;
}
}
}
if (D) {
for (C = 0; (K = F[C]) != null; C++) {
if (K) {
N = y(K, D, C, F);
J = B ^ N;
if (L && N != null) {
if (J) {
e = true;
} else {
F[C] = false;
}
} else {
if (J) {
M.push(K);
e = true;
}
}
}
}
}
if (N !== undefined) {
if (!L) {
F = M;
}
I = I.replace(k.match[G], "");
if (!e) {
return [];
}
break;
}
}
}
if (I === z) {
if (e == null) {
d.error(I);
} else {
break;
}
}
z = I;
}
return F;
};
d.error = function (e) {
throw new Error("Syntax error, unrecognized expression: " + e);
};
var b = (d.getText = function (B) {
var z,
A,
e = B.nodeType,
y = "";
if (e) {
if (e === 1 || e === 9 || e === 11) {
if (typeof B.textContent === "string") {
return B.textContent;
} else {
if (typeof B.innerText === "string") {
return B.innerText.replace(u, "");
} else {
for (B = B.firstChild; B; B = B.nextSibling) {
y += b(B);
}
}
}
} else {
if (e === 3 || e === 4) {
return B.nodeValue;
}
}
} else {
for (z = 0; (A = B[z]); z++) {
if (A.nodeType !== 8) {
y += b(A);
}
}
}
return y;
});
var k = (d.selectors = {
order: ["ID", "NAME", "TAG"],
match: {
ID: /#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
CLASS: /\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,
ATTR: /\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,
TAG: /^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,
CHILD:
/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,
POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,
PSEUDO:
/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/,
},
leftMatch: {},
attrMap: { class: "className", for: "htmlFor" },
attrHandle: {
href: function (e) {
return e.getAttribute("href");
},
type: function (e) {
return e.getAttribute("type");
},
},
relative: {
"+": function (D, y) {
var A = typeof y === "string",
C = A && !x.test(y),
E = A && !C;
if (C) {
y = y.toLowerCase();
}
for (var z = 0, e = D.length, B; z < e; z++) {
if ((B = D[z])) {
while ((B = B.previousSibling) && B.nodeType !== 1) {}
D[z] =
E || (B && B.nodeName.toLowerCase() === y) ? B || false : B === y;
}
}
if (E) {
d.filter(y, D, true);
}
},
">": function (D, y) {
var C,
B = typeof y === "string",
z = 0,
e = D.length;
if (B && !x.test(y)) {
y = y.toLowerCase();
for (; z < e; z++) {
C = D[z];
if (C) {
var A = C.parentNode;
D[z] = A.nodeName.toLowerCase() === y ? A : false;
}
}
} else {
for (; z < e; z++) {
C = D[z];
if (C) {
D[z] = B ? C.parentNode : C.parentNode === y;
}
}
if (B) {
d.filter(y, D, true);
}
}
},
"": function (A, y, C) {
var B,
z = o++,
e = t;
if (typeof y === "string" && !x.test(y)) {
y = y.toLowerCase();
B = y;
e = a;
}
e("parentNode", y, z, A, B, C);
},
"~": function (A, y, C) {
var B,
z = o++,
e = t;
if (typeof y === "string" && !x.test(y)) {
y = y.toLowerCase();
B = y;
e = a;
}
e("previousSibling", y, z, A, B, C);
},
},
find: {
ID: function (y, z, A) {
if (typeof z.getElementById !== "undefined" && !A) {
var e = z.getElementById(y[1]);
return e && e.parentNode ? [e] : [];
}
},
NAME: function (z, C) {
if (typeof C.getElementsByName !== "undefined") {
var y = [],
B = C.getElementsByName(z[1]);
for (var A = 0, e = B.length; A < e; A++) {
if (B[A].getAttribute("name") === z[1]) {
y.push(B[A]);
}
}
return y.length === 0 ? null : y;
}
},
TAG: function (e, y) {
if (typeof y.getElementsByTagName !== "undefined") {
return y.getElementsByTagName(e[1]);
}
},
},
preFilter: {
CLASS: function (A, y, z, e, D, E) {
A = " " + A[1].replace(q, "") + " ";
if (E) {
return A;
}
for (var B = 0, C; (C = y[B]) != null; B++) {
if (C) {
if (
D ^
(C.className &&
(" " + C.className + " ")
.replace(/[\t\n\r]/g, " ")
.indexOf(A) >= 0)
) {
if (!z) {
e.push(C);
}
} else {
if (z) {
y[B] = false;
}
}
}
}
return false;
},
ID: function (e) {
return e[1].replace(q, "");
},
TAG: function (y, e) {
return y[1].replace(q, "").toLowerCase();
},
CHILD: function (e) {
if (e[1] === "nth") {
if (!e[2]) {
d.error(e[0]);
}
e[2] = e[2].replace(/^\+|\s*/g, "");
var y = /(-?)(\d*)(?:n([+\-]?\d*))?/.exec(
(e[2] === "even" && "2n") ||
(e[2] === "odd" && "2n+1") ||
(!/\D/.test(e[2]) && "0n+" + e[2]) ||
e[2],
);
e[2] = y[1] + (y[2] || 1) - 0;
e[3] = y[3] - 0;
} else {
if (e[2]) {
d.error(e[0]);
}
}
e[0] = o++;
return e;
},
ATTR: function (B, y, z, e, C, D) {
var A = (B[1] = B[1].replace(q, ""));
if (!D && k.attrMap[A]) {
B[1] = k.attrMap[A];
}
B[4] = (B[4] || B[5] || "").replace(q, "");
if (B[2] === "~=") {
B[4] = " " + B[4] + " ";
}
return B;
},
PSEUDO: function (B, y, z, e, C) {
if (B[1] === "not") {
if ((n.exec(B[3]) || "").length > 1 || /^\w/.test(B[3])) {
B[3] = d(B[3], null, null, y);
} else {
var A = d.filter(B[3], y, z, true ^ C);
if (!z) {
e.push.apply(e, A);
}
return false;
}
} else {
if (k.match.POS.test(B[0]) || k.match.CHILD.test(B[0])) {
return true;
}
}
return B;
},
POS: function (e) {
e.unshift(true);
return e;
},
},
filters: {
enabled: function (e) {
return e.disabled === false && e.type !== "hidden";
},
disabled: function (e) {
return e.disabled === true;
},
checked: function (e) {
return e.checked === true;
},
selected: function (e) {
if (e.parentNode) {
e.parentNode.selectedIndex;
}
return e.selected === true;
},
parent: function (e) {
return !!e.firstChild;
},
empty: function (e) {
return !e.firstChild;
},
has: function (z, y, e) {
return !!d(e[3], z).length;
},
header: function (e) {
return /h\d/i.test(e.nodeName);
},
text: function (z) {
var e = z.getAttribute("type"),
y = z.type;
return (
z.nodeName.toLowerCase() === "input" &&
"text" === y &&
(e === y || e === null)
);
},
radio: function (e) {
return e.nodeName.toLowerCase() === "input" && "radio" === e.type;
},
checkbox: function (e) {
return e.nodeName.toLowerCase() === "input" && "checkbox" === e.type;
},
file: function (e) {
return e.nodeName.toLowerCase() === "input" && "file" === e.type;
},
password: function (e) {
return e.nodeName.toLowerCase() === "input" && "password" === e.type;
},
submit: function (y) {
var e = y.nodeName.toLowerCase();
return (e === "input" || e === "button") && "submit" === y.type;
},
image: function (e) {
return e.nodeName.toLowerCase() === "input" && "image" === e.type;
},
reset: function (y) {
var e = y.nodeName.toLowerCase();
return (e === "input" || e === "button") && "reset" === y.type;
},
button: function (y) {
var e = y.nodeName.toLowerCase();
return (e === "input" && "button" === y.type) || e === "button";
},
input: function (e) {
return /input|select|textarea|button/i.test(e.nodeName);
},
focus: function (e) {
return e === e.ownerDocument.activeElement;
},
},
setFilters: {
first: function (y, e) {
return e === 0;
},
last: function (z, y, e, A) {
return y === A.length - 1;
},
even: function (y, e) {
return e % 2 === 0;
},
odd: function (y, e) {
return e % 2 === 1;
},
lt: function (z, y, e) {
return y < e[3] - 0;
},
gt: function (z, y, e) {
return y > e[3] - 0;
},
nth: function (z, y, e) {
return e[3] - 0 === y;
},
eq: function (z, y, e) {
return e[3] - 0 === y;
},
},
filter: {
PSEUDO: function (z, E, D, F) {
var e = E[1],
y = k.filters[e];
if (y) {
return y(z, D, E, F);
} else {
if (e === "contains") {
return (
(z.textContent || z.innerText || b([z]) || "").indexOf(E[3]) >= 0
);
} else {
if (e === "not") {
var A = E[3];
for (var C = 0, B = A.length; C < B; C++) {
if (A[C] === z) {
return false;
}
}
return true;
} else {
d.error(e);
}
}
}
},
CHILD: function (z, B) {
var A,
H,
D,
G,
e,
C,
F,
E = B[1],
y = z;
switch (E) {
case "only":
case "first":
while ((y = y.previousSibling)) {
if (y.nodeType === 1) {
return false;
}
}
if (E === "first") {
return true;
}
y = z;
case "last":
while ((y = y.nextSibling)) {
if (y.nodeType === 1) {
return false;
}
}
return true;
case "nth":
A = B[2];
H = B[3];
if (A === 1 && H === 0) {
return true;
}
D = B[0];
G = z.parentNode;
if (G && (G[i] !== D || !z.nodeIndex)) {
C = 0;
for (y = G.firstChild; y; y = y.nextSibling) {
if (y.nodeType === 1) {
y.nodeIndex = ++C;
}
}
G[i] = D;
}
F = z.nodeIndex - H;
if (A === 0) {
return F === 0;
} else {
return F % A === 0 && F / A >= 0;
}
}
},
ID: function (y, e) {
return y.nodeType === 1 && y.getAttribute("id") === e;
},
TAG: function (y, e) {
return (
(e === "*" && y.nodeType === 1) ||
(!!y.nodeName && y.nodeName.toLowerCase() === e)
);
},
CLASS: function (y, e) {
return (
(" " + (y.className || y.getAttribute("class")) + " ").indexOf(e) > -1
);
},
ATTR: function (C, A) {
var z = A[1],
e = d.attr
? d.attr(C, z)
: k.attrHandle[z]
? k.attrHandle[z](C)
: C[z] != null
? C[z]
: C.getAttribute(z),
D = e + "",
B = A[2],
y = A[4];
return e == null
? B === "!="
: !B && d.attr
? e != null
: B === "="
? D === y
: B === "*="
? D.indexOf(y) >= 0
: B === "~="
? (" " + D + " ").indexOf(y) >= 0
: !y
? D && e !== false
: B === "!="
? D !== y
: B === "^="
? D.indexOf(y) === 0
: B === "$="
? D.substr(D.length - y.length) === y
: B === "|="
? D === y || D.substr(0, y.length + 1) === y + "-"
: false;
},
POS: function (B, y, z, C) {
var e = y[2],
A = k.setFilters[e];
if (A) {
return A(B, z, y, C);
}
},
},
});
var j = k.match.POS,
c = function (y, e) {
return "\\" + (e - 0 + 1);
};
for (var f in k.match) {
k.match[f] = new RegExp(
k.match[f].source + /(?![^\[]*\])(?![^\(]*\))/.source,
);
k.leftMatch[f] = new RegExp(
/(^(?:.|\r|\n)*?)/.source + k.match[f].source.replace(/\\(\d+)/g, c),
);
}
k.match.globalPOS = j;
var l = function (y, e) {
y = Array.prototype.slice.call(y, 0);
if (e) {
e.push.apply(e, y);
return e;
}
return y;
};
try {
Array.prototype.slice.call(document.documentElement.childNodes, 0)[0]
.nodeType;
} catch (v) {
l = function (B, A) {
var z = 0,
y = A || [];
if (r.call(B) === "[object Array]") {
Array.prototype.push.apply(y, B);
} else {
if (typeof B.length === "number") {
for (var e = B.length; z < e; z++) {
y.push(B[z]);
}
} else {
for (; B[z]; z++) {
y.push(B[z]);
}
}
}
return y;
};
}
var p, m;
if (document.documentElement.compareDocumentPosition) {
p = function (y, e) {
if (y === e) {
h = true;
return 0;
}
if (!y.compareDocumentPosition || !e.compareDocumentPosition) {
return y.compareDocumentPosition ? -1 : 1;
}
return y.compareDocumentPosition(e) & 4 ? -1 : 1;
};
} else {
p = function (F, E) {
if (F === E) {
h = true;
return 0;
} else {
if (F.sourceIndex && E.sourceIndex) {
return F.sourceIndex - E.sourceIndex;
}
}
var C,
y,
z = [],
e = [],
B = F.parentNode,
D = E.parentNode,
G = B;
if (B === D) {
return m(F, E);
} else {
if (!B) {
return -1;
} else {
if (!D) {
return 1;
}
}
}
while (G) {
z.unshift(G);
G = G.parentNode;
}
G = D;
while (G) {
e.unshift(G);
G = G.parentNode;
}
C = z.length;
y = e.length;
for (var A = 0; A < C && A < y; A++) {
if (z[A] !== e[A]) {
return m(z[A], e[A]);
}
}
return A === C ? m(F, e[A], -1) : m(z[A], E, 1);
};
m = function (y, e, z) {
if (y === e) {
return z;
}
var A = y.nextSibling;
while (A) {
if (A === e) {
return -1;
}
A = A.nextSibling;
}
return 1;
};
}
(function () {
var y = document.createElement("div"),
z = "script" + new Date().getTime(),
e = document.documentElement;
y.innerHTML = "";
e.insertBefore(y, e.firstChild);
if (document.getElementById(z)) {
k.find.ID = function (B, C, D) {
if (typeof C.getElementById !== "undefined" && !D) {
var A = C.getElementById(B[1]);
return A
? A.id === B[1] ||
(typeof A.getAttributeNode !== "undefined" &&
A.getAttributeNode("id").nodeValue === B[1])
? [A]
: undefined
: [];
}
};
k.filter.ID = function (C, A) {
var B =
typeof C.getAttributeNode !== "undefined" && C.getAttributeNode("id");
return C.nodeType === 1 && B && B.nodeValue === A;
};
}
e.removeChild(y);
e = y = null;
})();
(function () {
var e = document.createElement("div");
e.appendChild(document.createComment(""));
if (e.getElementsByTagName("*").length > 0) {
k.find.TAG = function (y, C) {
var B = C.getElementsByTagName(y[1]);
if (y[1] === "*") {
var A = [];
for (var z = 0; B[z]; z++) {
if (B[z].nodeType === 1) {
A.push(B[z]);
}
}
B = A;
}
return B;
};
}
e.innerHTML = "";
if (
e.firstChild &&
typeof e.firstChild.getAttribute !== "undefined" &&
e.firstChild.getAttribute("href") !== "#"
) {
k.attrHandle.href = function (y) {
return y.getAttribute("href", 2);
};
}
e = null;
})();
if (document.querySelectorAll) {
(function () {
var e = d,
A = document.createElement("div"),
z = "__sizzle__";
A.innerHTML = "
| " + d.createHTML( "span", { id: g.id + "_voiceDesc", class: "voiceLabel", style: "display:none;", }, g.settings.title, ); j += d.createHTML( "a", { id: g.id + "_text", tabindex: -1, href: "javascript:;", class: "mceText", onclick: "return false;", onmousedown: "return false;", }, d.encode(g.settings.title), ) + " | "; j += "" + d.createHTML( "a", { id: g.id + "_open", tabindex: -1, href: "javascript:;", class: "mceOpen", onclick: "return false;", onmousedown: "return false;", }, '', ) + " | "; j += "
]*>( | |\s|\u00a0|)<\/p>[\r\n]*|
[\r\n]*)$/,
"",
);
});
}
n.load({ initial: true, format: "html" });
n.startContent = n.getContent({ format: "raw" });
n.initialized = true;
n.onInit.dispatch(n);
n.execCallback("setupcontent_callback", n.id, m, r);
n.execCallback("init_instance_callback", n);
n.focus(true);
n.nodeChanged({ initial: true });
if (n.contentStyles.length > 0) {
s = "";
i(n.contentStyles, function (t) {
s += t + "\r\n";
});
n.dom.addStyle(s);
}
i(n.contentCSS, function (t) {
n.dom.loadCSS(t);
});
if (p.auto_focus) {
setTimeout(function () {
var t = k.get(p.auto_focus);
t.selection.select(t.getBody(), 1);
t.selection.collapse(1);
t.getBody().focus();
t.getWin().focus();
}, 100);
}
q = r = m = null;
},
focus: function (p) {
var o,
u = this,
t = u.selection,
q = u.settings.content_editable,
n,
r,
s = u.getDoc(),
m;
if (!p) {
if (u.lastIERng) {
t.setRng(u.lastIERng);
}
n = t.getRng();
if (n.item) {
r = n.item(0);
}
u._refreshContentEditable();
if (!q) {
u.getWin().focus();
}
if (k.isGecko || q) {
m = u.getBody();
if (m.setActive) {
m.setActive();
} else {
m.focus();
}
if (q) {
t.normalize();
}
}
if (r && r.ownerDocument == s) {
n = s.body.createControlRange();
n.addElement(r);
n.select();
}
}
if (k.activeEditor != u) {
if ((o = k.activeEditor) != null) {
o.onDeactivate.dispatch(o, u);
}
u.onActivate.dispatch(u, o);
}
k._setActive(u);
},
execCallback: function (q) {
var m = this,
p = m.settings[q],
o;
if (!p) {
return;
}
if (m.callbackLookup && (o = m.callbackLookup[q])) {
p = o.func;
o = o.scope;
}
if (d(p, "string")) {
o = p.replace(/\.\w+$/, "");
o = o ? k.resolve(o) : 0;
p = k.resolve(p);
m.callbackLookup = m.callbackLookup || {};
m.callbackLookup[q] = { func: p, scope: o };
}
return p.apply(o || m, Array.prototype.slice.call(arguments, 1));
},
translate: function (m) {
var o = this.settings.language || "en",
n = k.i18n;
if (!m) {
return "";
}
return (
n[o + "." + m] ||
m.replace(/\{\#([^\}]+)\}/g, function (q, p) {
return n[o + "." + p] || "{#" + p + "}";
})
);
},
getLang: function (o, m) {
return (
k.i18n[(this.settings.language || "en") + "." + o] ||
(d(m) ? m : "{#" + o + "}")
);
},
getParam: function (t, q, m) {
var r = k.trim,
p = d(this.settings[t]) ? this.settings[t] : q,
s;
if (m === "hash") {
s = {};
if (d(p, "string")) {
i(
p.indexOf("=") > 0
? p.split(/[;,](?![^=;,]*(?:[;,]|$))/)
: p.split(","),
function (n) {
n = n.split("=");
if (n.length > 1) {
s[r(n[0])] = r(n[1]);
} else {
s[r(n[0])] = r(n);
}
},
);
} else {
s = p;
}
return s;
}
return p;
},
nodeChanged: function (q) {
var m = this,
n = m.selection,
p;
if (m.initialized) {
q = q || {};
p = n.getStart() || m.getBody();
p = b && p.ownerDocument != m.getDoc() ? m.getBody() : p;
q.parents = [];
m.dom.getParent(p, function (o) {
if (o.nodeName == "BODY") {
return true;
}
q.parents.push(o);
});
m.onNodeChange.dispatch(
m,
q ? q.controlManager || m.controlManager : m.controlManager,
p,
n.isCollapsed(),
q,
);
}
},
addButton: function (n, o) {
var m = this;
m.buttons = m.buttons || {};
m.buttons[n] = o;
},
addCommand: function (m, o, n) {
this.execCommands[m] = { func: o, scope: n || this };
},
addQueryStateHandler: function (m, o, n) {
this.queryStateCommands[m] = { func: o, scope: n || this };
},
addQueryValueHandler: function (m, o, n) {
this.queryValueCommands[m] = { func: o, scope: n || this };
},
addShortcut: function (o, q, m, p) {
var n = this,
r;
if (n.settings.custom_shortcuts === false) {
return false;
}
n.shortcuts = n.shortcuts || {};
if (d(m, "string")) {
r = m;
m = function () {
n.execCommand(r, false, null);
};
}
if (d(m, "object")) {
r = m;
m = function () {
n.execCommand(r[0], r[1], r[2]);
};
}
i(g(o), function (s) {
var t = {
func: m,
scope: p || this,
desc: n.translate(q),
alt: false,
ctrl: false,
shift: false,
};
i(g(s, "+"), function (u) {
switch (u) {
case "alt":
case "ctrl":
case "shift":
t[u] = true;
break;
default:
t.charCode = u.charCodeAt(0);
t.keyCode = u.toUpperCase().charCodeAt(0);
}
});
n.shortcuts[
(t.ctrl ? "ctrl" : "") +
"," +
(t.alt ? "alt" : "") +
"," +
(t.shift ? "shift" : "") +
"," +
t.keyCode
] = t;
});
return true;
},
execCommand: function (u, r, x, m) {
var p = this,
q = 0,
v,
n;
if (
!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(
u,
) &&
(!m || !m.skip_focus)
) {
p.focus();
}
m = f({}, m);
p.onBeforeExecCommand.dispatch(p, u, r, x, m);
if (m.terminate) {
return false;
}
if (
p.execCallback(
"execcommand_callback",
p.id,
p.selection.getNode(),
u,
r,
x,
)
) {
p.onExecCommand.dispatch(p, u, r, x, m);
return true;
}
if ((v = p.execCommands[u])) {
n = v.func.call(v.scope, r, x);
if (n !== true) {
p.onExecCommand.dispatch(p, u, r, x, m);
return n;
}
}
i(p.plugins, function (o) {
if (o.execCommand && o.execCommand(u, r, x)) {
p.onExecCommand.dispatch(p, u, r, x, m);
q = 1;
return false;
}
});
if (q) {
return true;
}
if (p.theme && p.theme.execCommand && p.theme.execCommand(u, r, x)) {
p.onExecCommand.dispatch(p, u, r, x, m);
return true;
}
if (p.editorCommands.execCommand(u, r, x)) {
p.onExecCommand.dispatch(p, u, r, x, m);
return true;
}
p.getDoc().execCommand(u, r, x);
p.onExecCommand.dispatch(p, u, r, x, m);
},
queryCommandState: function (q) {
var n = this,
r,
p;
if (n._isHidden()) {
return;
}
if ((r = n.queryStateCommands[q])) {
p = r.func.call(r.scope);
if (p !== true) {
return p;
}
}
r = n.editorCommands.queryCommandState(q);
if (r !== -1) {
return r;
}
try {
return this.getDoc().queryCommandState(q);
} catch (m) {}
},
queryCommandValue: function (r) {
var n = this,
q,
p;
if (n._isHidden()) {
return;
}
if ((q = n.queryValueCommands[r])) {
p = q.func.call(q.scope);
if (p !== true) {
return p;
}
}
q = n.editorCommands.queryCommandValue(r);
if (d(q)) {
return q;
}
try {
return this.getDoc().queryCommandValue(r);
} catch (m) {}
},
show: function () {
var m = this;
l.show(m.getContainer());
l.hide(m.id);
m.load();
},
hide: function () {
var m = this,
n = m.getDoc();
if (b && n) {
n.execCommand("SelectAll");
}
m.save();
l.hide(m.getContainer());
l.setStyle(m.id, "display", m.orgDisplay);
},
isHidden: function () {
return !l.isHidden(this.id);
},
setProgressState: function (m, n, p) {
this.onSetProgressState.dispatch(this, m, n, p);
return m;
},
load: function (q) {
var m = this,
p = m.getElement(),
n;
if (p) {
q = q || {};
q.load = true;
n = m.setContent(d(p.value) ? p.value : p.innerHTML, q);
q.element = p;
if (!q.no_events) {
m.onLoadContent.dispatch(m, q);
}
q.element = p = null;
return n;
}
},
save: function (r) {
var m = this,
q = m.getElement(),
n,
p;
if (!q || !m.initialized) {
return;
}
r = r || {};
r.save = true;
r.element = q;
n = r.content = m.getContent(r);
if (!r.no_events) {
m.onSaveContent.dispatch(m, r);
}
n = r.content;
if (!/TEXTAREA|INPUT/i.test(q.nodeName)) {
q.innerHTML = n;
if ((p = l.getParent(m.id, "form"))) {
i(p.elements, function (o) {
if (o.name == m.id) {
o.value = n;
return false;
}
});
}
} else {
q.value = n;
}
r.element = q = null;
return n;
},
setContent: function (r, p) {
var o = this,
n,
m = o.getBody(),
q;
p = p || {};
p.format = p.format || "html";
p.set = true;
p.content = r;
if (!p.no_events) {
o.onBeforeSetContent.dispatch(o, p);
}
r = p.content;
if (!k.isIE && (r.length === 0 || /^\s+$/.test(r))) {
q = o.settings.forced_root_block;
if (q) {
r = "<" + q + '>
' + q + ">";
} else {
r = '
';
}
m.innerHTML = r;
o.selection.select(m, true);
o.selection.collapse(true);
return;
}
if (p.format !== "raw") {
r = new k.html.Serializer({}, o.schema).serialize(o.parser.parse(r));
}
p.content = k.trim(r);
o.dom.setHTML(m, p.content);
if (!p.no_events) {
o.onSetContent.dispatch(o, p);
}
if (
!o.settings.content_editable ||
document.activeElement === o.getBody()
) {
o.selection.normalize();
}
return p.content;
},
getContent: function (o) {
var n = this,
p,
m = n.getBody();
o = o || {};
o.format = o.format || "html";
o.get = true;
o.getInner = true;
if (!o.no_events) {
n.onBeforeGetContent.dispatch(n, o);
}
if (o.format == "raw") {
p = m.innerHTML;
} else {
if (o.format == "text") {
p = m.innerText || m.textContent;
} else {
p = n.serializer.serialize(m, o);
}
}
if (o.format != "text") {
o.content = k.trim(p);
} else {
o.content = p;
}
if (!o.no_events) {
n.onGetContent.dispatch(n, o);
}
return o.content;
},
isDirty: function () {
var m = this;
return (
k.trim(m.startContent) !=
k.trim(m.getContent({ format: "raw", no_events: 1 })) && !m.isNotDirty
);
},
getContainer: function () {
var m = this;
if (!m.container) {
m.container = l.get(m.editorContainer || m.id + "_parent");
}
return m.container;
},
getContentAreaContainer: function () {
return this.contentAreaContainer;
},
getElement: function () {
return l.get(this.settings.content_element || this.id);
},
getWin: function () {
var m = this,
n;
if (!m.contentWindow) {
n = l.get(m.id + "_ifr");
if (n) {
m.contentWindow = n.contentWindow;
}
}
return m.contentWindow;
},
getDoc: function () {
var m = this,
n;
if (!m.contentDocument) {
n = m.getWin();
if (n) {
m.contentDocument = n.document;
}
}
return m.contentDocument;
},
getBody: function () {
return this.bodyElement || this.getDoc().body;
},
convertURL: function (o, n, q) {
var m = this,
p = m.settings;
if (p.urlconverter_callback) {
return m.execCallback("urlconverter_callback", o, q, true, n);
}
if (
!p.convert_urls ||
(q && q.nodeName == "LINK") ||
o.indexOf("file:") === 0
) {
return o;
}
if (p.relative_urls) {
return m.documentBaseURI.toRelative(o);
}
o = m.documentBaseURI.toAbsolute(o, p.remove_script_host);
return o;
},
addVisual: function (q) {
var n = this,
o = n.settings,
p = n.dom,
m;
q = q || n.getBody();
if (!d(n.hasVisual)) {
n.hasVisual = o.visual;
}
i(p.select("table,a", q), function (s) {
var r;
switch (s.nodeName) {
case "TABLE":
m = o.visual_table_class || "mceItemTable";
r = p.getAttrib(s, "border");
if (!r || r == "0") {
if (n.hasVisual) {
p.addClass(s, m);
} else {
p.removeClass(s, m);
}
}
return;
case "A":
if (!p.getAttrib(s, "href", false)) {
r = p.getAttrib(s, "name") || s.id;
m = "mceItemAnchor";
if (r) {
if (n.hasVisual) {
p.addClass(s, m);
} else {
p.removeClass(s, m);
}
}
}
return;
}
});
n.onVisualAid.dispatch(n, q, n.hasVisual);
},
remove: function () {
var m = this,
o = m.getContainer(),
n = m.getDoc();
if (!m.removed) {
m.removed = 1;
if (b && n) {
n.execCommand("SelectAll");
}
m.save();
l.setStyle(m.id, "display", m.orgDisplay);
if (!m.settings.content_editable) {
j.unbind(m.getWin());
j.unbind(m.getDoc());
}
j.unbind(m.getBody());
j.clear(o);
m.execCallback("remove_instance_callback", m);
m.onRemove.dispatch(m);
m.onExecCommand.listeners = [];
k.remove(m);
l.remove(o);
}
},
destroy: function (n) {
var m = this;
if (m.destroyed) {
return;
}
if (a) {
j.unbind(m.getDoc());
j.unbind(m.getWin());
j.unbind(m.getBody());
}
if (!n) {
k.removeUnload(m.destroy);
tinyMCE.onBeforeUnload.remove(m._beforeUnload);
if (m.theme && m.theme.destroy) {
m.theme.destroy();
}
m.controlManager.destroy();
m.selection.destroy();
m.dom.destroy();
}
if (m.formElement) {
m.formElement.submit = m.formElement._mceOldSubmit;
m.formElement._mceOldSubmit = null;
}
m.contentAreaContainer =
m.formElement =
m.container =
m.settings.content_element =
m.bodyElement =
m.contentDocument =
m.contentWindow =
null;
if (m.selection) {
m.selection =
m.selection.win =
m.selection.dom =
m.selection.dom.doc =
null;
}
m.destroyed = 1;
},
_refreshContentEditable: function () {
var n = this,
m,
o;
if (n._isHidden()) {
m = n.getBody();
o = m.parentNode;
o.removeChild(m);
o.appendChild(m);
m.focus();
}
},
_isHidden: function () {
var m;
if (!a) {
return 0;
}
m = this.selection.getSel();
return !m || !m.rangeCount || m.rangeCount === 0;
},
});
})(tinymce);
(function (a) {
var b = a.each;
a.Editor.prototype.setupEvents = function () {
var c = this,
d = c.settings;
b(
[
"onPreInit",
"onBeforeRenderUI",
"onPostRender",
"onLoad",
"onInit",
"onRemove",
"onActivate",
"onDeactivate",
"onClick",
"onEvent",
"onMouseUp",
"onMouseDown",
"onDblClick",
"onKeyDown",
"onKeyUp",
"onKeyPress",
"onContextMenu",
"onSubmit",
"onReset",
"onPaste",
"onPreProcess",
"onPostProcess",
"onBeforeSetContent",
"onBeforeGetContent",
"onSetContent",
"onGetContent",
"onLoadContent",
"onSaveContent",
"onNodeChange",
"onChange",
"onBeforeExecCommand",
"onExecCommand",
"onUndo",
"onRedo",
"onVisualAid",
"onSetProgressState",
"onSetAttrib",
],
function (e) {
c[e] = new a.util.Dispatcher(c);
},
);
if (d.cleanup_callback) {
c.onBeforeSetContent.add(function (e, f) {
f.content = e.execCallback(
"cleanup_callback",
"insert_to_editor",
f.content,
f,
);
});
c.onPreProcess.add(function (e, f) {
if (f.set) {
e.execCallback("cleanup_callback", "insert_to_editor_dom", f.node, f);
}
if (f.get) {
e.execCallback("cleanup_callback", "get_from_editor_dom", f.node, f);
}
});
c.onPostProcess.add(function (e, f) {
if (f.set) {
f.content = e.execCallback(
"cleanup_callback",
"insert_to_editor",
f.content,
f,
);
}
if (f.get) {
f.content = e.execCallback(
"cleanup_callback",
"get_from_editor",
f.content,
f,
);
}
});
}
if (d.save_callback) {
c.onGetContent.add(function (e, f) {
if (f.save) {
f.content = e.execCallback(
"save_callback",
e.id,
f.content,
e.getBody(),
);
}
});
}
if (d.handle_event_callback) {
c.onEvent.add(function (f, g, h) {
if (c.execCallback("handle_event_callback", g, f, h) === false) {
g.preventDefault();
g.stopPropagation();
}
});
}
if (d.handle_node_change_callback) {
c.onNodeChange.add(function (f, e, g) {
f.execCallback(
"handle_node_change_callback",
f.id,
g,
-1,
-1,
true,
f.selection.isCollapsed(),
);
});
}
if (d.save_callback) {
c.onSaveContent.add(function (e, g) {
var f = e.execCallback("save_callback", e.id, g.content, e.getBody());
if (f) {
g.content = f;
}
});
}
if (d.onchange_callback) {
c.onChange.add(function (f, e) {
f.execCallback("onchange_callback", f, e);
});
}
};
a.Editor.prototype.bindNativeEvents = function () {
var l = this,
f,
d = l.settings,
e = l.dom,
h;
h = {
mouseup: "onMouseUp",
mousedown: "onMouseDown",
click: "onClick",
keyup: "onKeyUp",
keydown: "onKeyDown",
keypress: "onKeyPress",
submit: "onSubmit",
reset: "onReset",
contextmenu: "onContextMenu",
dblclick: "onDblClick",
paste: "onPaste",
};
function c(i, m) {
var n = i.type;
if (l.removed) {
return;
}
if (l.onEvent.dispatch(l, i, m) !== false) {
l[h[i.fakeType || i.type]].dispatch(l, i, m);
}
}
function j(i) {
l.focus(true);
}
function k(i, m) {
if (m.keyCode != 65 || !a.VK.metaKeyPressed(m)) {
l.selection.normalize();
}
l.nodeChanged();
}
b(h, function (m, n) {
var i = d.content_editable ? l.getBody() : l.getDoc();
switch (n) {
case "contextmenu":
e.bind(i, n, c);
break;
case "paste":
e.bind(l.getBody(), n, c);
break;
case "submit":
case "reset":
e.bind(l.getElement().form || a.DOM.getParent(l.id, "form"), n, c);
break;
default:
e.bind(i, n, c);
}
});
e.bind(
d.content_editable ? l.getBody() : a.isGecko ? l.getDoc() : l.getWin(),
"focus",
function (i) {
l.focus(true);
},
);
if (d.content_editable && a.isOpera) {
e.bind(l.getBody(), "click", j);
e.bind(l.getBody(), "keydown", j);
}
l.onMouseUp.add(k);
l.onKeyUp.add(function (i, n) {
var m = n.keyCode;
if (
(m >= 33 && m <= 36) ||
(m >= 37 && m <= 40) ||
m == 13 ||
m == 45 ||
m == 46 ||
m == 8 ||
(a.isMac && (m == 91 || m == 93)) ||
n.ctrlKey
) {
k(i, n);
}
});
l.onReset.add(function () {
l.setContent(l.startContent, { format: "raw" });
});
function g(m, i) {
if (m.altKey || m.ctrlKey || m.metaKey) {
b(l.shortcuts, function (n) {
var o = a.isMac ? m.metaKey : m.ctrlKey;
if (n.ctrl != o || n.alt != m.altKey || n.shift != m.shiftKey) {
return;
}
if (
m.keyCode == n.keyCode ||
(m.charCode && m.charCode == n.charCode)
) {
m.preventDefault();
if (i) {
n.func.call(n.scope);
}
return true;
}
});
}
}
l.onKeyUp.add(function (i, m) {
g(m);
});
l.onKeyPress.add(function (i, m) {
g(m);
});
l.onKeyDown.add(function (i, m) {
g(m, true);
});
if (a.isOpera) {
l.onClick.add(function (i, m) {
m.preventDefault();
});
}
};
})(tinymce);
(function (d) {
var e = d.each,
b,
a = true,
c = false;
d.EditorCommands = function (n) {
var m = n.dom,
p = n.selection,
j = { state: {}, exec: {}, value: {} },
k = n.settings,
q = n.formatter,
o;
function r(z, y, x) {
var v;
z = z.toLowerCase();
if ((v = j.exec[z])) {
v(z, y, x);
return a;
}
return c;
}
function l(x) {
var v;
x = x.toLowerCase();
if ((v = j.state[x])) {
return v(x);
}
return -1;
}
function h(x) {
var v;
x = x.toLowerCase();
if ((v = j.value[x])) {
return v(x);
}
return c;
}
function u(v, x) {
x = x || "exec";
e(v, function (z, y) {
e(y.toLowerCase().split(","), function (A) {
j[x][A] = z;
});
});
}
d.extend(this, {
execCommand: r,
queryCommandState: l,
queryCommandValue: h,
addCommands: u,
});
function f(y, x, v) {
if (x === b) {
x = c;
}
if (v === b) {
v = null;
}
return n.getDoc().execCommand(y, x, v);
}
function t(v) {
return q.match(v);
}
function s(v, x) {
q.toggle(v, x ? { value: x } : b);
}
function i(v) {
o = p.getBookmark(v);
}
function g() {
p.moveToBookmark(o);
}
u({
"mceResetDesignMode,mceBeginUndoLevel": function () {},
"mceEndUndoLevel,mceAddUndoLevel": function () {
n.undoManager.add();
},
"Cut,Copy,Paste": function (z) {
var y = n.getDoc(),
v;
try {
f(z);
} catch (x) {
v = a;
}
if (v || !y.queryCommandSupported(z)) {
if (d.isGecko) {
n.windowManager.confirm(n.getLang("clipboard_msg"), function (A) {
if (A) {
open(
"http://www.mozilla.org/editor/midasdemo/securityprefs.html",
"_blank",
);
}
});
} else {
n.windowManager.alert(n.getLang("clipboard_no_support"));
}
}
},
unlink: function (v) {
if (p.isCollapsed()) {
p.select(p.getNode());
}
f(v);
p.collapse(c);
},
"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull": function (v) {
var x = v.substring(7);
e("left,center,right,full".split(","), function (y) {
if (x != y) {
q.remove("align" + y);
}
});
s("align" + x);
r("mceRepaint");
},
"InsertUnorderedList,InsertOrderedList": function (y) {
var v, x;
f(y);
v = m.getParent(p.getNode(), "ol,ul");
if (v) {
x = v.parentNode;
if (/^(H[1-6]|P|ADDRESS|PRE)$/.test(x.nodeName)) {
i();
m.split(x, v);
g();
}
}
},
"Bold,Italic,Underline,Strikethrough,Superscript,Subscript": function (
v,
) {
s(v);
},
"ForeColor,HiliteColor,FontName": function (y, x, v) {
s(y, v);
},
FontSize: function (z, y, x) {
var v, A;
if (x >= 1 && x <= 7) {
A = d.explode(k.font_size_style_values);
v = d.explode(k.font_size_classes);
if (v) {
x = v[x - 1] || x;
} else {
x = A[x - 1] || x;
}
}
s(z, x);
},
RemoveFormat: function (v) {
q.remove(v);
},
mceBlockQuote: function (v) {
s("blockquote");
},
FormatBlock: function (y, x, v) {
return s(v || "p");
},
mceCleanup: function () {
var v = p.getBookmark();
n.setContent(n.getContent({ cleanup: a }), { cleanup: a });
p.moveToBookmark(v);
},
mceRemoveNode: function (z, y, x) {
var v = x || p.getNode();
if (v != n.getBody()) {
i();
n.dom.remove(v, a);
g();
}
},
mceSelectNodeDepth: function (z, y, x) {
var v = 0;
m.getParent(
p.getNode(),
function (A) {
if (A.nodeType == 1 && v++ == x) {
p.select(A);
return c;
}
},
n.getBody(),
);
},
mceSelectNode: function (y, x, v) {
p.select(v);
},
mceInsertContent: function (B, I, K) {
var y, J, E, z, F, G, D, C, L, x, A, M, v, H;
y = n.parser;
J = new d.html.Serializer({}, n.schema);
v = '\uFEFF';
G = { content: K, format: "html" };
p.onBeforeSetContent.dispatch(p, G);
K = G.content;
if (K.indexOf("{$caret}") == -1) {
K += "{$caret}";
}
K = K.replace(/\{\$caret\}/, v);
if (!p.isCollapsed()) {
n.getDoc().execCommand("Delete", false, null);
}
E = p.getNode();
G = { context: E.nodeName.toLowerCase() };
F = y.parse(K, G);
A = F.lastChild;
if (A.attr("id") == "mce_marker") {
D = A;
for (A = A.prev; A; A = A.walk(true)) {
if (A.type == 3 || !m.isBlock(A.name)) {
A.parent.insert(D, A, A.name === "br");
break;
}
}
}
if (!G.invalid) {
K = J.serialize(F);
A = E.firstChild;
M = E.lastChild;
if (!A || (A === M && A.nodeName === "BR")) {
m.setHTML(E, K);
} else {
p.setContent(K);
}
} else {
p.setContent(v);
E = p.getNode();
z = n.getBody();
if (E.nodeType == 9) {
E = A = z;
} else {
A = E;
}
while (A !== z) {
E = A;
A = A.parentNode;
}
K = E == z ? z.innerHTML : m.getOuterHTML(E);
K = J.serialize(
y.parse(
K.replace(
//i,
function () {
return J.serialize(F);
},
),
),
);
if (E == z) {
m.setHTML(z, K);
} else {
m.setOuterHTML(E, K);
}
}
D = m.get("mce_marker");
C = m.getRect(D);
L = m.getViewPort(n.getWin());
if (
C.y + C.h > L.y + L.h ||
C.y < L.y ||
C.x > L.x + L.w ||
C.x < L.x
) {
H = d.isIE ? n.getDoc().documentElement : n.getBody();
H.scrollLeft = C.x;
H.scrollTop = C.y - L.h + 25;
}
x = m.createRng();
A = D.previousSibling;
if (A && A.nodeType == 3) {
x.setStart(A, A.nodeValue.length);
} else {
x.setStartBefore(D);
x.setEndBefore(D);
}
m.remove(D);
p.setRng(x);
p.onSetContent.dispatch(p, G);
n.addVisual();
},
mceInsertRawHTML: function (y, x, v) {
p.setContent("tiny_mce_marker");
n.setContent(
n.getContent().replace(/tiny_mce_marker/g, function () {
return v;
}),
);
},
mceToggleFormat: function (y, x, v) {
s(v);
},
mceSetContent: function (y, x, v) {
n.setContent(v);
},
"Indent,Outdent": function (z) {
var x, v, y;
x = k.indentation;
v = /[a-z%]+$/i.exec(x);
x = parseInt(x);
if (!l("InsertUnorderedList") && !l("InsertOrderedList")) {
if (!k.forced_root_block && !m.getParent(p.getNode(), m.isBlock)) {
q.apply("div");
}
e(p.getSelectedBlocks(), function (A) {
if (z == "outdent") {
y = Math.max(0, parseInt(A.style.paddingLeft || 0) - x);
m.setStyle(A, "paddingLeft", y ? y + v : "");
} else {
m.setStyle(
A,
"paddingLeft",
parseInt(A.style.paddingLeft || 0) + x + v,
);
}
});
} else {
f(z);
}
},
mceRepaint: function () {
var x;
if (d.isGecko) {
try {
i(a);
if (p.getSel()) {
p.getSel().selectAllChildren(n.getBody());
}
p.collapse(a);
g();
} catch (v) {}
}
},
mceToggleFormat: function (y, x, v) {
q.toggle(v);
},
InsertHorizontalRule: function () {
n.execCommand("mceInsertContent", false, "
");
},
mceToggleVisualAid: function () {
n.hasVisual = !n.hasVisual;
n.addVisual();
},
mceReplaceContent: function (y, x, v) {
n.execCommand(
"mceInsertContent",
false,
v.replace(/\{\$selection\}/g, p.getContent({ format: "text" })),
);
},
mceInsertLink: function (z, y, x) {
var v;
if (typeof x == "string") {
x = { href: x };
}
v = m.getParent(p.getNode(), "a");
x.href = x.href.replace(" ", "%20");
if (!v || !x.href) {
q.remove("link");
}
if (x.href) {
q.apply("link", x, v);
}
},
selectAll: function () {
var x = m.getRoot(),
v = m.createRng();
if (p.getRng().setStart) {
v.setStart(x, 0);
v.setEnd(x, x.childNodes.length);
p.setRng(v);
} else {
f("SelectAll");
}
},
});
u(
{
"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull": function (z) {
var x = "align" + z.substring(7);
var v = p.isCollapsed()
? [m.getParent(p.getNode(), m.isBlock)]
: p.getSelectedBlocks();
var y = d.map(v, function (A) {
return !!q.matchNode(A, x);
});
return d.inArray(y, a) !== -1;
},
"Bold,Italic,Underline,Strikethrough,Superscript,Subscript": function (
v,
) {
return t(v);
},
mceBlockQuote: function () {
return t("blockquote");
},
Outdent: function () {
var v;
if (k.inline_styles) {
if (
(v = m.getParent(p.getStart(), m.isBlock)) &&
parseInt(v.style.paddingLeft) > 0
) {
return a;
}
if (
(v = m.getParent(p.getEnd(), m.isBlock)) &&
parseInt(v.style.paddingLeft) > 0
) {
return a;
}
}
return (
l("InsertUnorderedList") ||
l("InsertOrderedList") ||
(!k.inline_styles && !!m.getParent(p.getNode(), "BLOCKQUOTE"))
);
},
"InsertUnorderedList,InsertOrderedList": function (x) {
var v = m.getParent(p.getNode(), "ul,ol");
return (
v &&
((x === "insertunorderedlist" && v.tagName === "UL") ||
(x === "insertorderedlist" && v.tagName === "OL"))
);
},
},
"state",
);
u(
{
"FontSize,FontName": function (y) {
var x = 0,
v;
if ((v = m.getParent(p.getNode(), "span"))) {
if (y == "fontsize") {
x = v.style.fontSize;
} else {
x = v.style.fontFamily
.replace(/, /g, ",")
.replace(/[\'\"]/g, "")
.toLowerCase();
}
}
return x;
},
},
"value",
);
u({
Undo: function () {
n.undoManager.undo();
},
Redo: function () {
n.undoManager.redo();
},
});
};
})(tinymce);
(function (b) {
var a = b.util.Dispatcher;
b.UndoManager = function (h) {
var l,
i = 0,
e = [],
g,
k,
j,
f;
function c() {
return b.trim(
h
.getContent({ format: "raw", no_events: 1 })
.replace(
/]+data-mce-bogus[^>]+>[\u200B\uFEFF]+<\/span>/g,
"",
),
);
}
function d() {
l.typing = false;
l.add();
}
onBeforeAdd = new a(l);
k = new a(l);
j = new a(l);
f = new a(l);
k.add(function (m, n) {
if (m.hasUndo()) {
return h.onChange.dispatch(h, n, m);
}
});
j.add(function (m, n) {
return h.onUndo.dispatch(h, n, m);
});
f.add(function (m, n) {
return h.onRedo.dispatch(h, n, m);
});
h.onInit.add(function () {
l.add();
});
h.onBeforeExecCommand.add(function (m, p, o, q, n) {
if (
p != "Undo" &&
p != "Redo" &&
p != "mceRepaint" &&
(!n || !n.skip_undo)
) {
l.beforeChange();
}
});
h.onExecCommand.add(function (m, p, o, q, n) {
if (
p != "Undo" &&
p != "Redo" &&
p != "mceRepaint" &&
(!n || !n.skip_undo)
) {
l.add();
}
});
h.onSaveContent.add(d);
h.dom.bind(h.dom.getRoot(), "dragend", d);
h.dom.bind(h.getBody(), "focusout", function (m) {
if (!h.removed && l.typing) {
d();
}
});
h.onKeyUp.add(function (m, o) {
var n = o.keyCode;
if (
(n >= 33 && n <= 36) ||
(n >= 37 && n <= 40) ||
n == 45 ||
n == 13 ||
o.ctrlKey
) {
d();
}
});
h.onKeyDown.add(function (m, o) {
var n = o.keyCode;
if ((n >= 33 && n <= 36) || (n >= 37 && n <= 40) || n == 45) {
if (l.typing) {
d();
}
return;
}
if ((n < 16 || n > 20) && n != 224 && n != 91 && !l.typing) {
l.beforeChange();
l.typing = true;
l.add();
}
});
h.onMouseDown.add(function (m, n) {
if (l.typing) {
d();
}
});
h.addShortcut("ctrl+z", "undo_desc", "Undo");
h.addShortcut("ctrl+y", "redo_desc", "Redo");
l = {
data: e,
typing: false,
onBeforeAdd: onBeforeAdd,
onAdd: k,
onUndo: j,
onRedo: f,
beforeChange: function () {
g = h.selection.getBookmark(2, true);
},
add: function (p) {
var m,
n = h.settings,
o;
p = p || {};
p.content = c();
l.onBeforeAdd.dispatch(l, p);
o = e[i];
if (o && o.content == p.content) {
return null;
}
if (e[i]) {
e[i].beforeBookmark = g;
}
if (n.custom_undo_redo_levels) {
if (e.length > n.custom_undo_redo_levels) {
for (m = 0; m < e.length - 1; m++) {
e[m] = e[m + 1];
}
e.length--;
i = e.length;
}
}
p.bookmark = h.selection.getBookmark(2, true);
if (i < e.length - 1) {
e.length = i + 1;
}
e.push(p);
i = e.length - 1;
l.onAdd.dispatch(l, p);
h.isNotDirty = 0;
return p;
},
undo: function () {
var n, m;
if (l.typing) {
l.add();
l.typing = false;
}
if (i > 0) {
n = e[--i];
h.setContent(n.content, { format: "raw" });
h.selection.moveToBookmark(n.beforeBookmark);
l.onUndo.dispatch(l, n);
}
return n;
},
redo: function () {
var m;
if (i < e.length - 1) {
m = e[++i];
h.setContent(m.content, { format: "raw" });
h.selection.moveToBookmark(m.bookmark);
l.onRedo.dispatch(l, m);
}
return m;
},
clear: function () {
e = [];
i = 0;
l.typing = false;
},
hasUndo: function () {
return i > 0 || this.typing;
},
hasRedo: function () {
return i < e.length - 1 && !this.typing;
},
};
return l;
};
})(tinymce);
tinymce.ForceBlocks = function (c) {
var b = c.settings,
e = c.dom,
a = c.selection,
d = c.schema.getBlockElements();
function f() {
var j = a.getStart(),
h = c.getBody(),
g,
k,
o,
s,
q,
i,
l,
m = -16777215,
p,
r;
if (!j || j.nodeType !== 1 || !b.forced_root_block) {
return;
}
while (j && j != h) {
if (d[j.nodeName]) {
return;
}
j = j.parentNode;
}
g = a.getRng();
if (g.setStart) {
k = g.startContainer;
o = g.startOffset;
s = g.endContainer;
q = g.endOffset;
} else {
if (g.item) {
j = g.item(0);
g = c.getDoc().body.createTextRange();
g.moveToElementText(j);
}
r = g.parentElement().ownerDocument === c.getDoc();
tmpRng = g.duplicate();
tmpRng.collapse(true);
o = tmpRng.move("character", m) * -1;
if (!tmpRng.collapsed) {
tmpRng = g.duplicate();
tmpRng.collapse(false);
q = tmpRng.move("character", m) * -1 - o;
}
}
j = h.firstChild;
while (j) {
if (j.nodeType === 3 || (j.nodeType == 1 && !d[j.nodeName])) {
if (j.nodeType === 3 && j.nodeValue.length == 0) {
l = j;
j = j.nextSibling;
e.remove(l);
continue;
}
if (!i) {
i = e.create(b.forced_root_block);
j.parentNode.insertBefore(i, j);
p = true;
}
l = j;
j = j.nextSibling;
i.appendChild(l);
} else {
i = null;
j = j.nextSibling;
}
}
if (p) {
if (g.setStart) {
g.setStart(k, o);
g.setEnd(s, q);
a.setRng(g);
} else {
if (r) {
try {
g = c.getDoc().body.createTextRange();
g.moveToElementText(h);
g.collapse(true);
g.moveStart("character", o);
if (q > 0) {
g.moveEnd("character", q);
}
g.select();
} catch (n) {}
}
}
c.nodeChanged();
}
}
if (b.forced_root_block) {
c.onKeyUp.add(f);
c.onNodeChange.add(f);
}
};
(function (c) {
var b = c.DOM,
a = c.dom.Event,
d = c.each,
e = c.extend;
c.create("tinymce.ControlManager", {
ControlManager: function (f, j) {
var h = this,
g;
j = j || {};
h.editor = f;
h.controls = {};
h.onAdd = new c.util.Dispatcher(h);
h.onPostRender = new c.util.Dispatcher(h);
h.prefix = j.prefix || f.id + "_";
h._cls = {};
h.onPostRender.add(function () {
d(h.controls, function (i) {
i.postRender();
});
});
},
get: function (f) {
return this.controls[this.prefix + f] || this.controls[f];
},
setActive: function (h, f) {
var g = null;
if ((g = this.get(h))) {
g.setActive(f);
}
return g;
},
setDisabled: function (h, f) {
var g = null;
if ((g = this.get(h))) {
g.setDisabled(f);
}
return g;
},
add: function (g) {
var f = this;
if (g) {
f.controls[g.id] = g;
f.onAdd.dispatch(g, f);
}
return g;
},
createControl: function (j) {
var o,
k,
g,
h = this,
m = h.editor,
n,
f;
if (!h.controlFactories) {
h.controlFactories = [];
d(m.plugins, function (i) {
if (i.createControl) {
h.controlFactories.push(i);
}
});
}
n = h.controlFactories;
for (k = 0, g = n.length; k < g; k++) {
o = n[k].createControl(j, h);
if (o) {
return h.add(o);
}
}
if (j === "|" || j === "separator") {
return h.createSeparator();
}
if (m.buttons && (o = m.buttons[j])) {
return h.createButton(j, o);
}
return h.add(o);
},
createDropMenu: function (f, n, h) {
var m = this,
i = m.editor,
j,
g,
k,
l;
n = e({ class: "mceDropDown", constrain: i.settings.constrain_menus }, n);
n["class"] = n["class"] + " " + i.getParam("skin") + "Skin";
if ((k = i.getParam("skin_variant"))) {
n["class"] +=
" " +
i.getParam("skin") +
"Skin" +
k.substring(0, 1).toUpperCase() +
k.substring(1);
}
n["class"] += i.settings.directionality == "rtl" ? " mceRtl" : "";
f = m.prefix + f;
l = h || m._cls.dropmenu || c.ui.DropMenu;
j = m.controls[f] = new l(f, n);
j.onAddItem.add(function (r, q) {
var p = q.settings;
p.title = i.getLang(p.title, p.title);
if (!p.onclick) {
p.onclick = function (o) {
if (p.cmd) {
i.execCommand(p.cmd, p.ui || false, p.value);
}
};
}
});
i.onRemove.add(function () {
j.destroy();
});
if (c.isIE) {
j.onShowMenu.add(function () {
i.focus();
g = i.selection.getBookmark(1);
});
j.onHideMenu.add(function () {
if (g) {
i.selection.moveToBookmark(g);
g = 0;
}
});
}
return m.add(j);
},
createListBox: function (f, n, h) {
var l = this,
j = l.editor,
i,
k,
m;
if (l.get(f)) {
return null;
}
n.title = j.translate(n.title);
n.scope = n.scope || j;
if (!n.onselect) {
n.onselect = function (o) {
j.execCommand(n.cmd, n.ui || false, o || n.value);
};
}
n = e(
{
title: n.title,
class: "mce_" + f,
scope: n.scope,
control_manager: l,
},
n,
);
f = l.prefix + f;
function g(o) {
return o.settings.use_accessible_selects && !c.isGecko;
}
if (j.settings.use_native_selects || g(j)) {
k = new c.ui.NativeListBox(f, n);
} else {
m = h || l._cls.listbox || c.ui.ListBox;
k = new m(f, n, j);
}
l.controls[f] = k;
if (c.isWebKit) {
k.onPostRender.add(function (p, o) {
a.add(o, "mousedown", function () {
j.bookmark = j.selection.getBookmark(1);
});
a.add(o, "focus", function () {
j.selection.moveToBookmark(j.bookmark);
j.bookmark = null;
});
});
}
if (k.hideMenu) {
j.onMouseDown.add(k.hideMenu, k);
}
return l.add(k);
},
createButton: function (m, i, l) {
var h = this,
g = h.editor,
j,
k,
f;
if (h.get(m)) {
return null;
}
i.title = g.translate(i.title);
i.label = g.translate(i.label);
i.scope = i.scope || g;
if (!i.onclick && !i.menu_button) {
i.onclick = function () {
g.execCommand(i.cmd, i.ui || false, i.value);
};
}
i = e(
{
title: i.title,
class: "mce_" + m,
unavailable_prefix: g.getLang("unavailable", ""),
scope: i.scope,
control_manager: h,
},
i,
);
m = h.prefix + m;
if (i.menu_button) {
f = l || h._cls.menubutton || c.ui.MenuButton;
k = new f(m, i, g);
g.onMouseDown.add(k.hideMenu, k);
} else {
f = h._cls.button || c.ui.Button;
k = new f(m, i, g);
}
return h.add(k);
},
createMenuButton: function (h, f, g) {
f = f || {};
f.menu_button = 1;
return this.createButton(h, f, g);
},
createSplitButton: function (m, i, l) {
var h = this,
g = h.editor,
j,
k,
f;
if (h.get(m)) {
return null;
}
i.title = g.translate(i.title);
i.scope = i.scope || g;
if (!i.onclick) {
i.onclick = function (n) {
g.execCommand(i.cmd, i.ui || false, n || i.value);
};
}
if (!i.onselect) {
i.onselect = function (n) {
g.execCommand(i.cmd, i.ui || false, n || i.value);
};
}
i = e(
{
title: i.title,
class: "mce_" + m,
scope: i.scope,
control_manager: h,
},
i,
);
m = h.prefix + m;
f = l || h._cls.splitbutton || c.ui.SplitButton;
k = h.add(new f(m, i, g));
g.onMouseDown.add(k.hideMenu, k);
return k;
},
createColorSplitButton: function (f, n, h) {
var l = this,
j = l.editor,
i,
k,
m,
g;
if (l.get(f)) {
return null;
}
n.title = j.translate(n.title);
n.scope = n.scope || j;
if (!n.onclick) {
n.onclick = function (o) {
if (c.isIE) {
g = j.selection.getBookmark(1);
}
j.execCommand(n.cmd, n.ui || false, o || n.value);
};
}
if (!n.onselect) {
n.onselect = function (o) {
j.execCommand(n.cmd, n.ui || false, o || n.value);
};
}
n = e(
{
title: n.title,
class: "mce_" + f,
menu_class: j.getParam("skin") + "Skin",
scope: n.scope,
more_colors_title: j.getLang("more_colors"),
},
n,
);
f = l.prefix + f;
m = h || l._cls.colorsplitbutton || c.ui.ColorSplitButton;
k = new m(f, n, j);
j.onMouseDown.add(k.hideMenu, k);
j.onRemove.add(function () {
k.destroy();
});
if (c.isIE) {
k.onShowMenu.add(function () {
j.focus();
g = j.selection.getBookmark(1);
});
k.onHideMenu.add(function () {
if (g) {
j.selection.moveToBookmark(g);
g = 0;
}
});
}
return l.add(k);
},
createToolbar: function (k, h, j) {
var i,
g = this,
f;
k = g.prefix + k;
f = j || g._cls.toolbar || c.ui.Toolbar;
i = new f(k, h, g.editor);
if (g.get(k)) {
return null;
}
return g.add(i);
},
createToolbarGroup: function (k, h, j) {
var i,
g = this,
f;
k = g.prefix + k;
f = j || this._cls.toolbarGroup || c.ui.ToolbarGroup;
i = new f(k, h, g.editor);
if (g.get(k)) {
return null;
}
return g.add(i);
},
createSeparator: function (g) {
var f = g || this._cls.separator || c.ui.Separator;
return new f();
},
setControlType: function (g, f) {
return (this._cls[g.toLowerCase()] = f);
},
destroy: function () {
d(this.controls, function (f) {
f.destroy();
});
this.controls = null;
},
});
})(tinymce);
(function (d) {
var a = d.util.Dispatcher,
e = d.each,
c = d.isIE,
b = d.isOpera;
d.create("tinymce.WindowManager", {
WindowManager: function (f) {
var g = this;
g.editor = f;
g.onOpen = new a(g);
g.onClose = new a(g);
g.params = {};
g.features = {};
},
open: function (z, h) {
var v = this,
k = "",
n,
m,
i = v.editor.settings.dialog_type == "modal",
q,
o,
j,
g = d.DOM.getViewPort(),
r;
z = z || {};
h = h || {};
o = b ? g.w : screen.width;
j = b ? g.h : screen.height;
z.name = z.name || "mc_" + new Date().getTime();
z.width = parseInt(z.width || 320);
z.height = parseInt(z.height || 240);
z.resizable = true;
z.left = z.left || parseInt(o / 2) - z.width / 2;
z.top = z.top || parseInt(j / 2) - z.height / 2;
h.inline = false;
h.mce_width = z.width;
h.mce_height = z.height;
h.mce_auto_focus = z.auto_focus;
if (i) {
if (c) {
z.center = true;
z.help = false;
z.dialogWidth = z.width + "px";
z.dialogHeight = z.height + "px";
z.scroll = z.scrollbars || false;
}
}
e(z, function (p, f) {
if (d.is(p, "boolean")) {
p = p ? "yes" : "no";
}
if (!/^(name|url)$/.test(f)) {
if (c && i) {
k += (k ? ";" : "") + f + ":" + p;
} else {
k += (k ? "," : "") + f + "=" + p;
}
}
});
v.features = z;
v.params = h;
v.onOpen.dispatch(v, z, h);
r = z.url || z.file;
r = d._addVer(r);
try {
if (c && i) {
q = 1;
window.showModalDialog(r, window, k);
} else {
q = window.open(r, z.name, k);
}
} catch (l) {}
if (!q) {
alert(v.editor.getLang("popup_blocked"));
}
},
close: function (f) {
f.close();
this.onClose.dispatch(this);
},
createInstance: function (i, h, g, m, l, k) {
var j = d.resolve(i);
return new j(h, g, m, l, k);
},
confirm: function (h, f, i, g) {
g = g || window;
f.call(i || this, g.confirm(this._decode(this.editor.getLang(h, h))));
},
alert: function (h, f, j, g) {
var i = this;
g = g || window;
g.alert(i._decode(i.editor.getLang(h, h)));
if (f) {
f.call(j || i);
}
},
resizeBy: function (f, g, h) {
h.resizeBy(f, g);
},
_decode: function (f) {
return d.DOM.decode(f).replace(/\\n/g, "\n");
},
});
})(tinymce);
(function (a) {
a.Formatter = function (aa) {
var Q = {},
T = a.each,
c = aa.dom,
r = aa.selection,
t = a.dom.TreeWalker,
N = new a.dom.RangeUtils(c),
d = aa.schema.isValidChild,
A = a.isArray,
H = c.isBlock,
m = aa.settings.forced_root_block,
s = c.nodeIndex,
G = "\uFEFF",
e = /^(src|href|style)$/,
X = false,
C = true,
P,
D,
x = c.getContentEditable;
function I(ab) {
return !!aa.schema.getTextBlocks()[ab.toLowerCase()];
}
function n(ac, ab) {
return c.getParents(ac, ab, c.getRoot());
}
function b(ab) {
return ab.nodeType === 1 && ab.id === "_mce_caret";
}
function j() {
l({
alignleft: [
{
selector: "figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",
styles: { textAlign: "left" },
defaultBlock: "div",
},
{
selector: "img,table",
collapsed: false,
styles: { float: "left" },
},
],
aligncenter: [
{
selector: "figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",
styles: { textAlign: "center" },
defaultBlock: "div",
},
{
selector: "img",
collapsed: false,
styles: {
display: "block",
marginLeft: "auto",
marginRight: "auto",
},
},
{
selector: "table",
collapsed: false,
styles: { marginLeft: "auto", marginRight: "auto" },
},
],
alignright: [
{
selector: "figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",
styles: { textAlign: "right" },
defaultBlock: "div",
},
{
selector: "img,table",
collapsed: false,
styles: { float: "right" },
},
],
alignfull: [
{
selector: "figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",
styles: { textAlign: "justify" },
defaultBlock: "div",
},
],
bold: [
{ inline: "strong", remove: "all" },
{ inline: "span", styles: { fontWeight: "bold" } },
{ inline: "b", remove: "all" },
],
italic: [
{ inline: "em", remove: "all" },
{ inline: "span", styles: { fontStyle: "italic" } },
{ inline: "i", remove: "all" },
],
underline: [
{
inline: "span",
styles: { textDecoration: "underline" },
exact: true,
},
{ inline: "u", remove: "all" },
],
strikethrough: [
{
inline: "span",
styles: { textDecoration: "line-through" },
exact: true,
},
{ inline: "strike", remove: "all" },
],
forecolor: {
inline: "span",
styles: { color: "%value" },
wrap_links: false,
},
hilitecolor: {
inline: "span",
styles: { backgroundColor: "%value" },
wrap_links: false,
},
fontname: { inline: "span", styles: { fontFamily: "%value" } },
fontsize: { inline: "span", styles: { fontSize: "%value" } },
fontsize_class: { inline: "span", attributes: { class: "%value" } },
blockquote: { block: "blockquote", wrapper: 1, remove: "all" },
subscript: { inline: "sub" },
superscript: { inline: "sup" },
link: {
inline: "a",
selector: "a",
remove: "all",
split: true,
deep: true,
onmatch: function (ab) {
return true;
},
onformat: function (ad, ab, ac) {
T(ac, function (af, ae) {
c.setAttrib(ad, ae, af);
});
},
},
removeformat: [
{
selector: "b,strong,em,i,font,u,strike",
remove: "all",
split: true,
expand: false,
block_expand: true,
deep: true,
},
{
selector: "span",
attributes: ["style", "class"],
remove: "empty",
split: true,
expand: false,
deep: true,
},
{
selector: "*",
attributes: ["style", "class"],
split: false,
expand: false,
deep: true,
},
],
});
T(
"p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp".split(/\s/),
function (ab) {
l(ab, { block: ab, remove: "all" });
},
);
l(aa.settings.formats);
}
function W() {
aa.addShortcut("ctrl+b", "bold_desc", "Bold");
aa.addShortcut("ctrl+i", "italic_desc", "Italic");
aa.addShortcut("ctrl+u", "underline_desc", "Underline");
for (var ab = 1; ab <= 6; ab++) {
aa.addShortcut("ctrl+" + ab, "", ["FormatBlock", false, "h" + ab]);
}
aa.addShortcut("ctrl+7", "", ["FormatBlock", false, "p"]);
aa.addShortcut("ctrl+8", "", ["FormatBlock", false, "div"]);
aa.addShortcut("ctrl+9", "", ["FormatBlock", false, "address"]);
}
function V(ab) {
return ab ? Q[ab] : Q;
}
function l(ab, ac) {
if (ab) {
if (typeof ab !== "string") {
T(ab, function (ae, ad) {
l(ad, ae);
});
} else {
ac = ac.length ? ac : [ac];
T(ac, function (ad) {
if (ad.deep === D) {
ad.deep = !ad.selector;
}
if (ad.split === D) {
ad.split = !ad.selector || ad.inline;
}
if (ad.remove === D && ad.selector && !ad.inline) {
ad.remove = "none";
}
if (ad.selector && ad.inline) {
ad.mixed = true;
ad.block_expand = true;
}
if (typeof ad.classes === "string") {
ad.classes = ad.classes.split(/\s+/);
}
});
Q[ab] = ac;
}
}
}
var i = function (ac) {
var ab;
aa.dom.getParent(ac, function (ad) {
ab = aa.dom.getStyle(ad, "text-decoration");
return ab && ab !== "none";
});
return ab;
};
var L = function (ab) {
var ac;
if (ab.nodeType === 1 && ab.parentNode && ab.parentNode.nodeType === 1) {
ac = i(ab.parentNode);
if (aa.dom.getStyle(ab, "color") && ac) {
aa.dom.setStyle(ab, "text-decoration", ac);
} else {
if (aa.dom.getStyle(ab, "textdecoration") === ac) {
aa.dom.setStyle(ab, "text-decoration", null);
}
}
}
};
function Y(ae, al, ag) {
var ah = V(ae),
am = ah[0],
ak,
ac,
aj,
ai = r.isCollapsed();
function ab(aq, ap) {
ap = ap || am;
if (aq) {
if (ap.onformat) {
ap.onformat(aq, ap, al, ag);
}
T(ap.styles, function (at, ar) {
c.setStyle(aq, ar, q(at, al));
});
T(ap.attributes, function (at, ar) {
c.setAttrib(aq, ar, q(at, al));
});
T(ap.classes, function (ar) {
ar = q(ar, al);
if (!c.hasClass(aq, ar)) {
c.addClass(aq, ar);
}
});
}
}
function af() {
function ar(ay, aw) {
var ax = new t(aw);
for (ag = ax.current(); ag; ag = ax.prev()) {
if (ag.childNodes.length > 1 || ag == ay || ag.tagName == "BR") {
return ag;
}
}
}
var aq = aa.selection.getRng();
var av = aq.startContainer;
var ap = aq.endContainer;
if (av != ap && aq.endOffset === 0) {
var au = ar(av, ap);
var at = au.nodeType == 3 ? au.length : au.childNodes.length;
aq.setEnd(au, at);
}
return aq;
}
function ad(at, ay, aw, av, aq) {
var ap = [],
ar = -1,
ax,
aA = -1,
au = -1,
az;
T(at.childNodes, function (aC, aB) {
if (aC.nodeName === "UL" || aC.nodeName === "OL") {
ar = aB;
ax = aC;
return false;
}
});
T(at.childNodes, function (aC, aB) {
if (
aC.nodeName === "SPAN" &&
c.getAttrib(aC, "data-mce-type") == "bookmark"
) {
if (aC.id == ay.id + "_start") {
aA = aB;
} else {
if (aC.id == ay.id + "_end") {
au = aB;
}
}
}
});
if (ar <= 0 || (aA < ar && au > ar)) {
T(a.grep(at.childNodes), aq);
return 0;
} else {
az = c.clone(aw, X);
T(a.grep(at.childNodes), function (aC, aB) {
if ((aA < ar && aB < ar) || (aA > ar && aB > ar)) {
ap.push(aC);
aC.parentNode.removeChild(aC);
}
});
if (aA < ar) {
at.insertBefore(az, ax);
} else {
if (aA > ar) {
at.insertBefore(az, ax.nextSibling);
}
}
av.push(az);
T(ap, function (aB) {
az.appendChild(aB);
});
return az;
}
}
function an(aq, at, aw) {
var ap = [],
av,
ar,
au = true;
av = am.inline || am.block;
ar = c.create(av);
ab(ar);
N.walk(aq, function (ax) {
var ay;
function az(aA) {
var aF, aD, aB, aC, aE;
aE = au;
aF = aA.nodeName.toLowerCase();
aD = aA.parentNode.nodeName.toLowerCase();
if (aA.nodeType === 1 && x(aA)) {
aE = au;
au = x(aA) === "true";
aC = true;
}
if (g(aF, "br")) {
ay = 0;
if (am.block) {
c.remove(aA);
}
return;
}
if (am.wrapper && y(aA, ae, al)) {
ay = 0;
return;
}
if (au && !aC && am.block && !am.wrapper && I(aF)) {
aA = c.rename(aA, av);
ab(aA);
ap.push(aA);
ay = 0;
return;
}
if (am.selector) {
T(ah, function (aG) {
if ("collapsed" in aG && aG.collapsed !== ai) {
return;
}
if (c.is(aA, aG.selector) && !b(aA)) {
ab(aA, aG);
aB = true;
}
});
if (!am.inline || aB) {
ay = 0;
return;
}
}
if (
au &&
!aC &&
d(av, aF) &&
d(aD, av) &&
!(
!aw &&
aA.nodeType === 3 &&
aA.nodeValue.length === 1 &&
aA.nodeValue.charCodeAt(0) === 65279
) &&
!b(aA)
) {
if (!ay) {
ay = c.clone(ar, X);
aA.parentNode.insertBefore(ay, aA);
ap.push(ay);
}
ay.appendChild(aA);
} else {
if (aF == "li" && at) {
ay = ad(aA, at, ar, ap, az);
} else {
ay = 0;
T(a.grep(aA.childNodes), az);
if (aC) {
au = aE;
}
ay = 0;
}
}
}
T(ax, az);
});
if (am.wrap_links === false) {
T(ap, function (ax) {
function ay(aC) {
var aB, aA, az;
if (aC.nodeName === "A") {
aA = c.clone(ar, X);
ap.push(aA);
az = a.grep(aC.childNodes);
for (aB = 0; aB < az.length; aB++) {
aA.appendChild(az[aB]);
}
aC.appendChild(aA);
}
T(a.grep(aC.childNodes), ay);
}
ay(ax);
});
}
T(ap, function (az) {
var ax;
function aA(aC) {
var aB = 0;
T(aC.childNodes, function (aD) {
if (!f(aD) && !K(aD)) {
aB++;
}
});
return aB;
}
function ay(aB) {
var aD, aC;
T(aB.childNodes, function (aE) {
if (aE.nodeType == 1 && !K(aE) && !b(aE)) {
aD = aE;
return X;
}
});
if (aD && h(aD, am)) {
aC = c.clone(aD, X);
ab(aC);
c.replace(aC, aB, C);
c.remove(aD, 1);
}
return aC || aB;
}
ax = aA(az);
if ((ap.length > 1 || !H(az)) && ax === 0) {
c.remove(az, 1);
return;
}
if (am.inline || am.wrapper) {
if (!am.exact && ax === 1) {
az = ay(az);
}
T(ah, function (aB) {
T(c.select(aB.inline, az), function (aD) {
var aC;
if (aB.wrap_links === false) {
aC = aD.parentNode;
do {
if (aC.nodeName === "A") {
return;
}
} while ((aC = aC.parentNode));
}
Z(aB, al, aD, aB.exact ? aD : null);
});
});
if (y(az.parentNode, ae, al)) {
c.remove(az, 1);
az = 0;
return C;
}
if (am.merge_with_parents) {
c.getParent(az.parentNode, function (aB) {
if (y(aB, ae, al)) {
c.remove(az, 1);
az = 0;
return C;
}
});
}
if (az && am.merge_siblings !== false) {
az = u(E(az), az);
az = u(az, E(az, C));
}
}
});
}
if (am) {
if (ag) {
if (ag.nodeType) {
ac = c.createRng();
ac.setStartBefore(ag);
ac.setEndAfter(ag);
an(p(ac, ah), null, true);
} else {
an(ag, null, true);
}
} else {
if (
!ai ||
!am.inline ||
c.select("td.mceSelected,th.mceSelected").length
) {
var ao = aa.selection.getNode();
if (!m && ah[0].defaultBlock && !c.getParent(ao, c.isBlock)) {
Y(ah[0].defaultBlock);
}
aa.selection.setRng(af());
ak = r.getBookmark();
an(p(r.getRng(C), ah), ak);
if (am.styles && (am.styles.color || am.styles.textDecoration)) {
a.walk(ao, L, "childNodes");
L(ao);
}
r.moveToBookmark(ak);
R(r.getRng(C));
aa.nodeChanged();
} else {
U("apply", ae, al);
}
}
}
}
function B(ad, am, af) {
var ag = V(ad),
ao = ag[0],
ak,
aj,
ac,
al = true;
function ae(av) {
var au, at, ar, aq, ax, aw;
if (av.nodeType === 3) {
return;
}
if (av.nodeType === 1 && x(av)) {
ax = al;
al = x(av) === "true";
aw = true;
}
au = a.grep(av.childNodes);
if (al && !aw) {
for (at = 0, ar = ag.length; at < ar; at++) {
if (Z(ag[at], am, av, av)) {
break;
}
}
}
if (ao.deep) {
if (au.length) {
for (at = 0, ar = au.length; at < ar; at++) {
ae(au[at]);
}
if (aw) {
al = ax;
}
}
}
}
function ah(aq) {
var ar;
T(n(aq.parentNode).reverse(), function (at) {
var au;
if (!ar && at.id != "_start" && at.id != "_end") {
au = y(at, ad, am);
if (au && au.split !== false) {
ar = at;
}
}
});
return ar;
}
function ab(au, aq, aw, az) {
var aA, ay, ax, at, av, ar;
if (au) {
ar = au.parentNode;
for (aA = aq.parentNode; aA && aA != ar; aA = aA.parentNode) {
ay = c.clone(aA, X);
for (av = 0; av < ag.length; av++) {
if (Z(ag[av], am, ay, ay)) {
ay = 0;
break;
}
}
if (ay) {
if (ax) {
ay.appendChild(ax);
}
if (!at) {
at = ay;
}
ax = ay;
}
}
if (az && (!ao.mixed || !H(au))) {
aq = c.split(au, aq);
}
if (ax) {
aw.parentNode.insertBefore(ax, aw);
at.appendChild(aw);
}
}
return aq;
}
function an(aq) {
return ab(ah(aq), aq, aq, true);
}
function ai(at) {
var ar = c.get(at ? "_start" : "_end"),
aq = ar[at ? "firstChild" : "lastChild"];
if (K(aq)) {
aq = aq[at ? "firstChild" : "lastChild"];
}
c.remove(ar, true);
return aq;
}
function ap(aq) {
var at, au, ar;
aq = p(aq, ag, C);
if (ao.split) {
at = M(aq, C);
au = M(aq);
if (at != au) {
if (/^(TR|TD)$/.test(at.nodeName) && at.firstChild) {
at =
(at.nodeName == "TD"
? at.firstChild
: at.firstChild.firstChild) || at;
}
at = S(at, "span", { id: "_start", "data-mce-type": "bookmark" });
au = S(au, "span", { id: "_end", "data-mce-type": "bookmark" });
an(at);
an(au);
at = ai(C);
au = ai();
} else {
at = au = an(at);
}
aq.startContainer = at.parentNode;
aq.startOffset = s(at);
aq.endContainer = au.parentNode;
aq.endOffset = s(au) + 1;
}
N.walk(aq, function (av) {
T(av, function (aw) {
ae(aw);
if (
aw.nodeType === 1 &&
aa.dom.getStyle(aw, "text-decoration") === "underline" &&
aw.parentNode &&
i(aw.parentNode) === "underline"
) {
Z(
{
deep: false,
exact: true,
inline: "span",
styles: { textDecoration: "underline" },
},
null,
aw,
);
}
});
});
}
if (af) {
if (af.nodeType) {
ac = c.createRng();
ac.setStartBefore(af);
ac.setEndAfter(af);
ap(ac);
} else {
ap(af);
}
return;
}
if (
!r.isCollapsed() ||
!ao.inline ||
c.select("td.mceSelected,th.mceSelected").length
) {
ak = r.getBookmark();
ap(r.getRng(C));
r.moveToBookmark(ak);
if (ao.inline && k(ad, am, r.getStart())) {
R(r.getRng(true));
}
aa.nodeChanged();
} else {
U("remove", ad, am);
}
}
function F(ac, ae, ad) {
var ab = V(ac);
if (k(ac, ae, ad) && (!("toggle" in ab[0]) || ab[0].toggle)) {
B(ac, ae, ad);
} else {
Y(ac, ae, ad);
}
}
function y(ac, ab, ah, af) {
var ad = V(ab),
ai,
ag,
ae;
function aj(an, ap, aq) {
var am,
ao,
ak = ap[aq],
al;
if (ap.onmatch) {
return ap.onmatch(an, ap, aq);
}
if (ak) {
if (ak.length === D) {
for (am in ak) {
if (ak.hasOwnProperty(am)) {
if (aq === "attributes") {
ao = c.getAttrib(an, am);
} else {
ao = O(an, am);
}
if (af && !ao && !ap.exact) {
return;
}
if ((!af || ap.exact) && !g(ao, q(ak[am], ah))) {
return;
}
}
}
} else {
for (al = 0; al < ak.length; al++) {
if (
aq === "attributes" ? c.getAttrib(an, ak[al]) : O(an, ak[al])
) {
return ap;
}
}
}
}
return ap;
}
if (ad && ac) {
for (ag = 0; ag < ad.length; ag++) {
ai = ad[ag];
if (h(ac, ai) && aj(ac, ai, "attributes") && aj(ac, ai, "styles")) {
if ((ae = ai.classes)) {
for (ag = 0; ag < ae.length; ag++) {
if (!c.hasClass(ac, ae[ag])) {
return;
}
}
}
return ai;
}
}
}
}
function k(ad, af, ae) {
var ac;
function ab(ag) {
ag = c.getParent(ag, function (ah) {
return !!y(ah, ad, af, true);
});
return y(ag, ad, af);
}
if (ae) {
return ab(ae);
}
ae = r.getNode();
if (ab(ae)) {
return C;
}
ac = r.getStart();
if (ac != ae) {
if (ab(ac)) {
return C;
}
}
return X;
}
function v(ai, ah) {
var af,
ag = [],
ae = {},
ad,
ac,
ab;
af = r.getStart();
c.getParent(
af,
function (al) {
var ak, aj;
for (ak = 0; ak < ai.length; ak++) {
aj = ai[ak];
if (!ae[aj] && y(al, aj, ah)) {
ae[aj] = true;
ag.push(aj);
}
}
},
c.getRoot(),
);
return ag;
}
function z(af) {
var ah = V(af),
ae,
ad,
ag,
ac,
ab;
if (ah) {
ae = r.getStart();
ad = n(ae);
for (ac = ah.length - 1; ac >= 0; ac--) {
ab = ah[ac].selector;
if (!ab) {
return C;
}
for (ag = ad.length - 1; ag >= 0; ag--) {
if (c.is(ad[ag], ab)) {
return C;
}
}
}
}
return X;
}
function J(ab, ae, ac) {
var ad;
if (!P) {
P = {};
ad = {};
aa.onNodeChange.addToTop(function (ag, af, ai) {
var ah = n(ai),
aj = {};
T(P, function (ak, al) {
T(ah, function (am) {
if (y(am, al, {}, ak.similar)) {
if (!ad[al]) {
T(ak, function (an) {
an(true, { node: am, format: al, parents: ah });
});
ad[al] = ak;
}
aj[al] = ak;
return false;
}
});
});
T(ad, function (ak, al) {
if (!aj[al]) {
delete ad[al];
T(ak, function (am) {
am(false, { node: ai, format: al, parents: ah });
});
}
});
});
}
T(ab.split(","), function (af) {
if (!P[af]) {
P[af] = [];
P[af].similar = ac;
}
P[af].push(ae);
});
return this;
}
a.extend(this, {
get: V,
register: l,
apply: Y,
remove: B,
toggle: F,
match: k,
matchAll: v,
matchNode: y,
canApply: z,
formatChanged: J,
});
j();
W();
function h(ab, ac) {
if (g(ab, ac.inline)) {
return C;
}
if (g(ab, ac.block)) {
return C;
}
if (ac.selector) {
return c.is(ab, ac.selector);
}
}
function g(ac, ab) {
ac = ac || "";
ab = ab || "";
ac = "" + (ac.nodeName || ac);
ab = "" + (ab.nodeName || ab);
return ac.toLowerCase() == ab.toLowerCase();
}
function O(ac, ab) {
var ad = c.getStyle(ac, ab);
if (ab == "color" || ab == "backgroundColor") {
ad = c.toHex(ad);
}
if (ab == "fontWeight" && ad == 700) {
ad = "bold";
}
return "" + ad;
}
function q(ab, ac) {
if (typeof ab != "string") {
ab = ab(ac);
} else {
if (ac) {
ab = ab.replace(/%(\w+)/g, function (ae, ad) {
return ac[ad] || ae;
});
}
}
return ab;
}
function f(ab) {
return ab && ab.nodeType === 3 && /^([\t \r\n]+|)$/.test(ab.nodeValue);
}
function S(ad, ac, ab) {
var ae = c.create(ac, ab);
ad.parentNode.insertBefore(ae, ad);
ae.appendChild(ad);
return ae;
}
function p(ab, am, ae) {
var ap,
an,
ah,
al,
ad = ab.startContainer,
ai = ab.startOffset,
ar = ab.endContainer,
ak = ab.endOffset;
function ao(aA) {
var au, ax, az, aw, av, at;
au = ax = aA ? ad : ar;
av = aA ? "previousSibling" : "nextSibling";
at = c.getRoot();
function ay(aB) {
return (
aB.nodeName == "BR" &&
aB.getAttribute("data-mce-bogus") &&
!aB.nextSibling
);
}
if (au.nodeType == 3 && !f(au)) {
if (aA ? ai > 0 : ak < au.nodeValue.length) {
return au;
}
}
for (;;) {
if (!am[0].block_expand && H(ax)) {
return ax;
}
for (aw = ax[av]; aw; aw = aw[av]) {
if (!K(aw) && !f(aw) && !ay(aw)) {
return ax;
}
}
if (ax.parentNode == at) {
au = ax;
break;
}
ax = ax.parentNode;
}
return au;
}
function ag(at, au) {
if (au === D) {
au = at.nodeType === 3 ? at.length : at.childNodes.length;
}
while (at && at.hasChildNodes()) {
at = at.childNodes[au];
if (at) {
au = at.nodeType === 3 ? at.length : at.childNodes.length;
}
}
return { node: at, offset: au };
}
if (ad.nodeType == 1 && ad.hasChildNodes()) {
an = ad.childNodes.length - 1;
ad = ad.childNodes[ai > an ? an : ai];
if (ad.nodeType == 3) {
ai = 0;
}
}
if (ar.nodeType == 1 && ar.hasChildNodes()) {
an = ar.childNodes.length - 1;
ar = ar.childNodes[ak > an ? an : ak - 1];
if (ar.nodeType == 3) {
ak = ar.nodeValue.length;
}
}
function aq(au) {
var at = au;
while (at) {
if (at.nodeType === 1 && x(at)) {
return x(at) === "false" ? at : au;
}
at = at.parentNode;
}
return au;
}
function aj(au, ay, aA) {
var ax, av, az, at;
function aw(aC, aE) {
var aF,
aB,
aD = aC.nodeValue;
if (typeof aE == "undefined") {
aE = aA ? aD.length : 0;
}
if (aA) {
aF = aD.lastIndexOf(" ", aE);
aB = aD.lastIndexOf("\u00a0", aE);
aF = aF > aB ? aF : aB;
if (aF !== -1 && !ae) {
aF++;
}
} else {
aF = aD.indexOf(" ", aE);
aB = aD.indexOf("\u00a0", aE);
aF = aF !== -1 && (aB === -1 || aF < aB) ? aF : aB;
}
return aF;
}
if (au.nodeType === 3) {
az = aw(au, ay);
if (az !== -1) {
return { container: au, offset: az };
}
at = au;
}
ax = new t(au, c.getParent(au, H) || aa.getBody());
while ((av = ax[aA ? "prev" : "next"]())) {
if (av.nodeType === 3) {
at = av;
az = aw(av);
if (az !== -1) {
return { container: av, offset: az };
}
} else {
if (H(av)) {
break;
}
}
}
if (at) {
if (aA) {
ay = 0;
} else {
ay = at.length;
}
return { container: at, offset: ay };
}
}
function af(au, at) {
var av, aw, ay, ax;
if (au.nodeType == 3 && au.nodeValue.length === 0 && au[at]) {
au = au[at];
}
av = n(au);
for (aw = 0; aw < av.length; aw++) {
for (ay = 0; ay < am.length; ay++) {
ax = am[ay];
if ("collapsed" in ax && ax.collapsed !== ab.collapsed) {
continue;
}
if (c.is(av[aw], ax.selector)) {
return av[aw];
}
}
}
return au;
}
function ac(au, at, aw) {
var av;
if (!am[0].wrapper) {
av = c.getParent(au, am[0].block);
}
if (!av) {
av = c.getParent(au.nodeType == 3 ? au.parentNode : au, I);
}
if (av && am[0].wrapper) {
av = n(av, "ul,ol").reverse()[0] || av;
}
if (!av) {
av = au;
while (av[at] && !H(av[at])) {
av = av[at];
if (g(av, "br")) {
break;
}
}
}
return av || au;
}
ad = aq(ad);
ar = aq(ar);
if (K(ad.parentNode) || K(ad)) {
ad = K(ad) ? ad : ad.parentNode;
ad = ad.nextSibling || ad;
if (ad.nodeType == 3) {
ai = 0;
}
}
if (K(ar.parentNode) || K(ar)) {
ar = K(ar) ? ar : ar.parentNode;
ar = ar.previousSibling || ar;
if (ar.nodeType == 3) {
ak = ar.length;
}
}
if (am[0].inline) {
if (ab.collapsed) {
al = aj(ad, ai, true);
if (al) {
ad = al.container;
ai = al.offset;
}
al = aj(ar, ak);
if (al) {
ar = al.container;
ak = al.offset;
}
}
ah = ag(ar, ak);
if (ah.node) {
while (ah.node && ah.offset === 0 && ah.node.previousSibling) {
ah = ag(ah.node.previousSibling);
}
if (
ah.node &&
ah.offset > 0 &&
ah.node.nodeType === 3 &&
ah.node.nodeValue.charAt(ah.offset - 1) === " "
) {
if (ah.offset > 1) {
ar = ah.node;
ar.splitText(ah.offset - 1);
}
}
}
}
if (am[0].inline || am[0].block_expand) {
if (!am[0].inline || ad.nodeType != 3 || ai === 0) {
ad = ao(true);
}
if (!am[0].inline || ar.nodeType != 3 || ak === ar.nodeValue.length) {
ar = ao();
}
}
if (am[0].selector && am[0].expand !== X && !am[0].inline) {
ad = af(ad, "previousSibling");
ar = af(ar, "nextSibling");
}
if (am[0].block || am[0].selector) {
ad = ac(ad, "previousSibling");
ar = ac(ar, "nextSibling");
if (am[0].block) {
if (!H(ad)) {
ad = ao(true);
}
if (!H(ar)) {
ar = ao();
}
}
}
if (ad.nodeType == 1) {
ai = s(ad);
ad = ad.parentNode;
}
if (ar.nodeType == 1) {
ak = s(ar) + 1;
ar = ar.parentNode;
}
return {
startContainer: ad,
startOffset: ai,
endContainer: ar,
endOffset: ak,
};
}
function Z(ah, ag, ae, ab) {
var ad, ac, af;
if (!h(ae, ah)) {
return X;
}
if (ah.remove != "all") {
T(ah.styles, function (aj, ai) {
aj = q(aj, ag);
if (typeof ai === "number") {
ai = aj;
ab = 0;
}
if (!ab || g(O(ab, ai), aj)) {
c.setStyle(ae, ai, "");
}
af = 1;
});
if (af && c.getAttrib(ae, "style") == "") {
ae.removeAttribute("style");
ae.removeAttribute("data-mce-style");
}
T(ah.attributes, function (ak, ai) {
var aj;
ak = q(ak, ag);
if (typeof ai === "number") {
ai = ak;
ab = 0;
}
if (!ab || g(c.getAttrib(ab, ai), ak)) {
if (ai == "class") {
ak = c.getAttrib(ae, ai);
if (ak) {
aj = "";
T(ak.split(/\s+/), function (al) {
if (/mce\w+/.test(al)) {
aj += (aj ? " " : "") + al;
}
});
if (aj) {
c.setAttrib(ae, ai, aj);
return;
}
}
}
if (ai == "class") {
ae.removeAttribute("className");
}
if (e.test(ai)) {
ae.removeAttribute("data-mce-" + ai);
}
ae.removeAttribute(ai);
}
});
T(ah.classes, function (ai) {
ai = q(ai, ag);
if (!ab || c.hasClass(ab, ai)) {
c.removeClass(ae, ai);
}
});
ac = c.getAttribs(ae);
for (ad = 0; ad < ac.length; ad++) {
if (ac[ad].nodeName.indexOf("_") !== 0) {
return X;
}
}
}
if (ah.remove != "none") {
o(ae, ah);
return C;
}
}
function o(ad, ae) {
var ab = ad.parentNode,
ac;
function af(ah, ag, ai) {
ah = E(ah, ag, ai);
return !ah || ah.nodeName == "BR" || H(ah);
}
if (ae.block) {
if (!m) {
if (H(ad) && !H(ab)) {
if (!af(ad, X) && !af(ad.firstChild, C, 1)) {
ad.insertBefore(c.create("br"), ad.firstChild);
}
if (!af(ad, C) && !af(ad.lastChild, X, 1)) {
ad.appendChild(c.create("br"));
}
}
} else {
if (ab == c.getRoot()) {
if (!ae.list_block || !g(ad, ae.list_block)) {
T(a.grep(ad.childNodes), function (ag) {
if (d(m, ag.nodeName.toLowerCase())) {
if (!ac) {
ac = S(ag, m);
} else {
ac.appendChild(ag);
}
} else {
ac = 0;
}
});
}
}
}
}
if (ae.selector && ae.inline && !g(ae.inline, ad)) {
return;
}
c.remove(ad, 1);
}
function E(ac, ab, ad) {
if (ac) {
ab = ab ? "nextSibling" : "previousSibling";
for (ac = ad ? ac : ac[ab]; ac; ac = ac[ab]) {
if (ac.nodeType == 1 || !f(ac)) {
return ac;
}
}
}
}
function K(ab) {
return (
ab && ab.nodeType == 1 && ab.getAttribute("data-mce-type") == "bookmark"
);
}
function u(af, ae) {
var ab, ad, ac;
function ah(ak, aj) {
if (ak.nodeName != aj.nodeName) {
return X;
}
function ai(am) {
var an = {};
T(c.getAttribs(am), function (ao) {
var ap = ao.nodeName.toLowerCase();
if (ap.indexOf("_") !== 0 && ap !== "style") {
an[ap] = c.getAttrib(am, ap);
}
});
return an;
}
function al(ap, ao) {
var an, am;
for (am in ap) {
if (ap.hasOwnProperty(am)) {
an = ao[am];
if (an === D) {
return X;
}
if (ap[am] != an) {
return X;
}
delete ao[am];
}
}
for (am in ao) {
if (ao.hasOwnProperty(am)) {
return X;
}
}
return C;
}
if (!al(ai(ak), ai(aj))) {
return X;
}
if (
!al(
c.parseStyle(c.getAttrib(ak, "style")),
c.parseStyle(c.getAttrib(aj, "style")),
)
) {
return X;
}
return C;
}
function ag(aj, ai) {
for (ad = aj; ad; ad = ad[ai]) {
if (ad.nodeType == 3 && ad.nodeValue.length !== 0) {
return aj;
}
if (ad.nodeType == 1 && !K(ad)) {
return ad;
}
}
return aj;
}
if (af && ae) {
af = ag(af, "previousSibling");
ae = ag(ae, "nextSibling");
if (ah(af, ae)) {
for (ad = af.nextSibling; ad && ad != ae; ) {
ac = ad;
ad = ad.nextSibling;
af.appendChild(ac);
}
c.remove(ae);
T(a.grep(ae.childNodes), function (ai) {
af.appendChild(ai);
});
return af;
}
}
return ae;
}
function I(ab) {
return /^(h[1-6]|p|div|pre|address|dl|dt|dd)$/.test(ab);
}
function M(ac, ag) {
var ab, af, ad, ae;
ab = ac[ag ? "startContainer" : "endContainer"];
af = ac[ag ? "startOffset" : "endOffset"];
if (ab.nodeType == 1) {
ad = ab.childNodes.length - 1;
if (!ag && af) {
af--;
}
ab = ab.childNodes[af > ad ? ad : af];
}
if (ab.nodeType === 3 && ag && af >= ab.nodeValue.length) {
ab = new t(ab, aa.getBody()).next() || ab;
}
if (ab.nodeType === 3 && !ag && af === 0) {
ab = new t(ab, aa.getBody()).prev() || ab;
}
return ab;
}
function U(ak, ab, ai) {
var al = "_mce_caret",
ac = aa.settings.caret_debug;
function ad(ap) {
var ao = c.create("span", {
id: al,
"data-mce-bogus": true,
style: ac ? "color:red" : "",
});
if (ap) {
ao.appendChild(aa.getDoc().createTextNode(G));
}
return ao;
}
function aj(ap, ao) {
while (ap) {
if (
(ap.nodeType === 3 && ap.nodeValue !== G) ||
ap.childNodes.length > 1
) {
return false;
}
if (ao && ap.nodeType === 1) {
ao.push(ap);
}
ap = ap.firstChild;
}
return true;
}
function ag(ao) {
while (ao) {
if (ao.id === al) {
return ao;
}
ao = ao.parentNode;
}
}
function af(ao) {
var ap;
if (ao) {
ap = new t(ao, ao);
for (ao = ap.current(); ao; ao = ap.next()) {
if (ao.nodeType === 3) {
return ao;
}
}
}
}
function ae(aq, ap) {
var ar, ao;
if (!aq) {
aq = ag(r.getStart());
if (!aq) {
while ((aq = c.get(al))) {
ae(aq, false);
}
}
} else {
ao = r.getRng(true);
if (aj(aq)) {
if (ap !== false) {
ao.setStartBefore(aq);
ao.setEndBefore(aq);
}
c.remove(aq);
} else {
ar = af(aq);
if (ar.nodeValue.charAt(0) === G) {
ar = ar.deleteData(0, 1);
}
c.remove(aq, 1);
}
r.setRng(ao);
}
}
function ah() {
var aq, ao, av, au, ar, ap, at;
aq = r.getRng(true);
au = aq.startOffset;
ap = aq.startContainer;
at = ap.nodeValue;
ao = ag(r.getStart());
if (ao) {
av = af(ao);
}
if (
at &&
au > 0 &&
au < at.length &&
/\w/.test(at.charAt(au)) &&
/\w/.test(at.charAt(au - 1))
) {
ar = r.getBookmark();
aq.collapse(true);
aq = p(aq, V(ab));
aq = N.split(aq);
Y(ab, ai, aq);
r.moveToBookmark(ar);
} else {
if (!ao || av.nodeValue !== G) {
ao = ad(true);
av = ao.firstChild;
aq.insertNode(ao);
au = 1;
Y(ab, ai, ao);
} else {
Y(ab, ai, ao);
}
r.setCursorLocation(av, au);
}
}
function am() {
var ao = r.getRng(true),
ap,
ar,
av,
au,
aq,
ay,
ax = [],
at,
aw;
ap = ao.startContainer;
ar = ao.startOffset;
aq = ap;
if (ap.nodeType == 3) {
if (ar != ap.nodeValue.length || ap.nodeValue === G) {
au = true;
}
aq = aq.parentNode;
}
while (aq) {
if (y(aq, ab, ai)) {
ay = aq;
break;
}
if (aq.nextSibling) {
au = true;
}
ax.push(aq);
aq = aq.parentNode;
}
if (!ay) {
return;
}
if (au) {
av = r.getBookmark();
ao.collapse(true);
ao = p(ao, V(ab), true);
ao = N.split(ao);
B(ab, ai, ao);
r.moveToBookmark(av);
} else {
aw = ad();
aq = aw;
for (at = ax.length - 1; at >= 0; at--) {
aq.appendChild(c.clone(ax[at], false));
aq = aq.firstChild;
}
aq.appendChild(c.doc.createTextNode(G));
aq = aq.firstChild;
c.insertAfter(aw, ay);
r.setCursorLocation(aq, 1);
}
}
function an() {
var ap, ao, aq;
ao = ag(r.getStart());
if (ao && !c.isEmpty(ao)) {
a.walk(
ao,
function (ar) {
if (ar.nodeType == 1 && ar.id !== al && !c.isEmpty(ar)) {
c.setAttrib(ar, "data-mce-bogus", null);
}
},
"childNodes",
);
}
}
if (!self._hasCaretEvents) {
aa.onBeforeGetContent.addToTop(function () {
var ao = [],
ap;
if (aj(ag(r.getStart()), ao)) {
ap = ao.length;
while (ap--) {
c.setAttrib(ao[ap], "data-mce-bogus", "1");
}
}
});
a.each("onMouseUp onKeyUp".split(" "), function (ao) {
aa[ao].addToTop(function () {
ae();
an();
});
});
aa.onKeyDown.addToTop(function (ao, aq) {
var ap = aq.keyCode;
if (ap == 8 || ap == 37 || ap == 39) {
ae(ag(r.getStart()));
}
an();
});
r.onSetContent.add(an);
self._hasCaretEvents = true;
}
if (ak == "apply") {
ah();
} else {
am();
}
}
function R(ac) {
var ab = ac.startContainer,
ai = ac.startOffset,
ae,
ah,
ag,
ad,
af;
if (ab.nodeType == 3 && ai >= ab.nodeValue.length) {
ai = s(ab);
ab = ab.parentNode;
ae = true;
}
if (ab.nodeType == 1) {
ad = ab.childNodes;
ab = ad[Math.min(ai, ad.length - 1)];
ah = new t(ab, c.getParent(ab, c.isBlock));
if (ai > ad.length - 1 || ae) {
ah.next();
}
for (ag = ah.current(); ag; ag = ah.next()) {
if (ag.nodeType == 3 && !f(ag)) {
af = c.create("a", null, G);
ag.parentNode.insertBefore(af, ag);
ac.setStart(ag, 0);
r.setRng(ac);
c.remove(af);
return;
}
}
}
}
};
})(tinymce);
tinymce.onAddEditor.add(function (e, a) {
var d,
h,
g,
c = a.settings;
function b(j, i) {
e.each(i, function (l, k) {
if (l) {
g.setStyle(j, k, l);
}
});
g.rename(j, "span");
}
function f(i, j) {
g = i.dom;
if (c.convert_fonts_to_spans) {
e.each(g.select("font,u,strike", j.node), function (k) {
d[k.nodeName.toLowerCase()](a.dom, k);
});
}
}
if (c.inline_styles) {
h = e.explode(c.font_size_legacy_values);
d = {
font: function (j, i) {
b(i, {
backgroundColor: i.style.backgroundColor,
color: i.color,
fontFamily: i.face,
fontSize: h[parseInt(i.size, 10) - 1],
});
},
u: function (j, i) {
b(i, { textDecoration: "underline" });
},
strike: function (j, i) {
b(i, { textDecoration: "line-through" });
},
};
a.onPreProcess.add(f);
a.onSetContent.add(f);
a.onInit.add(function () {
a.selection.onSetContent.add(f);
});
}
});
(function (b) {
var a = b.dom.TreeWalker;
b.EnterKey = function (f) {
var i = f.dom,
e = f.selection,
d = f.settings,
h = f.undoManager,
c = f.schema.getNonEmptyElements();
function g(A) {
var v = e.getRng(true),
G,
j,
z,
u,
p,
M,
B,
o,
k,
n,
t,
J,
x,
C;
function E(N) {
return (
N &&
i.isBlock(N) &&
!/^(TD|TH|CAPTION|FORM)$/.test(N.nodeName) &&
!/^(fixed|absolute)/i.test(N.style.position) &&
i.getContentEditable(N) !== "true"
);
}
function F(O) {
var N;
if (b.isIE && i.isBlock(O)) {
N = e.getRng();
O.appendChild(i.create("span", null, "\u00a0"));
e.select(O);
O.lastChild.outerHTML = "";
e.setRng(N);
}
}
function y(P) {
var O = P,
Q = [],
N;
while ((O = O.firstChild)) {
if (i.isBlock(O)) {
return;
}
if (O.nodeType == 1 && !c[O.nodeName.toLowerCase()]) {
Q.push(O);
}
}
N = Q.length;
while (N--) {
O = Q[N];
if (
!O.hasChildNodes() ||
(O.firstChild == O.lastChild && O.firstChild.nodeValue === "")
) {
i.remove(O);
} else {
if (O.nodeName == "A" && (O.innerText || O.textContent) === " ") {
i.remove(O);
}
}
}
}
function m(O) {
var T,
R,
N,
U,
S,
Q = O,
P;
N = i.createRng();
if (O.hasChildNodes()) {
T = new a(O, O);
while ((R = T.current())) {
if (R.nodeType == 3) {
N.setStart(R, 0);
N.setEnd(R, 0);
break;
}
if (c[R.nodeName.toLowerCase()]) {
N.setStartBefore(R);
N.setEndBefore(R);
break;
}
Q = R;
R = T.next();
}
if (!R) {
N.setStart(Q, 0);
N.setEnd(Q, 0);
}
} else {
if (O.nodeName == "BR") {
if (O.nextSibling && i.isBlock(O.nextSibling)) {
if (!M || M < 9) {
P = i.create("br");
O.parentNode.insertBefore(P, O);
}
N.setStartBefore(O);
N.setEndBefore(O);
} else {
N.setStartAfter(O);
N.setEndAfter(O);
}
} else {
N.setStart(O, 0);
N.setEnd(O, 0);
}
}
e.setRng(N);
i.remove(P);
S = i.getViewPort(f.getWin());
U = i.getPos(O).y;
if (U < S.y || U + 25 > S.y + S.h) {
f.getWin().scrollTo(0, U < S.y ? U : U - S.h + 25);
}
}
function r(O) {
var P = z,
R,
Q,
N;
R = O || t == "TABLE" ? i.create(O || x) : p.cloneNode(false);
N = R;
if (d.keep_styles !== false) {
do {
if (/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(P.nodeName)) {
if (P.id == "_mce_caret") {
continue;
}
Q = P.cloneNode(false);
i.setAttrib(Q, "id", "");
if (R.hasChildNodes()) {
Q.appendChild(R.firstChild);
R.appendChild(Q);
} else {
N = Q;
R.appendChild(Q);
}
}
} while ((P = P.parentNode));
}
if (!b.isIE) {
N.innerHTML = '
';
}
return R;
}
function q(Q) {
var P, O, N;
if (z.nodeType == 3 && (Q ? u > 0 : u < z.nodeValue.length)) {
return false;
}
if (z.parentNode == p && C && !Q) {
return true;
}
if (Q && z.nodeType == 1 && z == p.firstChild) {
return true;
}
if (
z.nodeName === "TABLE" ||
(z.previousSibling && z.previousSibling.nodeName == "TABLE")
) {
return (C && !Q) || (!C && Q);
}
P = new a(z, p);
if (z.nodeType == 3) {
if (Q && u == 0) {
P.prev();
} else {
if (!Q && u == z.nodeValue.length) {
P.next();
}
}
}
while ((O = P.current())) {
if (O.nodeType === 1) {
if (!O.getAttribute("data-mce-bogus")) {
N = O.nodeName.toLowerCase();
if (c[N] && N !== "br") {
return false;
}
}
} else {
if (O.nodeType === 3 && !/^[ \t\r\n]*$/.test(O.nodeValue)) {
return false;
}
}
if (Q) {
P.prev();
} else {
P.next();
}
}
return true;
}
function l(N, T) {
var U,
S,
P,
R,
Q,
O = x || "P";
S = i.getParent(N, i.isBlock);
if (!S || !E(S)) {
S = S || j;
if (!S.hasChildNodes()) {
U = i.create(O);
S.appendChild(U);
v.setStart(U, 0);
v.setEnd(U, 0);
return U;
}
R = N;
while (R.parentNode != S) {
R = R.parentNode;
}
while (R && !i.isBlock(R)) {
P = R;
R = R.previousSibling;
}
if (P) {
U = i.create(O);
P.parentNode.insertBefore(U, P);
R = P;
while (R && !i.isBlock(R)) {
Q = R.nextSibling;
U.appendChild(R);
R = Q;
}
v.setStart(N, T);
v.setEnd(N, T);
}
}
return N;
}
function H() {
function N(P) {
var O = n[P ? "firstChild" : "lastChild"];
while (O) {
if (O.nodeType == 1) {
break;
}
O = O[P ? "nextSibling" : "previousSibling"];
}
return O === p;
}
o = x ? r(x) : i.create("BR");
if (N(true) && N()) {
i.replace(o, n);
} else {
if (N(true)) {
n.parentNode.insertBefore(o, n);
} else {
if (N()) {
i.insertAfter(o, n);
F(o);
} else {
G = v.cloneRange();
G.setStartAfter(p);
G.setEndAfter(n);
k = G.extractContents();
i.insertAfter(k, n);
i.insertAfter(o, n);
}
}
}
i.remove(p);
m(o);
h.add();
}
function D() {
var O = new a(z, p),
N;
while ((N = O.current())) {
if (N.nodeName == "BR") {
return true;
}
N = O.next();
}
}
function L() {
var P, O, N;
if (z && z.nodeType == 3 && u >= z.nodeValue.length) {
if (!b.isIE && !D()) {
P = i.create("br");
v.insertNode(P);
v.setStartAfter(P);
v.setEndAfter(P);
O = true;
}
}
P = i.create("br");
v.insertNode(P);
if (b.isIE && t == "PRE" && (!M || M < 8)) {
P.parentNode.insertBefore(i.doc.createTextNode("\r"), P);
}
N = i.create("span", {}, " ");
P.parentNode.insertBefore(N, P);
e.scrollIntoView(N);
i.remove(N);
if (!O) {
v.setStartAfter(P);
v.setEndAfter(P);
} else {
v.setStartBefore(P);
v.setEndBefore(P);
}
e.setRng(v);
h.add();
}
function s(N) {
do {
if (N.nodeType === 3) {
N.nodeValue = N.nodeValue.replace(/^[\r\n]+/, "");
}
N = N.firstChild;
} while (N);
}
function K(P) {
var N = i.getRoot(),
O,
Q;
O = P;
while (O !== N && i.getContentEditable(O) !== "false") {
if (i.getContentEditable(O) === "true") {
Q = O;
}
O = O.parentNode;
}
return O !== N ? Q : N;
}
function I(O) {
var N;
if (!b.isIE) {
O.normalize();
N = O.lastChild;
if (!N || /^(left|right)$/gi.test(i.getStyle(N, "float", true))) {
i.add(O, "br");
}
}
}
if (!v.collapsed) {
f.execCommand("Delete");
return;
}
if (A.isDefaultPrevented()) {
return;
}
z = v.startContainer;
u = v.startOffset;
x = (d.force_p_newlines ? "p" : "") || d.forced_root_block;
x = x ? x.toUpperCase() : "";
M = i.doc.documentMode;
B = A.shiftKey;
if (z.nodeType == 1 && z.hasChildNodes()) {
C = u > z.childNodes.length - 1;
z = z.childNodes[Math.min(u, z.childNodes.length - 1)] || z;
if (C && z.nodeType == 3) {
u = z.nodeValue.length;
} else {
u = 0;
}
}
j = K(z);
if (!j) {
return;
}
h.beforeChange();
if (!i.isBlock(j) && j != i.getRoot()) {
if (!x || B) {
L();
}
return;
}
if ((x && !B) || (!x && B)) {
z = l(z, u);
}
p = i.getParent(z, i.isBlock);
n = p ? i.getParent(p.parentNode, i.isBlock) : null;
t = p ? p.nodeName.toUpperCase() : "";
J = n ? n.nodeName.toUpperCase() : "";
if (J == "LI" && !A.ctrlKey) {
p = n;
t = J;
}
if (t == "LI") {
if (!x && B) {
L();
return;
}
if (i.isEmpty(p)) {
if (/^(UL|OL|LI)$/.test(n.parentNode.nodeName)) {
return false;
}
H();
return;
}
}
if (t == "PRE" && d.br_in_pre !== false) {
if (!B) {
L();
return;
}
} else {
if ((!x && !B && t != "LI") || (x && B)) {
L();
return;
}
}
x = x || "P";
if (q()) {
if (/^(H[1-6]|PRE)$/.test(t) && J != "HGROUP") {
o = r(x);
} else {
o = r();
}
if (d.end_container_on_empty_block && E(n) && i.isEmpty(p)) {
o = i.split(n, p);
} else {
i.insertAfter(o, p);
}
m(o);
} else {
if (q(true)) {
o = p.parentNode.insertBefore(r(), p);
F(o);
} else {
G = v.cloneRange();
G.setEndAfter(p);
k = G.extractContents();
s(k);
o = k.firstChild;
i.insertAfter(k, p);
y(o);
I(p);
m(o);
}
}
i.setAttrib(o, "id", "");
h.add();
}
f.onKeyDown.add(function (k, j) {
if (j.keyCode == 13) {
if (g(j) !== false) {
j.preventDefault();
}
}
});
};
})(tinymce);