rails_kindeditor 0.2.8 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. data/.gitignore +1 -0
  2. data/Gemfile +2 -3
  3. data/README.rdoc +101 -68
  4. data/app/assets/javascripts/kindeditor.js +1 -0
  5. data/app/controllers/kindeditor/assets_controller.rb +17 -8
  6. data/app/uploaders/kindeditor/asset_uploader.rb +7 -8
  7. data/lib/generators/rails_kindeditor/install/USAGE +3 -3
  8. data/lib/generators/rails_kindeditor/install/install_generator.rb +4 -4
  9. data/lib/generators/rails_kindeditor/install/templates/rails_kindeditor.rb +19 -0
  10. data/lib/generators/rails_kindeditor/migration/templates/migration/migration.rb +1 -0
  11. data/lib/generators/rails_kindeditor/migration/templates/models/active_record/kindeditor/asset.rb +1 -0
  12. data/lib/generators/rails_kindeditor/migration/templates/models/mongoid/kindeditor/asset.rb +1 -0
  13. data/lib/rails_kindeditor/controller_additions.rb +0 -6
  14. data/lib/rails_kindeditor/engine.rb +22 -2
  15. data/lib/rails_kindeditor/formtastic.rb +12 -0
  16. data/lib/rails_kindeditor/helper.rb +57 -17
  17. data/lib/rails_kindeditor/simple_form.rb +11 -0
  18. data/lib/rails_kindeditor/version.rb +1 -1
  19. data/lib/rails_kindeditor.rb +51 -0
  20. data/rails_kindeditor.gemspec +5 -6
  21. data/screenshots/rails_kindeditor.png +0 -0
  22. data/vendor/assets/javascripts/kindeditor/kindeditor.js +5709 -0
  23. metadata +220 -199
  24. data/lib/generators/rails_kindeditor/install/templates/kindeditor/kindeditor-init.js +0 -8
  25. data/lib/generators/rails_kindeditor/install/templates/kindeditor/kindeditor-min.js +0 -173
  26. data/lib/generators/rails_kindeditor/install/templates/uploaders/kindeditor/asset_uploader.rb +0 -88
  27. data/lib/generators/rails_kindeditor/install/templates/uploaders/kindeditor/file_uploader.rb +0 -10
  28. data/lib/generators/rails_kindeditor/install/templates/uploaders/kindeditor/flash_uploader.rb +0 -10
  29. data/lib/generators/rails_kindeditor/install/templates/uploaders/kindeditor/image_uploader.rb +0 -10
  30. data/lib/generators/rails_kindeditor/install/templates/uploaders/kindeditor/media_uploader.rb +0 -10
  31. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/lang/ar.js +0 -0
  32. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/lang/en.js +0 -0
  33. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/lang/zh_CN.js +0 -0
  34. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/lang/zh_TW.js +0 -0
  35. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/anchor/anchor.js +0 -0
  36. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/clearhtml/clearhtml.js +0 -0
  37. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/code/code.js +0 -0
  38. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/code/prettify.css +0 -0
  39. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/code/prettify.js +0 -0
  40. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/emoticons.js +0 -0
  41. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/0.gif +0 -0
  42. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/1.gif +0 -0
  43. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/10.gif +0 -0
  44. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/100.gif +0 -0
  45. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/101.gif +0 -0
  46. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/102.gif +0 -0
  47. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/103.gif +0 -0
  48. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/104.gif +0 -0
  49. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/105.gif +0 -0
  50. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/106.gif +0 -0
  51. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/107.gif +0 -0
  52. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/108.gif +0 -0
  53. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/109.gif +0 -0
  54. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/11.gif +0 -0
  55. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/110.gif +0 -0
  56. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/111.gif +0 -0
  57. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/112.gif +0 -0
  58. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/113.gif +0 -0
  59. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/114.gif +0 -0
  60. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/115.gif +0 -0
  61. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/116.gif +0 -0
  62. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/117.gif +0 -0
  63. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/118.gif +0 -0
  64. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/119.gif +0 -0
  65. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/12.gif +0 -0
  66. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/120.gif +0 -0
  67. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/121.gif +0 -0
  68. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/122.gif +0 -0
  69. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/123.gif +0 -0
  70. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/124.gif +0 -0
  71. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/125.gif +0 -0
  72. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/126.gif +0 -0
  73. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/127.gif +0 -0
  74. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/128.gif +0 -0
  75. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/129.gif +0 -0
  76. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/13.gif +0 -0
  77. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/130.gif +0 -0
  78. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/131.gif +0 -0
  79. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/132.gif +0 -0
  80. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/133.gif +0 -0
  81. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/134.gif +0 -0
  82. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/14.gif +0 -0
  83. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/15.gif +0 -0
  84. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/16.gif +0 -0
  85. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/17.gif +0 -0
  86. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/18.gif +0 -0
  87. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/19.gif +0 -0
  88. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/2.gif +0 -0
  89. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/20.gif +0 -0
  90. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/21.gif +0 -0
  91. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/22.gif +0 -0
  92. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/23.gif +0 -0
  93. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/24.gif +0 -0
  94. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/25.gif +0 -0
  95. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/26.gif +0 -0
  96. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/27.gif +0 -0
  97. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/28.gif +0 -0
  98. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/29.gif +0 -0
  99. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/3.gif +0 -0
  100. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/30.gif +0 -0
  101. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/31.gif +0 -0
  102. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/32.gif +0 -0
  103. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/33.gif +0 -0
  104. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/34.gif +0 -0
  105. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/35.gif +0 -0
  106. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/36.gif +0 -0
  107. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/37.gif +0 -0
  108. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/38.gif +0 -0
  109. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/39.gif +0 -0
  110. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/4.gif +0 -0
  111. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/40.gif +0 -0
  112. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/41.gif +0 -0
  113. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/42.gif +0 -0
  114. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/43.gif +0 -0
  115. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/44.gif +0 -0
  116. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/45.gif +0 -0
  117. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/46.gif +0 -0
  118. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/47.gif +0 -0
  119. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/48.gif +0 -0
  120. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/49.gif +0 -0
  121. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/5.gif +0 -0
  122. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/50.gif +0 -0
  123. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/51.gif +0 -0
  124. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/52.gif +0 -0
  125. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/53.gif +0 -0
  126. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/54.gif +0 -0
  127. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/55.gif +0 -0
  128. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/56.gif +0 -0
  129. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/57.gif +0 -0
  130. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/58.gif +0 -0
  131. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/59.gif +0 -0
  132. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/6.gif +0 -0
  133. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/60.gif +0 -0
  134. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/61.gif +0 -0
  135. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/62.gif +0 -0
  136. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/63.gif +0 -0
  137. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/64.gif +0 -0
  138. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/65.gif +0 -0
  139. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/66.gif +0 -0
  140. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/67.gif +0 -0
  141. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/68.gif +0 -0
  142. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/69.gif +0 -0
  143. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/7.gif +0 -0
  144. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/70.gif +0 -0
  145. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/71.gif +0 -0
  146. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/72.gif +0 -0
  147. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/73.gif +0 -0
  148. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/74.gif +0 -0
  149. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/75.gif +0 -0
  150. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/76.gif +0 -0
  151. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/77.gif +0 -0
  152. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/78.gif +0 -0
  153. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/79.gif +0 -0
  154. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/8.gif +0 -0
  155. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/80.gif +0 -0
  156. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/81.gif +0 -0
  157. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/82.gif +0 -0
  158. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/83.gif +0 -0
  159. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/84.gif +0 -0
  160. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/85.gif +0 -0
  161. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/86.gif +0 -0
  162. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/87.gif +0 -0
  163. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/88.gif +0 -0
  164. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/89.gif +0 -0
  165. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/9.gif +0 -0
  166. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/90.gif +0 -0
  167. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/91.gif +0 -0
  168. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/92.gif +0 -0
  169. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/93.gif +0 -0
  170. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/94.gif +0 -0
  171. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/95.gif +0 -0
  172. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/96.gif +0 -0
  173. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/97.gif +0 -0
  174. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/98.gif +0 -0
  175. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/99.gif +0 -0
  176. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/emoticons/images/static.gif +0 -0
  177. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/filemanager/filemanager.js +0 -0
  178. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/filemanager/images/file-16.gif +0 -0
  179. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/filemanager/images/file-64.gif +0 -0
  180. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/filemanager/images/folder-16.gif +0 -0
  181. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/filemanager/images/folder-64.gif +0 -0
  182. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/filemanager/images/go-up.gif +0 -0
  183. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/flash/flash.js +0 -0
  184. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/image/image.js +0 -0
  185. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/image/images/align_left.gif +0 -0
  186. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/image/images/align_right.gif +0 -0
  187. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/image/images/align_top.gif +0 -0
  188. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/image/images/refresh.png +0 -0
  189. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/insertfile/insertfile.js +0 -0
  190. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/lineheight/lineheight.js +0 -0
  191. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/link/link.js +0 -0
  192. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/map/map.html +0 -0
  193. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/map/map.js +0 -0
  194. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/media/media.js +0 -0
  195. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/pagebreak/pagebreak.js +0 -0
  196. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/plainpaste/plainpaste.js +0 -0
  197. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/preview/preview.js +0 -0
  198. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/quickformat/quickformat.js +0 -0
  199. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/table/table.js +0 -0
  200. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/template/html/1.html +0 -0
  201. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/template/html/2.html +0 -0
  202. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/template/html/3.html +0 -0
  203. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/template/template.js +0 -0
  204. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/plugins/wordpaste/wordpaste.js +0 -0
  205. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/common/anchor.gif +0 -0
  206. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/common/blank.gif +0 -0
  207. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/common/flash.gif +0 -0
  208. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/common/loading.gif +0 -0
  209. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/common/media.gif +0 -0
  210. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/common/rm.gif +0 -0
  211. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/default/background.png +0 -0
  212. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/default/default.css +0 -0
  213. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/default/default.png +0 -0
  214. /data/{lib/generators/rails_kindeditor/install/templates → vendor/assets/javascripts}/kindeditor/themes/simple/simple.css +0 -0
