tenon 1.0.76 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (175) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/ckeditor/CHANGES.md +987 -0
  3. data/app/assets/javascripts/ckeditor/LICENSE.md +1420 -0
  4. data/app/assets/javascripts/ckeditor/README.md +39 -0
  5. data/app/assets/javascripts/ckeditor/adapters/jquery.js +10 -0
  6. data/app/assets/javascripts/ckeditor/build-config.js +74 -0
  7. data/app/assets/javascripts/ckeditor/ckeditor.js +820 -0
  8. data/app/assets/javascripts/ckeditor/config.js +38 -0
  9. data/app/assets/javascripts/ckeditor/contents.css +132 -0
  10. data/app/assets/javascripts/ckeditor/lang/en.js +5 -0
  11. data/app/assets/javascripts/ckeditor/lang/fr-ca.js +5 -0
  12. data/app/assets/javascripts/ckeditor/plugins/clipboard/dialogs/paste.js +11 -0
  13. data/app/assets/javascripts/ckeditor/plugins/dialog/dialogDefinition.js +4 -0
  14. data/app/assets/javascripts/ckeditor/plugins/icons.png +0 -0
  15. data/app/assets/javascripts/ckeditor/plugins/icons_hidpi.png +0 -0
  16. data/app/assets/javascripts/ckeditor/plugins/link/dialogs/anchor.js +7 -0
  17. data/app/assets/javascripts/ckeditor/plugins/link/dialogs/link.js +26 -0
  18. data/app/assets/javascripts/ckeditor/plugins/link/images/anchor.png +0 -0
  19. data/app/assets/javascripts/ckeditor/plugins/link/images/hidpi/anchor.png +0 -0
  20. data/app/assets/javascripts/ckeditor/plugins/linktoasset/plugin.js +24 -0
  21. data/app/assets/javascripts/ckeditor/plugins/pastefromword/filter/default.js +32 -0
  22. data/app/assets/javascripts/ckeditor/plugins/sourcedialog/dialogs/sourcedialog.js +6 -0
  23. data/app/assets/javascripts/ckeditor/samples/css/samples.css +1640 -0
  24. data/app/assets/javascripts/ckeditor/samples/img/github-top.png +0 -0
  25. data/app/assets/javascripts/ckeditor/samples/img/header-bg.png +0 -0
  26. data/app/assets/javascripts/ckeditor/samples/img/header-separator.png +0 -0
  27. data/app/assets/javascripts/ckeditor/samples/img/logo.png +0 -0
  28. data/app/assets/javascripts/ckeditor/samples/img/navigation-tip.png +0 -0
  29. data/app/assets/javascripts/ckeditor/samples/index.html +128 -0
  30. data/app/assets/javascripts/ckeditor/samples/js/sample.js +53 -0
  31. data/app/assets/javascripts/ckeditor/samples/js/sf.js +17 -0
  32. data/app/assets/javascripts/ckeditor/samples/old/ajax.html +85 -0
  33. data/app/assets/javascripts/ckeditor/samples/old/api.html +210 -0
  34. data/app/assets/javascripts/ckeditor/samples/old/appendto.html +59 -0
  35. data/app/assets/javascripts/ckeditor/samples/old/assets/inlineall/logo.png +0 -0
  36. data/app/assets/javascripts/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css +204 -0
  37. data/app/assets/javascripts/ckeditor/samples/old/assets/posteddata.php +59 -0
  38. data/app/assets/javascripts/ckeditor/samples/old/assets/sample.jpg +0 -0
  39. data/app/assets/javascripts/ckeditor/samples/old/assets/uilanguages/languages.js +7 -0
  40. data/app/assets/javascripts/ckeditor/samples/old/datafiltering.html +508 -0
  41. data/app/assets/javascripts/ckeditor/samples/old/dialog/assets/my_dialog.js +48 -0
  42. data/app/assets/javascripts/ckeditor/samples/old/dialog/dialog.html +190 -0
  43. data/app/assets/javascripts/ckeditor/samples/old/divreplace.html +144 -0
  44. data/app/assets/javascripts/ckeditor/samples/old/enterkey/enterkey.html +106 -0
  45. data/app/assets/javascripts/ckeditor/samples/old/index.html +125 -0
  46. data/app/assets/javascripts/ckeditor/samples/old/inlineall.html +314 -0
  47. data/app/assets/javascripts/ckeditor/samples/old/inlinebycode.html +124 -0
  48. data/app/assets/javascripts/ckeditor/samples/old/inlinetextarea.html +113 -0
  49. data/app/assets/javascripts/ckeditor/samples/old/jquery.html +103 -0
  50. data/app/assets/javascripts/ckeditor/samples/old/readonly.html +76 -0
  51. data/app/assets/javascripts/ckeditor/samples/old/replacebyclass.html +60 -0
  52. data/app/assets/javascripts/ckeditor/samples/old/replacebycode.html +59 -0
  53. data/app/assets/javascripts/ckeditor/samples/old/sample.css +357 -0
  54. data/app/assets/javascripts/ckeditor/samples/old/sample.js +50 -0
  55. data/app/assets/javascripts/ckeditor/samples/old/sample_posteddata.php +16 -0
  56. data/app/assets/javascripts/ckeditor/samples/old/sourcedialog/sourcedialog.html +121 -0
  57. data/app/assets/javascripts/ckeditor/samples/old/tabindex.html +78 -0
  58. data/app/assets/javascripts/ckeditor/samples/old/toolbar/toolbar.html +235 -0
  59. data/app/assets/javascripts/ckeditor/samples/old/uicolor.html +72 -0
  60. data/app/assets/javascripts/ckeditor/samples/old/uilanguages.html +122 -0
  61. data/app/assets/javascripts/ckeditor/samples/old/wysiwygarea/fullpage.html +80 -0
  62. data/app/assets/javascripts/ckeditor/samples/old/xhtmlstyle.html +234 -0
  63. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/css/fontello.css +55 -0
  64. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt +10 -0
  65. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/config.json +28 -0
  66. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.eot +0 -0
  67. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.svg +14 -0
  68. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.ttf +0 -0
  69. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/font/fontello.woff +0 -0
  70. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/index.html +446 -0
  71. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js +13 -0
  72. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js +9 -0
  73. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js +33 -0
  74. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js +14 -0
  75. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/LICENSE +19 -0
  76. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.css +325 -0
  77. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/codemirror.js +288 -0
  78. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/javascript.js +25 -0
  79. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/neo.css +36 -0
  80. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.css +38 -0
  81. data/app/assets/javascripts/ckeditor/samples/toolbarconfigurator/lib/codemirror/show-hint.js +16 -0
  82. data/app/assets/javascripts/ckeditor/skins/moono-dark/dialog.css +5 -0
  83. data/app/assets/javascripts/ckeditor/skins/moono-dark/dialog_ie.css +5 -0
  84. data/app/assets/javascripts/ckeditor/skins/moono-dark/dialog_ie7.css +5 -0
  85. data/app/assets/javascripts/ckeditor/skins/moono-dark/dialog_ie8.css +5 -0
  86. data/app/assets/javascripts/ckeditor/skins/moono-dark/dialog_iequirks.css +5 -0
  87. data/app/assets/javascripts/ckeditor/skins/moono-dark/editor.css +7 -0
  88. data/app/assets/javascripts/ckeditor/skins/moono-dark/editor_gecko.css +5 -0
  89. data/app/assets/javascripts/ckeditor/skins/moono-dark/editor_ie.css +5 -0
  90. data/app/assets/javascripts/ckeditor/skins/moono-dark/editor_ie7.css +5 -0
  91. data/app/assets/javascripts/ckeditor/skins/moono-dark/editor_ie8.css +5 -0
  92. data/app/assets/javascripts/ckeditor/skins/moono-dark/editor_iequirks.css +5 -0
  93. data/app/assets/javascripts/ckeditor/skins/moono-dark/icons.png +0 -0
  94. data/app/assets/javascripts/ckeditor/skins/moono-dark/icons_hidpi.png +0 -0
  95. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/arrow.png +0 -0
  96. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/close.png +0 -0
  97. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/hidpi/close.png +0 -0
  98. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/hidpi/lock-open.png +0 -0
  99. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/hidpi/lock.png +0 -0
  100. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/hidpi/refresh.png +0 -0
  101. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/lock-open.png +0 -0
  102. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/lock.png +0 -0
  103. data/app/assets/javascripts/ckeditor/skins/moono-dark/images/refresh.png +0 -0
  104. data/app/assets/javascripts/ckeditor/skins/moono-dark/readme.md +51 -0
  105. data/app/assets/javascripts/ckeditor/styles.js +111 -0
  106. data/app/assets/javascripts/tenon/features/editor.js.coffee +24 -0
  107. data/app/assets/javascripts/tenon/features/modal_windows.js.coffee +48 -21
  108. data/app/assets/javascripts/tenon/features/tenon_content/asset_link.js.coffee +9 -3
  109. data/app/assets/javascripts/tenon/features/tenon_content/editor.js.coffee +10 -3
  110. data/app/assets/javascripts/tenon/tenon.js +1 -2
  111. data/app/assets/javascripts/tenon/tenon_manifest.js +1 -1
  112. data/app/assets/stylesheets/tenon/{colors-custom.css.scss → colors-custom.scss} +0 -0
  113. data/app/assets/stylesheets/tenon/{colors-named.css.scss → colors-named.scss} +0 -0
  114. data/app/assets/stylesheets/tenon/{helpers.css.scss → helpers.scss} +0 -0
  115. data/app/assets/stylesheets/tenon/layout/{assets.css.scss → assets.scss} +0 -0
  116. data/app/assets/stylesheets/tenon/layout/{breakpoints.css.scss → breakpoints.scss} +0 -0
  117. data/app/assets/stylesheets/tenon/layout/{global.css.scss → global.scss} +0 -0
  118. data/app/assets/stylesheets/tenon/layout/{grid.css.scss → grid.scss} +0 -0
  119. data/app/assets/stylesheets/tenon/layout/{main-nav.css.scss → main-nav.scss} +0 -0
  120. data/app/assets/stylesheets/tenon/layout/{margins.css.scss → margins.scss} +0 -0
  121. data/app/assets/stylesheets/tenon/layout/{mobile.css.scss → mobile.scss} +0 -0
  122. data/app/assets/stylesheets/tenon/layout/{sidebar.css.scss → sidebar.scss} +0 -0
  123. data/app/assets/stylesheets/tenon/layout/{util-nav.css.scss → util-nav.scss} +0 -0
  124. data/app/assets/stylesheets/tenon/{mixins.css.scss → mixins.scss} +0 -0
  125. data/app/assets/stylesheets/tenon/{styleguide.css.scss → styleguide.scss} +0 -0
  126. data/app/assets/stylesheets/tenon/{tenon.css.scss → tenon.scss} +0 -0
  127. data/app/assets/stylesheets/tenon/{typography.css.scss → typography.scss} +0 -0
  128. data/app/assets/stylesheets/tenon/ui/{alerts.css.scss → alerts.scss} +0 -0
  129. data/app/assets/stylesheets/tenon/ui/{asset-attachment.css.scss → asset-attachment.scss} +0 -0
  130. data/app/assets/stylesheets/tenon/ui/{asset-cropping.css.scss → asset-cropping.scss} +0 -0
  131. data/app/assets/stylesheets/tenon/ui/{asset-uploads.css.scss → asset-uploads.scss} +0 -0
  132. data/app/assets/stylesheets/tenon/ui/{buttons.css.scss → buttons.scss} +0 -0
  133. data/app/assets/stylesheets/tenon/ui/{callouts.css.scss → callouts.scss} +0 -0
  134. data/app/assets/stylesheets/tenon/ui/{comments.css.scss → comments.scss} +0 -0
  135. data/app/assets/stylesheets/tenon/ui/{forms.css.scss → forms.scss} +16 -0
  136. data/app/assets/stylesheets/tenon/ui/{generic-loader.css.scss → generic-loader.scss} +0 -0
  137. data/app/assets/stylesheets/tenon/ui/{header-tools.css.scss → header-tools.scss} +0 -0
  138. data/app/assets/stylesheets/tenon/ui/{i18n.css.scss → i18n.scss} +0 -0
  139. data/app/assets/stylesheets/tenon/ui/{list-style-toggle.css.scss → list-style-toggle.scss} +0 -0
  140. data/app/assets/stylesheets/tenon/ui/{login.css.scss → login.scss} +0 -0
  141. data/app/assets/stylesheets/tenon/ui/{medium-editor.css.scss → medium-editor.scss} +0 -0
  142. data/app/assets/stylesheets/tenon/ui/{modals.css.scss → modals.scss} +0 -0
  143. data/app/assets/stylesheets/tenon/ui/{pagination.css.scss → pagination.scss} +0 -0
  144. data/app/assets/stylesheets/tenon/ui/{progress-bars.css.scss → progress-bars.scss} +0 -0
  145. data/app/assets/stylesheets/tenon/ui/{quick-search.css.scss → quick-search.scss} +0 -0
  146. data/app/assets/stylesheets/tenon/ui/{record-grids.css.scss → record-grids.scss} +0 -0
  147. data/app/assets/stylesheets/tenon/ui/{record-lists.css.scss → record-lists.scss} +0 -0
  148. data/app/assets/stylesheets/tenon/ui/{section-headers.css.scss → section-headers.scss} +0 -0
  149. data/app/assets/stylesheets/tenon/ui/{select2-custom.css.scss → select2-custom.scss} +0 -0
  150. data/app/assets/stylesheets/tenon/ui/{tables.css.scss → tables.scss} +0 -0
  151. data/app/assets/stylesheets/tenon/ui/{tabs.css.scss → tabs.scss} +0 -0
  152. data/app/assets/stylesheets/tenon/ui/{tenon-content-library.css.scss → tenon-content-library.scss} +0 -0
  153. data/app/assets/stylesheets/tenon/ui/{tenon-content-popped-out.css.scss → tenon-content-popped-out.scss} +0 -0
  154. data/app/assets/stylesheets/tenon/ui/{tenon-content.css.scss → tenon-content.scss} +0 -15
  155. data/app/assets/stylesheets/tenon/ui/{thinking.css.scss → thinking.scss} +0 -0
  156. data/app/assets/stylesheets/tenon/ui/{toolbox.css.scss → toolbox.scss} +0 -0
  157. data/app/assets/stylesheets/tenon/{z-indexes.css.scss → z-indexes.scss} +0 -0
  158. data/app/assets/stylesheets/{tenon_addons.css.scss → tenon_addons.scss} +0 -0
  159. data/app/form_builders/tenon/form_builder.rb +39 -19
  160. data/app/models/tenon/page.rb +6 -0
  161. data/app/views/tenon/fields/_asset.html.haml +32 -0
  162. data/app/views/tenon/fields/_rich_text.html.haml +8 -0
  163. data/app/views/tenon/galleries/_photo_fields.html.haml +2 -2
  164. data/app/views/tenon/posts/_form.html.haml +2 -5
  165. data/app/views/tenon/tenon_content/_row.html.haml +2 -2
  166. data/app/views/tenon/tenon_content/piece_types/form/_text.html.haml +2 -3
  167. data/lib/generators/tenon/scaffold/templates/view__form.html.haml +1 -1
  168. data/lib/tenon/version.rb +1 -1
  169. data/spec/controllers/tenon/pages_controller_spec.rb +1 -1
  170. data/vendor/assets/stylesheets/{bootstrap.css.scss → bootstrap.scss} +0 -0
  171. data/vendor/assets/stylesheets/{bootstrap.tables.css.scss → bootstrap.tables.scss} +0 -0
  172. data/vendor/assets/stylesheets/{jscrollpane.css.scss → jscrollpane.scss} +0 -0
  173. metadata +168 -63
  174. data/app/assets/javascripts/tenon/features/medium.js.coffee +0 -13
  175. data/app/views/tenon/shared/_asset_field.html.haml +0 -29
