ueditor_rails4 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (227) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.markdown +45 -0
  4. data/Rakefile +40 -0
  5. data/app/assets/images/ueditor/themes/default/anchor.gif +0 -0
  6. data/app/assets/images/ueditor/themes/default/arrow.png +0 -0
  7. data/app/assets/images/ueditor/themes/default/button-bg.gif +0 -0
  8. data/app/assets/images/ueditor/themes/default/cancelbutton.gif +0 -0
  9. data/app/assets/images/ueditor/themes/default/cursor_h.gif +0 -0
  10. data/app/assets/images/ueditor/themes/default/cursor_h.png +0 -0
  11. data/app/assets/images/ueditor/themes/default/cursor_v.gif +0 -0
  12. data/app/assets/images/ueditor/themes/default/cursor_v.png +0 -0
  13. data/app/assets/images/ueditor/themes/default/dialog-title-bg.png +0 -0
  14. data/app/assets/images/ueditor/themes/default/filescan.png +0 -0
  15. data/app/assets/images/ueditor/themes/default/highlighted.gif +0 -0
  16. data/app/assets/images/ueditor/themes/default/icons-all.gif +0 -0
  17. data/app/assets/images/ueditor/themes/default/icons.gif +0 -0
  18. data/app/assets/images/ueditor/themes/default/icons.png +0 -0
  19. data/app/assets/images/ueditor/themes/default/lock.gif +0 -0
  20. data/app/assets/images/ueditor/themes/default/neweditor-tab-bg.png +0 -0
  21. data/app/assets/images/ueditor/themes/default/pagebreak.gif +0 -0
  22. data/app/assets/images/ueditor/themes/default/scale.png +0 -0
  23. data/app/assets/images/ueditor/themes/default/spacer.gif +0 -0
  24. data/app/assets/images/ueditor/themes/default/sparator_v.png +0 -0
  25. data/app/assets/images/ueditor/themes/default/toolbar_bg.png +0 -0
  26. data/app/assets/images/ueditor/themes/default/unhighlighted.gif +0 -0
  27. data/app/assets/images/ueditor/themes/default/upload.png +0 -0
  28. data/app/assets/images/ueditor/themes/default/videologo.gif +0 -0
  29. data/app/assets/images/ueditor/themes/default/word.gif +0 -0
  30. data/app/assets/images/ueditor/themes/default/wordpaste.png +0 -0
  31. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_chm.gif +0 -0
  32. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_default.png +0 -0
  33. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_doc.gif +0 -0
  34. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_exe.gif +0 -0
  35. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_mp3.gif +0 -0
  36. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_mv.gif +0 -0
  37. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_pdf.gif +0 -0
  38. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_ppt.gif +0 -0
  39. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_psd.gif +0 -0
  40. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_rar.gif +0 -0
  41. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_txt.gif +0 -0
  42. data/app/assets/images/ueditor_rails/dialogs/attachment/fileTypeImages/icon_xls.gif +0 -0
  43. data/app/assets/images/ueditor_rails/dialogs/image/center_focus.jpg +0 -0
  44. data/app/assets/images/ueditor_rails/dialogs/image/left_focus.jpg +0 -0
  45. data/app/assets/images/ueditor_rails/dialogs/image/none_focus.jpg +0 -0
  46. data/app/assets/images/ueditor_rails/dialogs/image/right_focus.jpg +0 -0
  47. data/app/assets/images/ueditor_rails/dialogs/scrawl/addimg.png +0 -0
  48. data/app/assets/images/ueditor_rails/dialogs/scrawl/brush.png +0 -0
  49. data/app/assets/images/ueditor_rails/dialogs/scrawl/delimg.png +0 -0
  50. data/app/assets/images/ueditor_rails/dialogs/scrawl/delimgH.png +0 -0
  51. data/app/assets/images/ueditor_rails/dialogs/scrawl/empty.png +0 -0
  52. data/app/assets/images/ueditor_rails/dialogs/scrawl/emptyH.png +0 -0
  53. data/app/assets/images/ueditor_rails/dialogs/scrawl/eraser.png +0 -0
  54. data/app/assets/images/ueditor_rails/dialogs/scrawl/redo.png +0 -0
  55. data/app/assets/images/ueditor_rails/dialogs/scrawl/redoH.png +0 -0
  56. data/app/assets/images/ueditor_rails/dialogs/scrawl/scale.png +0 -0
  57. data/app/assets/images/ueditor_rails/dialogs/scrawl/scaleH.png +0 -0
  58. data/app/assets/images/ueditor_rails/dialogs/scrawl/size.png +0 -0
  59. data/app/assets/images/ueditor_rails/dialogs/scrawl/undo.png +0 -0
  60. data/app/assets/images/ueditor_rails/dialogs/scrawl/undoH.png +0 -0
  61. data/app/assets/javascripts/ueditor_rails/_config.js.erb +211 -0
  62. data/app/assets/javascripts/ueditor_rails/dialogs/attachment.js +5 -0
  63. data/app/assets/javascripts/ueditor_rails/dialogs/attachment/_callbacks.js +166 -0
  64. data/app/assets/javascripts/ueditor_rails/dialogs/attachment/_file_type_maps.js.erb +14 -0
  65. data/app/assets/javascripts/ueditor_rails/dialogs/image.js.erb +724 -0
  66. data/app/assets/javascripts/ueditor_rails/dialogs/scrawl.js +655 -0
  67. data/app/assets/javascripts/ueditor_rails/dialogs/wordimage.js +154 -0
  68. data/app/assets/javascripts/ueditor_rails/init.js +12 -0
  69. data/app/assets/stylesheets/ueditor/themes/default/dialogbase.css.erb +100 -0
  70. data/app/assets/stylesheets/ueditor/themes/default/ueditor.css +1582 -0
  71. data/app/assets/stylesheets/ueditor/themes/iframe.css +1 -0
  72. data/app/assets/stylesheets/ueditor_rails/dialogs/attachment.css.erb +161 -0
  73. data/app/assets/stylesheets/ueditor_rails/dialogs/image.css.erb +69 -0
  74. data/app/assets/stylesheets/ueditor_rails/dialogs/scrawl.css.erb +72 -0
  75. data/app/controllers/ueditor_rails/application_controller.rb +5 -0
  76. data/app/controllers/ueditor_rails/dialogs_controller.rb +21 -0
  77. data/app/controllers/ueditor_rails/libs_controller.rb +33 -0
  78. data/app/helpers/ueditor_rails/application_helper.rb +27 -0
  79. data/app/views/ueditor_rails/dialogs/attachment.html.erb +124 -0
  80. data/app/views/ueditor_rails/dialogs/image.html.erb +203 -0
  81. data/app/views/ueditor_rails/dialogs/scrawl.html.erb +96 -0
  82. data/app/views/ueditor_rails/dialogs/wordimage.html.erb +155 -0
  83. data/config/routes.rb +11 -0
  84. data/lib/generators/ueditor_rails/USAGE +8 -0
  85. data/lib/generators/ueditor_rails/install_generator.rb +15 -0
  86. data/lib/generators/ueditor_rails/templates/ueditor_config.js.erb +216 -0
  87. data/lib/tasks/ueditor_rails_tasks.rake +4 -0
  88. data/lib/ueditor_rails/engine.rb +17 -0
  89. data/lib/ueditor_rails/helpers/form_builder.rb +11 -0
  90. data/lib/ueditor_rails/helpers/form_helper.rb +37 -0
  91. data/lib/ueditor_rails/helpers/view_helper.rb +21 -0
  92. data/lib/ueditor_rails/util.rb +42 -0
  93. data/lib/ueditor_rails/version.rb +3 -0
  94. data/lib/ueditor_rails4.rb +32 -0
  95. data/test/dummy/README.rdoc +261 -0
  96. data/test/dummy/Rakefile +7 -0
  97. data/test/dummy/app/assets/javascripts/application.js +16 -0
  98. data/test/dummy/app/assets/javascripts/posts.js +2 -0
  99. data/test/dummy/app/assets/javascripts/ueditor_config.js.erb +208 -0
  100. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  101. data/test/dummy/app/assets/stylesheets/posts.css +4 -0
  102. data/test/dummy/app/assets/stylesheets/scaffold.css +56 -0
  103. data/test/dummy/app/controllers/application_controller.rb +3 -0
  104. data/test/dummy/app/controllers/posts_controller.rb +83 -0
  105. data/test/dummy/app/helpers/application_helper.rb +2 -0
  106. data/test/dummy/app/helpers/posts_helper.rb +2 -0
  107. data/test/dummy/app/models/post.rb +3 -0
  108. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  109. data/test/dummy/app/views/posts/_form.html.erb +25 -0
  110. data/test/dummy/app/views/posts/edit.html.erb +6 -0
  111. data/test/dummy/app/views/posts/index.html.erb +29 -0
  112. data/test/dummy/app/views/posts/new.html.erb +5 -0
  113. data/test/dummy/app/views/posts/show.html.erb +14 -0
  114. data/test/dummy/config.ru +4 -0
  115. data/test/dummy/config/application.rb +61 -0
  116. data/test/dummy/config/boot.rb +10 -0
  117. data/test/dummy/config/database.yml +25 -0
  118. data/test/dummy/config/environment.rb +5 -0
  119. data/test/dummy/config/environments/development.rb +37 -0
  120. data/test/dummy/config/environments/production.rb +67 -0
  121. data/test/dummy/config/environments/test.rb +37 -0
  122. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  123. data/test/dummy/config/initializers/inflections.rb +15 -0
  124. data/test/dummy/config/initializers/mime_types.rb +5 -0
  125. data/test/dummy/config/initializers/secret_token.rb +7 -0
  126. data/test/dummy/config/initializers/session_store.rb +8 -0
  127. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  128. data/test/dummy/config/locales/en.yml +5 -0
  129. data/test/dummy/config/routes.rb +8 -0
  130. data/test/dummy/db/migrate/20130327173045_create_posts.rb +10 -0
  131. data/test/dummy/db/schema.rb +23 -0
  132. data/test/dummy/public/404.html +26 -0
  133. data/test/dummy/public/422.html +26 -0
  134. data/test/dummy/public/500.html +25 -0
  135. data/test/dummy/public/favicon.ico +0 -0
  136. data/test/dummy/script/rails +6 -0
  137. data/test/dummy/test/fixtures/posts.yml +9 -0
  138. data/test/dummy/test/functional/posts_controller_test.rb +49 -0
  139. data/test/dummy/test/unit/helpers/posts_helper_test.rb +4 -0
  140. data/test/dummy/test/unit/post_test.rb +7 -0
  141. data/test/functional/ueditor_rails/dialogs_controller_test.rb +16 -0
  142. data/test/functional/ueditor_rails/libs_controller_test.rb +21 -0
  143. data/test/integration/navigation_test.rb +10 -0
  144. data/test/test_helper.rb +15 -0
  145. data/test/ueditor_rails_test.rb +7 -0
  146. data/vendor/assets/javascripts/ueditor/dialogs/anchor/anchor.html.erb +57 -0
  147. data/vendor/assets/javascripts/ueditor/dialogs/background/background.css +24 -0
  148. data/vendor/assets/javascripts/ueditor/dialogs/background/background.html.erb +55 -0
  149. data/vendor/assets/javascripts/ueditor/dialogs/background/background.js +348 -0
  150. data/vendor/assets/javascripts/ueditor/dialogs/emotion/emotion.css.erb +43 -0
  151. data/vendor/assets/javascripts/ueditor/dialogs/emotion/emotion.html.erb +54 -0
  152. data/vendor/assets/javascripts/ueditor/dialogs/emotion/emotion.js +186 -0
  153. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/0.gif +0 -0
  154. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/bface.gif +0 -0
  155. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/cface.gif +0 -0
  156. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/fface.gif +0 -0
  157. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/jxface2.gif +0 -0
  158. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/neweditor-tab-bg.png +0 -0
  159. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/tface.gif +0 -0
  160. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/wface.gif +0 -0
  161. data/vendor/assets/javascripts/ueditor/dialogs/emotion/images/yface.gif +0 -0
  162. data/vendor/assets/javascripts/ueditor/dialogs/gmap/gmap.html.erb +89 -0
  163. data/vendor/assets/javascripts/ueditor/dialogs/help/help.css +7 -0
  164. data/vendor/assets/javascripts/ueditor/dialogs/help/help.html.erb +84 -0
  165. data/vendor/assets/javascripts/ueditor/dialogs/help/help.js +54 -0
  166. data/vendor/assets/javascripts/ueditor/dialogs/highlightcode/highlightcode.html.erb +131 -0
  167. data/vendor/assets/javascripts/ueditor/dialogs/insertframe/insertframe.html.erb +98 -0
  168. data/vendor/assets/javascripts/ueditor/dialogs/internal.js +79 -0
  169. data/vendor/assets/javascripts/ueditor/dialogs/link/link.html.erb +141 -0
  170. data/vendor/assets/javascripts/ueditor/dialogs/map/map.html.erb +105 -0
  171. data/vendor/assets/javascripts/ueditor/dialogs/music/music.css +30 -0
  172. data/vendor/assets/javascripts/ueditor/dialogs/music/music.html.erb +32 -0
  173. data/vendor/assets/javascripts/ueditor/dialogs/music/music.js +192 -0
  174. data/vendor/assets/javascripts/ueditor/dialogs/searchreplace/searchreplace.html.erb +74 -0
  175. data/vendor/assets/javascripts/ueditor/dialogs/searchreplace/searchreplace.js +160 -0
  176. data/vendor/assets/javascripts/ueditor/dialogs/snapscreen/snapscreen.html.erb +91 -0
  177. data/vendor/assets/javascripts/ueditor/dialogs/spechars/spechars.html.erb +21 -0
  178. data/vendor/assets/javascripts/ueditor/dialogs/spechars/spechars.js +56 -0
  179. data/vendor/assets/javascripts/ueditor/dialogs/table/dragicon.png +0 -0
  180. data/vendor/assets/javascripts/ueditor/dialogs/table/edittable.css +75 -0
  181. data/vendor/assets/javascripts/ueditor/dialogs/table/edittable.html.erb +57 -0
  182. data/vendor/assets/javascripts/ueditor/dialogs/table/edittable.js +182 -0
  183. data/vendor/assets/javascripts/ueditor/dialogs/table/edittd.html.erb +51 -0
  184. data/vendor/assets/javascripts/ueditor/dialogs/table/edittip.html.erb +33 -0
  185. data/vendor/assets/javascripts/ueditor/dialogs/tangram.js +1238 -0
  186. data/vendor/assets/javascripts/ueditor/dialogs/template/config.js +42 -0
  187. data/vendor/assets/javascripts/ueditor/dialogs/template/images/bg.gif +0 -0
  188. data/vendor/assets/javascripts/ueditor/dialogs/template/images/pre0.png +0 -0
  189. data/vendor/assets/javascripts/ueditor/dialogs/template/images/pre1.png +0 -0
  190. data/vendor/assets/javascripts/ueditor/dialogs/template/images/pre2.png +0 -0
  191. data/vendor/assets/javascripts/ueditor/dialogs/template/images/pre3.png +0 -0
  192. data/vendor/assets/javascripts/ueditor/dialogs/template/images/pre4.png +0 -0
  193. data/vendor/assets/javascripts/ueditor/dialogs/template/template.css +18 -0
  194. data/vendor/assets/javascripts/ueditor/dialogs/template/template.html.erb +26 -0
  195. data/vendor/assets/javascripts/ueditor/dialogs/template/template.js +53 -0
  196. data/vendor/assets/javascripts/ueditor/dialogs/video/images/center_focus.jpg +0 -0
  197. data/vendor/assets/javascripts/ueditor/dialogs/video/images/left_focus.jpg +0 -0
  198. data/vendor/assets/javascripts/ueditor/dialogs/video/images/none_focus.jpg +0 -0
  199. data/vendor/assets/javascripts/ueditor/dialogs/video/images/right_focus.jpg +0 -0
  200. data/vendor/assets/javascripts/ueditor/dialogs/video/video.css +59 -0
  201. data/vendor/assets/javascripts/ueditor/dialogs/video/video.html.erb +78 -0
  202. data/vendor/assets/javascripts/ueditor/dialogs/video/video.js.erb +409 -0
  203. data/vendor/assets/javascripts/ueditor/dialogs/webapp/webapp.html.erb +64 -0
  204. data/vendor/assets/javascripts/ueditor/editor_all.js.erb +19133 -0
  205. data/vendor/assets/javascripts/ueditor/lang/zh-cn/images/copy.png +0 -0
  206. data/vendor/assets/javascripts/ueditor/lang/zh-cn/images/imglabel.png +0 -0
  207. data/vendor/assets/javascripts/ueditor/lang/zh-cn/images/localimage.png +0 -0
  208. data/vendor/assets/javascripts/ueditor/lang/zh-cn/images/music.png +0 -0
  209. data/vendor/assets/javascripts/ueditor/lang/zh-cn/images/upload.png +0 -0
  210. data/vendor/assets/javascripts/ueditor/lang/zh-cn/zh-cn.js +492 -0
  211. data/vendor/assets/javascripts/ueditor/third-party/SyntaxHighlighter/shCore.js +3655 -0
  212. data/vendor/assets/javascripts/ueditor/third-party/SyntaxHighlighter/shCoreDefault.css +316 -0
  213. data/vendor/assets/javascripts/ueditor/third-party/codemirror/codemirror.css +104 -0
  214. data/vendor/assets/javascripts/ueditor/third-party/codemirror/codemirror.js +3581 -0
  215. data/vendor/assets/javascripts/ueditor/third-party/fClipboard_ueditor.swf +0 -0
  216. data/vendor/assets/javascripts/ueditor/third-party/imageUploader.swf +0 -0
  217. data/vendor/assets/javascripts/ueditor/third-party/snapscreen/UEditorSnapscreen.exe +0 -0
  218. data/vendor/assets/javascripts/ueditor/third-party/swfupload/fileprogress.js +215 -0
  219. data/vendor/assets/javascripts/ueditor/third-party/swfupload/swfupload.cookies.js +53 -0
  220. data/vendor/assets/javascripts/ueditor/third-party/swfupload/swfupload.js +1132 -0
  221. data/vendor/assets/javascripts/ueditor/third-party/swfupload/swfupload.proxy.js +96 -0
  222. data/vendor/assets/javascripts/ueditor/third-party/swfupload/swfupload.queue.js +98 -0
  223. data/vendor/assets/javascripts/ueditor/third-party/swfupload/swfupload.speed.js +346 -0
  224. data/vendor/assets/javascripts/ueditor/third-party/swfupload/swfupload.swf +0 -0
  225. data/vendor/assets/javascripts/ueditor/third-party/swfupload/swfupload_fp9.swf +0 -0
  226. data/vendor/assets/javascripts/ueditor/uparse.js +348 -0
  227. metadata +363 -0
