mirador_rails 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (206) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +12 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +5 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE.txt +13 -0
  7. data/README.md +97 -0
  8. data/Rakefile +6 -0
  9. data/bin/console +14 -0
  10. data/bin/setup +8 -0
  11. data/lib/mirador_rails.rb +16 -0
  12. data/lib/mirador_rails/version.rb +3 -0
  13. data/lib/mirador_rails/view_helpers.rb +30 -0
  14. data/mirador_rails.gemspec +30 -0
  15. data/vendor/assets/images/border_type_1.png +0 -0
  16. data/vendor/assets/images/border_type_2.png +0 -0
  17. data/vendor/assets/images/border_type_3.png +0 -0
  18. data/vendor/assets/images/debut_dark.png +0 -0
  19. data/vendor/assets/javascripts/mirador.js +1 -0
  20. data/vendor/assets/javascripts/mirador.min.js +88 -0
  21. data/vendor/assets/javascripts/mirador.min.js.map +1 -0
  22. data/vendor/assets/locales/ar/translation.json +42 -0
  23. data/vendor/assets/locales/de/translation.json +77 -0
  24. data/vendor/assets/locales/en/translation.json +82 -0
  25. data/vendor/assets/locales/es/translation.json +35 -0
  26. data/vendor/assets/locales/fr/translation.json +77 -0
  27. data/vendor/assets/locales/ga/translation.json +39 -0
  28. data/vendor/assets/locales/ja/translation.json +82 -0
  29. data/vendor/assets/locales/ko/translation.json +74 -0
  30. data/vendor/assets/locales/nl/translation.json +39 -0
  31. data/vendor/assets/locales/zh-CN/translation.json +74 -0
  32. data/vendor/assets/locales/zh-TW/translation.json +74 -0
  33. data/vendor/assets/locales/zh/translation.json +74 -0
  34. data/vendor/assets/plugins/plugins/advlist/plugin.js +97 -0
  35. data/vendor/assets/plugins/plugins/advlist/plugin.min.js +1 -0
  36. data/vendor/assets/plugins/plugins/anchor/plugin.js +45 -0
  37. data/vendor/assets/plugins/plugins/anchor/plugin.min.js +1 -0
  38. data/vendor/assets/plugins/plugins/autolink/plugin.js +194 -0
  39. data/vendor/assets/plugins/plugins/autolink/plugin.min.js +1 -0
  40. data/vendor/assets/plugins/plugins/autoresize/plugin.js +152 -0
  41. data/vendor/assets/plugins/plugins/autoresize/plugin.min.js +1 -0
  42. data/vendor/assets/plugins/plugins/autosave/plugin.js +165 -0
  43. data/vendor/assets/plugins/plugins/autosave/plugin.min.js +1 -0
  44. data/vendor/assets/plugins/plugins/bbcode/plugin.js +123 -0
  45. data/vendor/assets/plugins/plugins/bbcode/plugin.min.js +1 -0
  46. data/vendor/assets/plugins/plugins/charmap/plugin.js +370 -0
  47. data/vendor/assets/plugins/plugins/charmap/plugin.min.js +1 -0
  48. data/vendor/assets/plugins/plugins/code/plugin.js +60 -0
  49. data/vendor/assets/plugins/plugins/code/plugin.min.js +1 -0
  50. data/vendor/assets/plugins/plugins/colorpicker/plugin.js +112 -0
  51. data/vendor/assets/plugins/plugins/colorpicker/plugin.min.js +1 -0
  52. data/vendor/assets/plugins/plugins/compat3x/css/dialog.css +118 -0
  53. data/vendor/assets/plugins/plugins/compat3x/img/buttons.png +0 -0
  54. data/vendor/assets/plugins/plugins/compat3x/img/icons.gif +0 -0
  55. data/vendor/assets/plugins/plugins/compat3x/img/items.gif +0 -0
  56. data/vendor/assets/plugins/plugins/compat3x/img/menu_arrow.gif +0 -0
  57. data/vendor/assets/plugins/plugins/compat3x/img/menu_check.gif +0 -0
  58. data/vendor/assets/plugins/plugins/compat3x/img/progress.gif +0 -0
  59. data/vendor/assets/plugins/plugins/compat3x/img/tabs.gif +0 -0
  60. data/vendor/assets/plugins/plugins/compat3x/plugin.js +297 -0
  61. data/vendor/assets/plugins/plugins/compat3x/plugin.min.js +1 -0
  62. data/vendor/assets/plugins/plugins/compat3x/tiny_mce_popup.js +542 -0
  63. data/vendor/assets/plugins/plugins/compat3x/utils/editable_selects.js +70 -0
  64. data/vendor/assets/plugins/plugins/compat3x/utils/form_utils.js +210 -0
  65. data/vendor/assets/plugins/plugins/compat3x/utils/mctabs.js +164 -0
  66. data/vendor/assets/plugins/plugins/compat3x/utils/validate.js +252 -0
  67. data/vendor/assets/plugins/plugins/contextmenu/plugin.js +87 -0
  68. data/vendor/assets/plugins/plugins/contextmenu/plugin.min.js +1 -0
  69. data/vendor/assets/plugins/plugins/directionality/plugin.js +64 -0
  70. data/vendor/assets/plugins/plugins/directionality/plugin.min.js +1 -0
  71. data/vendor/assets/plugins/plugins/emoticons/img/smiley-cool.gif +0 -0
  72. data/vendor/assets/plugins/plugins/emoticons/img/smiley-cry.gif +0 -0
  73. data/vendor/assets/plugins/plugins/emoticons/img/smiley-embarassed.gif +0 -0
  74. data/vendor/assets/plugins/plugins/emoticons/img/smiley-foot-in-mouth.gif +0 -0
  75. data/vendor/assets/plugins/plugins/emoticons/img/smiley-frown.gif +0 -0
  76. data/vendor/assets/plugins/plugins/emoticons/img/smiley-innocent.gif +0 -0
  77. data/vendor/assets/plugins/plugins/emoticons/img/smiley-kiss.gif +0 -0
  78. data/vendor/assets/plugins/plugins/emoticons/img/smiley-laughing.gif +0 -0
  79. data/vendor/assets/plugins/plugins/emoticons/img/smiley-money-mouth.gif +0 -0
  80. data/vendor/assets/plugins/plugins/emoticons/img/smiley-sealed.gif +0 -0
  81. data/vendor/assets/plugins/plugins/emoticons/img/smiley-smile.gif +0 -0
  82. data/vendor/assets/plugins/plugins/emoticons/img/smiley-surprised.gif +0 -0
  83. data/vendor/assets/plugins/plugins/emoticons/img/smiley-tongue-out.gif +0 -0
  84. data/vendor/assets/plugins/plugins/emoticons/img/smiley-undecided.gif +0 -0
  85. data/vendor/assets/plugins/plugins/emoticons/img/smiley-wink.gif +0 -0
  86. data/vendor/assets/plugins/plugins/emoticons/img/smiley-yell.gif +0 -0
  87. data/vendor/assets/plugins/plugins/emoticons/plugin.js +65 -0
  88. data/vendor/assets/plugins/plugins/emoticons/plugin.min.js +1 -0
  89. data/vendor/assets/plugins/plugins/example/dialog.html +8 -0
  90. data/vendor/assets/plugins/plugins/example/plugin.js +68 -0
  91. data/vendor/assets/plugins/plugins/example/plugin.min.js +1 -0
  92. data/vendor/assets/plugins/plugins/example_dependency/plugin.js +22 -0
  93. data/vendor/assets/plugins/plugins/example_dependency/plugin.min.js +1 -0
  94. data/vendor/assets/plugins/plugins/fullpage/plugin.js +490 -0
  95. data/vendor/assets/plugins/plugins/fullpage/plugin.min.js +1 -0
  96. data/vendor/assets/plugins/plugins/fullscreen/plugin.js +136 -0
  97. data/vendor/assets/plugins/plugins/fullscreen/plugin.min.js +1 -0
  98. data/vendor/assets/plugins/plugins/hr/plugin.js +30 -0
  99. data/vendor/assets/plugins/plugins/hr/plugin.min.js +1 -0
  100. data/vendor/assets/plugins/plugins/image/plugin.js +439 -0
  101. data/vendor/assets/plugins/plugins/image/plugin.min.js +1 -0
  102. data/vendor/assets/plugins/plugins/importcss/plugin.js +195 -0
  103. data/vendor/assets/plugins/plugins/importcss/plugin.min.js +1 -0
  104. data/vendor/assets/plugins/plugins/insertdatetime/plugin.js +121 -0
  105. data/vendor/assets/plugins/plugins/insertdatetime/plugin.min.js +1 -0
  106. data/vendor/assets/plugins/plugins/layer/plugin.js +225 -0
  107. data/vendor/assets/plugins/plugins/layer/plugin.min.js +1 -0
  108. data/vendor/assets/plugins/plugins/legacyoutput/plugin.js +211 -0
  109. data/vendor/assets/plugins/plugins/legacyoutput/plugin.min.js +1 -0
  110. data/vendor/assets/plugins/plugins/link/plugin.js +400 -0
  111. data/vendor/assets/plugins/plugins/link/plugin.min.js +1 -0
  112. data/vendor/assets/plugins/plugins/lists/plugin.js +791 -0
  113. data/vendor/assets/plugins/plugins/lists/plugin.min.js +1 -0
  114. data/vendor/assets/plugins/plugins/media/moxieplayer.swf +0 -0
  115. data/vendor/assets/plugins/plugins/media/plugin.js +774 -0
  116. data/vendor/assets/plugins/plugins/media/plugin.min.js +1 -0
  117. data/vendor/assets/plugins/plugins/nonbreaking/plugin.js +53 -0
  118. data/vendor/assets/plugins/plugins/nonbreaking/plugin.min.js +1 -0
  119. data/vendor/assets/plugins/plugins/noneditable/plugin.js +540 -0
  120. data/vendor/assets/plugins/plugins/noneditable/plugin.min.js +1 -0
  121. data/vendor/assets/plugins/plugins/pagebreak/plugin.js +88 -0
  122. data/vendor/assets/plugins/plugins/pagebreak/plugin.min.js +1 -0
  123. data/vendor/assets/plugins/plugins/paste/classes/Clipboard.js +634 -0
  124. data/vendor/assets/plugins/plugins/paste/classes/Plugin.js +110 -0
  125. data/vendor/assets/plugins/plugins/paste/classes/Quirks.js +159 -0
  126. data/vendor/assets/plugins/plugins/paste/classes/Utils.js +130 -0
  127. data/vendor/assets/plugins/plugins/paste/classes/WordFilter.js +493 -0
  128. data/vendor/assets/plugins/plugins/paste/plugin.dev.js +120 -0
  129. data/vendor/assets/plugins/plugins/paste/plugin.js +1625 -0
  130. data/vendor/assets/plugins/plugins/paste/plugin.min.js +1 -0
  131. data/vendor/assets/plugins/plugins/preview/plugin.js +88 -0
  132. data/vendor/assets/plugins/plugins/preview/plugin.min.js +1 -0
  133. data/vendor/assets/plugins/plugins/print/plugin.js +32 -0
  134. data/vendor/assets/plugins/plugins/print/plugin.min.js +1 -0
  135. data/vendor/assets/plugins/plugins/save/plugin.js +94 -0
  136. data/vendor/assets/plugins/plugins/save/plugin.min.js +1 -0
  137. data/vendor/assets/plugins/plugins/searchreplace/plugin.js +594 -0
  138. data/vendor/assets/plugins/plugins/searchreplace/plugin.min.js +1 -0
  139. data/vendor/assets/plugins/plugins/spellchecker/classes/DomTextMatcher.js +470 -0
  140. data/vendor/assets/plugins/plugins/spellchecker/classes/Plugin.js +436 -0
  141. data/vendor/assets/plugins/plugins/spellchecker/plugin.dev.js +117 -0
  142. data/vendor/assets/plugins/plugins/spellchecker/plugin.js +996 -0
  143. data/vendor/assets/plugins/plugins/spellchecker/plugin.min.js +1 -0
  144. data/vendor/assets/plugins/plugins/tabfocus/plugin.js +120 -0
  145. data/vendor/assets/plugins/plugins/tabfocus/plugin.min.js +1 -0
  146. data/vendor/assets/plugins/plugins/table/classes/CellSelection.js +176 -0
  147. data/vendor/assets/plugins/plugins/table/classes/Dialogs.js +749 -0
  148. data/vendor/assets/plugins/plugins/table/classes/Plugin.js +422 -0
  149. data/vendor/assets/plugins/plugins/table/classes/Quirks.js +372 -0
  150. data/vendor/assets/plugins/plugins/table/classes/TableGrid.js +864 -0
  151. data/vendor/assets/plugins/plugins/table/plugin.dev.js +118 -0
  152. data/vendor/assets/plugins/plugins/table/plugin.js +2680 -0
  153. data/vendor/assets/plugins/plugins/table/plugin.min.js +1 -0
  154. data/vendor/assets/plugins/plugins/template/plugin.js +262 -0
  155. data/vendor/assets/plugins/plugins/template/plugin.min.js +1 -0
  156. data/vendor/assets/plugins/plugins/textcolor/plugin.js +272 -0
  157. data/vendor/assets/plugins/plugins/textcolor/plugin.min.js +1 -0
  158. data/vendor/assets/plugins/plugins/textpattern/plugin.js +268 -0
  159. data/vendor/assets/plugins/plugins/textpattern/plugin.min.js +1 -0
  160. data/vendor/assets/plugins/plugins/visualblocks/css/visualblocks.css +135 -0
  161. data/vendor/assets/plugins/plugins/visualblocks/img/address.gif +0 -0
  162. data/vendor/assets/plugins/plugins/visualblocks/img/article.gif +0 -0
  163. data/vendor/assets/plugins/plugins/visualblocks/img/aside.gif +0 -0
  164. data/vendor/assets/plugins/plugins/visualblocks/img/blockquote.gif +0 -0
  165. data/vendor/assets/plugins/plugins/visualblocks/img/div.gif +0 -0
  166. data/vendor/assets/plugins/plugins/visualblocks/img/dl.gif +0 -0
  167. data/vendor/assets/plugins/plugins/visualblocks/img/figure.gif +0 -0
  168. data/vendor/assets/plugins/plugins/visualblocks/img/h1.gif +0 -0
  169. data/vendor/assets/plugins/plugins/visualblocks/img/h2.gif +0 -0
  170. data/vendor/assets/plugins/plugins/visualblocks/img/h3.gif +0 -0
  171. data/vendor/assets/plugins/plugins/visualblocks/img/h4.gif +0 -0
  172. data/vendor/assets/plugins/plugins/visualblocks/img/h5.gif +0 -0
  173. data/vendor/assets/plugins/plugins/visualblocks/img/h6.gif +0 -0
  174. data/vendor/assets/plugins/plugins/visualblocks/img/hgroup.gif +0 -0
  175. data/vendor/assets/plugins/plugins/visualblocks/img/ol.gif +0 -0
  176. data/vendor/assets/plugins/plugins/visualblocks/img/p.gif +0 -0
  177. data/vendor/assets/plugins/plugins/visualblocks/img/pre.gif +0 -0
  178. data/vendor/assets/plugins/plugins/visualblocks/img/section.gif +0 -0
  179. data/vendor/assets/plugins/plugins/visualblocks/img/ul.gif +0 -0
  180. data/vendor/assets/plugins/plugins/visualblocks/plugin.js +86 -0
  181. data/vendor/assets/plugins/plugins/visualblocks/plugin.min.js +1 -0
  182. data/vendor/assets/plugins/plugins/visualchars/plugin.js +88 -0
  183. data/vendor/assets/plugins/plugins/visualchars/plugin.min.js +1 -0
  184. data/vendor/assets/plugins/plugins/wordcount/plugin.js +69 -0
  185. data/vendor/assets/plugins/plugins/wordcount/plugin.min.js +1 -0
  186. data/vendor/assets/skins/skins/lightgray/content.inline.min.css +1 -0
  187. data/vendor/assets/skins/skins/lightgray/content.min.css +1 -0
  188. data/vendor/assets/skins/skins/lightgray/fonts/tinymce-small.eot +0 -0
  189. data/vendor/assets/skins/skins/lightgray/fonts/tinymce-small.svg +62 -0
  190. data/vendor/assets/skins/skins/lightgray/fonts/tinymce-small.ttf +0 -0
  191. data/vendor/assets/skins/skins/lightgray/fonts/tinymce-small.woff +0 -0
  192. data/vendor/assets/skins/skins/lightgray/fonts/tinymce.eot +0 -0
  193. data/vendor/assets/skins/skins/lightgray/fonts/tinymce.svg +63 -0
  194. data/vendor/assets/skins/skins/lightgray/fonts/tinymce.ttf +0 -0
  195. data/vendor/assets/skins/skins/lightgray/fonts/tinymce.woff +0 -0
  196. data/vendor/assets/skins/skins/lightgray/img/anchor.gif +0 -0
  197. data/vendor/assets/skins/skins/lightgray/img/loader.gif +0 -0
  198. data/vendor/assets/skins/skins/lightgray/img/object.gif +0 -0
  199. data/vendor/assets/skins/skins/lightgray/img/trans.gif +0 -0
  200. data/vendor/assets/skins/skins/lightgray/skin.ie7.min.css +1 -0
  201. data/vendor/assets/skins/skins/lightgray/skin.min.css +1 -0
  202. data/vendor/assets/stylesheets/mirador-combined.css +3969 -0
  203. data/vendor/assets/stylesheets/mirador.css +11 -0
  204. data/vendor/assets/themes/themes/modern/theme.js +617 -0
  205. data/vendor/assets/themes/themes/modern/theme.min.js +1 -0
  206. metadata +318 -0
