<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\r
<!--\r
-Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.\r
+Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.\r
For licensing, see LICENSE.html or http://ckeditor.com/license\r
-->\r
<html xmlns="http://www.w3.org/1999/xhtml">\r
<head>\r
- <title>Sample - CKEditor</title>\r
+ <title>Adding Event Handlers — CKEditor Sample</title>\r
<meta content="text/html; charset=utf-8" http-equiv="content-type"/>\r
<link href="../sample.css" rel="stylesheet" type="text/css"/>\r
</head>\r
<body>\r
- <h1>\r
- CKEditor Sample\r
+ <h1 class="samples">\r
+ CKEditor Sample — Adding Event Handlers\r
</h1>\r
+ <div class="description">\r
+ <p>\r
+ This sample shows how to add event handlers to CKEditor with PHP.\r
+ </p>\r
+ <p>\r
+ A snippet of the configuration code can be seen below; check the source code of this page for\r
+ the full definition:\r
+ </p>\r
+ <pre class="samples"><?php\r
+// Include the CKEditor class.\r
+include("ckeditor/ckeditor.php");\r
+\r
+// Create a class instance.\r
+$CKEditor = new CKEditor();\r
+\r
+// Path to the CKEditor directory.\r
+$CKEditor->basePath = '/ckeditor/';\r
+\r
+// The initial value to be displayed in the editor.\r
+$initialValue = 'This is some sample text.';\r
+\r
+// Add event handler, <em>instanceReady</em> is fired when editor is loaded.\r
+$CKEditor-><strong>addEventHandler</strong>('instanceReady', 'function (evt) {\r
+ alert("Loaded editor: " + evt.editor.name);\r
+}');\r
+\r
+// Create an editor instance.\r
+$CKEditor->editor("editor1", $initialValue);\r
+</pre>\r
+ </div>\r
<!-- This <div> holds alert messages to be display in the sample page. -->\r
<div id="alerts">\r
<noscript>\r
</p>\r
</noscript>\r
</div>\r
- <!-- This <fieldset> holds the HTML that you will usually find in your pages. -->\r
- <fieldset title="Output">\r
- <legend>Output</legend>\r
- <form action="../sample_posteddata.php" method="post">\r
- <p>\r
- <label>Editor 1:</label><br/>\r
- </p>\r
+ <form action="../sample_posteddata.php" method="post">\r
+ <label>Editor 1:</label>\r
<?php\r
\r
/**\r
- * Adds global event, will hide "Target" tab in Link dialog in all instances.\r
+ * Adds a global event, will hide the "Target" tab in the "Link" dialog window in all instances.\r
*/\r
function CKEditorHideLinkTargetTab(&$CKEditor) {\r
\r
$function = 'function (ev) {\r
- // Take the dialog name and its definition from the event data\r
+ // Take the dialog window name and its definition from the event data.\r
var dialogName = ev.data.name;\r
var dialogDefinition = ev.data.definition;\r
\r
- // Check if the definition is from the Link dialog.\r
+ // Check if the definition comes from the "Link" dialog window.\r
if ( dialogName == "link" )\r
dialogDefinition.removeContents("target")\r
}';\r
}\r
\r
/**\r
- * Adds global event, will notify about opened dialog.\r
+ * Adds a global event, will notify about an open dialog window.\r
*/\r
function CKEditorNotifyAboutOpenedDialog(&$CKEditor) {\r
$function = 'function (evt) {\r
- alert("Loading dialog: " + evt.data.name);\r
+ alert("Loading a dialog window: " + evt.data.name);\r
}';\r
\r
$CKEditor->addGlobalEventHandler('dialogDefinition', $function);\r
}\r
\r
-// Include CKEditor class.\r
+// Include the CKEditor class.\r
include("../../ckeditor.php");\r
\r
-// Create class instance.\r
+// Create a class instance.\r
$CKEditor = new CKEditor();\r
\r
-// Set configuration option for all editors.\r
+// Set a configuration option for all editors.\r
$CKEditor->config['width'] = 750;\r
\r
-// Path to CKEditor directory, ideally instead of relative dir, use an absolute path:\r
+// Path to the CKEditor directory, ideally use an absolute path instead of a relative dir.\r
// $CKEditor->basePath = '/ckeditor/'\r
// If not set, CKEditor will try to detect the correct path.\r
$CKEditor->basePath = '../../';\r
alert("Loaded editor: " + evt.editor.name);\r
}');\r
\r
-// Create first instance.\r
+// Create the first instance.\r
$CKEditor->editor("editor1", $initialValue);\r
\r
-// Clear event handlers, instances that will be created later will not have\r
+// Clear event handlers. Instances that will be created later will not have\r
// the 'instanceReady' listener defined a couple of lines above.\r
$CKEditor->clearEventHandlers();\r
?>\r
- <p>\r
- <label>Editor 2:</label><br/>\r
- </p>\r
+ <br />\r
+ <label>Editor 2:</label>\r
<?php\r
-// Configuration that will be used only by the second editor.\r
+// Configuration that will only be used by the second editor.\r
$config['width'] = '600';\r
$config['toolbar'] = 'Basic';\r
\r
CKEditorHideLinkTargetTab($CKEditor);\r
CKEditorNotifyAboutOpenedDialog($CKEditor);\r
\r
-// Event that will be handled only by the second editor.\r
+// Event that will only be handled by the second editor.\r
// Instead of calling addEventHandler(), events may be passed as an argument.\r
$events['instanceReady'] = 'function (evt) {\r
alert("Loaded second editor: " + evt.editor.name);\r
}';\r
\r
-// Create second instance.\r
+// Create the second instance.\r
$CKEditor->editor("editor2", $initialValue, $config, $events);\r
?>\r
- <p>\r
- <input type="submit" value="Submit"/>\r
- </p>\r
- </form>\r
- </fieldset>\r
+ <p>\r
+ <input type="submit" value="Submit"/>\r
+ </p>\r
+ </form>\r
<div id="footer">\r
<hr />\r
<p>\r
- CKEditor - The text editor for Internet - <a href="http://ckeditor.com/">http://ckeditor.com</a>\r
+ CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>\r
</p>\r
<p id="copy">\r
- Copyright © 2003-2010, <a href="http://cksource.com/">CKSource</a> - Frederico\r
+ Copyright © 2003-2011, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico\r
Knabben. All rights reserved.\r
</p>\r
</div>\r