File: D:/HostingSpaces/TDijk1/erp-apps.eu/wwwroot/CMSAdminControls/CKeditor/skins/kentico/skin.js
/*
Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.html or http://ckeditor.com/license
*/
CKEDITOR.skins.add('kentico', (function() {
var uiColorStylesheetId = 'cke_ui_color';
return {
editor: { css: ['editor.css'] },
dialog: { css: ['dialog.css'] },
templates: { css: ['templates.css'] },
margins: [0, 0, 0, 0],
init: function(editor) {
if (editor.config.width && !isNaN(editor.config.width))
editor.config.width -= 12;
var uiColorMenus = [];
var uiColorRegex = /\$color/g;
var uiColorMenuCss = "/* UI Color Support */\
.cke_skin_kentico .cke_menuitem .cke_icon_wrapper\
{\
background-color: $color !important;\
border-color: $color !important;\
}\
\
.cke_skin_kentico .cke_menuitem a:hover .cke_icon_wrapper,\
.cke_skin_kentico .cke_menuitem a:focus .cke_icon_wrapper,\
.cke_skin_kentico .cke_menuitem a:active .cke_icon_wrapper\
{\
background-color: $color !important;\
border-color: $color !important;\
}\
\
.cke_skin_kentico .cke_menuitem a:hover .cke_label,\
.cke_skin_kentico .cke_menuitem a:focus .cke_label,\
.cke_skin_kentico .cke_menuitem a:active .cke_label\
{\
background-color: $color !important;\
}\
\
.cke_skin_kentico .cke_menuitem a.cke_disabled:hover .cke_label,\
.cke_skin_kentico .cke_menuitem a.cke_disabled:focus .cke_label,\
.cke_skin_kentico .cke_menuitem a.cke_disabled:active .cke_label\
{\
background-color: transparent !important;\
}\
\
.cke_skin_kentico .cke_menuitem a.cke_disabled:hover .cke_icon_wrapper,\
.cke_skin_kentico .cke_menuitem a.cke_disabled:focus .cke_icon_wrapper,\
.cke_skin_kentico .cke_menuitem a.cke_disabled:active .cke_icon_wrapper\
{\
background-color: $color !important;\
border-color: $color !important;\
}\
\
.cke_skin_kentico .cke_menuitem a.cke_disabled .cke_icon_wrapper\
{\
background-color: $color !important;\
border-color: $color !important;\
}\
\
.cke_skin_kentico .cke_menuseparator\
{\
background-color: $color !important;\
}\
\
.cke_skin_kentico .cke_menuitem a:hover,\
.cke_skin_kentico .cke_menuitem a:focus,\
.cke_skin_kentico .cke_menuitem a:active\
{\
background-color: $color !important;\
}";
// We have to split CSS declarations for webkit.
if (CKEDITOR.env.webkit) {
uiColorMenuCss = uiColorMenuCss.split('}').slice(0, -1);
for (var i = 0; i < uiColorMenuCss.length; i++)
uiColorMenuCss[i] = uiColorMenuCss[i].split('{');
}
function getStylesheet(document) {
var node = document.getById(uiColorStylesheetId);
if (!node) {
if (CKEDITOR.env.ie) {
node = document.getBody().append('style');
}
else {
node = document.getHead().append('style');
}
node.setAttribute("id", uiColorStylesheetId);
node.setAttribute("type", "text/css");
}
return node;
}
function updateStylesheets(styleNodes, styleContent, replace) {
var r, i, content;
for (var id = 0; id < styleNodes.length; id++) {
if (CKEDITOR.env.webkit) {
for (i = 0; i < styleContent.length; i++) {
content = styleContent[i][1];
for (r = 0; r < replace.length; r++)
content = content.replace(replace[r][0], replace[r][1]);
styleNodes[id].$.sheet.addRule(styleContent[i][0], content);
}
}
else {
content = styleContent;
for (r = 0; r < replace.length; r++)
content = content.replace(replace[r][0], replace[r][1]);
if (CKEDITOR.env.ie)
styleNodes[id].$.styleSheet.cssText += content;
else
styleNodes[id].$.innerHTML += content;
}
}
}
var uiColorRegexp = /\$color/g;
CKEDITOR.tools.extend(editor,
{
uiColor: null,
getUiColor: function() {
return this.uiColor;
},
setUiColor: function(color) {
var cssContent,
uiStyle = getStylesheet(CKEDITOR.document),
cssId = '.' + editor.id;
var cssSelectors =
[
cssId + " .cke_wrapper\n",
cssId + "_dialog .cke_dialog_contents\n",
cssId + "_dialog a.cke_dialog_tab\n",
cssId + "_dialog .cke_dialog_footer\n"
].join(',');
var cssProperties = "background-color: $color !important;/*test*/\n";
if (CKEDITOR.env.webkit)
cssContent = [[cssSelectors, cssProperties]];
else
cssContent = cssSelectors + '{' + cssProperties + '}';
return (this.setUiColor =
function(color) {
var replace = [[uiColorRegexp, color]];
editor.uiColor = color;
// Update general style.
updateStylesheets([uiStyle], cssContent, replace);
// Update menu styles.
updateStylesheets(uiColorMenus, uiColorMenuCss, replace);
})(color);
}
});
editor.on('menuShow', function(event) {
var panel = event.data[0];
var iframe = panel.element.getElementsByTag('iframe').getItem(0).getFrameDocument();
// Add stylesheet if missing.
if (!iframe.getById('cke_ui_color')) {
var node = getStylesheet(iframe);
uiColorMenus.push(node);
var color = editor.getUiColor();
// Set uiColor for new menu.
if (color)
updateStylesheets([node], uiColorMenuCss, [[uiColorRegexp, color]]);
}
});
// Apply UI color if specified in config.
if (editor.config.uiColor)
editor.setUiColor(editor.config.uiColor);
}
};
})());
(function()
{
CKEDITOR.dialog ? dialogSetup() : CKEDITOR.on( 'dialogPluginReady', dialogSetup );
function dialogSetup()
{
CKEDITOR.dialog.on( 'resize', function( evt )
{
var data = evt.data,
width = data.width,
height = data.height,
dialog = data.dialog,
contents = dialog.parts.contents;
if ( data.skin != 'kentico' )
return;
contents.setStyles(
{
width : width + 'px',
height : height + 'px'
});
});
}
})();
/**
* The base user interface color to be used by the editor. Not all skins are
* compatible with this setting.
* @name CKEDITOR.config.uiColor
* @type String
* @default '' (empty)
* @example
* // Using a color code.
* config.uiColor = '#AADC6E';
* @example
* // Using an HTML color name.
* config.uiColor = 'Gold';
*/