@@ -0,0 +1,74 @@
1
+ {
2
+ "addItem": "添加項",
3
+ "addNewObject": "從 URL 建立新的物件",
4
+ "addSlotAbove": "添加插槽(上)",
5
+ "addSlotBelow": "添加插槽(下)",
6
+ "addSlotLeft": "添加插槽(左)",
7
+ "addSlotRight": "添加插槽(右)",
8
+ "addTagsHere": "添加標簽",
9
+ "bookmark": "添加書簽",
10
+ "bookmarkTitle": "為當前工作區創建書簽",
11
+ "bookmarkTooltip": "為當前進程創建書簽",
12
+ "bookView": "書本視圖",
13
+ "borderColorTooltip": "選擇邊框顏色",
14
+ "borderTypeTooltip": "選擇邊框樣式",
15
+ "brightnessTooltip": "調整亮度",
16
+ "cancel": "取消",
17
+ "cancelAnnotation": "你想取消這個注釋嗎?",
18
+ "changeLayout": "改變布局",
19
+ "changeLayoutTooltip": "更改可見插槽的數量",
20
+ "close": "關閉",
21
+ "closeTooltip": "關閉這個窗口",
22
+ "comments": "評論",
23
+ "contrastTooltip": "調整對比度",
24
+ "dashed": "虛線",
25
+ "delete": "刪除",
26
+ "deleteAnnotation": "你想刪除這個注釋和所有相關的形狀嗎?",
27
+ "deleteShape": "你想刪除這個形狀嗎?",
28
+ "details": "詳細資料",
29
+ "dotDashed": "點和虛線",
30
+ "dropToLoad": "拖放以裝載清單",
31
+ "edit": "編輯",
32
+ "editModalBtnDeleteAnnotation": "刪除這個注釋",
33
+ "editModalBtnSaveWithoutShapes": "存儲注釋但忽略形狀",
34
+ "editModalSaveAnnotationWithNoShapesMsg": "這個注釋沒有相關的形狀。",
35
+ "ellipseTooltip": "橢圓形注釋",
36
+ "fillColorTooltip": "選擇填充顏色",
37
+ "filterObjects": "過濾物件",
38
+ "freehandTooltip": "自由注釋",
39
+ "fullScreen": "全屏",
40
+ "fullScreenTooltip": "進入/退出全屏",
41
+ "fullScreenWindowTooltip": "進入/退出全屏",
42
+ "grayscaleTooltip": "灰度",
43
+ "imageView": "圖像視圖",
44
+ "invertTooltip": "反色",
45
+ "item": "項目",
46
+ "items": "項目",
47
+ "links": "鏈接",
48
+ "load": "載入",
49
+ "logo": "徽標",
50
+ "metadataTooltip": "查看這個物件的信息/元數據",
51
+ "more": "更多",
52
+ "newObject": "建立新的物件",
53
+ "no": "否",
54
+ "objectMetadata": "物件元數據",
55
+ "pinTooltip": "點注釋",
56
+ "polygonTooltip": "多邊形注釋",
57
+ "rectangleTooltip": "長方形注釋",
58
+ "resetTooltip": "重置圖像",
59
+ "rights": "版權",
60
+ "rightsStatus": "版權狀態",
61
+ "rotateLeftTooltip": "順時針旋轉 90 度",
62
+ "rotateRightTooltip": "逆時針旋轉 90 度",
63
+ "saturationTooltip": "調整色彩飽和度",
64
+ "save": "保存",
65
+ "scrollView": "滾動視圖",
66
+ "selectGrid": "選中下方單元格",
67
+ "sidePanelTooltip": "打開/關閉側邊欄",
68
+ "solid": "實線",
69
+ "thumbnailsView": "圖庫視圖",
70
+ "unspecified": "未指定的",
71
+ "url": "URL",
72
+ "viewTypeTooltip": "更改視圖",
73
+ "yes": "是"
74
+ }
@@ -0,0 +1,74 @@
1
+ {
2
+ "addItem": "添加项",
3
+ "addNewObject": "从 URL 建立新的物件",
4
+ "addSlotAbove": "添加插槽(上)",
5
+ "addSlotBelow": "添加插槽(下)",
6
+ "addSlotLeft": "添加插槽(左)",
7
+ "addSlotRight": "添加插槽(右)",
8
+ "addTagsHere": "添加标签",
9
+ "bookmark": "添加书签",
10
+ "bookmarkTitle": "为当前工作区创建书签",
11
+ "bookmarkTooltip": "为当前进程创建书签",
12
+ "bookView": "书本视图",
13
+ "borderColorTooltip": "选择边框颜色",
14
+ "borderTypeTooltip": "选择边框样式",
15
+ "brightnessTooltip": "调整亮度",
16
+ "cancel": "取消",
17
+ "cancelAnnotation": "你想取消这个注释吗?",
18
+ "changeLayout": "更改布局",
19
+ "changeLayoutTooltip": "更改可见插槽的数量",
20
+ "close": "关闭",
21
+ "closeTooltip": "关闭这个窗口",
22
+ "comments": "评论",
23
+ "contrastTooltip": "调整对比度",
24
+ "dashed": "虚线",
25
+ "delete": "删除",
26
+ "deleteAnnotation": "你想删除这个注释和所有相关的形状吗?",
27
+ "deleteShape": "你想删除这个形状吗?",
28
+ "details": "详细资料",
29
+ "dotDashed": "点和虚线",
30
+ "dropToLoad": "拖放以装载清单",
31
+ "edit": "编辑",
32
+ "editModalBtnDeleteAnnotation": "删除这个注释",
33
+ "editModalBtnSaveWithoutShapes": "存储注释但忽略形状",
34
+ "editModalSaveAnnotationWithNoShapesMsg": "这个注释没有相关的形状。",
35
+ "ellipseTooltip": "椭圆形注释",
36
+ "fillColorTooltip": "选择填充颜色",
37
+ "filterObjects": "过滤物件",
38
+ "freehandTooltip": "自由注释",
39
+ "fullScreen": "全屏",
40
+ "fullScreenTooltip": "进入/退出全屏",
41
+ "fullScreenWindowTooltip": "进入/退出全屏",
42
+ "grayscaleTooltip": "灰度",
43
+ "imageView": "图像视图",
44
+ "invertTooltip": "反色",
45
+ "item": "项目",
46
+ "items": "项目",
47
+ "links": "链接",
48
+ "load": "载入",
49
+ "logo": "徽标",
50
+ "metadataTooltip": "查看这个物件的信息/元数据",
51
+ "more": "更多",
52
+ "newObject": "建立新的物件",
53
+ "no": "否",
54
+ "objectMetadata": "物件元数据",
55
+ "pinTooltip": "点注释",
56
+ "polygonTooltip": "多边形注释",
57
+ "rectangleTooltip": "长方形注释",
58
+ "resetTooltip": "重置图像",
59
+ "rights": "版权",
60
+ "rightsStatus": "版权状态",
61
+ "rotateLeftTooltip": "顺时针旋转 90 度",
62
+ "rotateRightTooltip": "逆时针旋转 90 度",
63
+ "saturationTooltip": "调整色彩饱和度",
64
+ "save": "保存",
65
+ "scrollView": "滚动视图",
66
+ "selectGrid": "选中下方单元格",
67
+ "sidePanelTooltip": "打开/关闭侧边栏",
68
+ "solid": "实线",
69
+ "thumbnailsView": "图库视图",
70
+ "unspecified": "未指定的",
71
+ "url": "URL",
72
+ "viewTypeTooltip": "更改视图",
73
+ "yes": "是"
74
+ }
@@ -0,0 +1,97 @@
1
+ /**
2
+ * plugin.js
3
+ *
4
+ * Copyright, Moxiecode Systems AB
5
+ * Released under LGPL License.
6
+ *
7
+ * License: http://www.tinymce.com/license
8
+ * Contributing: http://www.tinymce.com/contributing
9
+ */
10
+
11
+ /*global tinymce:true */
12
+
13
+ tinymce.PluginManager.add('advlist', function(editor) {
14
+ var olMenuItems, ulMenuItems, lastStyles = {};
15
+
16
+ function buildMenuItems(listName, styleValues) {
17
+ var items = [];
18
+
19
+ tinymce.each(styleValues.split(/[ ,]/), function(styleValue) {
20
+ items.push({
21
+ text: styleValue.replace(/\-/g, ' ').replace(/\b\w/g, function(chr) {
22
+ return chr.toUpperCase();
23
+ }),
24
+ data: styleValue == 'default' ? '' : styleValue
25
+ });
26
+ });
27
+
28
+ return items;
29
+ }
30
+
31
+ olMenuItems = buildMenuItems('OL', editor.getParam(
32
+ "advlist_number_styles",
33
+ "default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman"
34
+ ));
35
+
36
+ ulMenuItems = buildMenuItems('UL', editor.getParam("advlist_bullet_styles", "default,circle,disc,square"));
37
+
38
+ function applyListFormat(listName, styleValue) {
39
+ editor.undoManager.transact(function() {
40
+ var list, dom = editor.dom, sel = editor.selection;
41
+
42
+ // Check for existing list element
43
+ list = dom.getParent(sel.getNode(), 'ol,ul');
44
+
45
+ // Switch/add list type if needed
46
+ if (!list || list.nodeName != listName || styleValue === false) {
47
+ editor.execCommand(listName == 'UL' ? 'InsertUnorderedList' : 'InsertOrderedList');
48
+ }
49
+
50
+ // Set style
51
+ styleValue = styleValue === false ? lastStyles[listName] : styleValue;
52
+ lastStyles[listName] = styleValue;
53
+
54
+ list = dom.getParent(sel.getNode(), 'ol,ul');
55
+ if (list) {
56
+ dom.setStyle(list, 'listStyleType', styleValue ? styleValue : null);
57
+ list.removeAttribute('data-mce-style');
58
+ }
59
+
60
+ editor.focus();
61
+ });
62
+ }
63
+
64
+ function updateSelection(e) {
65
+ var listStyleType = editor.dom.getStyle(editor.dom.getParent(editor.selection.getNode(), 'ol,ul'), 'listStyleType') || '';
66
+
67
+ e.control.items().each(function(ctrl) {
68
+ ctrl.active(ctrl.settings.data === listStyleType);
69
+ });
70
+ }
71
+
72
+ editor.addButton('numlist', {
73
+ type: 'splitbutton',
74
+ tooltip: 'Numbered list',
75
+ menu: olMenuItems,
76
+ onshow: updateSelection,
77
+ onselect: function(e) {
78
+ applyListFormat('OL', e.control.settings.data);
79
+ },
80
+ onclick: function() {
81
+ applyListFormat('OL', false);
82
+ }
83
+ });
84
+
85
+ editor.addButton('bullist', {
86
+ type: 'splitbutton',
87
+ tooltip: 'Bullet list',
88
+ menu: ulMenuItems,
89
+ onshow: updateSelection,
90
+ onselect: function(e) {
91
+ applyListFormat('UL', e.control.settings.data);
92
+ },
93
+ onclick: function() {
94
+ applyListFormat('UL', false);
95
+ }
96
+ });
97
+ });
@@ -0,0 +1 @@
1
+ tinymce.PluginManager.add("advlist",function(a){function b(a,b){var c=[];return tinymce.each(b.split(/[ ,]/),function(a){c.push({text:a.replace(/\-/g," ").replace(/\b\w/g,function(a){return a.toUpperCase()}),data:"default"==a?"":a})}),c}function c(b,c){a.undoManager.transact(function(){var d,e=a.dom,f=a.selection;d=e.getParent(f.getNode(),"ol,ul"),d&&d.nodeName==b&&c!==!1||a.execCommand("UL"==b?"InsertUnorderedList":"InsertOrderedList"),c=c===!1?g[b]:c,g[b]=c,d=e.getParent(f.getNode(),"ol,ul"),d&&(e.setStyle(d,"listStyleType",c?c:null),d.removeAttribute("data-mce-style")),a.focus()})}function d(b){var c=a.dom.getStyle(a.dom.getParent(a.selection.getNode(),"ol,ul"),"listStyleType")||"";b.control.items().each(function(a){a.active(a.settings.data===c)})}var e,f,g={};e=b("OL",a.getParam("advlist_number_styles","default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman")),f=b("UL",a.getParam("advlist_bullet_styles","default,circle,disc,square")),a.addButton("numlist",{type:"splitbutton",tooltip:"Numbered list",menu:e,onshow:d,onselect:function(a){c("OL",a.control.settings.data)},onclick:function(){c("OL",!1)}}),a.addButton("bullist",{type:"splitbutton",tooltip:"Bullet list",menu:f,onshow:d,onselect:function(a){c("UL",a.control.settings.data)},onclick:function(){c("UL",!1)}})});
@@ -0,0 +1,45 @@
1
+ /**
2
+ * plugin.js
3
+ *
4
+ * Copyright, Moxiecode Systems AB
5
+ * Released under LGPL License.
6
+ *
7
+ * License: http://www.tinymce.com/license
8
+ * Contributing: http://www.tinymce.com/contributing
9
+ */
10
+
11
+ /*global tinymce:true */
12
+
13
+ tinymce.PluginManager.add('anchor', function(editor) {
14
+ function showDialog() {
15
+ var selectedNode = editor.selection.getNode(), name = '';
16
+
17
+ if (selectedNode.tagName == 'A') {
18
+ name = selectedNode.name || selectedNode.id || '';
19
+ }
20
+
21
+ editor.windowManager.open({
22
+ title: 'Anchor',
23
+ body: {type: 'textbox', name: 'name', size: 40, label: 'Name', value: name},
24
+ onsubmit: function(e) {
25
+ editor.execCommand('mceInsertContent', false, editor.dom.createHTML('a', {
26
+ id: e.data.name
27
+ }));
28
+ }
29
+ });
30
+ }
31
+
32
+ editor.addButton('anchor', {
33
+ icon: 'anchor',
34
+ tooltip: 'Anchor',
35
+ onclick: showDialog,
36
+ stateSelector: 'a:not([href])'
37
+ });
38
+
39
+ editor.addMenuItem('anchor', {
40
+ icon: 'anchor',
41
+ text: 'Anchor',
42
+ context: 'insert',
43
+ onclick: showDialog
44
+ });
45
+ });
@@ -0,0 +1 @@
1
+ tinymce.PluginManager.add("anchor",function(a){function b(){var b=a.selection.getNode(),c="";"A"==b.tagName&&(c=b.name||b.id||""),a.windowManager.open({title:"Anchor",body:{type:"textbox",name:"name",size:40,label:"Name",value:c},onsubmit:function(b){a.execCommand("mceInsertContent",!1,a.dom.createHTML("a",{id:b.data.name}))}})}a.addButton("anchor",{icon:"anchor",tooltip:"Anchor",onclick:b,stateSelector:"a:not([href])"}),a.addMenuItem("anchor",{icon:"anchor",text:"Anchor",context:"insert",onclick:b})});
@@ -0,0 +1,194 @@
1
+ /**
2
+ * plugin.js
3
+ *
4
+ * Copyright 2011, Moxiecode Systems AB
5
+ * Released under LGPL License.
6
+ *
7
+ * License: http://www.tinymce.com/license
8
+ * Contributing: http://www.tinymce.com/contributing
9
+ */
10
+
11
+ /*global tinymce:true */
12
+
13
+ tinymce.PluginManager.add('autolink', function(editor) {
14
+ var AutoUrlDetectState;
15
+
16
+ editor.on("keydown", function(e) {
17
+ if (e.keyCode == 13) {
18
+ return handleEnter(editor);
19
+ }
20
+ });
21
+
22
+ // Internet Explorer has built-in automatic linking for most cases
23
+ if (tinymce.Env.ie) {
24
+ editor.on("focus", function() {
25
+ if (!AutoUrlDetectState) {
26
+ AutoUrlDetectState = true;
27
+
28
+ try {
29
+ editor.execCommand('AutoUrlDetect', false, true);
30
+ } catch (ex) {
31
+ // Ignore
32
+ }
33
+ }
34
+ });
35
+
36
+ return;
37
+ }
38
+
39
+ editor.on("keypress", function(e) {
40
+ if (e.keyCode == 41) {
41
+ return handleEclipse(editor);
42
+ }
43
+ });
44
+
45
+ editor.on("keyup", function(e) {
46
+ if (e.keyCode == 32) {
47
+ return handleSpacebar(editor);
48
+ }
49
+ });
50
+
51
+ function handleEclipse(editor) {
52
+ parseCurrentLine(editor, -1, '(', true);
53
+ }
54
+
55
+ function handleSpacebar(editor) {
56
+ parseCurrentLine(editor, 0, '', true);
57
+ }
58
+
59
+ function handleEnter(editor) {
60
+ parseCurrentLine(editor, -1, '', false);
61
+ }
62
+
63
+ function parseCurrentLine(editor, end_offset, delimiter) {
64
+ var rng, end, start, endContainer, bookmark, text, matches, prev, len, rngText;
65
+
66
+ function scopeIndex(container, index) {
67
+ if (index < 0) {
68
+ index = 0;
69
+ }
70
+
71
+ if (container.nodeType == 3) {
72
+ var len = container.data.length;
73
+
74
+ if (index > len) {
75
+ index = len;
76
+ }
77
+ }
78
+
79
+ return index;
80
+ }
81
+
82
+ function setStart(container, offset) {
83
+ if (container.nodeType != 1 || container.hasChildNodes()) {
84
+ rng.setStart(container, scopeIndex(container, offset));
85
+ } else {
86
+ rng.setStartBefore(container);
87
+ }
88
+ }
89
+
90
+ function setEnd(container, offset) {
91
+ if (container.nodeType != 1 || container.hasChildNodes()) {
92
+ rng.setEnd(container, scopeIndex(container, offset));
93
+ } else {
94
+ rng.setEndAfter(container);
95
+ }
96
+ }
97
+
98
+ // We need at least five characters to form a URL,
99
+ // hence, at minimum, five characters from the beginning of the line.
100
+ rng = editor.selection.getRng(true).cloneRange();
101
+ if (rng.startOffset < 5) {
102
+ // During testing, the caret is placed inbetween two text nodes.
103
+ // The previous text node contains the URL.
104
+ prev = rng.endContainer.previousSibling;
105
+ if (!prev) {
106
+ if (!rng.endContainer.firstChild || !rng.endContainer.firstChild.nextSibling) {
107
+ return;
108
+ }
109
+
110
+ prev = rng.endContainer.firstChild.nextSibling;
111
+ }
112
+
113
+ len = prev.length;
114
+ setStart(prev, len);
115
+ setEnd(prev, len);
116
+
117
+ if (rng.endOffset < 5) {
118
+ return;
119
+ }
120
+
121
+ end = rng.endOffset;
122
+ endContainer = prev;
123
+ } else {
124
+ endContainer = rng.endContainer;
125
+
126
+ // Get a text node
127
+ if (endContainer.nodeType != 3 && endContainer.firstChild) {
128
+ while (endContainer.nodeType != 3 && endContainer.firstChild) {
129
+ endContainer = endContainer.firstChild;
130
+ }
131
+
132
+ // Move range to text node
133
+ if (endContainer.nodeType == 3) {
134
+ setStart(endContainer, 0);
135
+ setEnd(endContainer, endContainer.nodeValue.length);
136
+ }
137
+ }
138
+
139
+ if (rng.endOffset == 1) {
140
+ end = 2;
141
+ } else {
142
+ end = rng.endOffset - 1 - end_offset;
143
+ }
144
+ }
145
+
146
+ start = end;
147
+
148
+ do {
149
+ // Move the selection one character backwards.
150
+ setStart(endContainer, end >= 2 ? end - 2 : 0);
151
+ setEnd(endContainer, end >= 1 ? end - 1 : 0);
152
+ end -= 1;
153
+ rngText = rng.toString();
154
+
155
+ // Loop until one of the following is found: a blank space, &nbsp;, delimiter, (end-2) >= 0
156
+ } while (rngText != ' ' && rngText !== '' && rngText.charCodeAt(0) != 160 && (end - 2) >= 0 && rngText != delimiter);
157
+
158
+ if (rng.toString() == delimiter || rng.toString().charCodeAt(0) == 160) {
159
+ setStart(endContainer, end);
160
+ setEnd(endContainer, start);
161
+ end += 1;
162
+ } else if (rng.startOffset === 0) {
163
+ setStart(endContainer, 0);
164
+ setEnd(endContainer, start);
165
+ } else {
166
+ setStart(endContainer, end);
167
+ setEnd(endContainer, start);
168
+ }
169
+
170
+ // Exclude last . from word like "www.site.com."
171
+ text = rng.toString();
172
+ if (text.charAt(text.length - 1) == '.') {
173
+ setEnd(endContainer, start - 1);
174
+ }
175
+
176
+ text = rng.toString();
177
+ matches = text.match(/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|(?:mailto:)?[A-Z0-9._%+\-]+@)(.+)$/i);
178
+
179
+ if (matches) {
180
+ if (matches[1] == 'www.') {
181
+ matches[1] = 'http://www.';
182
+ } else if (/@$/.test(matches[1]) && !/^mailto:/.test(matches[1])) {
183
+ matches[1] = 'mailto:' + matches[1];
184
+ }
185
+
186
+ bookmark = editor.selection.getBookmark();
187
+
188
+ editor.selection.setRng(rng);
189
+ editor.execCommand('createlink', false, matches[1] + matches[2]);
190
+ editor.selection.moveToBookmark(bookmark);
191
+ editor.nodeChanged();
192
+ }
193
+ }
194
+ });