@@ -0,0 +1,43 @@
1
+ .jd img{
2
+ background:transparent url(<%= asset_path 'ueditor/dialogs/emotion/images/jxface2.gif' %>) no-repeat scroll left top;
3
+ cursor:pointer;width:35px;height:35px;display:block;
4
+ }
5
+ .pp img{
6
+ background:transparent url(<%= asset_path 'ueditor/dialogs/emotion/images/fface.gif' %>) no-repeat scroll left top;
7
+ cursor:pointer;width:25px;height:25px;display:block;
8
+ }
9
+ .ldw img{
10
+ background:transparent url(<%= asset_path 'ueditor/dialogs/emotion/images/wface.gif' %>) no-repeat scroll left top;
11
+ cursor:pointer;width:35px;height:35px;display:block;
12
+ }
13
+ .tsj img{
14
+ background:transparent url(<%= asset_path 'ueditor/dialogs/emotion/images/tface.gif' %>) no-repeat scroll left top;
15
+ cursor:pointer;width:35px;height:35px;display:block;
16
+ }
17
+ .cat img{
18
+ background:transparent url(<%= asset_path 'ueditor/dialogs/emotion/images/cface.gif' %>) no-repeat scroll left top;
19
+ cursor:pointer;width:35px;height:35px;display:block;
20
+ }
21
+ .bb img{
22
+ background:transparent url(<%= asset_path 'ueditor/dialogs/emotion/images/bface.gif' %>) no-repeat scroll left top;
23
+ cursor:pointer;width:35px;height:35px;display:block;
24
+ }
25
+ .youa img{
26
+ background:transparent url(<%= asset_path 'ueditor/dialogs/emotion/images/yface.gif' %>) no-repeat scroll left top;
27
+ cursor:pointer;width:35px;height:35px;display:block;
28
+ }
29
+
30
+ .smileytable td {height: 37px;}
31
+ #tabPanel{margin-left:5px;overflow: hidden;}
32
+ #tabContent {float:left;background:#FFFFFF;}
33
+ #tabContent div{display: none;width:480px;overflow:hidden;}
34
+ #tabIconReview.show{left:17px;display:block;}
35
+ .menuFocus{background:#ACCD3C;}
36
+ .menuDefault{background:#FFFFFF;}
37
+ #tabIconReview{position:absolute;left:406px;left:398px \9;top:41px;z-index:65533;width:90px;height:76px;}
38
+ img.review{width:90px;height:76px;border:2px solid #9cb945;background:#FFFFFF;background-position:center;background-repeat:no-repeat;}
39
+
40
+ .wrapper .tabbody{position:relative;float:left;clear:both;padding:10px;width: 95%;}
41
+ .tabbody table{width: 100%;}
42
+ .tabbody td{border:1px solid #BAC498;}
43
+ .tabbody td span{display: block;zoom:1;padding:0 4px;}
@@ -0,0 +1,54 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <title></title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
6
+ <meta name="robots" content="noindex, nofollow"/>
7
+ <%= stylesheet_link_tag 'ueditor/dialogs/emotion/emotion.css' %>
8
+ </head>
9
+ <body>
10
+ <div id="tabPanel" class="wrapper">
11
+ <div id="tabHeads" class="tabhead">
12
+ <span><var id="lang_input_choice"></var></span>
13
+ <span><var id="lang_input_Tuzki"></var></span>
14
+ <span><var id="lang_input_lvdouwa"></var></span>
15
+ <span><var id="lang_input_BOBO"></var></span>
16
+ <span><var id="lang_input_babyCat"></var></span>
17
+ <span><var id="lang_input_bubble"></var></span>
18
+ <span><var id="lang_input_youa"></var></span>
19
+ </div>
20
+ <div id="tabBodys" class="tabbody">
21
+ <div id="tab0"></div>
22
+ <div id="tab1"></div>
23
+ <div id="tab2"></div>
24
+ <div id="tab3"></div>
25
+ <div id="tab4"></div>
26
+ <div id="tab5"></div>
27
+ <div id="tab6"></div>
28
+ </div>
29
+ </div>
30
+ <div id="tabIconReview">
31
+ <img id='faceReview' class='review'/>
32
+ </div>
33
+ <%= javascript_include_tag 'ueditor/dialogs/internal.js' %>
34
+ <%= javascript_include_tag 'ueditor/dialogs/emotion/emotion.js' %>
35
+ <script type="text/javascript">
36
+ var emotion = {
37
+ tabNum: 7, //切换面板数量
38
+ SmilmgName: { tab0: ['j_00', 84], tab1: ['t_00', 40], tab2: ['w_00', 52], tab3: ['B_00', 63], tab4: ['C_00', 20], tab5: ['i_f', 50], tab6: ['y_00', 40] }, //图片前缀名
39
+ imageFolders: { tab0: 'jx2/', tab1: 'tsj/', tab2: 'ldw/', tab3: 'bobo/', tab4: 'babycat/', tab5: 'face/', tab6: 'youa/'}, //图片对应文件夹路径
40
+ imageCss: {tab0: 'jd', tab1: 'tsj', tab2: 'ldw', tab3: 'bb', tab4: 'cat', tab5: 'pp', tab6: 'youa'}, //图片css类名
41
+ imageCssOffset: {tab0: 35, tab1: 35, tab2: 35, tab3: 35, tab4: 35, tab5: 25, tab6: 35}, //图片偏移
42
+ SmileyInfor: {
43
+ tab0: ['Kiss', 'Love', 'Yeah', '啊!', '背扭', '顶', '抖胸', '88', '汗', '瞌睡', '鲁拉', '拍砖', '揉脸', '生日快乐', '大笑', '瀑布汗~', '惊讶', '臭美', '傻笑', '抛媚眼', '发怒', '打酱油', '俯卧撑', '气愤', '?', '吻', '怒', '胜利', 'HI', 'KISS', '不说', '不要', '扯花', '大心', '顶', '大惊', '飞吻', '鬼脸', '害羞', '口水', '狂哭', '来', '发财了', '吃西瓜', '套牢', '害羞', '庆祝', '我来了', '敲打', '晕了', '胜利', '臭美', '被打了', '贪吃', '迎接', '酷', '微笑', '亲吻', '调皮', '惊恐', '耍酷', '发火', '害羞', '汗水', '大哭', '', '加油', '困', '你NB', '晕倒', '开心', '偷笑', '大哭', '滴汗', '叹气', '超赞', '??', '飞吻', '天使', '撒花', '生气', '被砸', '吓傻', '随意吐'],
44
+ tab1: ['Kiss', 'Love', 'Yeah', '啊!', '背扭', '顶', '抖胸', '88', '汗', '瞌睡', '鲁拉', '拍砖', '揉脸', '生日快乐', '摊手', '睡觉', '瘫坐', '无聊', '星星闪', '旋转', '也不行', '郁闷', '正Music', '抓墙', '撞墙至死', '歪头', '戳眼', '飘过', '互相拍砖', '砍死你', '扔桌子', '少林寺', '什么?', '转头', '我爱牛奶', '我踢', '摇晃', '晕厥', '在笼子里', '震荡'],
45
+ tab2: ['大笑', '瀑布汗~', '惊讶', '臭美', '傻笑', '抛媚眼', '发怒', '我错了', 'money', '气愤', '挑逗', '吻', '怒', '胜利', '委屈', '受伤', '说啥呢?', '闭嘴', '不', '逗你玩儿', '飞吻', '眩晕', '魔法', '我来了', '睡了', '我打', '闭嘴', '打', '打晕了', '刷牙', '爆揍', '炸弹', '倒立', '刮胡子', '邪恶的笑', '不要不要', '爱恋中', '放大仔细看', '偷窥', '超高兴', '晕', '松口气', '我跑', '享受', '修养', '哭', '汗', '啊~', '热烈欢迎', '打酱油', '俯卧撑', '?'],
46
+ tab3: ['HI', 'KISS', '不说', '不要', '扯花', '大心', '顶', '大惊', '飞吻', '鬼脸', '害羞', '口水', '狂哭', '来', '泪眼', '流泪', '生气', '吐舌', '喜欢', '旋转', '再见', '抓狂', '汗', '鄙视', '拜', '吐血', '嘘', '打人', '蹦跳', '变脸', '扯肉', '吃To', '吃花', '吹泡泡糖', '大变身', '飞天舞', '回眸', '可怜', '猛抽', '泡泡', '苹果', '亲', '', '骚舞', '烧香', '睡', '套娃娃', '捅捅', '舞倒', '西红柿', '爱慕', '摇', '摇摆', '杂耍', '招财', '被殴', '被球闷', '大惊', '理想', '欧打', '呕吐', '碎', '吐痰'],
47
+ tab4: ['发财了', '吃西瓜', '套牢', '害羞', '庆祝', '我来了', '敲打', '晕了', '胜利', '臭美', '被打了', '贪吃', '迎接', '酷', '顶', '幸运', '爱心', '躲', '送花', '选择'],
48
+ tab5: ['微笑', '亲吻', '调皮', '惊讶', '耍酷', '发火', '害羞', '汗水', '大哭', '得意', '鄙视', '困', '夸奖', '晕倒', '疑问', '媒婆', '狂吐', '青蛙', '发愁', '亲吻', '', '爱心', '心碎', '玫瑰', '礼物', '哭', '奸笑', '可爱', '得意', '呲牙', '暴汗', '楚楚可怜', '困', '哭', '生气', '惊讶', '口水', '彩虹', '夜空', '太阳', '钱钱', '灯泡', '咖啡', '蛋糕', '音乐', '爱', '胜利', '赞', '鄙视', 'OK'],
49
+ tab6: ['男兜', '女兜', '开心', '乖乖', '偷笑', '大笑', '抽泣', '大哭', '无奈', '滴汗', '叹气', '狂晕', '委屈', '超赞', '??', '疑问', '飞吻', '天使', '撒花', '生气', '被砸', '口水', '泪奔', '吓傻', '吐舌头', '点头', '随意吐', '旋转', '困困', '鄙视', '狂顶', '篮球', '再见', '欢迎光临', '恭喜发财', '稍等', '我在线', '恕不议价', '库房有货', '货在路上']
50
+ }
51
+ };
52
+ </script>
53
+ </body>
54
+ </html>
@@ -0,0 +1,186 @@
1
+ window.onload = function () {
2
+ editor.setOpt({
3
+ emotionLocalization:false
4
+ });
5
+
6
+ emotion.SmileyPath = editor.options.emotionLocalization === true ? 'images/' : "http://img.baidu.com/hi/";
7
+ emotion.SmileyBox = createTabList( emotion.tabNum );
8
+ emotion.tabExist = createArr( emotion.tabNum );
9
+
10
+ initImgName();
11
+ initEvtHandler( "tabHeads" );
12
+ };
13
+
14
+ function initImgName() {
15
+ for ( var pro in emotion.SmilmgName ) {
16
+ var tempName = emotion.SmilmgName[pro],
17
+ tempBox = emotion.SmileyBox[pro],
18
+ tempStr = "";
19
+
20
+ if ( tempBox.length ) return;
21
+ for ( var i = 1; i <= tempName[1]; i++ ) {
22
+ tempStr = tempName[0];
23
+ if ( i < 10 ) tempStr = tempStr + '0';
24
+ tempStr = tempStr + i + '.gif';
25
+ tempBox.push( tempStr );
26
+ }
27
+ }
28
+ }
29
+
30
+ function initEvtHandler( conId ) {
31
+ var tabHeads = $G( conId );
32
+ for ( var i = 0, j = 0; i < tabHeads.childNodes.length; i++ ) {
33
+ var tabObj = tabHeads.childNodes[i];
34
+ if ( tabObj.nodeType == 1 ) {
35
+ domUtils.on( tabObj, "click", (function ( index ) {
36
+ return function () {
37
+ switchTab( index );
38
+ };
39
+ })( j ) );
40
+ j++;
41
+ }
42
+ }
43
+ switchTab( 0 );
44
+ $G( "tabIconReview" ).style.display = 'none';
45
+ }
46
+
47
+ function InsertSmiley( url, evt ) {
48
+ var obj = {
49
+ src:editor.options.emotionLocalization ? editor.options.UEDITOR_HOME_URL + "dialogs/emotion/" + url : url
50
+ };
51
+ obj.data_ue_src = obj.src;
52
+ editor.execCommand( 'insertimage', obj );
53
+ if ( !evt.ctrlKey ) {
54
+ dialog.popup.hide();
55
+ }
56
+ }
57
+
58
+ function switchTab( index ) {
59
+
60
+ autoHeight( index );
61
+ if ( emotion.tabExist[index] == 0 ) {
62
+ emotion.tabExist[index] = 1;
63
+ createTab( 'tab' + index );
64
+ }
65
+ //获取呈现元素句柄数组
66
+ var tabHeads = $G( "tabHeads" ).getElementsByTagName( "span" ),
67
+ tabBodys = $G( "tabBodys" ).getElementsByTagName( "div" ),
68
+ i = 0, L = tabHeads.length;
69
+ //隐藏所有呈现元素
70
+ for ( ; i < L; i++ ) {
71
+ tabHeads[i].className = "";
72
+ tabBodys[i].style.display = "none";
73
+ }
74
+ //显示对应呈现元素
75
+ tabHeads[index].className = "focus";
76
+ tabBodys[index].style.display = "block";
77
+ }
78
+
79
+ function autoHeight( index ) {
80
+ var iframe = dialog.getDom( "iframe" ),
81
+ parent = iframe.parentNode.parentNode;
82
+ switch ( index ) {
83
+ case 0:
84
+ iframe.style.height = "380px";
85
+ parent.style.height = "392px";
86
+ break;
87
+ case 1:
88
+ iframe.style.height = "220px";
89
+ parent.style.height = "232px";
90
+ break;
91
+ case 2:
92
+ iframe.style.height = "260px";
93
+ parent.style.height = "272px";
94
+ break;
95
+ case 3:
96
+ iframe.style.height = "300px";
97
+ parent.style.height = "312px";
98
+ break;
99
+ case 4:
100
+ iframe.style.height = "140px";
101
+ parent.style.height = "152px";
102
+ break;
103
+ case 5:
104
+ iframe.style.height = "260px";
105
+ parent.style.height = "272px";
106
+ break;
107
+ case 6:
108
+ iframe.style.height = "230px";
109
+ parent.style.height = "242px";
110
+ break;
111
+ default:
112
+
113
+ }
114
+ }
115
+
116
+
117
+ function createTab( tabName ) {
118
+ var faceVersion = "?v=1.1", //版本号
119
+ tab = $G( tabName ), //获取将要生成的Div句柄
120
+ imagePath = emotion.SmileyPath + emotion.imageFolders[tabName], //获取显示表情和预览表情的路径
121
+ positionLine = 11 / 2, //中间数
122
+ iWidth = iHeight = 35, //图片长宽
123
+ iColWidth = 3, //表格剩余空间的显示比例
124
+ tableCss = emotion.imageCss[tabName],
125
+ cssOffset = emotion.imageCssOffset[tabName],
126
+ textHTML = ['<table class="smileytable">'],
127
+ i = 0, imgNum = emotion.SmileyBox[tabName].length, imgColNum = 11, faceImage,
128
+ sUrl, realUrl, posflag, offset, infor;
129
+
130
+ for ( ; i < imgNum; ) {
131
+ textHTML.push( '<tr>' );
132
+ for ( var j = 0; j < imgColNum; j++, i++ ) {
133
+ faceImage = emotion.SmileyBox[tabName][i];
134
+ if ( faceImage ) {
135
+ sUrl = imagePath + faceImage + faceVersion;
136
+ realUrl = imagePath + faceImage;
137
+ posflag = j < positionLine ? 0 : 1;
138
+ offset = cssOffset * i * (-1) - 1;
139
+ infor = emotion.SmileyInfor[tabName][i];
140
+
141
+ textHTML.push( '<td class="' + tableCss + '" border="1" width="' + iColWidth + '%" style="border-collapse:collapse;" align="center" bgcolor="transparent" onclick="InsertSmiley(\'' + realUrl.replace( /'/g, "\\'" ) + '\',event)" onmouseover="over(this,\'' + sUrl + '\',\'' + posflag + '\')" onmouseout="out(this)">' );
142
+ textHTML.push( '<span>' );
143
+ textHTML.push( '<img style="background-position:left ' + offset + 'px;" title="' + infor + '" src="' + emotion.SmileyPath + (editor.options.emotionLocalization ? '0.gif" width="' : 'default/0.gif" width="') + iWidth + '" height="' + iHeight + '"></img>' );
144
+ textHTML.push( '</span>' );
145
+ } else {
146
+ textHTML.push( '<td width="' + iColWidth + '%" bgcolor="#FFFFFF">' );
147
+ }
148
+ textHTML.push( '</td>' );
149
+ }
150
+ textHTML.push( '</tr>' );
151
+ }
152
+ textHTML.push( '</table>' );
153
+ textHTML = textHTML.join( "" );
154
+ tab.innerHTML = textHTML;
155
+ }
156
+
157
+ function over( td, srcPath, posFlag ) {
158
+ td.style.backgroundColor = "#ACCD3C";
159
+ $G( 'faceReview' ).style.backgroundImage = "url(" + srcPath + ")";
160
+ if ( posFlag == 1 ) $G( "tabIconReview" ).className = "show";
161
+ $G( "tabIconReview" ).style.display = 'block';
162
+ }
163
+
164
+ function out( td ) {
165
+ td.style.backgroundColor = "transparent";
166
+ var tabIconRevew = $G( "tabIconReview" );
167
+ tabIconRevew.className = "";
168
+ tabIconRevew.style.display = 'none';
169
+ }
170
+
171
+ function createTabList( tabNum ) {
172
+ var obj = {};
173
+ for ( var i = 0; i < tabNum; i++ ) {
174
+ obj["tab" + i] = [];
175
+ }
176
+ return obj;
177
+ }
178
+
179
+ function createArr( tabNum ) {
180
+ var arr = [];
181
+ for ( var i = 0; i < tabNum; i++ ) {
182
+ arr[i] = 0;
183
+ }
184
+ return arr;
185
+ }
186
+
@@ -0,0 +1,89 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2
+ "http://www.w3.org/TR/html4/loose.dtd">
3
+ <html>
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title></title>
7
+ <style type="text/css">
8
+ .content{width:530px; height: 350px;margin: 10px auto;}
9
+ .content table{width: 100%}
10
+ .content table td{vertical-align: middle;}
11
+ #address{width:220px;height:21px;background: #FFF;border:1px solid #d7d7d7; line-height: 21px;}
12
+ </style>
13
+ <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
14
+ </head>
15
+ <body>
16
+ <div class="content">
17
+ <table>
18
+ <tr>
19
+ <td><label for="address"><var id="lang_input_address"></var></label></td>
20
+ <td><input id="address" type="text" /></td>
21
+ <td><a id="doSearch" href="javascript:void(0)" class="button"><var id="lang_input_search"></var></a></td>
22
+ </tr>
23
+ </table>
24
+ <div id="container" style="width: 100%; height: 340px;margin: 5px auto; border: 1px solid gray;"></div>
25
+ </div>
26
+ <%= javascript_include_tag 'ueditor/dialogs/internal.js' %>
27
+ <script type="text/javascript">
28
+ domUtils.on(window,"load",function(){
29
+ var map = new google.maps.Map(document.getElementById('container'), {
30
+ zoom: 3,
31
+ streetViewControl: false,
32
+ scaleControl: true,
33
+ mapTypeId: google.maps.MapTypeId.ROADMAP
34
+ });
35
+ var imgcss;
36
+ var marker = new google.maps.Marker({
37
+ map: map,
38
+ draggable: true
39
+ });
40
+ function doSearch(){
41
+ var address = document.getElementById('address').value;
42
+ var geocoder = new google.maps.Geocoder();
43
+ geocoder.geocode( { 'address': address}, function (results, status) {
44
+ if (status == google.maps.GeocoderStatus.OK) {
45
+ var bounds = results[0].geometry.viewport;
46
+ map.fitBounds(bounds);
47
+ marker.setPosition(results[0].geometry.location);
48
+ marker.setTitle(address);
49
+ } else alert(lang.searchError);
50
+ });
51
+ }
52
+ $G('address').onkeydown = function (evt){
53
+ evt = evt || event;
54
+ if (evt.keyCode == 13) {
55
+ doSearch();
56
+ }
57
+ };
58
+ $G("doSearch").onclick = doSearch;
59
+ dialog.onok = function (){
60
+ var center = map.getCenter();
61
+ var point = marker.getPosition();
62
+ var url = "http://maps.google.com/maps/api/staticmap?center=" + center.lat() + ',' + center.lng() + "&zoom=" + map.zoom + "&size=520x340&maptype=" + map.getMapTypeId() + "&markers=" + point.lat() + ',' + point.lng() + "&sensor=false";
63
+ editor.execCommand('inserthtml', '<img width="520" height="340" src="' + url + '"' + (imgcss ? ' style="' + imgcss + '"' :'') + '/>');
64
+ };
65
+
66
+ function getPars(str,par){
67
+ var reg = new RegExp(par+"=((\\d+|[.,])*)","g");
68
+ return reg.exec(str)[1];
69
+ }
70
+ var img = editor.selection.getRange().getClosedNode();
71
+ if(img && img.src.indexOf("http://maps.google.com/maps/api/staticmap")!=-1){
72
+ var url = img.getAttribute("src");
73
+ var centers = getPars(url,"center").split(",");
74
+ point = new google.maps.LatLng(Number(centers[0]),Number(centers[1]));
75
+ map.setCenter(point);
76
+ map.setZoom(Number(getPars(url,"zoom")));
77
+ centers = getPars(url,"markers").split(",");
78
+ marker.setPosition(new google.maps.LatLng(Number(centers[0]),Number(centers[1])));
79
+ imgcss = img.style.cssText;
80
+ }else{
81
+ setTimeout(function(){
82
+ doSearch();
83
+ },30)
84
+ }
85
+ });
86
+
87
+ </script>
88
+ </body>
89
+ </html>
@@ -0,0 +1,7 @@
1
+ .wrapper{width: 370px;margin: 10px auto;zoom: 1;}
2
+ .tabbody{height: 360px;}
3
+ .tabbody .panel{width:100%;height: 360px;position: absolute;background: #fff;}
4
+ .tabbody .panel h1{font-size:26px;margin: 5px 0 0 5px;}
5
+ .tabbody .panel p{font-size:12px;margin: 5px 0 0 5px;}
6
+ .tabbody table{width:90%;line-height: 20px;margin: 5px 0 0 5px;;}
7
+ .tabbody table thead{font-weight: bold;line-height: 25px;}
@@ -0,0 +1,84 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2
+ "http://www.w3.org/TR/html4/loose.dtd">
3
+ <html>
4
+ <head>
5
+ <title>帮助</title>
6
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
7
+ <%= stylesheet_link_tag 'ueditor/dialogs/help/help.css' %>
8
+ </head>
9
+ <body>
10
+ <div class="wrapper" id="helptab">
11
+ <div id="tabHeads" class="tabhead">
12
+ <span class="focus" tabsrc="about"><var id="lang_input_about"></var></span>
13
+ <span tabsrc="shortcuts"><var id="lang_input_shortcuts"></var></span>
14
+ </div>
15
+ <div id="tabBodys" class="tabbody">
16
+ <div id="about" class="panel">
17
+ <h1>UEditor</h1>
18
+
19
+ <p><var id="lang_input_version"></var></p>
20
+
21
+ <p><var id="lang_input_introduction"></var></p>
22
+ </div>
23
+ <div id="shortcuts" class="panel">
24
+ <table>
25
+ <thead>
26
+ <tr>
27
+ <td><var id="lang_Txt_shortcuts"></var></td>
28
+ <td><var id="lang_Txt_func"></var></td>
29
+ </tr>
30
+ </thead>
31
+ <tbody>
32
+ <tr>
33
+ <td>ctrl+b</td>
34
+ <td><var id="lang_Txt_bold"></var></td>
35
+ </tr>
36
+ <tr>
37
+ <td>ctrl+c</td>
38
+ <td><var id="lang_Txt_copy"></var></td>
39
+ </tr>
40
+ <tr>
41
+ <td>ctrl+x</td>
42
+ <td><var id="lang_Txt_cut"></var></td>
43
+ </tr>
44
+ <tr>
45
+ <td>ctrl+v</td>
46
+ <td><var id="lang_Txt_Paste"></var></td>
47
+ </tr>
48
+ <tr>
49
+ <td>ctrl+y</td>
50
+ <td><var id="lang_Txt_undo"></var></td>
51
+ </tr>
52
+ <tr>
53
+ <td>ctrl+z</td>
54
+ <td><var id="lang_Txt_redo"></var></td>
55
+ </tr>
56
+ <tr>
57
+ <td>ctrl+i</td>
58
+ <td><var id="lang_Txt_italic"></var></td>
59
+ </tr>
60
+ <tr>
61
+ <td>ctrl+u</td>
62
+ <td><var id="lang_Txt_underline"></var></td>
63
+ </tr>
64
+ <tr>
65
+ <td>ctrl+a</td>
66
+ <td><var id="lang_Txt_selectAll"></var></td>
67
+ </tr>
68
+ <tr>
69
+ <td>shift+enter</td>
70
+ <td><var id="lang_Txt_visualEnter"></var></td>
71
+ </tr>
72
+ <tr>
73
+ <td>alt+z</td>
74
+ <td><var id="lang_Txt_fullscreen"></var></td>
75
+ </tr>
76
+ </tbody>
77
+ </table>
78
+ </div>
79
+ </div>
80
+ </div>
81
+ <%= javascript_include_tag 'ueditor/dialogs/internal.js' %>
82
+ <%= javascript_include_tag 'ueditor/dialogs/help/help.js' %>
83
+ </body>
84
+ </html>