data/.gitignore CHANGED
@@ -2,3 +2,4 @@
2
2
  .bundle
3
3
  Gemfile.lock
4
4
  pkg/*
5
+ *.DS_Store
data/Gemfile CHANGED
@@ -1,7 +1,6 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- # Specify your gem's dependencies in rails_kindeditor.gemspec
4
3
  gemspec
5
4
 
6
- gem "carrierwave"
7
-
5
+ gem 'carrierwave'
6
+ gem 'mini_magick'
data/README.rdoc CHANGED
@@ -1,13 +1,17 @@
1
- == Kindeditor for Rails3 (3.x & 3.0.x)
1
+ == Kindeditor for Ruby on Rails
2
2
 
3
- Kindeditor(http://www.kindsoft.net/) for Rails3, including image and file upload using carrierwave.
3
+ Kindeditor is a WYSIWYG text editor, visit http://www.kindsoft.net for details.
4
+ rails_kindeditor will helps your rails app integrate with kindeditor, includes images and files uploading.
4
5
 
5
- == Installation
6
+ Deprecation: rails_kindeditor ~> v0.3.0 only support Rails3.1+! If you're using rails3.0.x, please check rails_kindeditor v0.2.8
7
+
8
+ Snapshot: https://github.com/Macrow/rails_kindeditor/raw/master/screenshots/rails_kindeditor.png
9
+
10
+ == Installation and usage
6
11
 
7
12
  Add this to your Gemfile
8
13
 
9
- gem "carrierwave"
10
- gem "rails_kindeditor"
14
+ gem 'rails_kindeditor', '~> 0.3.0'
11
15
 
12
16
  Run "bundle" command.
13
17
 
@@ -16,31 +20,59 @@ Run "bundle" command.
16
20
  Run install generator:
17
21
 
18
22
  rails generate rails_kindeditor:install
19
-
20
- That's all! By default, rails_kindeditor do not save upload file information into database.
21
23
 
22
- == Usage
24
+ Include kindeditor javascripts for assets pipeline in your application.js:
23
25
 
24
- Basically include <%= include_kindeditor_if_needed %> under the <head> element of your in your layout file:
26
+ //= require kindeditor
25
27
 
26
- <%= include_kindeditor_if_needed %>
28
+ Usage:
27
29
 
28
- In your controller, use include_kindeditor method to load kindeditor:
29
-
30
- include_kindeditor
31
- or
32
- include_kindeditor :only => [:new, :edit, :update, :create]
30
+ 1. <%= kindeditor_tag :content, 'default content value' %>
31
+ # or <%= kindeditor_tag :content, 'default content value', :width => 800, :height => 300 %>
32
+ # or <%= kindeditor_tag :content, 'default content value', :allowFileManager => false %>
33
33
 
34
- Assign your textarea with id in your form:
35
34
 
36
- :id => "kindeditor_id"
35
+ 2. <%= form_for @article do |f| -%>
36
+ ...
37
+ <%= f.kindeditor :content %>
38
+ # or <%= f.kindeditor :content, :width => 800, :height => 300 %>
39
+ # or <%= f.kindeditor :content, :allowFileManager => false %>
40
+ ...
41
+ <% end -%>
37
42
 
38
43
  That's all.
39
44
 
40
- == Customize upload directory(optional)
45
+ == SimpleForm and Formtastic integration
46
+
47
+ simple_form:
48
+
49
+ <%= form.input :content, :as => :kindeditor, :label => false, :input_html => { :width => 800, :height => 300 } %>
50
+
51
+ formtastic:
52
+
53
+ <%= form.input :content, :as => :kindeditor %>
54
+ <%= form.input :content, :as => :kindeditor, :input_html => { :height => 300 } %>
41
55
 
42
- When you run "rails generate rails_kindeditor:install", installer will copy uploader files in you app/uploaders folder.
43
- Just modify "BASE_DIR" or "store_dir" in asset_uploader.rb.
56
+ == Upload options configuration
57
+
58
+ When you run "rails generate rails_kindeditor:install", installer will copy configuration files in config/initializers folder.
59
+ You can customize some option for uploading.
60
+
61
+ # Specify the subfolders in public directory.
62
+ # You can customize it , eg: config.upload_dir = 'this/is/my/folder'
63
+ config.upload_dir = 'uploads'
64
+
65
+ # Allowed file types for upload.
66
+ config.upload_image_ext = %w[gif jpg jpeg png bmp]
67
+ config.upload_flash_ext = %w[swf flv]
68
+ config.upload_media_ext = %w[swf flv mp3 wav wma wmv mid avi mpg asf rm rmvb]
69
+ config.upload_file_ext = %w[doc docx xls xlsx ppt htm html txt zip rar gz bz2]
70
+
71
+ # Porcess upload image size, need mini_magick
72
+ # eg: 1600x1600 => 800x800
73
+ # 1600x800 => 800x400
74
+ # 400x400 => 800x800
75
+ # config.image_resize_to_fit = [800, 800]
44
76
 
45
77
  == Save upload file information into database(optional)
46
78
 
@@ -55,35 +87,23 @@ Just run migration generate, there are two ORM options for you: 1.active_record
55
87
  The generator will copy model and migration to your application. When you are done, remember run rake db:migrate:
56
88
 
57
89
  rake db:migrate
58
-
59
- That's all.
60
-
61
- == Configuration options
62
-
63
- You can load kindeditor javascript only in some action if you needed:
64
-
65
- include_kindeditor :only => [:new, :edit, :create, :update]
66
- include_kindeditor :except => [:index, :show, :destroy]
67
-
68
- You can config kindeditor by kindeditor-init.js file, please read Kindeditor's documents:
69
-
70
- public/kindeditor/kindeditor-init.js [Rails3.x]
71
- public/javascripts/kindeditor/kindeditor-init.js [Rails3.0.x]
72
90
 
73
91
  == License
74
92
 
75
93
  MIT License.
76
94
 
77
- == Kindeditor(4.x) for Rails3 中文文档
95
+ == Kindeditor for Ruby on Rails 中文文档
96
+
97
+ Kindeditor是国产的所见即所得javascript富文本编辑器, 访问http://www.kindsoft.net获取更多信息.
98
+ rails_kindeditor可以帮助你的rails程序集成kindeditor,包括了图片和附件上传功能,文件按照类型、日期进行存储。
78
99
 
79
- 可供Rails3使用的gem, 包括了图片和附件上传功能,文件按照类型、日期进行存储。上传采用了Carrierwave。
100
+ 注意: rails_kindeditor ~> v0.3.0 仅支持Rails3.1+! 如果你使用rails3.0.x,请使用rails_kindeditor v0.2.8
80
101
 
81
- == 安装
102
+ == 安装及使用
82
103
 
83
104
  将下面代码加入Gemfile:
84
105
 
85
- gem "carrierwave"
86
- gem "rails_kindeditor"
106
+ gem 'rails_kindeditor', '~> 0.3.0'
87
107
 
88
108
  运行"bundle"命令:
89
109
 
@@ -92,31 +112,58 @@ MIT License.
92
112
  安装Kindeditor,运行下面的代码:
93
113
 
94
114
  rails generate rails_kindeditor:install
95
-
96
- 完毕!默认情况下,rails_kindeditor在上传文件时不会把文件信息记录入数据库。
97
115
 
98
- == 使用
116
+ 在application.js里面为assets pipeline加入以下代码:
99
117
 
100
- 在你的layout文件中的<head></head>内包含下面代码:
118
+ //= require kindeditor
119
+
120
+ 使用方法:
101
121
 
102
- <%= include_kindeditor_if_needed %>
122
+ 1. <%= kindeditor_tag :content, 'default content value' %>
123
+ # or <%= kindeditor_tag :content, 'default content value', :width => 800, :height => 300 %>
124
+ # or <%= kindeditor_tag :content, 'default content value', :allowFileManager => false %>
103
125
 
104
- 在你需要使用的controller里面,包含下面代码来控制加载javascript:
105
126
 
106
- include_kindeditor
107
- 或者
108
- include_kindeditor :only => [:new, :edit, :create, :update]
127
+ 2. <%= form_for @article do |f| -%>
128
+ ...
129
+ <%= f.kindeditor :content %>
130
+ # or <%= f.kindeditor :content, :width => 800, :height => 300 %>
131
+ # or <%= f.kindeditor :content, :allowFileManager => false %>
132
+ ...
133
+ <% end -%>
134
+
135
+ 完毕!
109
136
 
110
- 把需要转换的textarea赋予下列id值:
137
+ == SimpleForm与Formtastic集成:
111
138
 
112
- :id => "kindeditor_id"
139
+ simple_form:
140
+ <%= form.input :content, :as => :kindeditor, :label => false, :input_html => { :width => 800, :height => 300 } %>
141
+
142
+ formtastic:
143
+ <%= form.input :content, :as => :kindeditor %>
144
+ <%= form.input :content, :as => :kindeditor, :input_html => { :height => 300 } %>
113
145
 
114
- 完毕!
115
146
 
116
- == 自定义上传目录(可选)
147
+ == 上传图片及文件配置
148
+
149
+ 当你运行"rails generate rails_kindeditor:install"的时候,安装器会将配置文件拷贝到config/initializers文件夹。
150
+ 你可以配置以下上传选项:
151
+
152
+ # 指定上传目录,目录可以指定多级,都存储在public目录下.
153
+ # You can customize it , eg: config.upload_dir = 'this/is/my/folder'
154
+ config.upload_dir = 'uploads'
117
155
 
118
- 当你运行"rails generate rails_kindeditor:install"的时候,安装器会将uploader拷贝到app/uploaders文件夹。
119
- 在asset_uploader.rb文件中修改"BASE_DIR"或者"store_dir"即可(可参考Carrierwave)。
156
+ # 指定允许上传的文件类型.
157
+ config.upload_image_ext = %w[gif jpg jpeg png bmp]
158
+ config.upload_flash_ext = %w[swf flv]
159
+ config.upload_media_ext = %w[swf flv mp3 wav wma wmv mid avi mpg asf rm rmvb]
160
+ config.upload_file_ext = %w[doc docx xls xlsx ppt htm html txt zip rar gz bz2]
161
+
162
+ # 处理上传文件,需要mini_magick
163
+ # eg: 1600x1600 => 800x800
164
+ # 1600x800 => 800x400
165
+ # 400x400 => 800x800
166
+ # config.image_resize_to_fit = [800, 800]
120
167
 
121
168
  == 将上传文件信息记录入数据库(可选)
122
169
 
@@ -132,20 +179,6 @@ rails_kindeditor 可以将上传文件信息记录入数据库,以便扩展应
132
179
 
133
180
  rake db:migrate
134
181
 
135
- 完毕!
136
-
137
- == 配置选项(可选)
138
-
139
- 你可以有选择性地加载kindeditor的javascript:
140
-
141
- include_kindeditor :only => [:new, :edit, :create, :update]
142
- include_kindeditor :except => [:index, :show, :destroy]
143
-
144
- 你可以通过修改kindeditor-init.js来配置kindeditor,详细配置方法可以阅读Kindeditor的文档:
145
-
146
- public/kindeditor/kindeditor-init.js [Rails3.x]
147
- public/javascripts/kindeditor/kindeditor-init.js [Rails3.0.x]
148
-
149
182
  == License
150
183
 
151
184
  MIT License.
@@ -0,0 +1 @@
1
+ //= require kindeditor/kindeditor.js
@@ -3,8 +3,11 @@ require "find"
3
3
  class Kindeditor::AssetsController < ApplicationController
4
4
  skip_before_filter :verify_authenticity_token
5
5
  def create
6
- @imgFile = params[:imgFile]
7
- @dir = params[:dir]
6
+ @imgFile, @dir = params[:imgFile], params[:dir]
7
+ if !RailsKindeditor.image_resize_to_fit.nil? && @dir == 'image'
8
+ Kindeditor::AssetUploader.send(:include, CarrierWave::MiniMagick)
9
+ Kindeditor::AssetUploader.send(:process, :resize_to_fit => RailsKindeditor.resize_to_fit)
10
+ end
8
11
  unless @imgFile.nil?
9
12
  if Kindeditor::AssetUploader.save_upload_info? # save upload info into database
10
13
  begin
@@ -34,20 +37,26 @@ class Kindeditor::AssetsController < ApplicationController
34
37
  end
35
38
 
36
39
  def list
37
- @root_path = Rails.public_path + "/#{Kindeditor::AssetUploader::BASE_DIR}/"
38
- @root_url = "/#{Kindeditor::AssetUploader::BASE_DIR}/"
40
+ @root_path = "#{Rails.public_path}/#{RailsKindeditor.upload_store_dir}/"
41
+ @root_url = "/#{RailsKindeditor.upload_store_dir}/"
39
42
  @img_ext = Kindeditor::AssetUploader::EXT_NAMES[:image]
40
43
  @dir = params[:dir].strip || ""
41
44
  unless Kindeditor::AssetUploader::EXT_NAMES.keys.map(&:to_s).push("").include?(@dir)
42
45
  render :text => "Invalid Directory name."
43
46
  return
44
47
  end
45
- unless @dir.empty?
46
- @root_path += @dir + "/"
47
- @root_url += @dir + "/"
48
- Dir.mkdir(@root_path) unless File.exist?(@root_path)
48
+
49
+ Dir.chdir(Rails.public_path)
50
+ RailsKindeditor.upload_store_dir.split('/').each do |dir|
51
+ Dir.mkdir(dir) unless Dir.exist?(dir)
52
+ Dir.chdir(dir)
49
53
  end
50
54
 
55
+ Dir.mkdir(@dir) unless Dir.exist?(@dir)
56
+
57
+ @root_path += @dir + "/"
58
+ @root_url += @dir + "/"
59
+
51
60
  @path = params[:path].strip || ""
52
61
  if @path.empty?
53
62
  @current_path = @root_path
@@ -2,16 +2,15 @@
2
2
 
3
3
  class Kindeditor::AssetUploader < CarrierWave::Uploader::Base
4
4
 
5
- EXT_NAMES = {:image => %w[gif jpg jpeg png bmp],
6
- :flash => %w[swf flv],
7
- :media => %w[swf flv mp3 wav wma wmv mid avi mpg asf rm rmvb],
8
- :file => %w[doc docx xls xlsx ppt htm html txt zip rar gz bz2]}
9
-
10
- BASE_DIR = "uploads"
5
+ EXT_NAMES = {:image => RailsKindeditor.upload_image_ext,
6
+ :flash => RailsKindeditor.upload_flash_ext,
7
+ :media => RailsKindeditor.upload_media_ext,
8
+ :file => RailsKindeditor.upload_file_ext}
11
9
 
12
10
  # Include RMagick or ImageScience support:
13
11
  # include CarrierWave::RMagick
14
12
  # include CarrierWave::ImageScience
13
+ # include CarrierWave::MiniMagick
15
14
 
16
15
  # Choose what kind of storage to use for this uploader:
17
16
  storage :file
@@ -21,9 +20,9 @@ class Kindeditor::AssetUploader < CarrierWave::Uploader::Base
21
20
  # This is a sensible default for uploaders that are meant to be mounted:
22
21
  def store_dir
23
22
  if Kindeditor::AssetUploader.save_upload_info?
24
- "#{BASE_DIR}/#{model.class.to_s.underscore.gsub(/(kindeditor\/)|(_uploader)/, '')}/#{model.created_at.strftime("%Y%m")}"
23
+ "#{RailsKindeditor.upload_store_dir}/#{model.class.to_s.underscore.gsub(/(kindeditor\/)|(_uploader)/, '')}/#{model.created_at.strftime("%Y%m")}"
25
24
  else
26
- "#{BASE_DIR}/#{self.class.to_s.underscore.gsub(/(kindeditor\/)|(_uploader)/, '')}/#{Time.now.strftime("%Y%m")}"
25
+ "#{RailsKindeditor.upload_store_dir}/#{self.class.to_s.underscore.gsub(/(kindeditor\/)|(_uploader)/, '')}/#{Time.now.strftime("%Y%m")}"
27
26
  end
28
27
  end
29
28
 
@@ -1,10 +1,10 @@
1
1
  Description:
2
- Copy kindeditor files into your application
2
+ install kindeditor for your application
3
3
 
4
4
  Example:
5
5
  rails generate rails_kindeditor:install
6
6
 
7
7
  This will create:
8
- public/kindeditor
9
- app/uploaders/kindeditor
8
+ config/kindeditor.rb
9
+
10
10
 
@@ -5,11 +5,11 @@ module RailsKindeditor
5
5
 
6
6
  def copy_kindeditor_files
7
7
  if ::Rails.version < "3.1.0"
8
- directory "kindeditor", "public/javascripts/kindeditor"
9
- else # Rails3.1+
10
- directory "kindeditor", "public/kindeditor"
8
+ warn "Warning: rails_kindeditor ~> v0.3.0 only support Rails3.1+!"
9
+ warn "If you're using rails3.0.x, please check rails_kindeditor v0.2.8"
10
+ else
11
+ template "rails_kindeditor.rb", "config/initializers/rails_kindeditor.rb"
11
12
  end
12
- directory "uploaders", "app/uploaders"
13
13
  end
14
14
  end
15
15
  end
@@ -0,0 +1,19 @@
1
+ RailsKindeditor.setup do |config|
2
+
3
+ # Specify the subfolders in public directory.
4
+ # You can customize it , eg: config.upload_dir = 'this/is/my/folder'
5
+ config.upload_dir = 'uploads'
6
+
7
+ # Allowed file types for upload.
8
+ config.upload_image_ext = %w[gif jpg jpeg png bmp]
9
+ config.upload_flash_ext = %w[swf flv]
10
+ config.upload_media_ext = %w[swf flv mp3 wav wma wmv mid avi mpg asf rm rmvb]
11
+ config.upload_file_ext = %w[doc docx xls xlsx ppt htm html txt zip rar gz bz2]
12
+
13
+ # Porcess upload image size
14
+ # eg: 1600x1600 => 800x800
15
+ # 1600x800 => 800x400
16
+ # 400x400 => 800x800
17
+ # config.image_resize_to_fit = [800, 800]
18
+
19
+ end
@@ -2,6 +2,7 @@ class CreateKindeditorAssets < ActiveRecord::Migration
2
2
  def self.up
3
3
  create_table :kindeditor_assets do |t|
4
4
  t.string :asset
5
+ t.string :file_name
5
6
  t.integer :file_size
6
7
  t.string :file_type
7
8
  t.timestamps
@@ -2,6 +2,7 @@ class Kindeditor::Asset < ActiveRecord::Base
2
2
  set_table_name "kindeditor_assets"
3
3
  validates_presence_of :asset
4
4
  before_save :update_asset_attributes
5
+ attr_accessible :asset
5
6
 
6
7
  private
7
8
  def update_asset_attributes
@@ -9,6 +9,7 @@ class Kindeditor::Asset
9
9
  field :file_type, :type => String
10
10
  validates_presence_of :asset
11
11
  before_save :update_asset_attributes
12
+ attr_accessible :asset
12
13
 
13
14
  private
14
15
  def update_asset_attributes
@@ -15,9 +15,3 @@ module RailsKindeditor
15
15
  end
16
16
  end
17
17
 
18
- if defined? ActionController
19
- ActionController::Base.class_eval do
20
- include RailsKindeditor::ControllerAdditions
21
- end
22
- end
23
-
@@ -4,6 +4,26 @@ require "action_controller"
4
4
 
5
5
  module RailsKindeditor
6
6
  class Engine < Rails::Engine
7
+
8
+ initializer "rails_kindeditor.assets_precompile" do |app|
9
+ app.config.assets.precompile += RailsKindeditor.assets
10
+ end
11
+
12
+ initializer "rails_kindeditor.methods" do
13
+ ActionController::Base.send(:include, RailsKindeditor::ControllerAdditions)
14
+ end
15
+
16
+ initializer "rails_kindeditor.simple_form_and_formtastic" do
17
+ require "rails_kindeditor/simple_form" if Object.const_defined?("SimpleForm")
18
+ require "ckeditor/hooks/formtastic" if Object.const_defined?("Formtastic")
19
+ end
20
+
21
+ initializer "rails_kindeditor.helper_and_builder" do
22
+ ActiveSupport.on_load :action_view do
23
+ ActionView::Base.send(:include, RailsKindeditor::Helper)
24
+ ActionView::Helpers::FormBuilder.send(:include, RailsKindeditor::Builder)
25
+ end
26
+ end
27
+
7
28
  end
8
- end
9
-
29
+ end
@@ -0,0 +1,12 @@
1
+ require "formtastic"
2
+
3
+ class KindeditorInput
4
+ include ::Formtastic::Inputs::Base
5
+
6
+ def to_html
7
+ input_wrapping do
8
+ label_html <<
9
+ builder.kindeditor(method, input_html_options)
10
+ end
11
+ end
12
+ end
@@ -1,23 +1,63 @@
1
1
  module RailsKindeditor
2
2
  module Helper
3
- def include_kindeditor_if_needed
4
- if @use_kindeditor
5
- output = ""
6
- if ::Rails.version < "3.1.0"
7
- path = "/javascripts"
8
- else # Rails3.1+
9
- path = "#{request.protocol}#{request.host_with_port}"
10
- end
11
- if config.perform_caching && ::Rails.version < "3.1.0"
12
- output << javascript_include_tag("#{path}/kindeditor/kindeditor-min.js", "#{path}/kindeditor/kindeditor-init.js", :cache => "kindeditor/kindeditor-cache")
13
- else
14
- output << javascript_include_tag("#{path}/kindeditor/kindeditor-min.js", "#{path}/kindeditor/kindeditor-init.js")
3
+ def kindeditor_tag(name, content = nil, options = {})
4
+ id = sanitize_to_id(name)
5
+ input_html = { :id => id }.merge(options.delete(:input_html) || {})
6
+ output = ActiveSupport::SafeBuffer.new
7
+ output << text_area_tag(name, content, input_html)
8
+ output << javascript_tag(js_replace(id, options))
9
+ end
10
+
11
+ def kindeditor(name, method, options = {})
12
+ input_html = (options.delete(:input_html) || {})
13
+ hash = input_html.stringify_keys
14
+ instance_tag = ActionView::Base::InstanceTag.new(name, method, self, options.delete(:object))
15
+ instance_tag.send(:add_default_name_and_id, hash)
16
+ output_buffer = ActiveSupport::SafeBuffer.new
17
+ output_buffer << instance_tag.to_text_area_tag(input_html)
18
+ js = js_replace(hash['id'], options)
19
+ output_buffer << javascript_tag(js)
20
+ end
21
+
22
+ private
23
+ def js_replace(dom_id, options = {})
24
+ js_options = get_options(options)
25
+ "KindEditor.ready(function(K){
26
+ K.create('##{dom_id}', {
27
+ #{js_options},
28
+ uploadJson: '/kindeditor/upload',
29
+ fileManagerJson: '/kindeditor/filemanager'
30
+ });
31
+ });"
32
+ end
33
+
34
+ def get_options(options)
35
+ str = []
36
+ options.delete(:uploadJson)
37
+ options.delete(:fileManagerJson)
38
+ options.reverse_merge!(:width => '100%')
39
+ options.reverse_merge!(:height => 300)
40
+ options.reverse_merge!(:allowFileManager => true)
41
+ options.each do |key, value|
42
+ item = case value
43
+ when String then
44
+ value.split(//).first == '^' ? value.slice(1..-1) : "'#{value}'"
45
+ when Hash then
46
+ "{ #{get_options(value)} }"
47
+ when Array then
48
+ arr = value.collect { |v| "'#{v}'" }
49
+ "[ #{arr.join(',')} ]"
50
+ else value
15
51
  end
16
- output.html_safe
52
+ str << %Q{"#{key}": #{item}}
17
53
  end
54
+ str.sort.join(',')
18
55
  end
19
56
  end
20
- end
21
-
22
- ActionView::Base.send(:include, RailsKindeditor::Helper)
23
-
57
+
58
+ module Builder
59
+ def kindeditor(method, options = {})
60
+ @template.send("kindeditor", @object_name, method, objectify_options(options))
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,11 @@
1
+ module RailsKindeditor
2
+ module SimpleForm
3
+ class KindeditorInput < ::SimpleForm::Inputs::Base
4
+ def input
5
+ @builder.kindeditor(attribute_name, input_html_options)
6
+ end
7
+ end
8
+ end
9
+ end
10
+
11
+ ::SimpleForm::FormBuilder.map_type :kindeditor, :to => RailsKindeditor::SimpleForm::KindeditorInput
@@ -1,4 +1,4 @@
1
1
  module RailsKindeditor
2
- VERSION = "0.2.8"
2
+ VERSION = "0.3.0"
3
3
  end
4
4
 
@@ -1,4 +1,55 @@
1
1
  require 'rails_kindeditor/engine'
2
2
  require 'rails_kindeditor/helper'
3
3
  require 'rails_kindeditor/controller_additions'
4
+ require 'carrierwave'
5
+ require 'mini_magick'
4
6
 
7
+ module RailsKindeditor
8
+
9
+ mattr_accessor :upload_dir
10
+ @@upload_dir = 'uploads'
11
+
12
+ mattr_accessor :upload_image_ext
13
+ @@upload_image_ext = %w[gif jpg jpeg png bmp]
14
+
15
+ mattr_accessor :upload_flash_ext
16
+ @@upload_flash_ext = %w[swf flv]
17
+
18
+ mattr_accessor :upload_media_ext
19
+ @@upload_media_ext = %w[swf flv mp3 wav wma wmv mid avi mpg asf rm rmvb]
20
+
21
+ mattr_accessor :upload_file_ext
22
+ @@upload_file_ext = %w[doc docx xls xlsx ppt htm html txt zip rar gz bz2]
23
+
24
+ mattr_accessor :image_resize_to_fit
25
+
26
+ def self.root_path
27
+ @root_path ||= Pathname.new(File.dirname(File.expand_path('../', __FILE__)))
28
+ end
29
+
30
+ def self.assets
31
+ Dir[root_path.join('vendor/assets/javascripts/kindeditor/**', '*.{js,css}')].inject([]) do |assets, path|
32
+ assets << Pathname.new(path).relative_path_from(root_path.join('vendor/assets/javascripts'))
33
+ end
34
+ end
35
+
36
+ def self.upload_store_dir
37
+ dirs = upload_dir.gsub(/^\/+/,'').gsub(/\/+$/,'').split('/')
38
+ dirs.each { |dir| dir.gsub!(/\W/, '') }
39
+ dirs.delete('')
40
+ dirs.join('/')
41
+ end
42
+
43
+ def self.resize_to_fit
44
+ if !image_resize_to_fit.nil? && image_resize_to_fit.is_a?(Array)
45
+ [image_resize_to_fit[0], image_resize_to_fit[1]]
46
+ else
47
+ [800, 800]
48
+ end
49
+ end
50
+
51
+ def self.setup
52
+ yield self
53
+ end
54
+
55
+ end
@@ -8,17 +8,16 @@ Gem::Specification.new do |s|
8
8
  s.platform = Gem::Platform::RUBY
9
9
  s.authors = "Macrow"
10
10
  s.email = "Macrow_wh@163.com"
11
- s.homepage = ""
12
- s.summary = "Kindeditor(4.x) for Rails3"
13
- s.description = "Kindeditor(4.x) for Rails3, including image and file upload with carrierwave."
11
+ s.homepage = "http://github.com/Macrow"
12
+ s.summary = "Kindeditor for Ruby on Rails"
13
+ s.description = "rails_kindeditor will helps your rails app integrate with kindeditor, including images and files uploading."
14
14
 
15
15
  s.rubyforge_project = "rails_kindeditor"
16
16
 
17
17
  s.files = `git ls-files`.split("\n")
18
18
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
19
  s.require_paths = ["lib"]
21
20
 
22
21
  s.add_dependency("carrierwave")
23
- end
24
-
22
+ s.add_dependency("mini_magick")
23
+ end
Binary file