X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=_source%2Fplugins%2Fpreview%2Fplugin.js;fp=_source%2Fplugins%2Fpreview%2Fplugin.js;h=2238f920e74e09653a7279a91ad0a4e16e1c8702;hb=ea7e3453c7b0f023b050aca6d9f83ab372860d91;hp=0000000000000000000000000000000000000000;hpb=b93873b6532ee7515fb0d6f8b73176c44fad28f7;p=ckeditor.git
diff --git a/_source/plugins/preview/plugin.js b/_source/plugins/preview/plugin.js
new file mode 100644
index 0000000..2238f92
--- /dev/null
+++ b/_source/plugins/preview/plugin.js
@@ -0,0 +1,97 @@
+/*
+Copyright (c) 2003-2009, CKSource - Frederico Knabben. All rights reserved.
+For licensing, see LICENSE.html or http://ckeditor.com/license
+*/
+
+/**
+ * @file Preview plugin.
+ */
+
+(function()
+{
+ var previewCmd =
+ {
+ modes : { wysiwyg:1, source:1 },
+ canUndo : false,
+ exec : function( editor )
+ {
+ var sHTML,
+ isCustomDomain = CKEDITOR.env.ie && document.domain != window.location.hostname;
+ if ( editor.config.fullPage )
+ sHTML = editor.getData();
+ else
+ {
+ var bodyHtml = '
0 ) ? '' : '';
+
+ if ( body.getAttribute( 'id' ) )
+ bodyHtml += 'id="' + body.getAttribute( 'id' ) + '" ';
+ if ( body.getAttribute( 'class' ) )
+ bodyHtml += 'class="' + body.getAttribute( 'class' ) + '" ';
+ bodyHtml += '>';
+
+ sHTML =
+ editor.config.docType +
+ '' +
+ '' +
+ baseTag +
+ '' + editor.lang.preview + '' +
+ '' +
+ '' + bodyHtml +
+ editor.getData() +
+ '';
+ }
+
+ var iWidth = 640, // 800 * 0.8,
+ iHeight = 420, // 600 * 0.7,
+ iLeft = 80; // (800 - 0.8 * 800) /2 = 800 * 0.1.
+ try
+ {
+ var screen = window.screen;
+ iWidth = Math.round( screen.width * 0.8 );
+ iHeight = Math.round( screen.height * 0.7 );
+ iLeft = Math.round( screen.width * 0.1 );
+ }
+ catch ( e ){}
+
+ var sOpenUrl = '';
+ if ( isCustomDomain )
+ {
+ window._cke_htmlToLoad = sHTML;
+ sOpenUrl = 'javascript:void( (function(){' +
+ 'document.open();' +
+ 'document.domain="' + document.domain + '";' +
+ 'document.write( window.opener._cke_htmlToLoad );' +
+ 'document.close();' +
+ 'window.opener._cke_htmlToLoad = null;' +
+ '})() )';
+ }
+
+ var oWindow = window.open( sOpenUrl, null, 'toolbar=yes,location=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width=' +
+ iWidth + ',height=' + iHeight + ',left=' + iLeft );
+
+ if ( !isCustomDomain )
+ {
+ oWindow.document.write( sHTML );
+ oWindow.document.close();
+ }
+ }
+ };
+
+ var pluginName = 'preview';
+
+ // Register a plugin named "preview".
+ CKEDITOR.plugins.add( pluginName,
+ {
+ init : function( editor )
+ {
+ editor.addCommand( pluginName, previewCmd );
+ editor.ui.addButton( 'Preview',
+ {
+ label : editor.lang.preview,
+ command : pluginName
+ });
+ }
+ });
+})();