@@ -0,0 +1,59 @@
1
+ <!DOCTYPE html>
2
+ <!--
3
+ Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
4
+ For licensing, see LICENSE.md or http://ckeditor.com/license
5
+ -->
6
+ <html>
7
+ <head>
8
+ <meta charset="utf-8">
9
+ <title>Append To Page Element Using JavaScript Code &mdash; CKEditor Sample</title>
10
+ <script src="../../ckeditor.js"></script>
11
+ <link rel="stylesheet" href="sample.css">
12
+ </head>
13
+ <body>
14
+ <h1 class="samples">
15
+ <a href="index.html">CKEditor Samples</a> &raquo; Append To Page Element Using JavaScript Code
16
+ </h1>
17
+ <div class="warning deprecated">
18
+ This sample is not maintained anymore. Check out the <a href="http://sdk.ckeditor.com/">brand new samples in CKEditor SDK</a>.
19
+ </div>
20
+ <div id="section1">
21
+ <div class="description">
22
+ <p>
23
+ The <code><a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR-method-appendTo">CKEDITOR.appendTo()</a></code> method serves to to place editors inside existing DOM elements. Unlike <code><a class="samples" href="http://docs.ckeditor.com/#!/api/CKEDITOR-method-replace">CKEDITOR.replace()</a></code>,
24
+ a target container to be replaced is no longer necessary. A new editor
25
+ instance is inserted directly wherever it is desired.
26
+ </p>
27
+ <pre class="samples">CKEDITOR.appendTo( '<em>container_id</em>',
28
+ { /* Configuration options to be used. */ }
29
+ 'Editor content to be used.'
30
+ );</pre>
31
+ </div>
32
+ <script>
33
+
34
+ // This call can be placed at any point after the
35
+ // DOM element to append CKEditor to or inside the <head><script>
36
+ // in a window.onload event handler.
37
+
38
+ // Append a CKEditor instance using the default configuration and the
39
+ // provided content to the <div> element of ID "section1".
40
+ CKEDITOR.appendTo( 'section1',
41
+ null,
42
+ '<p>This is some <strong>sample text</strong>. You are using <a href="http://ckeditor.com/">CKEditor</a>.</p>'
43
+ );
44
+
45
+ </script>
46
+ </div>
47
+ <br>
48
+ <div id="footer">
49
+ <hr>
50
+ <p>
51
+ CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
52
+ </p>
53
+ <p id="copy">
54
+ Copyright &copy; 2003-2015, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
55
+ Knabben. All rights reserved.
56
+ </p>
57
+ </div>
58
+ </body>
59
+ </html>
@@ -0,0 +1,204 @@
1
+ /*
2
+ * Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
3
+ * For licensing, see LICENSE.md or http://ckeditor.com/license
4
+ *
5
+ * Styles used by the XHTML 1.1 sample page (xhtml.html).
6
+ */
7
+
8
+ /**
9
+ * Basic definitions for the editing area.
10
+ */
11
+ body
12
+ {
13
+ font-family: Arial, Verdana, sans-serif;
14
+ font-size: 80%;
15
+ color: #000000;
16
+ background-color: #ffffff;
17
+ padding: 5px;
18
+ margin: 0px;
19
+ }
20
+
21
+ /**
22
+ * Core styles.
23
+ */
24
+
25
+ .Bold
26
+ {
27
+ font-weight: bold;
28
+ }
29
+
30
+ .Italic
31
+ {
32
+ font-style: italic;
33
+ }
34
+
35
+ .Underline
36
+ {
37
+ text-decoration: underline;
38
+ }
39
+
40
+ .StrikeThrough
41
+ {
42
+ text-decoration: line-through;
43
+ }
44
+
45
+ .Subscript
46
+ {
47
+ vertical-align: sub;
48
+ font-size: smaller;
49
+ }
50
+
51
+ .Superscript
52
+ {
53
+ vertical-align: super;
54
+ font-size: smaller;
55
+ }
56
+
57
+ /**
58
+ * Font faces.
59
+ */
60
+
61
+ .FontComic
62
+ {
63
+ font-family: 'Comic Sans MS';
64
+ }
65
+
66
+ .FontCourier
67
+ {
68
+ font-family: 'Courier New';
69
+ }
70
+
71
+ .FontTimes
72
+ {
73
+ font-family: 'Times New Roman';
74
+ }
75
+
76
+ /**
77
+ * Font sizes.
78
+ */
79
+
80
+ .FontSmaller
81
+ {
82
+ font-size: smaller;
83
+ }
84
+
85
+ .FontLarger
86
+ {
87
+ font-size: larger;
88
+ }
89
+
90
+ .FontSmall
91
+ {
92
+ font-size: 8pt;
93
+ }
94
+
95
+ .FontBig
96
+ {
97
+ font-size: 14pt;
98
+ }
99
+
100
+ .FontDouble
101
+ {
102
+ font-size: 200%;
103
+ }
104
+
105
+ /**
106
+ * Font colors.
107
+ */
108
+ .FontColor1
109
+ {
110
+ color: #ff9900;
111
+ }
112
+
113
+ .FontColor2
114
+ {
115
+ color: #0066cc;
116
+ }
117
+
118
+ .FontColor3
119
+ {
120
+ color: #ff0000;
121
+ }
122
+
123
+ .FontColor1BG
124
+ {
125
+ background-color: #ff9900;
126
+ }
127
+
128
+ .FontColor2BG
129
+ {
130
+ background-color: #0066cc;
131
+ }
132
+
133
+ .FontColor3BG
134
+ {
135
+ background-color: #ff0000;
136
+ }
137
+
138
+ /**
139
+ * Indentation.
140
+ */
141
+
142
+ .Indent1
143
+ {
144
+ margin-left: 40px;
145
+ }
146
+
147
+ .Indent2
148
+ {
149
+ margin-left: 80px;
150
+ }
151
+
152
+ .Indent3
153
+ {
154
+ margin-left: 120px;
155
+ }
156
+
157
+ /**
158
+ * Alignment.
159
+ */
160
+
161
+ .JustifyLeft
162
+ {
163
+ text-align: left;
164
+ }
165
+
166
+ .JustifyRight
167
+ {
168
+ text-align: right;
169
+ }
170
+
171
+ .JustifyCenter
172
+ {
173
+ text-align: center;
174
+ }
175
+
176
+ .JustifyFull
177
+ {
178
+ text-align: justify;
179
+ }
180
+
181
+ /**
182
+ * Other.
183
+ */
184
+
185
+ code
186
+ {
187
+ font-family: courier, monospace;
188
+ background-color: #eeeeee;
189
+ padding-left: 1px;
190
+ padding-right: 1px;
191
+ border: #c0c0c0 1px solid;
192
+ }
193
+
194
+ kbd
195
+ {
196
+ padding: 0px 1px 0px 1px;
197
+ border-width: 1px 2px 2px 1px;
198
+ border-style: solid;
199
+ }
200
+
201
+ blockquote
202
+ {
203
+ color: #808080;
204
+ }
@@ -0,0 +1,59 @@
1
+ <!DOCTYPE html>
2
+ <?php
3
+ /*
4
+ Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
5
+ For licensing, see LICENSE.md or http://ckeditor.com/license
6
+ */
7
+ ?>
8
+ <html>
9
+ <head>
10
+ <meta charset="utf-8">
11
+ <title>Sample &mdash; CKEditor</title>
12
+ <link rel="stylesheet" href="sample.css">
13
+ </head>
14
+ <body>
15
+ <h1 class="samples">
16
+ CKEditor &mdash; Posted Data
17
+ </h1>
18
+ <table border="1" cellspacing="0" id="outputSample">
19
+ <colgroup><col width="120"></colgroup>
20
+ <thead>
21
+ <tr>
22
+ <th>Field&nbsp;Name</th>
23
+ <th>Value</th>
24
+ </tr>
25
+ </thead>
26
+ <?php
27
+
28
+ if (!empty($_POST))
29
+ {
30
+ foreach ( $_POST as $key => $value )
31
+ {
32
+ if ( ( !is_string($value) && !is_numeric($value) ) || !is_string($key) )
33
+ continue;
34
+
35
+ if ( get_magic_quotes_gpc() )
36
+ $value = htmlspecialchars( stripslashes((string)$value) );
37
+ else
38
+ $value = htmlspecialchars( (string)$value );
39
+ ?>
40
+ <tr>
41
+ <th style="vertical-align: top"><?php echo htmlspecialchars( (string)$key ); ?></th>
42
+ <td><pre class="samples"><?php echo $value; ?></pre></td>
43
+ </tr>
44
+ <?php
45
+ }
46
+ }
47
+ ?>
48
+ </table>
49
+ <div id="footer">
50
+ <hr>
51
+ <p>
52
+ CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
53
+ </p>
54
+ <p id="copy">
55
+ Copyright &copy; 2003-2015, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico Knabben. All rights reserved.
56
+ </p>
57
+ </div>
58
+ </body>
59
+ </html>
@@ -0,0 +1,7 @@
1
+ /*
2
+ Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
3
+ For licensing, see LICENSE.md or http://ckeditor.com/license
4
+ */
5
+ var CKEDITOR_LANGS=function(){var c={af:"Afrikaans",ar:"Arabic",bg:"Bulgarian",bn:"Bengali/Bangla",bs:"Bosnian",ca:"Catalan",cs:"Czech",cy:"Welsh",da:"Danish",de:"German",el:"Greek",en:"English","en-au":"English (Australia)","en-ca":"English (Canadian)","en-gb":"English (United Kingdom)",eo:"Esperanto",es:"Spanish",et:"Estonian",eu:"Basque",fa:"Persian",fi:"Finnish",fo:"Faroese",fr:"French","fr-ca":"French (Canada)",gl:"Galician",gu:"Gujarati",he:"Hebrew",hi:"Hindi",hr:"Croatian",hu:"Hungarian",id:"Indonesian",
6
+ is:"Icelandic",it:"Italian",ja:"Japanese",ka:"Georgian",km:"Khmer",ko:"Korean",ku:"Kurdish",lt:"Lithuanian",lv:"Latvian",mk:"Macedonian",mn:"Mongolian",ms:"Malay",nb:"Norwegian Bokmal",nl:"Dutch",no:"Norwegian",pl:"Polish",pt:"Portuguese (Portugal)","pt-br":"Portuguese (Brazil)",ro:"Romanian",ru:"Russian",si:"Sinhala",sk:"Slovak",sq:"Albanian",sl:"Slovenian",sr:"Serbian (Cyrillic)","sr-latn":"Serbian (Latin)",sv:"Swedish",th:"Thai",tr:"Turkish",tt:"Tatar",ug:"Uighur",uk:"Ukrainian",vi:"Vietnamese",
7
+ zh:"Chinese Traditional","zh-cn":"Chinese Simplified"},b=[],a;for(a in CKEDITOR.lang.languages)b.push({code:a,name:c[a]||a});b.sort(function(a,b){return a.name<b.name?-1:1});return b}();
@@ -0,0 +1,508 @@
1
+ <!DOCTYPE html>
2
+ <!--
3
+ Copyright (c) 2003-2015, CKSource - Frederico Knabben. All rights reserved.
4
+ For licensing, see LICENSE.md or http://ckeditor.com/license
5
+ -->
6
+ <html>
7
+ <head>
8
+ <meta charset="utf-8">
9
+ <title>Data Filtering &mdash; CKEditor Sample</title>
10
+ <script src="../../ckeditor.js"></script>
11
+ <link rel="stylesheet" href="sample.css">
12
+ <script>
13
+ // Remove advanced tabs for all editors.
14
+ CKEDITOR.config.removeDialogTabs = 'image:advanced;link:advanced;flash:advanced;creatediv:advanced;editdiv:advanced';
15
+ </script>
16
+ </head>
17
+ <body>
18
+ <h1 class="samples">
19
+ <a href="index.html">CKEditor Samples</a> &raquo; Data Filtering and Features Activation
20
+ </h1>
21
+ <div class="warning deprecated">
22
+ This sample is not maintained anymore. Check out its <a href="http://sdk.ckeditor.com/samples/acf.html">brand new version in CKEditor SDK</a>.
23
+ </div>
24
+ <div class="description">
25
+ <p>
26
+ This sample page demonstrates the idea of Advanced Content Filter
27
+ (<abbr title="Advanced Content Filter">ACF</abbr>), a sophisticated
28
+ tool that takes control over what kind of data is accepted by the editor and what
29
+ kind of output is produced.
30
+ </p>
31
+ <h2>When and what is being filtered?</h2>
32
+ <p>
33
+ <abbr title="Advanced Content Filter">ACF</abbr> controls
34
+ <strong>every single source of data</strong> that comes to the editor.
35
+ It process both HTML that is inserted manually (i.e. pasted by the user)
36
+ and programmatically like:
37
+ </p>
38
+ <pre class="samples">
39
+ editor.setData( '&lt;p&gt;Hello world!&lt;/p&gt;' );
40
+ </pre>
41
+ <p>
42
+ <abbr title="Advanced Content Filter">ACF</abbr> discards invalid,
43
+ useless HTML tags and attributes so the editor remains "clean" during
44
+ runtime. <abbr title="Advanced Content Filter">ACF</abbr> behaviour
45
+ can be configured and adjusted for a particular case to prevent the
46
+ output HTML (i.e. in CMS systems) from being polluted.
47
+
48
+ This kind of filtering is a first, client-side line of defense
49
+ against "<a href="http://en.wikipedia.org/wiki/Tag_soup">tag soups</a>",
50
+ the tool that precisely restricts which tags, attributes and styles
51
+ are allowed (desired). When properly configured, <abbr title="Advanced Content Filter">ACF</abbr>
52
+ is an easy and fast way to produce a high-quality, intentionally filtered HTML.
53
+ </p>
54
+
55
+ <h3>How to configure or disable ACF?</h3>
56
+ <p>
57
+ Advanced Content Filter is enabled by default, working in "automatic mode", yet
58
+ it provides a set of easy rules that allow adjusting filtering rules
59
+ and disabling the entire feature when necessary. The config property
60
+ responsible for this feature is <code><a class="samples"
61
+ href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">config.allowedContent</a></code>.
62
+ </p>
63
+ <p>
64
+ By "automatic mode" is meant that loaded plugins decide which kind
65
+ of content is enabled and which is not. For example, if the link
66
+ plugin is loaded it implies that <code>&lt;a&gt;</code> tag is
67
+ automatically allowed. Each plugin is given a set
68
+ of predefined <abbr title="Advanced Content Filter">ACF</abbr> rules
69
+ that control the editor until <code><a class="samples"
70
+ href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
71
+ config.allowedContent</a></code>
72
+ is defined manually.
73
+ </p>
74
+ <p>
75
+ Let's assume our intention is to restrict the editor to accept (produce) <strong>paragraphs
76
+ only: no attributes, no styles, no other tags</strong>.
77
+ With <abbr title="Advanced Content Filter">ACF</abbr>
78
+ this is very simple. Basically set <code><a class="samples"
79
+ href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
80
+ config.allowedContent</a></code> to <code>'p'</code>:
81
+ </p>
82
+ <pre class="samples">
83
+ var editor = CKEDITOR.replace( <em>textarea_id</em>, {
84
+ <strong>allowedContent: 'p'</strong>
85
+ } );
86
+ </pre>
87
+ <p>
88
+ Now try to play with allowed content:
89
+ </p>
90
+ <pre class="samples">
91
+ // Trying to insert disallowed tag and attribute.
92
+ editor.setData( '&lt;p <strong>style="color: red"</strong>&gt;Hello <strong>&lt;em&gt;world&lt;/em&gt;</strong>!&lt;/p&gt;' );
93
+ alert( editor.getData() );
94
+
95
+ // Filtered data is returned.
96
+ "&lt;p&gt;Hello world!&lt;/p&gt;"
97
+ </pre>
98
+ <p>
99
+ What happened? Since <code>config.allowedContent: 'p'</code> is set the editor assumes
100
+ that only plain <code>&lt;p&gt;</code> are accepted. Nothing more. This is why
101
+ <code>style</code> attribute and <code>&lt;em&gt;</code> tag are gone. The same
102
+ filtering would happen if we pasted disallowed HTML into this editor.
103
+ </p>
104
+ <p>
105
+ This is just a small sample of what <abbr title="Advanced Content Filter">ACF</abbr>
106
+ can do. To know more, please refer to the sample section below and
107
+ <a href="http://docs.ckeditor.com/#!/guide/dev_advanced_content_filter">the official Advanced Content Filter guide</a>.
108
+ </p>
109
+ <p>
110
+ You may, of course, want CKEditor to avoid filtering of any kind.
111
+ To get rid of <abbr title="Advanced Content Filter">ACF</abbr>,
112
+ basically set <code><a class="samples"
113
+ href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
114
+ config.allowedContent</a></code> to <code>true</code> like this:
115
+ </p>
116
+ <pre class="samples">
117
+ CKEDITOR.replace( <em>textarea_id</em>, {
118
+ <strong>allowedContent: true</strong>
119
+ } );
120
+ </pre>
121
+
122
+ <h2>Beyond data flow: Features activation</h2>
123
+ <p>
124
+ <abbr title="Advanced Content Filter">ACF</abbr> is far more than
125
+ <abbr title="Input/Output">I/O</abbr> control: the entire
126
+ <abbr title="User Interface">UI</abbr> of the editor is adjusted to what
127
+ filters restrict. For example: if <code>&lt;a&gt;</code> tag is
128
+ <strong>disallowed</strong>
129
+ by <abbr title="Advanced Content Filter">ACF</abbr>,
130
+ then accordingly <code>link</code> command, toolbar button and link dialog
131
+ are also disabled. Editor is smart: it knows which features must be
132
+ removed from the interface to match filtering rules.
133
+ </p>
134
+ <p>
135
+ CKEditor can be far more specific. If <code>&lt;a&gt;</code> tag is
136
+ <strong>allowed</strong> by filtering rules to be used but it is restricted
137
+ to have only one attribute (<code>href</code>)
138
+ <code>config.allowedContent = 'a[!href]'</code>, then
139
+ "Target" tab of the link dialog is automatically disabled as <code>target</code>
140
+ attribute isn't included in <abbr title="Advanced Content Filter">ACF</abbr> rules
141
+ for <code>&lt;a&gt;</code>. This behaviour applies to dialog fields, context
142
+ menus and toolbar buttons.
143
+ </p>
144
+
145
+ <h2>Sample configurations</h2>
146
+ <p>
147
+ There are several editor instances below that present different
148
+ <abbr title="Advanced Content Filter">ACF</abbr> setups. <strong>All of them,
149
+ except the inline instance, share the same HTML content</strong> to visualize
150
+ how different filtering rules affect the same input data.
151
+ </p>
152
+ </div>
153
+
154
+ <div>
155
+ <label for="editor1">
156
+ Editor 1:
157
+ </label>
158
+ <div class="description">
159
+ <p>
160
+ This editor is using default configuration ("automatic mode"). It means that
161
+ <code><a class="samples"
162
+ href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
163
+ config.allowedContent</a></code> is defined by loaded plugins.
164
+ Each plugin extends filtering rules to make it's own associated content
165
+ available for the user.
166
+ </p>
167
+ </div>
168
+ <textarea cols="80" id="editor1" name="editor1" rows="10">
169
+ &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
170
+ </textarea>
171
+
172
+ <script>
173
+
174
+ CKEDITOR.replace( 'editor1' );
175
+
176
+ </script>
177
+ </div>
178
+
179
+ <br>
180
+
181
+ <div>
182
+ <label for="editor2">
183
+ Editor 2:
184
+ </label>
185
+ <div class="description">
186
+ <p>
187
+ This editor is using a custom configuration for
188
+ <abbr title="Advanced Content Filter">ACF</abbr>:
189
+ </p>
190
+ <pre class="samples">
191
+ CKEDITOR.replace( 'editor2', {
192
+ allowedContent:
193
+ 'h1 h2 h3 p blockquote strong em;' +
194
+ 'a[!href];' +
195
+ 'img(left,right)[!src,alt,width,height];' +
196
+ 'table tr th td caption;' +
197
+ 'span{!font-family};' +'
198
+ 'span{!color};' +
199
+ 'span(!marker);' +
200
+ 'del ins'
201
+ } );
202
+ </pre>
203
+ <p>
204
+ The following rules may require additional explanation:
205
+ </p>
206
+ <ul>
207
+ <li>
208
+ <code>h1 h2 h3 p blockquote strong em</code> - These tags
209
+ are accepted by the editor. Any tag attributes will be discarded.
210
+ </li>
211
+ <li>
212
+ <code>a[!href]</code> - <code>href</code> attribute is obligatory
213
+ for <code>&lt;a&gt;</code> tag. Tags without this attribute
214
+ are disarded. No other attribute will be accepted.
215
+ </li>
216
+ <li>
217
+ <code>img(left,right)[!src,alt,width,height]</code> - <code>src</code>
218
+ attribute is obligatory for <code>&lt;img&gt;</code> tag.
219
+ <code>alt</code>, <code>width</code>, <code>height</code>
220
+ and <code>class</code> attributes are accepted but
221
+ <code>class</code> must be either <code>class="left"</code>
222
+ or <code>class="right"</code>
223
+ </li>
224
+ <li>
225
+ <code>table tr th td caption</code> - These tags
226
+ are accepted by the editor. Any tag attributes will be discarded.
227
+ </li>
228
+ <li>
229
+ <code>span{!font-family}</code>, <code>span{!color}</code>,
230
+ <code>span(!marker)</code> - <code>&lt;span&gt;</code> tags
231
+ will be accepted if either <code>font-family</code> or
232
+ <code>color</code> style is set or <code>class="marker"</code>
233
+ is present.
234
+ </li>
235
+ <li>
236
+ <code>del ins</code> - These tags
237
+ are accepted by the editor. Any tag attributes will be discarded.
238
+ </li>
239
+ </ul>
240
+ <p>
241
+ Please note that <strong><abbr title="User Interface">UI</abbr> of the
242
+ editor is different</strong>. It's a response to what happened to the filters.
243
+ Since <code>text-align</code> isn't allowed, the align toolbar is gone.
244
+ The same thing happened to subscript/superscript, strike, underline
245
+ (<code>&lt;u&gt;</code>, <code>&lt;sub&gt;</code>, <code>&lt;sup&gt;</code>
246
+ are disallowed by <code><a class="samples"
247
+ href="http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-allowedContent">
248
+ config.allowedContent</a></code>) and many other buttons.
249
+ </p>
250
+ </div>
251
+ <textarea cols="80" id="editor2" name="editor2" rows="10">
252
+ &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
253
+ </textarea>
254
+ <script>
255
+
256
+ CKEDITOR.replace( 'editor2', {
257
+ allowedContent:
258
+ 'h1 h2 h3 p blockquote strong em;' +
259
+ 'a[!href];' +
260
+ 'img(left,right)[!src,alt,width,height];' +
261
+ 'table tr th td caption;' +
262
+ 'span{!font-family};' +
263
+ 'span{!color};' +
264
+ 'span(!marker);' +
265
+ 'del ins'
266
+ } );
267
+
268
+ </script>
269
+ </div>
270
+
271
+ <br>
272
+
273
+ <div>
274
+ <label for="editor3">
275
+ Editor 3:
276
+ </label>
277
+ <div class="description">
278
+ <p>
279
+ This editor is using a custom configuration for
280
+ <abbr title="Advanced Content Filter">ACF</abbr>.
281
+ Note that filters can be configured as an object literal
282
+ as an alternative to a string-based definition.
283
+ </p>
284
+ <pre class="samples">
285
+ CKEDITOR.replace( 'editor3', {
286
+ allowedContent: {
287
+ 'b i ul ol big small': true,
288
+ 'h1 h2 h3 p blockquote li': {
289
+ styles: 'text-align'
290
+ },
291
+ a: { attributes: '!href,target' },
292
+ img: {
293
+ attributes: '!src,alt',
294
+ styles: 'width,height',
295
+ classes: 'left,right'
296
+ }
297
+ }
298
+ } );
299
+ </pre>
300
+ </div>
301
+ <textarea cols="80" id="editor3" name="editor3" rows="10">
302
+ &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
303
+ </textarea>
304
+ <script>
305
+
306
+ CKEDITOR.replace( 'editor3', {
307
+ allowedContent: {
308
+ 'b i ul ol big small': true,
309
+ 'h1 h2 h3 p blockquote li': {
310
+ styles: 'text-align'
311
+ },
312
+ a: { attributes: '!href,target' },
313
+ img: {
314
+ attributes: '!src,alt',
315
+ styles: 'width,height',
316
+ classes: 'left,right'
317
+ }
318
+ }
319
+ } );
320
+
321
+ </script>
322
+ </div>
323
+
324
+ <br>
325
+
326
+ <div>
327
+ <label for="editor4">
328
+ Editor 4:
329
+ </label>
330
+ <div class="description">
331
+ <p>
332
+ This editor is using a custom set of plugins and buttons.
333
+ </p>
334
+ <pre class="samples">
335
+ CKEDITOR.replace( 'editor4', {
336
+ removePlugins: 'bidi,font,forms,flash,horizontalrule,iframe,justify,table,tabletools,smiley',
337
+ removeButtons: 'Anchor,Underline,Strike,Subscript,Superscript,Image',
338
+ format_tags: 'p;h1;h2;h3;pre;address'
339
+ } );
340
+ </pre>
341
+ <p>
342
+ As you can see, removing plugins and buttons implies filtering.
343
+ Several tags are not allowed in the editor because there's no
344
+ plugin/button that is responsible for creating and editing this
345
+ kind of content (for example: the image is missing because
346
+ of <code>removeButtons: 'Image'</code>). The conclusion is that
347
+ <abbr title="Advanced Content Filter">ACF</abbr> works "backwards"
348
+ as well: <strong>modifying <abbr title="User Interface">UI</abbr>
349
+ elements is changing allowed content rules</strong>.
350
+ </p>
351
+ </div>
352
+ <textarea cols="80" id="editor4" name="editor4" rows="10">
353
+ &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
354
+ </textarea>
355
+ <script>
356
+
357
+ CKEDITOR.replace( 'editor4', {
358
+ removePlugins: 'bidi,div,font,forms,flash,horizontalrule,iframe,justify,table,tabletools,smiley',
359
+ removeButtons: 'Anchor,Underline,Strike,Subscript,Superscript,Image',
360
+ format_tags: 'p;h1;h2;h3;pre;address'
361
+ } );
362
+
363
+ </script>
364
+ </div>
365
+
366
+ <br>
367
+
368
+ <div>
369
+ <label for="editor5">
370
+ Editor 5:
371
+ </label>
372
+ <div class="description">
373
+ <p>
374
+ This editor is built on editable <code>&lt;h1&gt;</code> element.
375
+ <abbr title="Advanced Content Filter">ACF</abbr> takes care of
376
+ what can be included in <code>&lt;h1&gt;</code>. Note that there
377
+ are no block styles in Styles combo. Also why lists, indentation,
378
+ blockquote, div, form and other buttons are missing.
379
+ </p>
380
+ <p>
381
+ <abbr title="Advanced Content Filter">ACF</abbr> makes sure that
382
+ no disallowed tags will come to <code>&lt;h1&gt;</code> so the final
383
+ markup is valid. If the user tried to paste some invalid HTML
384
+ into this editor (let's say a list), it would be automatically
385
+ converted into plain text.
386
+ </p>
387
+ </div>
388
+ <h1 id="editor5" contenteditable="true">
389
+ <em>Apollo 11</em> was the spaceflight that landed the first humans, Americans <a href="http://en.wikipedia.org/wiki/Neil_Armstrong" title="Neil Armstrong">Neil Armstrong</a> and <a href="http://en.wikipedia.org/wiki/Buzz_Aldrin" title="Buzz Aldrin">Buzz Aldrin</a>, on the Moon on July 20, 1969, at 20:18 UTC.
390
+ </h1>
391
+ </div>
392
+
393
+ <br>
394
+
395
+ <div>
396
+ <label for="editor3">
397
+ Editor 6:
398
+ </label>
399
+ <div class="description">
400
+ <p>
401
+ This editor is using a custom configuration for <abbr title="Advanced Content Filter">ACF</abbr>.
402
+ It's using the <a href="http://docs.ckeditor.com/#!/guide/dev_disallowed_content" target="_blank">
403
+ Disallowed Content</a> property of the filter to eliminate all <code>title</code> attributes.
404
+ </p>
405
+
406
+ <pre class="samples">
407
+ CKEDITOR.replace( 'editor6', {
408
+ allowedContent: {
409
+ 'b i ul ol big small': true,
410
+ 'h1 h2 h3 p blockquote li': {
411
+ styles: 'text-align'
412
+ },
413
+ a: {attributes: '!href,target'},
414
+ img: {
415
+ attributes: '!src,alt',
416
+ styles: 'width,height',
417
+ classes: 'left,right'
418
+ }
419
+ },
420
+ disallowedContent: '*{title*}'
421
+ } );
422
+ </pre>
423
+ </div>
424
+ <textarea cols="80" id="editor6" name="editor6" rows="10">
425
+ &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
426
+ </textarea>
427
+ <script>
428
+
429
+ CKEDITOR.replace( 'editor6', {
430
+ allowedContent: {
431
+ 'b i ul ol big small': true,
432
+ 'h1 h2 h3 p blockquote li': {
433
+ styles: 'text-align'
434
+ },
435
+ a: {attributes: '!href,target'},
436
+ img: {
437
+ attributes: '!src,alt',
438
+ styles: 'width,height',
439
+ classes: 'left,right'
440
+ }
441
+ },
442
+ disallowedContent: '*{title*}'
443
+ } );
444
+
445
+ </script>
446
+ </div>
447
+
448
+ <br>
449
+
450
+ <div>
451
+ <label for="editor7">
452
+ Editor 7:
453
+ </label>
454
+ <div class="description">
455
+ <p>
456
+ This editor is using a custom configuration for <abbr title="Advanced Content Filter">ACF</abbr>.
457
+ It's using the <a href="http://docs.ckeditor.com/#!/guide/dev_disallowed_content" target="_blank">
458
+ Disallowed Content</a> property of the filter to eliminate all <code>a</code> and <code>img</code> tags,
459
+ while allowing all other tags.
460
+ </p>
461
+ <pre class="samples">
462
+ CKEDITOR.replace( 'editor7', {
463
+ allowedContent: {
464
+ // Allow all content.
465
+ $1: {
466
+ elements: CKEDITOR.dtd,
467
+ attributes: true,
468
+ styles: true,
469
+ classes: true
470
+ }
471
+ },
472
+ disallowedContent: 'img a'
473
+ } );
474
+ </pre>
475
+ </div>
476
+ <textarea cols="80" id="editor7" name="editor7" rows="10">
477
+ &lt;h1&gt;&lt;img alt=&quot;Saturn V carrying Apollo 11&quot; class=&quot;right&quot; src=&quot;assets/sample.jpg&quot;/&gt; Apollo 11&lt;/h1&gt; &lt;p&gt;&lt;b&gt;Apollo 11&lt;/b&gt; was the spaceflight that landed the first humans, Americans &lt;a href=&quot;http://en.wikipedia.org/wiki/Neil_Armstrong&quot; title=&quot;Neil Armstrong&quot;&gt;Neil Armstrong&lt;/a&gt; and &lt;a href=&quot;http://en.wikipedia.org/wiki/Buzz_Aldrin&quot; title=&quot;Buzz Aldrin&quot;&gt;Buzz Aldrin&lt;/a&gt;, on the Moon on July 20, 1969, at 20:18 UTC. Armstrong became the first to step onto the lunar surface 6 hours later on July 21 at 02:56 UTC.&lt;/p&gt; &lt;p&gt;Armstrong spent about &lt;s&gt;three and a half&lt;/s&gt; two and a half hours outside the spacecraft, Aldrin slightly less; and together they collected 47.5 pounds (21.5&amp;nbsp;kg) of lunar material for return to Earth. A third member of the mission, &lt;a href=&quot;http://en.wikipedia.org/wiki/Michael_Collins_(astronaut)&quot; title=&quot;Michael Collins (astronaut)&quot;&gt;Michael Collins&lt;/a&gt;, piloted the &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_Command/Service_Module&quot; title=&quot;Apollo Command/Service Module&quot;&gt;command&lt;/a&gt; spacecraft alone in lunar orbit until Armstrong and Aldrin returned to it for the trip back to Earth.&lt;/p&gt; &lt;h2&gt;Broadcasting and &lt;em&gt;quotes&lt;/em&gt; &lt;a id=&quot;quotes&quot; name=&quot;quotes&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;p&gt;Broadcast on live TV to a world-wide audience, Armstrong stepped onto the lunar surface and described the event as:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;One small step for [a] man, one giant leap for mankind.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Apollo 11 effectively ended the &lt;a href=&quot;http://en.wikipedia.org/wiki/Space_Race&quot; title=&quot;Space Race&quot;&gt;Space Race&lt;/a&gt; and fulfilled a national goal proposed in 1961 by the late U.S. President &lt;a href=&quot;http://en.wikipedia.org/wiki/John_F._Kennedy&quot; title=&quot;John F. Kennedy&quot;&gt;John F. Kennedy&lt;/a&gt; in a speech before the United States Congress:&lt;/p&gt; &lt;blockquote&gt;&lt;p&gt;[...] before this decade is out, of landing a man on the Moon and returning him safely to the Earth.&lt;/p&gt;&lt;/blockquote&gt; &lt;h2&gt;Technical details &lt;a id=&quot;tech-details&quot; name=&quot;tech-details&quot;&gt;&lt;/a&gt;&lt;/h2&gt; &lt;table align=&quot;right&quot; border=&quot;1&quot; bordercolor=&quot;#ccc&quot; cellpadding=&quot;5&quot; cellspacing=&quot;0&quot; style=&quot;border-collapse:collapse;margin:10px 0 10px 15px;&quot;&gt; &lt;caption&gt;&lt;strong&gt;Mission crew&lt;/strong&gt;&lt;/caption&gt; &lt;thead&gt; &lt;tr&gt; &lt;th scope=&quot;col&quot;&gt;Position&lt;/th&gt; &lt;th scope=&quot;col&quot;&gt;Astronaut&lt;/th&gt; &lt;/tr&gt; &lt;/thead&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;Commander&lt;/td&gt; &lt;td&gt;Neil A. Armstrong&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Command Module Pilot&lt;/td&gt; &lt;td&gt;Michael Collins&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;Lunar Module Pilot&lt;/td&gt; &lt;td&gt;Edwin &amp;quot;Buzz&amp;quot; E. Aldrin, Jr.&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;Launched by a &lt;strong&gt;Saturn V&lt;/strong&gt; rocket from &lt;a href=&quot;http://en.wikipedia.org/wiki/Kennedy_Space_Center&quot; title=&quot;Kennedy Space Center&quot;&gt;Kennedy Space Center&lt;/a&gt; in Merritt Island, Florida on July 16, Apollo 11 was the fifth manned mission of &lt;a href=&quot;http://en.wikipedia.org/wiki/NASA&quot; title=&quot;NASA&quot;&gt;NASA&lt;/a&gt;&amp;#39;s Apollo program. The Apollo spacecraft had three parts:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Command Module&lt;/strong&gt; with a cabin for the three astronauts which was the only part which landed back on Earth&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Service Module&lt;/strong&gt; which supported the Command Module with propulsion, electrical power, oxygen and water&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Lunar Module&lt;/strong&gt; for landing on the Moon.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;After being sent to the Moon by the Saturn V&amp;#39;s upper stage, the astronauts separated the spacecraft from it and travelled for three days until they entered into lunar orbit. Armstrong and Aldrin then moved into the Lunar Module and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mare_Tranquillitatis&quot; title=&quot;Mare Tranquillitatis&quot;&gt;Sea of Tranquility&lt;/a&gt;. They stayed a total of about 21 and a half hours on the lunar surface. After lifting off in the upper part of the Lunar Module and rejoining Collins in the Command Module, they returned to Earth and landed in the &lt;a href=&quot;http://en.wikipedia.org/wiki/Pacific_Ocean&quot; title=&quot;Pacific Ocean&quot;&gt;Pacific Ocean&lt;/a&gt; on July 24.&lt;/p&gt; &lt;hr/&gt; &lt;p style=&quot;text-align: right;&quot;&gt;&lt;small&gt;Source: &lt;a href=&quot;http://en.wikipedia.org/wiki/Apollo_11&quot;&gt;Wikipedia.org&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
478
+ </textarea>
479
+ <script>
480
+
481
+ CKEDITOR.replace( 'editor7', {
482
+ allowedContent: {
483
+ // allow all content
484
+ $1: {
485
+ elements: CKEDITOR.dtd,
486
+ attributes: true,
487
+ styles: true,
488
+ classes: true
489
+ }
490
+ },
491
+ disallowedContent: 'img a'
492
+ } );
493
+
494
+ </script>
495
+ </div>
496
+
497
+ <div id="footer">
498
+ <hr>
499
+ <p>
500
+ CKEditor - The text editor for the Internet - <a class="samples" href="http://ckeditor.com/">http://ckeditor.com</a>
501
+ </p>
502
+ <p id="copy">
503
+ Copyright &copy; 2003-2015, <a class="samples" href="http://cksource.com/">CKSource</a> - Frederico
504
+ Knabben. All rights reserved.
505
+ </p>
506
+ </div>
507
+ </body>
508
+ </html>