JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
vanilla ckeditor-4.5.6_full
[ckeditor.git] / samples / js / sample.js
diff --git a/samples/js/sample.js b/samples/js/sample.js
new file mode 100644 (file)
index 0000000..b960afe
--- /dev/null
@@ -0,0 +1,53 @@
+/**\r
+ * Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.\r
+ * For licensing, see LICENSE.md or http://ckeditor.com/license\r
+ */\r
+\r
+/* exported initSample */\r
+\r
+if ( CKEDITOR.env.ie && CKEDITOR.env.version < 9 )\r
+       CKEDITOR.tools.enableHtml5Elements( document );\r
+\r
+// The trick to keep the editor in the sample quite small\r
+// unless user specified own height.\r
+CKEDITOR.config.height = 150;\r
+CKEDITOR.config.width = 'auto';\r
+\r
+var initSample = ( function() {\r
+       var wysiwygareaAvailable = isWysiwygareaAvailable(),\r
+               isBBCodeBuiltIn = !!CKEDITOR.plugins.get( 'bbcode' );\r
+\r
+       return function() {\r
+               var editorElement = CKEDITOR.document.getById( 'editor' );\r
+\r
+               // :(((\r
+               if ( isBBCodeBuiltIn ) {\r
+                       editorElement.setHtml(\r
+                               'Hello world!\n\n' +\r
+                               'I\'m an instance of [url=http://ckeditor.com]CKEditor[/url].'\r
+                       );\r
+               }\r
+\r
+               // Depending on the wysiwygare plugin availability initialize classic or inline editor.\r
+               if ( wysiwygareaAvailable ) {\r
+                       CKEDITOR.replace( 'editor' );\r
+               } else {\r
+                       editorElement.setAttribute( 'contenteditable', 'true' );\r
+                       CKEDITOR.inline( 'editor' );\r
+\r
+                       // TODO we can consider displaying some info box that\r
+                       // without wysiwygarea the classic editor may not work.\r
+               }\r
+       };\r
+\r
+       function isWysiwygareaAvailable() {\r
+               // If in development mode, then the wysiwygarea must be available.\r
+               // Split REV into two strings so builder does not replace it :D.\r
+               if ( CKEDITOR.revision == ( '%RE' + 'V%' ) ) {\r
+                       return true;\r
+               }\r
+\r
+               return !!CKEDITOR.plugins.get( 'wysiwygarea' );\r
+       }\r
+} )();\r
+\r