rails_editor_liu 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (241) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +6 -0
  3. data/Gemfile +6 -0
  4. data/README.md +526 -0
  5. data/Rakefile +2 -0
  6. data/app/assets/javascripts/kindeditor.js +1 -0
  7. data/app/controllers/kindeditor/assets_controller.rb +136 -0
  8. data/app/uploaders/kindeditor/asset_uploader.rb +112 -0
  9. data/app/uploaders/kindeditor/file_uploader.rb +10 -0
  10. data/app/uploaders/kindeditor/flash_uploader.rb +10 -0
  11. data/app/uploaders/kindeditor/image_uploader.rb +10 -0
  12. data/app/uploaders/kindeditor/media_uploader.rb +10 -0
  13. data/config/routes.rb +6 -0
  14. data/lib/generators/rails_kindeditor/install/USAGE +10 -0
  15. data/lib/generators/rails_kindeditor/install/install_generator.rb +23 -0
  16. data/lib/generators/rails_kindeditor/install/templates/application.js +17 -0
  17. data/lib/generators/rails_kindeditor/install/templates/rails_kindeditor.rb +19 -0
  18. data/lib/generators/rails_kindeditor/migration/USAGE +14 -0
  19. data/lib/generators/rails_kindeditor/migration/migration_generator.rb +36 -0
  20. data/lib/generators/rails_kindeditor/migration/templates/migration/migration.rb +17 -0
  21. data/lib/generators/rails_kindeditor/migration/templates/models/active_record/kindeditor/asset.rb +14 -0
  22. data/lib/generators/rails_kindeditor/migration/templates/models/active_record/kindeditor/file.rb +3 -0
  23. data/lib/generators/rails_kindeditor/migration/templates/models/active_record/kindeditor/flash.rb +3 -0
  24. data/lib/generators/rails_kindeditor/migration/templates/models/active_record/kindeditor/image.rb +3 -0
  25. data/lib/generators/rails_kindeditor/migration/templates/models/active_record/kindeditor/media.rb +3 -0
  26. data/lib/generators/rails_kindeditor/migration/templates/models/mongoid/kindeditor/asset.rb +27 -0
  27. data/lib/generators/rails_kindeditor/migration/templates/models/mongoid/kindeditor/file.rb +3 -0
  28. data/lib/generators/rails_kindeditor/migration/templates/models/mongoid/kindeditor/flash.rb +3 -0
  29. data/lib/generators/rails_kindeditor/migration/templates/models/mongoid/kindeditor/image.rb +3 -0
  30. data/lib/generators/rails_kindeditor/migration/templates/models/mongoid/kindeditor/media.rb +3 -0
  31. data/lib/rails_kindeditor/active_record.rb +14 -0
  32. data/lib/rails_kindeditor/engine.rb +34 -0
  33. data/lib/rails_kindeditor/formtastic.rb +12 -0
  34. data/lib/rails_kindeditor/helper.rb +96 -0
  35. data/lib/rails_kindeditor/simple_form.rb +11 -0
  36. data/lib/rails_kindeditor/version.rb +4 -0
  37. data/lib/rails_kindeditor.rb +58 -0
  38. data/lib/tasks/assets.rake +9 -0
  39. data/rails_kindeditor.gemspec +23 -0
  40. data/screenshots/rails_kindeditor.png +0 -0
  41. data/screenshots/simple_mode.png +0 -0
  42. data/vendor/assets/javascripts/kindeditor/kindeditor.js +5963 -0
  43. data/vendor/assets/javascripts/kindeditor/lang/ar.js +233 -0
  44. data/vendor/assets/javascripts/kindeditor/lang/en.js +232 -0
  45. data/vendor/assets/javascripts/kindeditor/lang/ko.js +237 -0
  46. data/vendor/assets/javascripts/kindeditor/lang/zh_CN.js +237 -0
  47. data/vendor/assets/javascripts/kindeditor/lang/zh_TW.js +235 -0
  48. data/vendor/assets/javascripts/kindeditor/plugins/anchor/anchor.js +46 -0
  49. data/vendor/assets/javascripts/kindeditor/plugins/autoheight/autoheight.js +54 -0
  50. data/vendor/assets/javascripts/kindeditor/plugins/baidumap/baidumap.js +93 -0
  51. data/vendor/assets/javascripts/kindeditor/plugins/baidumap/index.html +83 -0
  52. data/vendor/assets/javascripts/kindeditor/plugins/baidumap/map.html +43 -0
  53. data/vendor/assets/javascripts/kindeditor/plugins/clearhtml/clearhtml.js +29 -0
  54. data/vendor/assets/javascripts/kindeditor/plugins/code/code.js +62 -0
  55. data/vendor/assets/javascripts/kindeditor/plugins/code/prettify.css +13 -0
  56. data/vendor/assets/javascripts/kindeditor/plugins/code/prettify.js +28 -0
  57. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/emoticons.js +129 -0
  58. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/0.gif +0 -0
  59. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/1.gif +0 -0
  60. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/10.gif +0 -0
  61. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/100.gif +0 -0
  62. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/101.gif +0 -0
  63. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/102.gif +0 -0
  64. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/103.gif +0 -0
  65. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/104.gif +0 -0
  66. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/105.gif +0 -0
  67. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/106.gif +0 -0
  68. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/107.gif +0 -0
  69. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/108.gif +0 -0
  70. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/109.gif +0 -0
  71. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/11.gif +0 -0
  72. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/110.gif +0 -0
  73. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/111.gif +0 -0
  74. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/112.gif +0 -0
  75. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/113.gif +0 -0
  76. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/114.gif +0 -0
  77. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/115.gif +0 -0
  78. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/116.gif +0 -0
  79. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/117.gif +0 -0
  80. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/118.gif +0 -0
  81. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/119.gif +0 -0
  82. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/12.gif +0 -0
  83. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/120.gif +0 -0
  84. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/121.gif +0 -0
  85. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/122.gif +0 -0
  86. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/123.gif +0 -0
  87. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/124.gif +0 -0
  88. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/125.gif +0 -0
  89. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/126.gif +0 -0
  90. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/127.gif +0 -0
  91. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/128.gif +0 -0
  92. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/129.gif +0 -0
  93. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/13.gif +0 -0
  94. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/130.gif +0 -0
  95. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/131.gif +0 -0
  96. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/132.gif +0 -0
  97. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/133.gif +0 -0
  98. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/134.gif +0 -0
  99. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/14.gif +0 -0
  100. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/15.gif +0 -0
  101. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/16.gif +0 -0
  102. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/17.gif +0 -0
  103. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/18.gif +0 -0
  104. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/19.gif +0 -0
  105. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/2.gif +0 -0
  106. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/20.gif +0 -0
  107. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/21.gif +0 -0
  108. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/22.gif +0 -0
  109. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/23.gif +0 -0
  110. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/24.gif +0 -0
  111. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/25.gif +0 -0
  112. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/26.gif +0 -0
  113. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/27.gif +0 -0
  114. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/28.gif +0 -0
  115. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/29.gif +0 -0
  116. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/3.gif +0 -0
  117. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/30.gif +0 -0
  118. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/31.gif +0 -0
  119. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/32.gif +0 -0
  120. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/33.gif +0 -0
  121. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/34.gif +0 -0
  122. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/35.gif +0 -0
  123. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/36.gif +0 -0
  124. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/37.gif +0 -0
  125. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/38.gif +0 -0
  126. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/39.gif +0 -0
  127. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/4.gif +0 -0
  128. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/40.gif +0 -0
  129. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/41.gif +0 -0
  130. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/42.gif +0 -0
  131. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/43.gif +0 -0
  132. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/44.gif +0 -0
  133. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/45.gif +0 -0
  134. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/46.gif +0 -0
  135. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/47.gif +0 -0
  136. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/48.gif +0 -0
  137. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/49.gif +0 -0
  138. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/5.gif +0 -0
  139. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/50.gif +0 -0
  140. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/51.gif +0 -0
  141. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/52.gif +0 -0
  142. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/53.gif +0 -0
  143. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/54.gif +0 -0
  144. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/55.gif +0 -0
  145. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/56.gif +0 -0
  146. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/57.gif +0 -0
  147. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/58.gif +0 -0
  148. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/59.gif +0 -0
  149. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/6.gif +0 -0
  150. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/60.gif +0 -0
  151. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/61.gif +0 -0
  152. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/62.gif +0 -0
  153. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/63.gif +0 -0
  154. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/64.gif +0 -0
  155. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/65.gif +0 -0
  156. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/66.gif +0 -0
  157. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/67.gif +0 -0
  158. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/68.gif +0 -0
  159. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/69.gif +0 -0
  160. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/7.gif +0 -0
  161. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/70.gif +0 -0
  162. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/71.gif +0 -0
  163. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/72.gif +0 -0
  164. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/73.gif +0 -0
  165. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/74.gif +0 -0
  166. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/75.gif +0 -0
  167. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/76.gif +0 -0
  168. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/77.gif +0 -0
  169. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/78.gif +0 -0
  170. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/79.gif +0 -0
  171. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/8.gif +0 -0
  172. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/80.gif +0 -0
  173. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/81.gif +0 -0
  174. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/82.gif +0 -0
  175. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/83.gif +0 -0
  176. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/84.gif +0 -0
  177. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/85.gif +0 -0
  178. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/86.gif +0 -0
  179. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/87.gif +0 -0
  180. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/88.gif +0 -0
  181. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/89.gif +0 -0
  182. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/9.gif +0 -0
  183. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/90.gif +0 -0
  184. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/91.gif +0 -0
  185. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/92.gif +0 -0
  186. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/93.gif +0 -0
  187. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/94.gif +0 -0
  188. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/95.gif +0 -0
  189. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/96.gif +0 -0
  190. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/97.gif +0 -0
  191. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/98.gif +0 -0
  192. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/99.gif +0 -0
  193. data/vendor/assets/javascripts/kindeditor/plugins/emoticons/images/static.gif +0 -0
  194. data/vendor/assets/javascripts/kindeditor/plugins/filemanager/filemanager.js +189 -0
  195. data/vendor/assets/javascripts/kindeditor/plugins/filemanager/images/file-16.gif +0 -0
  196. data/vendor/assets/javascripts/kindeditor/plugins/filemanager/images/file-64.gif +0 -0
  197. data/vendor/assets/javascripts/kindeditor/plugins/filemanager/images/folder-16.gif +0 -0
  198. data/vendor/assets/javascripts/kindeditor/plugins/filemanager/images/folder-64.gif +0 -0
  199. data/vendor/assets/javascripts/kindeditor/plugins/filemanager/images/go-up.gif +0 -0
  200. data/vendor/assets/javascripts/kindeditor/plugins/flash/flash.js +161 -0
  201. data/vendor/assets/javascripts/kindeditor/plugins/image/image.js +328 -0
  202. data/vendor/assets/javascripts/kindeditor/plugins/image/images/align_left.gif +0 -0
  203. data/vendor/assets/javascripts/kindeditor/plugins/image/images/align_right.gif +0 -0
  204. data/vendor/assets/javascripts/kindeditor/plugins/image/images/align_top.gif +0 -0
  205. data/vendor/assets/javascripts/kindeditor/plugins/image/images/refresh.png +0 -0
  206. data/vendor/assets/javascripts/kindeditor/plugins/insertfile/insertfile.js +138 -0
  207. data/vendor/assets/javascripts/kindeditor/plugins/lineheight/lineheight.js +38 -0
  208. data/vendor/assets/javascripts/kindeditor/plugins/link/link.js +66 -0
  209. data/vendor/assets/javascripts/kindeditor/plugins/map/map.html +57 -0
  210. data/vendor/assets/javascripts/kindeditor/plugins/map/map.js +137 -0
  211. data/vendor/assets/javascripts/kindeditor/plugins/media/media.js +170 -0
  212. data/vendor/assets/javascripts/kindeditor/plugins/modal/modal.js +43 -0
  213. data/vendor/assets/javascripts/kindeditor/plugins/multiimage/images/image.png +0 -0
  214. data/vendor/assets/javascripts/kindeditor/plugins/multiimage/images/select-files-en.png +0 -0
  215. data/vendor/assets/javascripts/kindeditor/plugins/multiimage/images/select-files-zh_CN.png +0 -0
  216. data/vendor/assets/javascripts/kindeditor/plugins/multiimage/images/swfupload.swf +0 -0
  217. data/vendor/assets/javascripts/kindeditor/plugins/multiimage/multiimage.js +1384 -0
  218. data/vendor/assets/javascripts/kindeditor/plugins/pagebreak/pagebreak.js +27 -0
  219. data/vendor/assets/javascripts/kindeditor/plugins/plainpaste/plainpaste.js +41 -0
  220. data/vendor/assets/javascripts/kindeditor/plugins/preview/preview.js +31 -0
  221. data/vendor/assets/javascripts/kindeditor/plugins/quickformat/quickformat.js +81 -0
  222. data/vendor/assets/javascripts/kindeditor/plugins/smimage/smimage.js +267 -0
  223. data/vendor/assets/javascripts/kindeditor/plugins/table/table.js +712 -0
  224. data/vendor/assets/javascripts/kindeditor/plugins/template/html/1.html +14 -0
  225. data/vendor/assets/javascripts/kindeditor/plugins/template/html/2.html +42 -0
  226. data/vendor/assets/javascripts/kindeditor/plugins/template/html/3.html +36 -0
  227. data/vendor/assets/javascripts/kindeditor/plugins/template/template.js +58 -0
  228. data/vendor/assets/javascripts/kindeditor/plugins/wordpaste/wordpaste.js +51 -0
  229. data/vendor/assets/javascripts/kindeditor/themes/common/anchor.gif +0 -0
  230. data/vendor/assets/javascripts/kindeditor/themes/common/blank.gif +0 -0
  231. data/vendor/assets/javascripts/kindeditor/themes/common/flash.gif +0 -0
  232. data/vendor/assets/javascripts/kindeditor/themes/common/loading.gif +0 -0
  233. data/vendor/assets/javascripts/kindeditor/themes/common/media.gif +0 -0
  234. data/vendor/assets/javascripts/kindeditor/themes/common/rm.gif +0 -0
  235. data/vendor/assets/javascripts/kindeditor/themes/default/background.png +0 -0
  236. data/vendor/assets/javascripts/kindeditor/themes/default/default.css +1158 -0
  237. data/vendor/assets/javascripts/kindeditor/themes/default/default.png +0 -0
  238. data/vendor/assets/javascripts/kindeditor/themes/qq/editor.gif +0 -0
  239. data/vendor/assets/javascripts/kindeditor/themes/qq/qq.css +143 -0
  240. data/vendor/assets/javascripts/kindeditor/themes/simple/simple.css +100 -0
  241. metadata +310 -0
