ENDRPrint/.svn/pristine/5d/5dfbd60dd1d10f0d8f886aac072c9d487bec3bb9.svn-base
2024-08-14 10:33:27 +07:00

62 lines
4.0 KiB
Plaintext

/*
Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.html or http://ckeditor.com/license
*/
CKEDITOR.dialog.add("smiley", function (f) {
for (var e = f.config, a = f.lang.smiley, h = e.smiley_images, g = e.smiley_columns || 8, i, k = function (j) {
var c = j.data.getTarget(), b = c.getName();
if ("a" == b)c = c.getChild(0); else if ("img" != b)return;
var b = c.getAttribute("cke_src"), a = c.getAttribute("title"), c = f.document.createElement("img", {attributes:{src:b, "data-cke-saved-src":b, title:a, alt:a, width:c.$.width, height:c.$.height}});
f.insertElement(c);
i.hide();
j.data.preventDefault()
}, n = CKEDITOR.tools.addFunction(function (a, c) {
var a =
new CKEDITOR.dom.event(a), c = new CKEDITOR.dom.element(c), b;
b = a.getKeystroke();
var d = "rtl" == f.lang.dir;
switch (b) {
case 38:
if (b = c.getParent().getParent().getPrevious())b = b.getChild([c.getParent().getIndex(), 0]), b.focus();
a.preventDefault();
break;
case 40:
if (b = c.getParent().getParent().getNext())(b = b.getChild([c.getParent().getIndex(), 0])) && b.focus();
a.preventDefault();
break;
case 32:
k({data:a});
a.preventDefault();
break;
case d ? 37 : 39:
if (b = c.getParent().getNext())b = b.getChild(0), b.focus(), a.preventDefault(!0);
else if (b = c.getParent().getParent().getNext())(b = b.getChild([0, 0])) && b.focus(), a.preventDefault(!0);
break;
case d ? 39 : 37:
if (b = c.getParent().getPrevious())b = b.getChild(0), b.focus(), a.preventDefault(!0); else if (b = c.getParent().getParent().getPrevious())b = b.getLast().getChild(0), b.focus(), a.preventDefault(!0)
}
}), d = CKEDITOR.tools.getNextId() + "_smiley_emtions_label", d = ['<div><span id="' + d + '" class="cke_voice_label">' + a.options + "</span>", '<table role="listbox" aria-labelledby="' + d + '" style="width:100%;height:100%;border-collapse:separate;" cellspacing="2" cellpadding="2"',
CKEDITOR.env.ie && CKEDITOR.env.quirks ? ' style="position:absolute;"' : "", "><tbody>"], l = h.length, a = 0; a < l; a++) {
0 === a % g && d.push('<tr role="presentation">');
var m = "cke_smile_label_" + a + "_" + CKEDITOR.tools.getNextNumber();
d.push('<td class="cke_dark_background cke_centered" style="vertical-align: middle;" role="presentation"><a href="javascript:void(0)" role="option"', ' aria-posinset="' + (a + 1) + '"', ' aria-setsize="' + l + '"', ' aria-labelledby="' + m + '"', ' class="cke_smile cke_hand" tabindex="-1" onkeydown="CKEDITOR.tools.callFunction( ',
n, ', event, this );">', '<img class="cke_hand" title="', e.smiley_descriptions[a], '" cke_src="', CKEDITOR.tools.htmlEncode(e.smiley_path + h[a]), '" alt="', e.smiley_descriptions[a], '"', ' src="', CKEDITOR.tools.htmlEncode(e.smiley_path + h[a]), '"', CKEDITOR.env.ie ? " onload=\"this.setAttribute('width', 2); this.removeAttribute('width');\" " : "", '><span id="' + m + '" class="cke_voice_label">' + e.smiley_descriptions[a] + "</span></a>", "</td>");
a % g == g - 1 && d.push("</tr>")
}
if (a < g - 1) {
for (; a < g - 1; a++)d.push("<td></td>");
d.push("</tr>")
}
d.push("</tbody></table></div>");
e = {type:"html", id:"smileySelector", html:d.join(""), onLoad:function (a) {
i = a.sender
}, focus:function () {
var a = this;
setTimeout(function () {
a.getElement().getElementsByTag("a").getItem(0).focus()
}, 0)
}, onClick:k, style:"width: 100%; border-collapse: separate;"};
return{title:f.lang.smiley.title, minWidth:270, minHeight:120, contents:[
{id:"tab1", label:"", title:"", expand:!0, padding:0, elements:[e]}
], buttons:[CKEDITOR.dialog.cancelButton]}
});