@@ -0,0 +1,27 @@
1
+ /*******************************************************************************
2
+ * KindEditor - WYSIWYG HTML Editor for Internet
3
+ * Copyright (C) 2006-2011 kindsoft.net
4
+ *
5
+ * @author Roddy <luolonghao@gmail.com>
6
+ * @site http://www.kindsoft.net/
7
+ * @licence http://www.kindsoft.net/license.php
8
+ *******************************************************************************/
9
+
10
+ KindEditor.plugin('pagebreak', function(K) {
11
+ var self = this;
12
+ var name = 'pagebreak';
13
+ var pagebreakHtml = K.undef(self.pagebreakHtml, '<hr style="page-break-after: always;" class="ke-pagebreak" />');
14
+
15
+ self.clickToolbar(name, function() {
16
+ var cmd = self.cmd, range = cmd.range;
17
+ self.focus();
18
+ var tail = self.newlineTag == 'br' || K.WEBKIT ? '' : '<span id="__kindeditor_tail_tag__"></span>';
19
+ self.insertHtml(pagebreakHtml + tail);
20
+ if (tail !== '') {
21
+ var p = K('#__kindeditor_tail_tag__', self.edit.doc);
22
+ range.selectNodeContents(p[0]);
23
+ p.removeAttr('id');
24
+ cmd.select();
25
+ }
26
+ });
27
+ });
@@ -0,0 +1,41 @@
1
+ /*******************************************************************************
2
+ * KindEditor - WYSIWYG HTML Editor for Internet
3
+ * Copyright (C) 2006-2011 kindsoft.net
4
+ *
5
+ * @author Roddy <luolonghao@gmail.com>
6
+ * @site http://www.kindsoft.net/
7
+ * @licence http://www.kindsoft.net/license.php
8
+ *******************************************************************************/
9
+
10
+ KindEditor.plugin('plainpaste', function(K) {
11
+ var self = this, name = 'plainpaste';
12
+ self.clickToolbar(name, function() {
13
+ var lang = self.lang(name + '.'),
14
+ html = '<div style="padding:10px 20px;">' +
15
+ '<div style="margin-bottom:10px;">' + lang.comment + '</div>' +
16
+ '<textarea class="ke-textarea" style="width:408px;height:260px;"></textarea>' +
17
+ '</div>',
18
+ dialog = self.createDialog({
19
+ name : name,
20
+ width : 450,
21
+ title : self.lang(name),
22
+ body : html,
23
+ yesBtn : {
24
+ name : self.lang('yes'),
25
+ click : function(e) {
26
+ var html = textarea.val();
27
+ html = K.escape(html);
28
+ html = html.replace(/ {2}/g, ' &nbsp;');
29
+ if (self.newlineTag == 'p') {
30
+ html = html.replace(/^/, '<p>').replace(/$/, '</p>').replace(/\n/g, '</p><p>');
31
+ } else {
32
+ html = html.replace(/\n/g, '<br />$&');
33
+ }
34
+ self.insertHtml(html).hideDialog().focus();
35
+ }
36
+ }
37
+ }),
38
+ textarea = K('textarea', dialog.div);
39
+ textarea[0].focus();
40
+ });
41
+ });
@@ -0,0 +1,31 @@
1
+ /*******************************************************************************
2
+ * KindEditor - WYSIWYG HTML Editor for Internet
3
+ * Copyright (C) 2006-2011 kindsoft.net
4
+ *
5
+ * @author Roddy <luolonghao@gmail.com>
6
+ * @site http://www.kindsoft.net/
7
+ * @licence http://www.kindsoft.net/license.php
8
+ *******************************************************************************/
9
+
10
+ KindEditor.plugin('preview', function(K) {
11
+ var self = this, name = 'preview', undefined;
12
+ self.clickToolbar(name, function() {
13
+ var lang = self.lang(name + '.'),
14
+ html = '<div style="padding:10px 20px;">' +
15
+ '<iframe class="ke-textarea" frameborder="0" style="width:708px;height:400px;"></iframe>' +
16
+ '</div>',
17
+ dialog = self.createDialog({
18
+ name : name,
19
+ width : 750,
20
+ title : self.lang(name),
21
+ body : html
22
+ }),
23
+ iframe = K('iframe', dialog.div),
24
+ doc = K.iframeDoc(iframe);
25
+ doc.open();
26
+ doc.write(self.fullHtml());
27
+ doc.close();
28
+ K(doc.body).css('background-color', '#FFF');
29
+ iframe[0].contentWindow.focus();
30
+ });
31
+ });
@@ -0,0 +1,81 @@
1
+ /*******************************************************************************
2
+ * KindEditor - WYSIWYG HTML Editor for Internet
3
+ * Copyright (C) 2006-2011 kindsoft.net
4
+ *
5
+ * @author Roddy <luolonghao@gmail.com>
6
+ * @site http://www.kindsoft.net/
7
+ * @licence http://www.kindsoft.net/license.php
8
+ *******************************************************************************/
9
+
10
+ KindEditor.plugin('quickformat', function(K) {
11
+ var self = this, name = 'quickformat',
12
+ blockMap = K.toMap('blockquote,center,div,h1,h2,h3,h4,h5,h6,p');
13
+ function getFirstChild(knode) {
14
+ var child = knode.first();
15
+ while (child && child.first()) {
16
+ child = child.first();
17
+ }
18
+ return child;
19
+ }
20
+ self.clickToolbar(name, function() {
21
+ self.focus();
22
+ var doc = self.edit.doc,
23
+ range = self.cmd.range,
24
+ child = K(doc.body).first(), next,
25
+ nodeList = [], subList = [],
26
+ bookmark = range.createBookmark(true);
27
+ while(child) {
28
+ next = child.next();
29
+ var firstChild = getFirstChild(child);
30
+ if (!firstChild || firstChild.name != 'img') {
31
+ if (blockMap[child.name]) {
32
+ child.html(child.html().replace(/^(\s|&nbsp;| )+/ig, ''));
33
+ child.css('text-indent', '2em');
34
+ } else {
35
+ subList.push(child);
36
+ }
37
+ if (!next || (blockMap[next.name] || blockMap[child.name] && !blockMap[next.name])) {
38
+ if (subList.length > 0) {
39
+ nodeList.push(subList);
40
+ }
41
+ subList = [];
42
+ }
43
+ }
44
+ child = next;
45
+ }
46
+ K.each(nodeList, function(i, subList) {
47
+ var wrapper = K('<p style="text-indent:2em;"></p>', doc);
48
+ subList[0].before(wrapper);
49
+ K.each(subList, function(i, knode) {
50
+ wrapper.append(knode);
51
+ });
52
+ });
53
+ range.moveToBookmark(bookmark);
54
+ self.addBookmark();
55
+ });
56
+ });
57
+
58
+ /**
59
+ --------------------------
60
+ abcd<br />
61
+ 1234<br />
62
+
63
+ to
64
+
65
+ <p style="text-indent:2em;">
66
+ abcd<br />
67
+ 1234<br />
68
+ </p>
69
+
70
+ --------------------------
71
+
72
+ &nbsp; abcd<img>1233
73
+ <p>1234</p>
74
+
75
+ to
76
+
77
+ <p style="text-indent:2em;">abcd<img>1233</p>
78
+ <p style="text-indent:2em;">1234</p>
79
+
80
+ --------------------------
81
+ */
@@ -0,0 +1,267 @@
1
+ /*******************************************************************************
2
+ * KindEditor - WYSIWYG HTML Editor for Internet
3
+ * Copyright (C) 2006-2011 kindsoft.net
4
+ *
5
+ * @author Roddy <luolonghao@gmail.com>
6
+ * @site http://www.kindsoft.net/
7
+ * @licence http://www.kindsoft.net/license.php
8
+ *******************************************************************************/
9
+
10
+ KindEditor.plugin('smimage', function(K) {
11
+ var self = this, name = 'smimage',
12
+ allowImageUpload = K.undef(self.allowImageUpload, true),
13
+ allowImageRemote = K.undef(self.allowImageRemote, true),
14
+ formatUploadUrl = K.undef(self.formatUploadUrl, true),
15
+ allowFileManager = K.undef(self.allowFileManager, false),
16
+ uploadJson = K.undef(self.uploadJson, self.basePath + 'php/upload_json.php'),
17
+ imageTabIndex = K.undef(self.imageTabIndex, 0),
18
+ imgPath = self.pluginsPath + 'image/images/',
19
+ extraParams = K.undef(self.extraFileUploadParams, {}),
20
+ filePostName = K.undef(self.filePostName, 'imgFile'),
21
+ fillDescAfterUploadImage = K.undef(self.fillDescAfterUploadImage, false),
22
+ lang = self.lang('image.');
23
+
24
+ self.plugin.imageDialog = function(options) {
25
+ var imageUrl = options.imageUrl,
26
+ imageWidth = K.undef(options.imageWidth, ''),
27
+ imageHeight = K.undef(options.imageHeight, ''),
28
+ imageTitle = K.undef(options.imageTitle, ''),
29
+ imageAlign = K.undef(options.imageAlign, ''),
30
+ showRemote = K.undef(options.showRemote, true),
31
+ showLocal = K.undef(options.showLocal, true),
32
+ tabIndex = K.undef(options.tabIndex, 0),
33
+ clickFn = options.clickFn;
34
+ var target = 'kindeditor_upload_iframe_' + new Date().getTime();
35
+ var hiddenElements = [];
36
+ for(var k in extraParams){
37
+ hiddenElements.push('<input type="hidden" name="' + k + '" value="' + extraParams[k] + '" />');
38
+ }
39
+ var html = [
40
+ '<div style="padding:20px;">',
41
+ //tabs
42
+ '<div class="tabs"></div>',
43
+ //remote image - start
44
+ '<div class="tab1" style="display:none;">',
45
+ //url
46
+ '<div class="ke-dialog-row">',
47
+ '<label for="remoteUrl" style="width:60px;">' + lang.remoteUrl + '</label>',
48
+ '<input type="text" id="remoteUrl" class="ke-input-text" name="url" value="" style="width:200px;" /> &nbsp;',
49
+ '<span class="ke-button-common ke-button-outer">',
50
+ '<input type="button" class="ke-button-common ke-button" name="viewServer" value="' + lang.viewServer + '" />',
51
+ '</span>',
52
+ '</div>',
53
+ '</div>',
54
+ //remote image - end
55
+ //local upload - start
56
+ '<div class="tab2" style="display:none;">',
57
+ '<iframe name="' + target + '" style="display:none;"></iframe>',
58
+ '<form class="ke-upload-area ke-form" method="post" enctype="multipart/form-data" target="' + target + '" action="' + K.addParam(uploadJson, 'dir=image') + '">',
59
+ //file
60
+ '<div class="ke-dialog-row">',
61
+ hiddenElements.join(''),
62
+ '<label style="width:60px;">' + lang.localUrl + '</label>',
63
+ '<input type="text" name="localUrl" class="ke-input-text" tabindex="-1" style="width:200px;" readonly="true" /> &nbsp;',
64
+ '<input type="button" class="ke-upload-button" value="' + lang.upload + '" />',
65
+ '</div>',
66
+ '</form>',
67
+ '</div>',
68
+ //local upload - end
69
+ '</div>'
70
+ ].join('');
71
+ var dialogWidth = showLocal || allowFileManager ? 450 : 400,
72
+ dialogHeight = showLocal && showRemote ? 190 : 250;
73
+ var dialog = self.createDialog({
74
+ name : name,
75
+ width : dialogWidth,
76
+ height : dialogHeight,
77
+ title : self.lang(name),
78
+ body : html,
79
+ yesBtn : {
80
+ name : self.lang('yes'),
81
+ click : function(e) {
82
+ // Bugfix: http://code.google.com/p/kindeditor/issues/detail?id=319
83
+ if (dialog.isLoading) {
84
+ return;
85
+ }
86
+ // insert local image
87
+ if (showLocal && showRemote && tabs && tabs.selectedIndex === 1 || !showRemote) {
88
+ if (uploadbutton.fileBox.val() == '') {
89
+ alert(self.lang('pleaseSelectFile'));
90
+ return;
91
+ }
92
+ dialog.showLoading(self.lang('uploadLoading'));
93
+ uploadbutton.submit();
94
+ localUrlBox.val('');
95
+ return;
96
+ }
97
+ // insert remote image
98
+ var url = K.trim(urlBox.val()),
99
+ width = widthBox.val(),
100
+ height = heightBox.val(),
101
+ title = titleBox.val(),
102
+ align = '';
103
+ alignBox.each(function() {
104
+ if (this.checked) {
105
+ align = this.value;
106
+ return false;
107
+ }
108
+ });
109
+ if (url == 'http://' || K.invalidUrl(url)) {
110
+ alert(self.lang('invalidUrl'));
111
+ urlBox[0].focus();
112
+ return;
113
+ }
114
+ //if (!/^\d*$/.test(width)) {
115
+ // alert(self.lang('invalidWidth'));
116
+ // widthBox[0].focus();
117
+ // return;
118
+ //}
119
+ //if (!/^\d*$/.test(height)) {
120
+ // alert(self.lang('invalidHeight'));
121
+ // heightBox[0].focus();
122
+ // return;
123
+ //}
124
+ clickFn.call(self, url, title, width, height, 0, align);
125
+ }
126
+ },
127
+ beforeRemove : function() {
128
+ viewServerBtn.unbind();
129
+ //widthBox.unbind();
130
+ //heightBox.unbind();
131
+ //refreshBtn.unbind();
132
+ }
133
+ }),
134
+ div = dialog.div;
135
+
136
+ var urlBox = K('[name="url"]', div),
137
+ localUrlBox = K('[name="localUrl"]', div),
138
+ viewServerBtn = K('[name="viewServer"]', div),
139
+ widthBox = K('.tab1 [name="width"]', div),
140
+ heightBox = K('.tab1 [name="height"]', div),
141
+ refreshBtn = K('.ke-refresh-btn', div),
142
+ titleBox = K('.tab1 [name="title"]', div),
143
+ alignBox = K('.tab1 [name="align"]', div);
144
+
145
+ var tabs;
146
+ if (showRemote && showLocal) {
147
+ tabs = K.tabs({
148
+ src : K('.tabs', div),
149
+ afterSelect : function(i) {}
150
+ });
151
+ tabs.add({
152
+ title : lang.remoteImage,
153
+ panel : K('.tab1', div)
154
+ });
155
+ tabs.add({
156
+ title : lang.localImage,
157
+ panel : K('.tab2', div)
158
+ });
159
+ tabs.select(tabIndex);
160
+ } else if (showRemote) {
161
+ K('.tab1', div).show();
162
+ } else if (showLocal) {
163
+ K('.tab2', div).show();
164
+ }
165
+
166
+ var uploadbutton = K.uploadbutton({
167
+ button : K('.ke-upload-button', div)[0],
168
+ fieldName : filePostName,
169
+ form : K('.ke-form', div),
170
+ target : target,
171
+ width: 60,
172
+ afterUpload : function(data) {
173
+ dialog.hideLoading();
174
+ if (data.error === 0) {
175
+ var url = data.url;
176
+ if (formatUploadUrl) {
177
+ url = K.formatUrl(url, 'absolute');
178
+ }
179
+ if (self.afterUpload) {
180
+ self.afterUpload.call(self, url, data, name);
181
+ }
182
+ if (!fillDescAfterUploadImage) {
183
+ clickFn.call(self, url, data.title, data.width, data.height, data.border, data.align);
184
+ } else {
185
+ K(".ke-dialog-row #remoteUrl", div).val(url);
186
+ K(".ke-tabs-li", div)[0].click();
187
+ K(".ke-refresh-btn", div).click();
188
+ }
189
+ } else {
190
+ alert(data.message);
191
+ }
192
+ },
193
+ afterError : function(html) {
194
+ dialog.hideLoading();
195
+ self.errorDialog(html);
196
+ }
197
+ });
198
+ uploadbutton.fileBox.change(function(e) {
199
+ localUrlBox.val(uploadbutton.fileBox.val());
200
+ });
201
+ if (allowFileManager) {
202
+ viewServerBtn.click(function(e) {
203
+ self.loadPlugin('filemanager', function() {
204
+ self.plugin.filemanagerDialog({
205
+ viewType : 'VIEW',
206
+ dirName : 'image',
207
+ clickFn : function(url, title) {
208
+ if (self.dialogs.length > 1) {
209
+ K('[name="url"]', div).val(url);
210
+ if (self.afterSelectFile) {
211
+ self.afterSelectFile.call(self, url);
212
+ }
213
+ self.hideDialog();
214
+ }
215
+ }
216
+ });
217
+ });
218
+ });
219
+ } else {
220
+ viewServerBtn.hide();
221
+ }
222
+ var originalWidth = 0, originalHeight = 0;
223
+ function setSize(width, height) {
224
+ widthBox.val(width);
225
+ heightBox.val(height);
226
+ originalWidth = width;
227
+ originalHeight = height;
228
+ }
229
+ refreshBtn.click(function(e) {
230
+ var tempImg = K('<img src="' + urlBox.val() + '" />', document).css({
231
+ position : 'absolute',
232
+ visibility : 'hidden',
233
+ top : 0,
234
+ left : '-1000px'
235
+ });
236
+ tempImg.bind('load', function() {
237
+ setSize(tempImg.width(), tempImg.height());
238
+ tempImg.remove();
239
+ });
240
+ K(document.body).append(tempImg);
241
+ });
242
+ widthBox.change(function(e) {
243
+ if (originalWidth > 0) {
244
+ heightBox.val(Math.round(originalHeight / originalWidth * parseInt(this.value, 10)));
245
+ }
246
+ });
247
+ heightBox.change(function(e) {
248
+ if (originalHeight > 0) {
249
+ widthBox.val(Math.round(originalWidth / originalHeight * parseInt(this.value, 10)));
250
+ }
251
+ });
252
+ urlBox.val(options.imageUrl);
253
+ setSize(options.imageWidth, options.imageHeight);
254
+ titleBox.val(options.imageTitle);
255
+ alignBox.each(function() {
256
+ if (this.value === options.imageAlign) {
257
+ this.checked = true;
258
+ return false;
259
+ }
260
+ });
261
+ if (showRemote && tabIndex === 0) {
262
+ urlBox[0].focus();
263
+ urlBox[0].select();
264
+ }
265
+ return dialog;
266
+ };
267
+ });