aloha-rails 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1045) hide show
  1. data/.gitignore +18 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE +22 -0
  4. data/README.md +34 -0
  5. data/Rakefile +9 -0
  6. data/aloha-rails.gemspec +22 -0
  7. data/lib/aloha-rails.rb +13 -0
  8. data/lib/aloha-rails/engine.rb +9 -0
  9. data/lib/aloha-rails/helpers.rb +45 -0
  10. data/lib/aloha-rails/railtie.rb +9 -0
  11. data/lib/aloha-rails/version.rb +5 -0
  12. data/lib/generators/aloha/install/USAGE +9 -0
  13. data/lib/generators/aloha/install/install_generator.rb +25 -0
  14. data/lib/generators/aloha/install/templates/aloha-config.coffee +88 -0
  15. data/lib/generators/aloha/install/templates/aloha-config.js +108 -0
  16. data/lib/generators/aloha/install/templates/aloha.rb +21 -0
  17. data/lib/generators/aloha/install/templates/application.js +16 -0
  18. data/spec/aloha_spec.rb +20 -0
  19. data/spec/helpers/aloha_helpers_spec.rb +69 -0
  20. data/spec/spec_helper.rb +17 -0
  21. data/vendor/assets/javascripts/aloha/css/aloha-core.css +44 -0
  22. data/vendor/assets/javascripts/aloha/css/aloha-sidebar.css +284 -0
  23. data/vendor/assets/javascripts/aloha/css/aloha.css +7774 -0
  24. data/vendor/assets/javascripts/aloha/css/ext-aloha-reset.css +33 -0
  25. data/vendor/assets/javascripts/aloha/css/ext-aloha.css +357 -0
  26. data/vendor/assets/javascripts/aloha/img/arrow-down.png +0 -0
  27. data/vendor/assets/javascripts/aloha/img/arrow-left.png +0 -0
  28. data/vendor/assets/javascripts/aloha/img/arrow.png +0 -0
  29. data/vendor/assets/javascripts/aloha/img/base-big.png +0 -0
  30. data/vendor/assets/javascripts/aloha/img/base-multi.png +0 -0
  31. data/vendor/assets/javascripts/aloha/img/base.png +0 -0
  32. data/vendor/assets/javascripts/aloha/img/bg.png +0 -0
  33. data/vendor/assets/javascripts/aloha/img/breadcrumb-divider.png +0 -0
  34. data/vendor/assets/javascripts/aloha/img/fade-in.png +0 -0
  35. data/vendor/assets/javascripts/aloha/img/fade-out.png +0 -0
  36. data/vendor/assets/javascripts/aloha/img/gentics-logo.png +0 -0
  37. data/vendor/assets/javascripts/aloha/img/grabhandle.png +0 -0
  38. data/vendor/assets/javascripts/aloha/img/maximize.png +0 -0
  39. data/vendor/assets/javascripts/aloha/img/multisplit-base.jpg +0 -0
  40. data/vendor/assets/javascripts/aloha/img/multisplit-close.gif +0 -0
  41. data/vendor/assets/javascripts/aloha/img/multisplit-open.gif +0 -0
  42. data/vendor/assets/javascripts/aloha/img/pin.png +0 -0
  43. data/vendor/assets/javascripts/aloha/img/removeformat.png +0 -0
  44. data/vendor/assets/javascripts/aloha/img/text_indent.png +0 -0
  45. data/vendor/assets/javascripts/aloha/img/text_indent_remove.png +0 -0
  46. data/vendor/assets/javascripts/aloha/lib/aloha-bootstrap.js +27645 -0
  47. data/vendor/assets/javascripts/aloha/lib/aloha.js +88750 -0
  48. data/vendor/assets/javascripts/aloha/lib/aloha/command.js +246 -0
  49. data/vendor/assets/javascripts/aloha/lib/aloha/console.js +330 -0
  50. data/vendor/assets/javascripts/aloha/lib/aloha/contenthandlermanager.js +65 -0
  51. data/vendor/assets/javascripts/aloha/lib/aloha/core.js +560 -0
  52. data/vendor/assets/javascripts/aloha/lib/aloha/ecma5.js +194 -0
  53. data/vendor/assets/javascripts/aloha/lib/aloha/ecma5shims.js +280 -0
  54. data/vendor/assets/javascripts/aloha/lib/aloha/editable.js +854 -0
  55. data/vendor/assets/javascripts/aloha/lib/aloha/engine.js +8306 -0
  56. data/vendor/assets/javascripts/aloha/lib/aloha/ext-alohaproxy.js +86 -0
  57. data/vendor/assets/javascripts/aloha/lib/aloha/ext-alohareader.js +50 -0
  58. data/vendor/assets/javascripts/aloha/lib/aloha/ext-alohatreeloader.js +77 -0
  59. data/vendor/assets/javascripts/aloha/lib/aloha/ext.js +32 -0
  60. data/vendor/assets/javascripts/aloha/lib/aloha/floatingmenu.js +1304 -0
  61. data/vendor/assets/javascripts/aloha/lib/aloha/ierange-m2.js +546 -0
  62. data/vendor/assets/javascripts/aloha/lib/aloha/jquery.aloha.js +324 -0
  63. data/vendor/assets/javascripts/aloha/lib/aloha/jquery.js +24 -0
  64. data/vendor/assets/javascripts/aloha/lib/aloha/jquery.patch.js +115 -0
  65. data/vendor/assets/javascripts/aloha/lib/aloha/markup.js +977 -0
  66. data/vendor/assets/javascripts/aloha/lib/aloha/message.js +115 -0
  67. data/vendor/assets/javascripts/aloha/lib/aloha/nls/de/i18n.js +10 -0
  68. data/vendor/assets/javascripts/aloha/lib/aloha/nls/i18n.js +20 -0
  69. data/vendor/assets/javascripts/aloha/lib/aloha/observable.js +106 -0
  70. data/vendor/assets/javascripts/aloha/lib/aloha/plugin.js +276 -0
  71. data/vendor/assets/javascripts/aloha/lib/aloha/pluginmanager.js +146 -0
  72. data/vendor/assets/javascripts/aloha/lib/aloha/rangy-core.js +3242 -0
  73. data/vendor/assets/javascripts/aloha/lib/aloha/registry.js +59 -0
  74. data/vendor/assets/javascripts/aloha/lib/aloha/repository.js +241 -0
  75. data/vendor/assets/javascripts/aloha/lib/aloha/repositorymanager.js +570 -0
  76. data/vendor/assets/javascripts/aloha/lib/aloha/repositoryobjects.js +146 -0
  77. data/vendor/assets/javascripts/aloha/lib/aloha/selection.js +2083 -0
  78. data/vendor/assets/javascripts/aloha/lib/aloha/sidebar.js +1133 -0
  79. data/vendor/assets/javascripts/aloha/lib/aloha/ui-attributefield.js +530 -0
  80. data/vendor/assets/javascripts/aloha/lib/aloha/ui-browser.js +214 -0
  81. data/vendor/assets/javascripts/aloha/lib/aloha/ui.js +889 -0
  82. data/vendor/assets/javascripts/aloha/lib/css.js +313 -0
  83. data/vendor/assets/javascripts/aloha/lib/i18n.js +153 -0
  84. data/vendor/assets/javascripts/aloha/lib/jquery-plugin.js +46 -0
  85. data/vendor/assets/javascripts/aloha/lib/order.js +140 -0
  86. data/vendor/assets/javascripts/aloha/lib/require.js +2013 -0
  87. data/vendor/assets/javascripts/aloha/lib/text.js +262 -0
  88. data/vendor/assets/javascripts/aloha/lib/util/class.js +80 -0
  89. data/vendor/assets/javascripts/aloha/lib/util/dom.js +1673 -0
  90. data/vendor/assets/javascripts/aloha/lib/util/json2.js +481 -0
  91. data/vendor/assets/javascripts/aloha/lib/util/lang.js +66 -0
  92. data/vendor/assets/javascripts/aloha/lib/util/position.js +158 -0
  93. data/vendor/assets/javascripts/aloha/lib/util/range.js +923 -0
  94. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/adapter/jquery/ext-jquery-adapter-debug.js +2470 -0
  95. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/adapter/jquery/ext-jquery-adapter.js +7 -0
  96. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/ext-all-debug.js +47684 -0
  97. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/ext-all.js +13 -0
  98. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/gpl-3.0.txt +674 -0
  99. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/license.txt +42 -0
  100. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/charts.swf +0 -0
  101. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/css/ext-all.css +5903 -0
  102. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/css/ext-all.less +6795 -0
  103. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/css/xtheme-gray.css +1692 -0
  104. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/expressinstall.swf +0 -0
  105. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/box/corners-blue.gif +0 -0
  106. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/box/corners.gif +0 -0
  107. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/box/l-blue.gif +0 -0
  108. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/box/l.gif +0 -0
  109. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/box/r-blue.gif +0 -0
  110. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/box/r.gif +0 -0
  111. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/box/tb-blue.gif +0 -0
  112. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/box/tb.gif +0 -0
  113. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/arrow.gif +0 -0
  114. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/btn.gif +0 -0
  115. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/group-cs.gif +0 -0
  116. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/group-lr.gif +0 -0
  117. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/group-tb.gif +0 -0
  118. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/s-arrow-b-noline.gif +0 -0
  119. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/s-arrow-b.gif +0 -0
  120. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/s-arrow-bo.gif +0 -0
  121. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/s-arrow-noline.gif +0 -0
  122. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/s-arrow-o.gif +0 -0
  123. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/button/s-arrow.gif +0 -0
  124. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/dd/drop-add.gif +0 -0
  125. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/dd/drop-no.gif +0 -0
  126. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/dd/drop-yes.gif +0 -0
  127. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/editor/tb-sprite.gif +0 -0
  128. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/checkbox.gif +0 -0
  129. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/clear-trigger.gif +0 -0
  130. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/clear-trigger.psd +0 -0
  131. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/date-trigger.gif +0 -0
  132. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/date-trigger.psd +0 -0
  133. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/error-tip-corners.gif +0 -0
  134. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/exclamation.gif +0 -0
  135. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/radio.gif +0 -0
  136. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/search-trigger.gif +0 -0
  137. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/search-trigger.psd +0 -0
  138. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/text-bg.gif +0 -0
  139. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/trigger-square.gif +0 -0
  140. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/trigger-square.psd +0 -0
  141. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/trigger-tpl.gif +0 -0
  142. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/trigger.gif +0 -0
  143. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/form/trigger.psd +0 -0
  144. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/gradient-bg.gif +0 -0
  145. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/arrow-left-white.gif +0 -0
  146. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/arrow-right-white.gif +0 -0
  147. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/col-move-bottom.gif +0 -0
  148. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/col-move-top.gif +0 -0
  149. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/columns.gif +0 -0
  150. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/dirty.gif +0 -0
  151. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/done.gif +0 -0
  152. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/drop-no.gif +0 -0
  153. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/drop-yes.gif +0 -0
  154. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/footer-bg.gif +0 -0
  155. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid-blue-hd.gif +0 -0
  156. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid-blue-split.gif +0 -0
  157. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid-hrow.gif +0 -0
  158. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid-loading.gif +0 -0
  159. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid-split.gif +0 -0
  160. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid-vista-hd.gif +0 -0
  161. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid3-hd-btn.gif +0 -0
  162. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid3-hrow-over.gif +0 -0
  163. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid3-hrow.gif +0 -0
  164. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid3-special-col-bg.gif +0 -0
  165. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/grid3-special-col-sel-bg.gif +0 -0
  166. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/group-by.gif +0 -0
  167. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/group-collapse.gif +0 -0
  168. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/group-expand-sprite.gif +0 -0
  169. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/group-expand.gif +0 -0
  170. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/hd-pop.gif +0 -0
  171. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/hmenu-asc.gif +0 -0
  172. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/hmenu-desc.gif +0 -0
  173. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/hmenu-lock.gif +0 -0
  174. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/hmenu-lock.png +0 -0
  175. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/hmenu-unlock.gif +0 -0
  176. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/hmenu-unlock.png +0 -0
  177. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/invalid_line.gif +0 -0
  178. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/loading.gif +0 -0
  179. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/mso-hd.gif +0 -0
  180. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/nowait.gif +0 -0
  181. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/page-first-disabled.gif +0 -0
  182. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/page-first.gif +0 -0
  183. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/page-last-disabled.gif +0 -0
  184. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/page-last.gif +0 -0
  185. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/page-next-disabled.gif +0 -0
  186. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/page-next.gif +0 -0
  187. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/page-prev-disabled.gif +0 -0
  188. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/page-prev.gif +0 -0
  189. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/pick-button.gif +0 -0
  190. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/refresh.gif +0 -0
  191. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/row-check-sprite.gif +0 -0
  192. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/row-expand-sprite.gif +0 -0
  193. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/row-over.gif +0 -0
  194. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/row-sel.gif +0 -0
  195. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/sort-hd.gif +0 -0
  196. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/sort_asc.gif +0 -0
  197. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/sort_desc.gif +0 -0
  198. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/grid/wait.gif +0 -0
  199. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/collapse.gif +0 -0
  200. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/expand.gif +0 -0
  201. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/gradient-bg.gif +0 -0
  202. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/mini-bottom.gif +0 -0
  203. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/mini-left.gif +0 -0
  204. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/mini-right.gif +0 -0
  205. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/mini-top.gif +0 -0
  206. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/ns-collapse.gif +0 -0
  207. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/ns-expand.gif +0 -0
  208. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/panel-close.gif +0 -0
  209. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/panel-title-bg.gif +0 -0
  210. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/panel-title-light-bg.gif +0 -0
  211. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/stick.gif +0 -0
  212. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/stuck.gif +0 -0
  213. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/tab-close-on.gif +0 -0
  214. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/layout/tab-close.gif +0 -0
  215. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/menu/checked.gif +0 -0
  216. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/menu/group-checked.gif +0 -0
  217. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/menu/item-over.gif +0 -0
  218. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/menu/menu-parent.gif +0 -0
  219. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/menu/menu.gif +0 -0
  220. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/menu/unchecked.gif +0 -0
  221. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/corners-sprite.gif +0 -0
  222. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/left-right.gif +0 -0
  223. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/light-hd.gif +0 -0
  224. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/tool-sprite-tpl.gif +0 -0
  225. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/tool-sprites.gif +0 -0
  226. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/tools-sprites-trans.gif +0 -0
  227. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/top-bottom.gif +0 -0
  228. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/top-bottom.png +0 -0
  229. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/white-corners-sprite.gif +0 -0
  230. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/white-left-right.gif +0 -0
  231. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/panel/white-top-bottom.gif +0 -0
  232. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/progress/progress-bg.gif +0 -0
  233. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/qtip/bg.gif +0 -0
  234. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/qtip/close.gif +0 -0
  235. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/qtip/tip-anchor-sprite.gif +0 -0
  236. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/qtip/tip-sprite.gif +0 -0
  237. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/s.gif +0 -0
  238. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shadow-c.png +0 -0
  239. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shadow-lr.png +0 -0
  240. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shadow.png +0 -0
  241. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/blue-loading.gif +0 -0
  242. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/calendar.gif +0 -0
  243. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/glass-bg.gif +0 -0
  244. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/hd-sprite.gif +0 -0
  245. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/large-loading.gif +0 -0
  246. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/left-btn.gif +0 -0
  247. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/loading-balls.gif +0 -0
  248. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/right-btn.gif +0 -0
  249. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/shared/warning.gif +0 -0
  250. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/e-handle-dark.gif +0 -0
  251. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/e-handle.gif +0 -0
  252. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/ne-handle-dark.gif +0 -0
  253. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/ne-handle.gif +0 -0
  254. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/nw-handle-dark.gif +0 -0
  255. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/nw-handle.gif +0 -0
  256. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/s-handle-dark.gif +0 -0
  257. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/s-handle.gif +0 -0
  258. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/se-handle-dark.gif +0 -0
  259. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/se-handle.gif +0 -0
  260. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/square.gif +0 -0
  261. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/sw-handle-dark.gif +0 -0
  262. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/sizer/sw-handle.gif +0 -0
  263. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/slider/slider-bg.png +0 -0
  264. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/slider/slider-thumb.png +0 -0
  265. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/slider/slider-v-bg.png +0 -0
  266. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/slider/slider-v-thumb.png +0 -0
  267. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/scroll-left.gif +0 -0
  268. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/scroll-right.gif +0 -0
  269. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/scroller-bg.gif +0 -0
  270. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-btm-inactive-left-bg.gif +0 -0
  271. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-btm-inactive-right-bg.gif +0 -0
  272. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-btm-left-bg.gif +0 -0
  273. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-btm-over-left-bg.gif +0 -0
  274. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-btm-over-right-bg.gif +0 -0
  275. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-btm-right-bg.gif +0 -0
  276. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-close.gif +0 -0
  277. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-strip-bg.gif +0 -0
  278. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-strip-bg.png +0 -0
  279. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tab-strip-btm-bg.gif +0 -0
  280. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tabs/tabs-sprite.gif +0 -0
  281. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/bg.gif +0 -0
  282. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/btn-arrow-light.gif +0 -0
  283. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/btn-arrow.gif +0 -0
  284. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/btn-over-bg.gif +0 -0
  285. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/gray-bg.gif +0 -0
  286. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/more.gif +0 -0
  287. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/tb-bg.gif +0 -0
  288. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/tb-btn-sprite.gif +0 -0
  289. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/tb-xl-btn-sprite.gif +0 -0
  290. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/toolbar/tb-xl-sep.gif +0 -0
  291. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/arrows.gif +0 -0
  292. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/drop-add.gif +0 -0
  293. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/drop-between.gif +0 -0
  294. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/drop-no.gif +0 -0
  295. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/drop-over.gif +0 -0
  296. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/drop-under.gif +0 -0
  297. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/drop-yes.gif +0 -0
  298. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-end-minus-nl.gif +0 -0
  299. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-end-minus.gif +0 -0
  300. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-end-plus-nl.gif +0 -0
  301. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-end-plus.gif +0 -0
  302. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-end.gif +0 -0
  303. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-line.gif +0 -0
  304. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-minus-nl.gif +0 -0
  305. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-minus.gif +0 -0
  306. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-plus-nl.gif +0 -0
  307. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow-plus.gif +0 -0
  308. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/elbow.gif +0 -0
  309. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/folder-open.gif +0 -0
  310. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/folder.gif +0 -0
  311. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/leaf.gif +0 -0
  312. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/loading.gif +0 -0
  313. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/tree/s.gif +0 -0
  314. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/icon-error.gif +0 -0
  315. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/icon-info.gif +0 -0
  316. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/icon-question.gif +0 -0
  317. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/icon-warning.gif +0 -0
  318. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/left-corners.png +0 -0
  319. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/left-corners.psd +0 -0
  320. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/left-right.png +0 -0
  321. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/left-right.psd +0 -0
  322. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/right-corners.png +0 -0
  323. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/right-corners.psd +0 -0
  324. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/top-bottom.png +0 -0
  325. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/default/window/top-bottom.psd +0 -0
  326. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/button/btn-arrow.gif +0 -0
  327. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/button/btn-sprite.gif +0 -0
  328. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/button/btn.gif +0 -0
  329. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/button/group-cs.gif +0 -0
  330. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/button/group-lr.gif +0 -0
  331. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/button/group-tb.gif +0 -0
  332. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/button/s-arrow-bo.gif +0 -0
  333. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/button/s-arrow-o.gif +0 -0
  334. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/form/clear-trigger.gif +0 -0
  335. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/form/date-trigger.gif +0 -0
  336. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/form/search-trigger.gif +0 -0
  337. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/form/trigger-square.gif +0 -0
  338. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/form/trigger.gif +0 -0
  339. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/gradient-bg.gif +0 -0
  340. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/col-move-bottom.gif +0 -0
  341. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/col-move-top.gif +0 -0
  342. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/grid3-hd-btn.gif +0 -0
  343. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/grid3-hrow-over.gif +0 -0
  344. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/grid3-hrow-over2.gif +0 -0
  345. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/grid3-hrow.gif +0 -0
  346. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/grid3-hrow2.gif +0 -0
  347. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/grid3-special-col-bg.gif +0 -0
  348. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/grid3-special-col-bg2.gif +0 -0
  349. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/grid3-special-col-sel-bg.gif +0 -0
  350. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/group-collapse.gif +0 -0
  351. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/group-expand-sprite.gif +0 -0
  352. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/group-expand.gif +0 -0
  353. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/page-first.gif +0 -0
  354. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/page-last.gif +0 -0
  355. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/page-next.gif +0 -0
  356. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/page-prev.gif +0 -0
  357. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/refresh.gif +0 -0
  358. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/row-expand-sprite.gif +0 -0
  359. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/sort_asc.gif +0 -0
  360. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/grid/sort_desc.gif +0 -0
  361. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/menu/group-checked.gif +0 -0
  362. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/menu/item-over-disabled.gif +0 -0
  363. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/menu/item-over.gif +0 -0
  364. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/menu/menu-parent.gif +0 -0
  365. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/corners-sprite.gif +0 -0
  366. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/left-right.gif +0 -0
  367. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/light-hd.gif +0 -0
  368. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/tool-sprite-tpl.gif +0 -0
  369. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/tool-sprites.gif +0 -0
  370. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/tools-sprites-trans.gif +0 -0
  371. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/top-bottom.gif +0 -0
  372. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/top-bottom.png +0 -0
  373. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/white-corners-sprite.gif +0 -0
  374. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/white-left-right.gif +0 -0
  375. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/panel/white-top-bottom.gif +0 -0
  376. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/progress/progress-bg.gif +0 -0
  377. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/qtip/bg.gif +0 -0
  378. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/qtip/close.gif +0 -0
  379. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/qtip/tip-anchor-sprite.gif +0 -0
  380. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/qtip/tip-sprite.gif +0 -0
  381. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/s.gif +0 -0
  382. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/shared/hd-sprite.gif +0 -0
  383. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/shared/left-btn.gif +0 -0
  384. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/shared/right-btn.gif +0 -0
  385. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/sizer/e-handle.gif +0 -0
  386. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/sizer/ne-handle.gif +0 -0
  387. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/sizer/nw-handle.gif +0 -0
  388. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/sizer/s-handle.gif +0 -0
  389. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/sizer/se-handle.gif +0 -0
  390. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/sizer/square.gif +0 -0
  391. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/sizer/sw-handle.gif +0 -0
  392. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/slider/slider-thumb.png +0 -0
  393. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/slider/slider-v-thumb.png +0 -0
  394. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/scroll-left.gif +0 -0
  395. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/scroll-right.gif +0 -0
  396. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/scroller-bg.gif +0 -0
  397. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-btm-inactive-left-bg.gif +0 -0
  398. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-btm-inactive-right-bg.gif +0 -0
  399. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-btm-left-bg.gif +0 -0
  400. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-btm-over-left-bg.gif +0 -0
  401. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-btm-over-right-bg.gif +0 -0
  402. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-btm-right-bg.gif +0 -0
  403. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-close.gif +0 -0
  404. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-strip-bg.gif +0 -0
  405. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-strip-bg.png +0 -0
  406. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tab-strip-btm-bg.gif +0 -0
  407. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tabs/tabs-sprite.gif +0 -0
  408. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/toolbar/bg.gif +0 -0
  409. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/toolbar/btn-arrow-light.gif +0 -0
  410. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/toolbar/btn-arrow.gif +0 -0
  411. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/toolbar/btn-over-bg.gif +0 -0
  412. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/toolbar/gray-bg.gif +0 -0
  413. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/toolbar/more.gif +0 -0
  414. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/toolbar/tb-bg.gif +0 -0
  415. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/toolbar/tb-btn-sprite.gif +0 -0
  416. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tree/arrows.gif +0 -0
  417. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tree/elbow-end-minus-nl.gif +0 -0
  418. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tree/elbow-end-minus.gif +0 -0
  419. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tree/elbow-end-plus-nl.gif +0 -0
  420. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/tree/elbow-end-plus.gif +0 -0
  421. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/icon-error.gif +0 -0
  422. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/icon-info.gif +0 -0
  423. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/icon-question.gif +0 -0
  424. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/icon-warning.gif +0 -0
  425. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/left-corners.png +0 -0
  426. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/left-corners.pspimage +0 -0
  427. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/left-right.png +0 -0
  428. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/right-corners.png +0 -0
  429. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/images/gray/window/top-bottom.png +0 -0
  430. data/vendor/assets/javascripts/aloha/lib/vendor/ext-3.2.1/resources/resources.jsb +507 -0
  431. data/vendor/assets/javascripts/aloha/lib/vendor/jquery-1.6.1.js +8936 -0
  432. data/vendor/assets/javascripts/aloha/lib/vendor/jquery.json-2.2.min.js +33 -0
  433. data/vendor/assets/javascripts/aloha/lib/vendor/jquery.store.js +446 -0
  434. data/vendor/assets/javascripts/aloha/lib/vendor/sanitize.js +267 -0
  435. data/vendor/assets/javascripts/aloha/plugins/common/abbr/css/abbr.css +0 -0
  436. data/vendor/assets/javascripts/aloha/plugins/common/abbr/lib/abbr-plugin.js +293 -0
  437. data/vendor/assets/javascripts/aloha/plugins/common/abbr/nls/de/i18n.js +1 -0
  438. data/vendor/assets/javascripts/aloha/plugins/common/abbr/nls/i18n.js +4 -0
  439. data/vendor/assets/javascripts/aloha/plugins/common/abbr/package.json +1 -0
  440. data/vendor/assets/javascripts/aloha/plugins/common/align/LICENSE +166 -0
  441. data/vendor/assets/javascripts/aloha/plugins/common/align/README +12 -0
  442. data/vendor/assets/javascripts/aloha/plugins/common/align/css/align.css +19 -0
  443. data/vendor/assets/javascripts/aloha/plugins/common/align/img/align.png +0 -0
  444. data/vendor/assets/javascripts/aloha/plugins/common/align/lib/align-plugin.js +345 -0
  445. data/vendor/assets/javascripts/aloha/plugins/common/align/nls/en/i18n.js +1 -0
  446. data/vendor/assets/javascripts/aloha/plugins/common/align/nls/fr/i18n.js +1 -0
  447. data/vendor/assets/javascripts/aloha/plugins/common/align/nls/i18n.js +6 -0
  448. data/vendor/assets/javascripts/aloha/plugins/common/align/package.json +2 -0
  449. data/vendor/assets/javascripts/aloha/plugins/common/block/README +0 -0
  450. data/vendor/assets/javascripts/aloha/plugins/common/block/css/block.css +51 -0
  451. data/vendor/assets/javascripts/aloha/plugins/common/block/img/toolbar-draghandle.gif +0 -0
  452. data/vendor/assets/javascripts/aloha/plugins/common/block/lib/block-plugin.js +104 -0
  453. data/vendor/assets/javascripts/aloha/plugins/common/block/lib/block.js +442 -0
  454. data/vendor/assets/javascripts/aloha/plugins/common/block/lib/blockcontenthandler.js +58 -0
  455. data/vendor/assets/javascripts/aloha/plugins/common/block/lib/blockmanager.js +242 -0
  456. data/vendor/assets/javascripts/aloha/plugins/common/block/lib/editor.js +209 -0
  457. data/vendor/assets/javascripts/aloha/plugins/common/block/lib/editormanager.js +34 -0
  458. data/vendor/assets/javascripts/aloha/plugins/common/block/lib/sidebarattributeeditor.js +119 -0
  459. data/vendor/assets/javascripts/aloha/plugins/common/block/package.json +11 -0
  460. data/vendor/assets/javascripts/aloha/plugins/common/characterpicker/css/characterpicker.css +38 -0
  461. data/vendor/assets/javascripts/aloha/plugins/common/characterpicker/img/icon.png +0 -0
  462. data/vendor/assets/javascripts/aloha/plugins/common/characterpicker/lib/characterpicker-plugin.js +227 -0
  463. data/vendor/assets/javascripts/aloha/plugins/common/characterpicker/nls/de/i18n.js +1 -0
  464. data/vendor/assets/javascripts/aloha/plugins/common/characterpicker/nls/i18n.js +4 -0
  465. data/vendor/assets/javascripts/aloha/plugins/common/commands/css/abbr.css +0 -0
  466. data/vendor/assets/javascripts/aloha/plugins/common/commands/lib/commands-plugin.js +15 -0
  467. data/vendor/assets/javascripts/aloha/plugins/common/commands/lib/inserthtml.js +107 -0
  468. data/vendor/assets/javascripts/aloha/plugins/common/commands/package.json +1 -0
  469. data/vendor/assets/javascripts/aloha/plugins/common/contenthandler/README.md +0 -0
  470. data/vendor/assets/javascripts/aloha/plugins/common/contenthandler/lib/contenthandler-plugin.js +54 -0
  471. data/vendor/assets/javascripts/aloha/plugins/common/contenthandler/lib/genericcontenthandler.js +255 -0
  472. data/vendor/assets/javascripts/aloha/plugins/common/contenthandler/lib/oembedcontenthandler.js +276 -0
  473. data/vendor/assets/javascripts/aloha/plugins/common/contenthandler/lib/sanitizecontenthandler.js +136 -0
  474. data/vendor/assets/javascripts/aloha/plugins/common/contenthandler/lib/wordcontenthandler.js +279 -0
  475. data/vendor/assets/javascripts/aloha/plugins/common/contenthandler/package.json +1 -0
  476. data/vendor/assets/javascripts/aloha/plugins/common/format/css/format.css +8 -0
  477. data/vendor/assets/javascripts/aloha/plugins/common/format/img/em.png +0 -0
  478. data/vendor/assets/javascripts/aloha/plugins/common/format/img/strong.png +0 -0
  479. data/vendor/assets/javascripts/aloha/plugins/common/format/lib/format-plugin.js +303 -0
  480. data/vendor/assets/javascripts/aloha/plugins/common/format/nls/de/i18n.js +1 -0
  481. data/vendor/assets/javascripts/aloha/plugins/common/format/nls/eo/i18n.js +1 -0
  482. data/vendor/assets/javascripts/aloha/plugins/common/format/nls/fi/i18n.js +1 -0
  483. data/vendor/assets/javascripts/aloha/plugins/common/format/nls/fr/i18n.js +1 -0
  484. data/vendor/assets/javascripts/aloha/plugins/common/format/nls/i18n.js +10 -0
  485. data/vendor/assets/javascripts/aloha/plugins/common/format/nls/it/i18n.js +1 -0
  486. data/vendor/assets/javascripts/aloha/plugins/common/format/nls/pl/i18n.js +1 -0
  487. data/vendor/assets/javascripts/aloha/plugins/common/format/nls/ru/i18n.js +1 -0
  488. data/vendor/assets/javascripts/aloha/plugins/common/highlighteditables/css/highlighteditables.css +14 -0
  489. data/vendor/assets/javascripts/aloha/plugins/common/highlighteditables/lib/highlighteditables-plugin.js +72 -0
  490. data/vendor/assets/javascripts/aloha/plugins/common/highlighteditables/package.json +1 -0
  491. data/vendor/assets/javascripts/aloha/plugins/common/horizontalruler/css/horizontalruler.css +4 -0
  492. data/vendor/assets/javascripts/aloha/plugins/common/horizontalruler/img/icon.png +0 -0
  493. data/vendor/assets/javascripts/aloha/plugins/common/horizontalruler/lib/horizontalruler-plugin.js +55 -0
  494. data/vendor/assets/javascripts/aloha/plugins/common/horizontalruler/nls/de/i18n.js +1 -0
  495. data/vendor/assets/javascripts/aloha/plugins/common/horizontalruler/nls/i18n.js +4 -0
  496. data/vendor/assets/javascripts/aloha/plugins/common/image/AGPL3 +661 -0
  497. data/vendor/assets/javascripts/aloha/plugins/common/image/LICENSE +25 -0
  498. data/vendor/assets/javascripts/aloha/plugins/common/image/README.md +83 -0
  499. data/vendor/assets/javascripts/aloha/plugins/common/image/css/image.css +124 -0
  500. data/vendor/assets/javascripts/aloha/plugins/common/image/demo/crop.html +76 -0
  501. data/vendor/assets/javascripts/aloha/plugins/common/image/demo/crop.php +21 -0
  502. data/vendor/assets/javascripts/aloha/plugins/common/image/demo/cropnresize.jpg +0 -0
  503. data/vendor/assets/javascripts/aloha/plugins/common/image/demo/index.html +120 -0
  504. data/vendor/assets/javascripts/aloha/plugins/common/image/img/blank.jpg +0 -0
  505. data/vendor/assets/javascripts/aloha/plugins/common/image/img/cropnresize.png +0 -0
  506. data/vendor/assets/javascripts/aloha/plugins/common/image/img/handle-sw.png +0 -0
  507. data/vendor/assets/javascripts/aloha/plugins/common/image/img/image-align-left.png +0 -0
  508. data/vendor/assets/javascripts/aloha/plugins/common/image/img/image-align-none.png +0 -0
  509. data/vendor/assets/javascripts/aloha/plugins/common/image/img/image-align-right.png +0 -0
  510. data/vendor/assets/javascripts/aloha/plugins/common/image/img/image-border.png +0 -0
  511. data/vendor/assets/javascripts/aloha/plugins/common/image/img/image-title.png +0 -0
  512. data/vendor/assets/javascripts/aloha/plugins/common/image/img/image.gif +0 -0
  513. data/vendor/assets/javascripts/aloha/plugins/common/image/img/padding-decrease.gif +0 -0
  514. data/vendor/assets/javascripts/aloha/plugins/common/image/img/padding-increase.gif +0 -0
  515. data/vendor/assets/javascripts/aloha/plugins/common/image/img/page.png +0 -0
  516. data/vendor/assets/javascripts/aloha/plugins/common/image/img/size-decrease.gif +0 -0
  517. data/vendor/assets/javascripts/aloha/plugins/common/image/img/size-increase.gif +0 -0
  518. data/vendor/assets/javascripts/aloha/plugins/common/image/lib/image-plugin.js +1615 -0
  519. data/vendor/assets/javascripts/aloha/plugins/common/image/nls/cz/i18n.js +16 -0
  520. data/vendor/assets/javascripts/aloha/plugins/common/image/nls/de/i18n.js +1 -0
  521. data/vendor/assets/javascripts/aloha/plugins/common/image/nls/fr/i18n.js +1 -0
  522. data/vendor/assets/javascripts/aloha/plugins/common/image/nls/i18n.js +7 -0
  523. data/vendor/assets/javascripts/aloha/plugins/common/image/nls/ru/i18n.js +16 -0
  524. data/vendor/assets/javascripts/aloha/plugins/common/image/package.json +1 -0
  525. data/vendor/assets/javascripts/aloha/plugins/common/image/test/test.css +12 -0
  526. data/vendor/assets/javascripts/aloha/plugins/common/image/test/test.html +40 -0
  527. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/jcrop/jcrop.gif +0 -0
  528. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/jcrop/jquery.jcrop.css +35 -0
  529. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/jcrop/jquery.jcrop.min.js +163 -0
  530. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/mousewheel/mousewheel.js +60 -0
  531. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/jquery-ui-1.8.10.custom.min.js +97 -0
  532. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  533. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  534. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_flat_10_000000_40x100.png +0 -0
  535. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  536. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  537. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  538. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  539. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  540. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  541. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-icons_222222_256x240.png +0 -0
  542. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-icons_228ef1_256x240.png +0 -0
  543. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-icons_ef8c08_256x240.png +0 -0
  544. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-icons_ffd27a_256x240.png +0 -0
  545. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/images/ui-icons_ffffff_256x240.png +0 -0
  546. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/jquery-ui-1.8.10.cropnresize.css +33 -0
  547. data/vendor/assets/javascripts/aloha/plugins/common/image/vendor/ui/ui-lightness/jquery-ui-1.8.10.custom.css +314 -0
  548. data/vendor/assets/javascripts/aloha/plugins/common/link/css/link.css +55 -0
  549. data/vendor/assets/javascripts/aloha/plugins/common/link/demo/background.png +0 -0
  550. data/vendor/assets/javascripts/aloha/plugins/common/link/demo/external-link-ltr-icon.png +0 -0
  551. data/vendor/assets/javascripts/aloha/plugins/common/link/demo/index.css +91 -0
  552. data/vendor/assets/javascripts/aloha/plugins/common/link/demo/index.html +91 -0
  553. data/vendor/assets/javascripts/aloha/plugins/common/link/extra/delicious.js +246 -0
  554. data/vendor/assets/javascripts/aloha/plugins/common/link/extra/linklist.js +227 -0
  555. data/vendor/assets/javascripts/aloha/plugins/common/link/extra/slowlinklist.js +228 -0
  556. data/vendor/assets/javascripts/aloha/plugins/common/link/lib/link-plugin.js +759 -0
  557. data/vendor/assets/javascripts/aloha/plugins/common/link/nls/de/i18n.js +13 -0
  558. data/vendor/assets/javascripts/aloha/plugins/common/link/nls/fr/i18n.js +6 -0
  559. data/vendor/assets/javascripts/aloha/plugins/common/link/nls/i18n.js +9 -0
  560. data/vendor/assets/javascripts/aloha/plugins/common/link/nls/pl/i18n.js +6 -0
  561. data/vendor/assets/javascripts/aloha/plugins/common/link/nls/ru/i18n.js +6 -0
  562. data/vendor/assets/javascripts/aloha/plugins/common/list/lib/list-plugin.js +849 -0
  563. data/vendor/assets/javascripts/aloha/plugins/common/list/nls/de/i18n.js +1 -0
  564. data/vendor/assets/javascripts/aloha/plugins/common/list/nls/eo/i18n.js +1 -0
  565. data/vendor/assets/javascripts/aloha/plugins/common/list/nls/fi/i18n.js +1 -0
  566. data/vendor/assets/javascripts/aloha/plugins/common/list/nls/fr/i18n.js +1 -0
  567. data/vendor/assets/javascripts/aloha/plugins/common/list/nls/i18n.js +9 -0
  568. data/vendor/assets/javascripts/aloha/plugins/common/list/nls/it/i18n.js +1 -0
  569. data/vendor/assets/javascripts/aloha/plugins/common/list/nls/ru/i18n.js +1 -0
  570. data/vendor/assets/javascripts/aloha/plugins/common/list/package.json +1 -0
  571. data/vendor/assets/javascripts/aloha/plugins/common/paste/README.md +3 -0
  572. data/vendor/assets/javascripts/aloha/plugins/common/paste/lib/paste-plugin.js +221 -0
  573. data/vendor/assets/javascripts/aloha/plugins/common/paste/package.json +8 -0
  574. data/vendor/assets/javascripts/aloha/plugins/common/table/css/table.css +160 -0
  575. data/vendor/assets/javascripts/aloha/plugins/common/table/img/down.cur +0 -0
  576. data/vendor/assets/javascripts/aloha/plugins/common/table/img/left.cur +0 -0
  577. data/vendor/assets/javascripts/aloha/plugins/common/table/img/table_layout.png +0 -0
  578. data/vendor/assets/javascripts/aloha/plugins/common/table/img/wai-green.png +0 -0
  579. data/vendor/assets/javascripts/aloha/plugins/common/table/img/wai-red.png +0 -0
  580. data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table-cell.js +463 -0
  581. data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table-create-layer.js +210 -0
  582. data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table-plugin-utils.js +355 -0
  583. data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table-plugin.js +1498 -0
  584. data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table-selection.js +374 -0
  585. data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table.js +1529 -0
  586. data/vendor/assets/javascripts/aloha/plugins/common/table/nls/de/i18n.js +1 -0
  587. data/vendor/assets/javascripts/aloha/plugins/common/table/nls/eo/i18n.js +1 -0
  588. data/vendor/assets/javascripts/aloha/plugins/common/table/nls/fi/i18n.js +1 -0
  589. data/vendor/assets/javascripts/aloha/plugins/common/table/nls/fr/i18n.js +1 -0
  590. data/vendor/assets/javascripts/aloha/plugins/common/table/nls/i18n.js +11 -0
  591. data/vendor/assets/javascripts/aloha/plugins/common/table/nls/it/i18n.js +1 -0
  592. data/vendor/assets/javascripts/aloha/plugins/common/table/nls/pl/i18n.js +1 -0
  593. data/vendor/assets/javascripts/aloha/plugins/common/table/nls/ru/i18n.js +1 -0
  594. data/vendor/assets/javascripts/aloha/plugins/common/table/package.json +1 -0
  595. data/vendor/assets/javascripts/aloha/plugins/common/undo/demo/index.css +49 -0
  596. data/vendor/assets/javascripts/aloha/plugins/common/undo/demo/index.html +85 -0
  597. data/vendor/assets/javascripts/aloha/plugins/common/undo/lib/undo-plugin.js +134 -0
  598. data/vendor/assets/javascripts/aloha/plugins/common/undo/package.json +7 -0
  599. data/vendor/assets/javascripts/aloha/plugins/common/undo/vendor/diff_match_patch_uncompressed.js +2155 -0
  600. data/vendor/assets/javascripts/aloha/plugins/common/undo/vendor/undo.js +119 -0
  601. data/vendor/assets/javascripts/aloha/plugins/extra/attributes/README +0 -0
  602. data/vendor/assets/javascripts/aloha/plugins/extra/attributes/css/attributes.css +12 -0
  603. data/vendor/assets/javascripts/aloha/plugins/extra/attributes/lib/attributes-plugin.js +217 -0
  604. data/vendor/assets/javascripts/aloha/plugins/extra/attributes/nls/de/i18n.js +1 -0
  605. data/vendor/assets/javascripts/aloha/plugins/extra/attributes/nls/en/i18n.js +1 -0
  606. data/vendor/assets/javascripts/aloha/plugins/extra/attributes/nls/i18n.js +5 -0
  607. data/vendor/assets/javascripts/aloha/plugins/extra/browser/README +0 -0
  608. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/browser.css +360 -0
  609. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/browser.jqgrid.css +374 -0
  610. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/browsercombined.css +752 -0
  611. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  612. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  613. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  614. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  615. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  616. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  617. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  618. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  619. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-icons_222222_256x240.png +0 -0
  620. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-icons_2e83ff_256x240.png +0 -0
  621. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-icons_454545_256x240.png +0 -0
  622. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-icons_888888_256x240.png +0 -0
  623. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/images/ui-icons_cd0a0a_256x240.png +0 -0
  624. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/jquery-ui-1.8.13.custom.css +319 -0
  625. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/jstree.css +88 -0
  626. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/throbber.gif +0 -0
  627. data/vendor/assets/javascripts/aloha/plugins/extra/browser/css/ui.jqgrid.css +148 -0
  628. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/arrow-000-medium.png +0 -0
  629. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/arrow-180.png +0 -0
  630. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/arrow-315-medium.png +0 -0
  631. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/arrow-stop-180.png +0 -0
  632. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/arrow-stop.png +0 -0
  633. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/arrow.png +0 -0
  634. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/control-stop-square-small.png +0 -0
  635. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/folder-horizontal-open.png +0 -0
  636. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/folder-open.png +0 -0
  637. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/gcn-icons/gcn-icon-file.gif +0 -0
  638. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/gcn-icons/gcn-icon-image.gif +0 -0
  639. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/gcn-icons/gcn-icon-page.gif +0 -0
  640. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/magnifier-left.png +0 -0
  641. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/page.png +0 -0
  642. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/picture.png +0 -0
  643. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/sort-alphabet-descending.png +0 -0
  644. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/sort-alphabet.png +0 -0
  645. data/vendor/assets/javascripts/aloha/plugins/extra/browser/img/throbber.gif +0 -0
  646. data/vendor/assets/javascripts/aloha/plugins/extra/browser/lib/browser-plugin.js +10 -0
  647. data/vendor/assets/javascripts/aloha/plugins/extra/browser/lib/browser.js +1103 -0
  648. data/vendor/assets/javascripts/aloha/plugins/extra/browser/lib/locale.js +26 -0
  649. data/vendor/assets/javascripts/aloha/plugins/extra/browser/nls/de.json +1 -0
  650. data/vendor/assets/javascripts/aloha/plugins/extra/browser/nls/de/i18n.js +18 -0
  651. data/vendor/assets/javascripts/aloha/plugins/extra/browser/nls/en.json +1 -0
  652. data/vendor/assets/javascripts/aloha/plugins/extra/browser/nls/en/i18n.js +18 -0
  653. data/vendor/assets/javascripts/aloha/plugins/extra/browser/nls/i18n.js +4 -0
  654. data/vendor/assets/javascripts/aloha/plugins/extra/browser/vendor/grid.locale.de.js +134 -0
  655. data/vendor/assets/javascripts/aloha/plugins/extra/browser/vendor/grid.locale.en.js +129 -0
  656. data/vendor/assets/javascripts/aloha/plugins/extra/browser/vendor/jquery.jqGrid.js +467 -0
  657. data/vendor/assets/javascripts/aloha/plugins/extra/browser/vendor/jquery.jstree.js +4544 -0
  658. data/vendor/assets/javascripts/aloha/plugins/extra/browser/vendor/jquery.ui.js +756 -0
  659. data/vendor/assets/javascripts/aloha/plugins/extra/browser/vendor/ui-layout.js +108 -0
  660. data/vendor/assets/javascripts/aloha/plugins/extra/cite/README +0 -0
  661. data/vendor/assets/javascripts/aloha/plugins/extra/cite/css/cite.css +49 -0
  662. data/vendor/assets/javascripts/aloha/plugins/extra/cite/img/blockquote.png +0 -0
  663. data/vendor/assets/javascripts/aloha/plugins/extra/cite/img/icon_cite.png +0 -0
  664. data/vendor/assets/javascripts/aloha/plugins/extra/cite/lib/cite-plugin.js +539 -0
  665. data/vendor/assets/javascripts/aloha/plugins/extra/cite/nls/de/i18n.js +1 -0
  666. data/vendor/assets/javascripts/aloha/plugins/extra/cite/nls/en/i18n.js +1 -0
  667. data/vendor/assets/javascripts/aloha/plugins/extra/cite/nls/i18n.js +4 -0
  668. data/vendor/assets/javascripts/aloha/plugins/extra/cite/package.json +1 -0
  669. data/vendor/assets/javascripts/aloha/plugins/extra/comments/img/add-icon.png +0 -0
  670. data/vendor/assets/javascripts/aloha/plugins/extra/comments/img/add.png +0 -0
  671. data/vendor/assets/javascripts/aloha/plugins/extra/comments/img/comments.png +0 -0
  672. data/vendor/assets/javascripts/aloha/plugins/extra/comments/img/hr.png +0 -0
  673. data/vendor/assets/javascripts/aloha/plugins/extra/comments/img/textbox.png +0 -0
  674. data/vendor/assets/javascripts/aloha/plugins/extra/comments/package.json +1 -0
  675. data/vendor/assets/javascripts/aloha/plugins/extra/comments/src/comments.css +442 -0
  676. data/vendor/assets/javascripts/aloha/plugins/extra/comments/src/comments.js +669 -0
  677. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/AGPL3 +661 -0
  678. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/LICENSE +25 -0
  679. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/README.md +5 -0
  680. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/TODO.md +2 -0
  681. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/demo/index.css +47 -0
  682. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/demo/index.html +101 -0
  683. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/demo/migration/index.css +189 -0
  684. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/demo/migration/index.html +321 -0
  685. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/demo/specs/DragnDropnImage.graphml +677 -0
  686. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/demo/style.css +47 -0
  687. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/demo/upload.php +26 -0
  688. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/i18n/en.json +1 -0
  689. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/i18n/fr.json +1 -0
  690. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/img/cross.png +0 -0
  691. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/img/hourglass.png +0 -0
  692. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/img/loading.gif +0 -0
  693. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/img/page.png +0 -0
  694. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/img/tick.png +0 -0
  695. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/lib/draganddropfiles-plugin.js +4 -0
  696. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/lib/dragndropfiles.css +110 -0
  697. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/lib/dragndropfiles.js +349 -0
  698. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/lib/dropfilesrepository.js +365 -0
  699. data/vendor/assets/javascripts/aloha/plugins/extra/draganddropfiles/package.json +1 -0
  700. data/vendor/assets/javascripts/aloha/plugins/extra/formatlesspaste/README.md +3 -0
  701. data/vendor/assets/javascripts/aloha/plugins/extra/formatlesspaste/css/formatless.css +7 -0
  702. data/vendor/assets/javascripts/aloha/plugins/extra/formatlesspaste/img/button.png +0 -0
  703. data/vendor/assets/javascripts/aloha/plugins/extra/formatlesspaste/lib/formatlesshandler.js +67 -0
  704. data/vendor/assets/javascripts/aloha/plugins/extra/formatlesspaste/lib/formatlesspaste-plugin.js +103 -0
  705. data/vendor/assets/javascripts/aloha/plugins/extra/formatlesspaste/nls/de/i18n.js +1 -0
  706. data/vendor/assets/javascripts/aloha/plugins/extra/formatlesspaste/nls/i18n.js +7 -0
  707. data/vendor/assets/javascripts/aloha/plugins/extra/formatlesspaste/package.json +8 -0
  708. data/vendor/assets/javascripts/aloha/plugins/extra/headerids/README +0 -0
  709. data/vendor/assets/javascripts/aloha/plugins/extra/headerids/css/headerids.css +8 -0
  710. data/vendor/assets/javascripts/aloha/plugins/extra/headerids/lib/headerids-plugin.js +127 -0
  711. data/vendor/assets/javascripts/aloha/plugins/extra/headerids/nls/de/i18n.js +1 -0
  712. data/vendor/assets/javascripts/aloha/plugins/extra/headerids/nls/en/i18n.js +1 -0
  713. data/vendor/assets/javascripts/aloha/plugins/extra/headerids/nls/i18n.js +5 -0
  714. data/vendor/assets/javascripts/aloha/plugins/extra/hints/dep/jquery.poshytip.js +470 -0
  715. data/vendor/assets/javascripts/aloha/plugins/extra/hints/i18n/de.json +1 -0
  716. data/vendor/assets/javascripts/aloha/plugins/extra/hints/i18n/en.json +1 -0
  717. data/vendor/assets/javascripts/aloha/plugins/extra/hints/img/tip-twitter_arrows.gif +0 -0
  718. data/vendor/assets/javascripts/aloha/plugins/extra/hints/package.json +9 -0
  719. data/vendor/assets/javascripts/aloha/plugins/extra/hints/src/hints.css +61 -0
  720. data/vendor/assets/javascripts/aloha/plugins/extra/hints/src/hints.js +49 -0
  721. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/README +0 -0
  722. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ad.png +0 -0
  723. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ae.png +0 -0
  724. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/af.png +0 -0
  725. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ag.png +0 -0
  726. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ai.png +0 -0
  727. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/al.png +0 -0
  728. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/am.png +0 -0
  729. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/an.png +0 -0
  730. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ao.png +0 -0
  731. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ar.png +0 -0
  732. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/as.png +0 -0
  733. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/at.png +0 -0
  734. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/au.png +0 -0
  735. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/aw.png +0 -0
  736. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ax.png +0 -0
  737. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/az.png +0 -0
  738. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ba.png +0 -0
  739. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bb.png +0 -0
  740. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bd.png +0 -0
  741. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/be.png +0 -0
  742. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bf.png +0 -0
  743. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bg.png +0 -0
  744. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bh.png +0 -0
  745. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bi.png +0 -0
  746. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bj.png +0 -0
  747. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bm.png +0 -0
  748. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bn.png +0 -0
  749. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bo.png +0 -0
  750. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/br.png +0 -0
  751. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bs.png +0 -0
  752. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bt.png +0 -0
  753. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bv.png +0 -0
  754. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bw.png +0 -0
  755. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/by.png +0 -0
  756. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/bz.png +0 -0
  757. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ca.png +0 -0
  758. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/catalonia.png +0 -0
  759. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cc.png +0 -0
  760. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cd.png +0 -0
  761. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cf.png +0 -0
  762. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cg.png +0 -0
  763. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ch.png +0 -0
  764. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ci.png +0 -0
  765. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ck.png +0 -0
  766. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cl.png +0 -0
  767. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cm.png +0 -0
  768. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cn.png +0 -0
  769. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/co.png +0 -0
  770. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cr.png +0 -0
  771. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cs.png +0 -0
  772. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cu.png +0 -0
  773. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cv.png +0 -0
  774. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cx.png +0 -0
  775. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cy.png +0 -0
  776. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/cz.png +0 -0
  777. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/de.png +0 -0
  778. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/dj.png +0 -0
  779. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/dk.png +0 -0
  780. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/dm.png +0 -0
  781. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/do.png +0 -0
  782. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/dz.png +0 -0
  783. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ec.png +0 -0
  784. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ee.png +0 -0
  785. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/eg.png +0 -0
  786. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/eh.png +0 -0
  787. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/en.png +0 -0
  788. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/er.png +0 -0
  789. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/es.png +0 -0
  790. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/et.png +0 -0
  791. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/europeanunion.png +0 -0
  792. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/fam.png +0 -0
  793. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/fi.png +0 -0
  794. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/fj.png +0 -0
  795. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/fk.png +0 -0
  796. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/fm.png +0 -0
  797. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/fo.png +0 -0
  798. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/fr.png +0 -0
  799. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ga.png +0 -0
  800. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gb.png +0 -0
  801. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gd.png +0 -0
  802. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ge.png +0 -0
  803. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gf.png +0 -0
  804. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gh.png +0 -0
  805. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gi.png +0 -0
  806. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gl.png +0 -0
  807. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gm.png +0 -0
  808. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gn.png +0 -0
  809. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gp.png +0 -0
  810. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gq.png +0 -0
  811. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gr.png +0 -0
  812. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gs.png +0 -0
  813. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gt.png +0 -0
  814. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gu.png +0 -0
  815. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gw.png +0 -0
  816. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/gy.png +0 -0
  817. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/hk.png +0 -0
  818. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/hm.png +0 -0
  819. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/hn.png +0 -0
  820. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/hr.png +0 -0
  821. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ht.png +0 -0
  822. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/hu.png +0 -0
  823. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/id.png +0 -0
  824. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ie.png +0 -0
  825. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/il.png +0 -0
  826. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/in.png +0 -0
  827. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/io.png +0 -0
  828. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/iq.png +0 -0
  829. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ir.png +0 -0
  830. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/is.png +0 -0
  831. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/it.png +0 -0
  832. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/jm.png +0 -0
  833. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/jo.png +0 -0
  834. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/jp.png +0 -0
  835. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ke.png +0 -0
  836. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/kg.png +0 -0
  837. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/kh.png +0 -0
  838. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ki.png +0 -0
  839. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/km.png +0 -0
  840. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/kn.png +0 -0
  841. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/kp.png +0 -0
  842. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/kr.png +0 -0
  843. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/kw.png +0 -0
  844. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ky.png +0 -0
  845. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/kz.png +0 -0
  846. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/la.png +0 -0
  847. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/lb.png +0 -0
  848. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/lc.png +0 -0
  849. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/li.png +0 -0
  850. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/lk.png +0 -0
  851. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/lr.png +0 -0
  852. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ls.png +0 -0
  853. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/lt.png +0 -0
  854. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/lu.png +0 -0
  855. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/lv.png +0 -0
  856. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ly.png +0 -0
  857. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ma.png +0 -0
  858. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mc.png +0 -0
  859. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/md.png +0 -0
  860. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/me.png +0 -0
  861. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mg.png +0 -0
  862. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mh.png +0 -0
  863. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mk.png +0 -0
  864. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ml.png +0 -0
  865. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mm.png +0 -0
  866. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mn.png +0 -0
  867. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mo.png +0 -0
  868. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mp.png +0 -0
  869. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mq.png +0 -0
  870. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mr.png +0 -0
  871. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ms.png +0 -0
  872. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mt.png +0 -0
  873. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mu.png +0 -0
  874. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mv.png +0 -0
  875. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mw.png +0 -0
  876. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mx.png +0 -0
  877. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/my.png +0 -0
  878. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/mz.png +0 -0
  879. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/na.png +0 -0
  880. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/nc.png +0 -0
  881. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ne.png +0 -0
  882. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/nf.png +0 -0
  883. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ng.png +0 -0
  884. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ni.png +0 -0
  885. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/nl.png +0 -0
  886. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/no.png +0 -0
  887. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/np.png +0 -0
  888. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/nr.png +0 -0
  889. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/nu.png +0 -0
  890. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/nz.png +0 -0
  891. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/om.png +0 -0
  892. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pa.png +0 -0
  893. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pe.png +0 -0
  894. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pf.png +0 -0
  895. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pg.png +0 -0
  896. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ph.png +0 -0
  897. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pk.png +0 -0
  898. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pl.png +0 -0
  899. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pm.png +0 -0
  900. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pn.png +0 -0
  901. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pr.png +0 -0
  902. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ps.png +0 -0
  903. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pt.png +0 -0
  904. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/pw.png +0 -0
  905. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/py.png +0 -0
  906. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/qa.png +0 -0
  907. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/re.png +0 -0
  908. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ro.png +0 -0
  909. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/rs.png +0 -0
  910. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ru.png +0 -0
  911. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/rw.png +0 -0
  912. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sa.png +0 -0
  913. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sb.png +0 -0
  914. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sc.png +0 -0
  915. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/scotland.png +0 -0
  916. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sd.png +0 -0
  917. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/se.png +0 -0
  918. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sg.png +0 -0
  919. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sh.png +0 -0
  920. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/si.png +0 -0
  921. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sj.png +0 -0
  922. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sk.png +0 -0
  923. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sl.png +0 -0
  924. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sm.png +0 -0
  925. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sn.png +0 -0
  926. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/so.png +0 -0
  927. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sr.png +0 -0
  928. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/st.png +0 -0
  929. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sv.png +0 -0
  930. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sy.png +0 -0
  931. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/sz.png +0 -0
  932. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tc.png +0 -0
  933. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/td.png +0 -0
  934. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tf.png +0 -0
  935. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tg.png +0 -0
  936. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/th.png +0 -0
  937. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tj.png +0 -0
  938. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tk.png +0 -0
  939. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tl.png +0 -0
  940. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tm.png +0 -0
  941. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tn.png +0 -0
  942. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/to.png +0 -0
  943. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tr.png +0 -0
  944. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tt.png +0 -0
  945. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tv.png +0 -0
  946. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tw.png +0 -0
  947. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/tz.png +0 -0
  948. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ua.png +0 -0
  949. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ug.png +0 -0
  950. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/um.png +0 -0
  951. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/us.png +0 -0
  952. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/uy.png +0 -0
  953. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/uz.png +0 -0
  954. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/va.png +0 -0
  955. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/vc.png +0 -0
  956. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ve.png +0 -0
  957. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/vg.png +0 -0
  958. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/vi.png +0 -0
  959. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/vn.png +0 -0
  960. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/vu.png +0 -0
  961. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/wales.png +0 -0
  962. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/wf.png +0 -0
  963. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ws.png +0 -0
  964. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/ye.png +0 -0
  965. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/yt.png +0 -0
  966. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/za.png +0 -0
  967. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/zm.png +0 -0
  968. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/img/flags/zw.png +0 -0
  969. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/lib/linkbrowser-plugin.js +153 -0
  970. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/nls/de/i18n.js +1 -0
  971. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/nls/fr/i18n.js +1 -0
  972. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/nls/i18n.js +7 -0
  973. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/nls/pl/i18n.js +1 -0
  974. data/vendor/assets/javascripts/aloha/plugins/extra/linkbrowser/nls/ru/i18n.js +1 -0
  975. data/vendor/assets/javascripts/aloha/plugins/extra/linkchecker/demo/index.css +49 -0
  976. data/vendor/assets/javascripts/aloha/plugins/extra/linkchecker/demo/index.html +82 -0
  977. data/vendor/assets/javascripts/aloha/plugins/extra/linkchecker/i18n/en.json +1 -0
  978. data/vendor/assets/javascripts/aloha/plugins/extra/linkchecker/package.json +1 -0
  979. data/vendor/assets/javascripts/aloha/plugins/extra/linkchecker/proxy.php +244 -0
  980. data/vendor/assets/javascripts/aloha/plugins/extra/linkchecker/src/linkchecker.css +14 -0
  981. data/vendor/assets/javascripts/aloha/plugins/extra/linkchecker/src/linkchecker.js +256 -0
  982. data/vendor/assets/javascripts/aloha/plugins/extra/listenforcer/lib/listenforcer-plugin.js +165 -0
  983. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/README +0 -0
  984. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/css/metaview.css +86 -0
  985. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/anchor.png +0 -0
  986. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/blockquote.png +0 -0
  987. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/button.png +0 -0
  988. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/caption.png +0 -0
  989. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/cite.png +0 -0
  990. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/dd.png +0 -0
  991. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/div.png +0 -0
  992. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/dl.png +0 -0
  993. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/dt.png +0 -0
  994. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/h1.png +0 -0
  995. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/h2.png +0 -0
  996. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/h3.png +0 -0
  997. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/h4.png +0 -0
  998. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/h5.png +0 -0
  999. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/h6.png +0 -0
  1000. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/icon_cite.png +0 -0
  1001. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/p.png +0 -0
  1002. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/pre.png +0 -0
  1003. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/table.png +0 -0
  1004. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/td.png +0 -0
  1005. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/img/th.png +0 -0
  1006. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/lib/metaview-plugin.js +82 -0
  1007. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/nls/de.json +1 -0
  1008. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/nls/de/i18n.js +1 -0
  1009. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/nls/en.json +1 -0
  1010. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/nls/en/i18n.js +1 -0
  1011. data/vendor/assets/javascripts/aloha/plugins/extra/metaview/nls/i18n.js +5 -0
  1012. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/README +0 -0
  1013. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/css/numerated-headers.css +7 -0
  1014. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/demo/index.css +189 -0
  1015. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/demo/index.html +139 -0
  1016. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/demo/js/aloha-config.js +115 -0
  1017. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/img/headers.png +0 -0
  1018. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/lib/numerated-headers-plugin.js +233 -0
  1019. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/nls/de/i18n.js +1 -0
  1020. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/nls/en/i18n.js +1 -0
  1021. data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/nls/i18n.js +5 -0
  1022. data/vendor/assets/javascripts/aloha/plugins/extra/profiler/css/profiler.css +34 -0
  1023. data/vendor/assets/javascripts/aloha/plugins/extra/profiler/lib/profiler-plugin.js +285 -0
  1024. data/vendor/assets/javascripts/aloha/plugins/extra/ribbon/LICENSE.md +662 -0
  1025. data/vendor/assets/javascripts/aloha/plugins/extra/ribbon/README.md +8 -0
  1026. data/vendor/assets/javascripts/aloha/plugins/extra/ribbon/css/ribbon.css +10 -0
  1027. data/vendor/assets/javascripts/aloha/plugins/extra/ribbon/lib/ribbon-plugin.js +186 -0
  1028. data/vendor/assets/javascripts/aloha/plugins/extra/ribbon/package.json +1 -0
  1029. data/vendor/assets/javascripts/aloha/plugins/extra/toc/i18n/de.json +1 -0
  1030. data/vendor/assets/javascripts/aloha/plugins/extra/toc/i18n/en.json +1 -0
  1031. data/vendor/assets/javascripts/aloha/plugins/extra/toc/package.json +1 -0
  1032. data/vendor/assets/javascripts/aloha/plugins/extra/toc/src/toc.js +350 -0
  1033. data/vendor/assets/javascripts/aloha/plugins/extra/vie/LICENSE +22 -0
  1034. data/vendor/assets/javascripts/aloha/plugins/extra/vie/README.markdown +65 -0
  1035. data/vendor/assets/javascripts/aloha/plugins/extra/vie/demo/index.html +93 -0
  1036. data/vendor/assets/javascripts/aloha/plugins/extra/vie/img/cms-decoupled-communications.png +0 -0
  1037. data/vendor/assets/javascripts/aloha/plugins/extra/vie/package.json +1 -0
  1038. data/vendor/assets/javascripts/aloha/plugins/extra/vie/src/backbone-min.js +27 -0
  1039. data/vendor/assets/javascripts/aloha/plugins/extra/vie/src/underscore-min.js +25 -0
  1040. data/vendor/assets/javascripts/aloha/plugins/extra/vie/src/vie-aloha.js +74 -0
  1041. data/vendor/assets/javascripts/aloha/plugins/extra/vie/src/vie-collectionmanager.js +70 -0
  1042. data/vendor/assets/javascripts/aloha/plugins/extra/vie/src/vie-containermanager.js +263 -0
  1043. data/vendor/assets/javascripts/aloha/plugins/extra/vie/src/vie.js +20 -0
  1044. data/vendor/assets/stylesheets/aloha.css +1 -0
  1045. metadata +1133 -0
@@ -0,0 +1,2470 @@
1
+ /*!
2
+ * This file is part of Aloha Editor Project http://aloha-editor.org
3
+ * Copyright © 2010-2011 Gentics Software GmbH, aloha@gentics.com
4
+ * Contributors http://aloha-editor.org/contribution.php
5
+ * Licensed unter the terms of http://www.aloha-editor.org/license.html
6
+ *//*
7
+ * Aloha Editor is free software: you can redistribute it and/or modify
8
+ * it under the terms of the GNU Affero General Public License as published by
9
+ * the Free Software Foundation, either version 3 of the License, or
10
+ * (at your option) any later version.*
11
+ *
12
+ * Aloha Editor is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ * GNU Affero General Public License for more details.
16
+ *
17
+ * You should have received a copy of the GNU Affero General Public License
18
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
19
+ */
20
+
21
+ /*!
22
+ * Ext JS Library 3.2.1
23
+ * Copyright(c) 2006-2010 Ext JS, Inc.
24
+ * licensing@extjs.com
25
+ * http://www.extjs.com/license
26
+ */
27
+ // for old browsers
28
+ window.undefined = undefined;
29
+
30
+ /**
31
+ * @class Ext
32
+ * Ext core utilities and functions.
33
+ * @singleton
34
+ */
35
+
36
+ Ext = {
37
+ /**
38
+ * The version of the framework
39
+ * @type String
40
+ */
41
+ version : '3.2.1',
42
+ versionDetail : {
43
+ major: 3,
44
+ minor: 2,
45
+ patch: 1
46
+ }
47
+ };
48
+
49
+ /**
50
+ * Copies all the properties of config to obj.
51
+ * @param {Object} obj The receiver of the properties
52
+ * @param {Object} config The source of the properties
53
+ * @param {Object} defaults A different object that will also be applied for default values
54
+ * @return {Object} returns obj
55
+ * @member Ext apply
56
+ */
57
+ Ext.apply = function(o, c, defaults){
58
+ // no "this" reference for friendly out of scope calls
59
+ if(defaults){
60
+ Ext.apply(o, defaults);
61
+ }
62
+ if(o && c && typeof c == 'object'){
63
+ for(var p in c){
64
+ o[p] = c[p];
65
+ }
66
+ }
67
+ return o;
68
+ };
69
+
70
+ (function(){
71
+ var idSeed = 0,
72
+ toString = Object.prototype.toString,
73
+ ua = navigator.userAgent.toLowerCase(),
74
+ check = function(r){
75
+ return r.test(ua);
76
+ },
77
+ DOC = document,
78
+ isStrict = DOC.compatMode == "CSS1Compat",
79
+ isOpera = check(/opera/),
80
+ isChrome = check(/\bchrome\b/),
81
+ isWebKit = check(/webkit/),
82
+ isSafari = !isChrome && check(/safari/),
83
+ isSafari2 = isSafari && check(/applewebkit\/4/), // unique to Safari 2
84
+ isSafari3 = isSafari && check(/version\/3/),
85
+ isSafari4 = isSafari && check(/version\/4/),
86
+ isIE = !isOpera && check(/msie/),
87
+ isIE7 = isIE && check(/msie 7/),
88
+ isIE8 = isIE && check(/msie 8/),
89
+ isIE6 = isIE && !isIE7 && !isIE8,
90
+ isGecko = !isWebKit && check(/gecko/),
91
+ isGecko2 = isGecko && check(/rv:1\.8/),
92
+ isGecko3 = isGecko && check(/rv:1\.9/),
93
+ isBorderBox = isIE && !isStrict,
94
+ isWindows = check(/windows|win32/),
95
+ isMac = check(/macintosh|mac os x/),
96
+ isAir = check(/adobeair/),
97
+ isLinux = check(/linux/),
98
+ isSecure = /^https/i.test(window.location.protocol);
99
+
100
+ // remove css image flicker
101
+ if(isIE6){
102
+ try{
103
+ DOC.execCommand("BackgroundImageCache", false, true);
104
+ }catch(e){}
105
+ }
106
+
107
+ Ext.apply(Ext, {
108
+ /**
109
+ * URL to a blank file used by Ext when in secure mode for iframe src and onReady src to prevent
110
+ * the IE insecure content warning (<tt>'about:blank'</tt>, except for IE in secure mode, which is <tt>'javascript:""'</tt>).
111
+ * @type String
112
+ */
113
+ SSL_SECURE_URL : isSecure && isIE ? 'javascript:""' : 'about:blank',
114
+ /**
115
+ * True if the browser is in strict (standards-compliant) mode, as opposed to quirks mode
116
+ * @type Boolean
117
+ */
118
+ isStrict : isStrict,
119
+ /**
120
+ * True if the page is running over SSL
121
+ * @type Boolean
122
+ */
123
+ isSecure : isSecure,
124
+ /**
125
+ * True when the document is fully initialized and ready for action
126
+ * @type Boolean
127
+ */
128
+ isReady : false,
129
+
130
+ /**
131
+ * True if the {@link Ext.Fx} Class is available
132
+ * @type Boolean
133
+ * @property enableFx
134
+ */
135
+
136
+ /**
137
+ * True to automatically uncache orphaned Ext.Elements periodically (defaults to true)
138
+ * @type Boolean
139
+ */
140
+ enableGarbageCollector : true,
141
+
142
+ /**
143
+ * True to automatically purge event listeners during garbageCollection (defaults to false).
144
+ * @type Boolean
145
+ */
146
+ enableListenerCollection : false,
147
+
148
+ /**
149
+ * EXPERIMENTAL - True to cascade listener removal to child elements when an element is removed.
150
+ * Currently not optimized for performance.
151
+ * @type Boolean
152
+ */
153
+ enableNestedListenerRemoval : false,
154
+
155
+ /**
156
+ * Indicates whether to use native browser parsing for JSON methods.
157
+ * This option is ignored if the browser does not support native JSON methods.
158
+ * <b>Note: Native JSON methods will not work with objects that have functions.
159
+ * Also, property names must be quoted, otherwise the data will not parse.</b> (Defaults to false)
160
+ * @type Boolean
161
+ */
162
+ USE_NATIVE_JSON : false,
163
+
164
+ /**
165
+ * Copies all the properties of config to obj if they don't already exist.
166
+ * @param {Object} obj The receiver of the properties
167
+ * @param {Object} config The source of the properties
168
+ * @return {Object} returns obj
169
+ */
170
+ applyIf : function(o, c){
171
+ if(o){
172
+ for(var p in c){
173
+ if(!Ext.isDefined(o[p])){
174
+ o[p] = c[p];
175
+ }
176
+ }
177
+ }
178
+ return o;
179
+ },
180
+
181
+ /**
182
+ * Generates unique ids. If the element already has an id, it is unchanged
183
+ * @param {Mixed} el (optional) The element to generate an id for
184
+ * @param {String} prefix (optional) Id prefix (defaults "ext-gen")
185
+ * @return {String} The generated Id.
186
+ */
187
+ id : function(el, prefix){
188
+ el = Ext.getDom(el, true) || {};
189
+ if (!el.id) {
190
+ el.id = (prefix || "ext-gen") + (++idSeed);
191
+ }
192
+ return el.id;
193
+ },
194
+
195
+ /**
196
+ * <p>Extends one class to create a subclass and optionally overrides members with the passed literal. This method
197
+ * also adds the function "override()" to the subclass that can be used to override members of the class.</p>
198
+ * For example, to create a subclass of Ext GridPanel:
199
+ * <pre><code>
200
+ MyGridPanel = Ext.extend(Ext.grid.GridPanel, {
201
+ constructor: function(config) {
202
+
203
+ // Create configuration for this Grid.
204
+ var store = new Ext.data.Store({...});
205
+ var colModel = new Ext.grid.ColumnModel({...});
206
+
207
+ // Create a new config object containing our computed properties
208
+ // *plus* whatever was in the config parameter.
209
+ config = Ext.apply({
210
+ store: store,
211
+ colModel: colModel
212
+ }, config);
213
+
214
+ MyGridPanel.superclass.constructor.call(this, config);
215
+
216
+ // Your postprocessing here
217
+ },
218
+
219
+ yourMethod: function() {
220
+ // etc.
221
+ }
222
+ });
223
+ </code></pre>
224
+ *
225
+ * <p>This function also supports a 3-argument call in which the subclass's constructor is
226
+ * passed as an argument. In this form, the parameters are as follows:</p>
227
+ * <div class="mdetail-params"><ul>
228
+ * <li><code>subclass</code> : Function <div class="sub-desc">The subclass constructor.</div></li>
229
+ * <li><code>superclass</code> : Function <div class="sub-desc">The constructor of class being extended</div></li>
230
+ * <li><code>overrides</code> : Object <div class="sub-desc">A literal with members which are copied into the subclass's
231
+ * prototype, and are therefore shared among all instances of the new class.</div></li>
232
+ * </ul></div>
233
+ *
234
+ * @param {Function} superclass The constructor of class being extended.
235
+ * @param {Object} overrides <p>A literal with members which are copied into the subclass's
236
+ * prototype, and are therefore shared between all instances of the new class.</p>
237
+ * <p>This may contain a special member named <tt><b>constructor</b></tt>. This is used
238
+ * to define the constructor of the new class, and is returned. If this property is
239
+ * <i>not</i> specified, a constructor is generated and returned which just calls the
240
+ * superclass's constructor passing on its parameters.</p>
241
+ * <p><b>It is essential that you call the superclass constructor in any provided constructor. See example code.</b></p>
242
+ * @return {Function} The subclass constructor from the <code>overrides</code> parameter, or a generated one if not provided.
243
+ */
244
+ extend : function(){
245
+ // inline overrides
246
+ var io = function(o){
247
+ for(var m in o){
248
+ this[m] = o[m];
249
+ }
250
+ };
251
+ var oc = Object.prototype.constructor;
252
+
253
+ return function(sb, sp, overrides){
254
+ if(typeof sp == 'object'){
255
+ overrides = sp;
256
+ sp = sb;
257
+ sb = overrides.constructor != oc ? overrides.constructor : function(){sp.apply(this, arguments);};
258
+ }
259
+ var F = function(){},
260
+ sbp,
261
+ spp = sp.prototype;
262
+
263
+ F.prototype = spp;
264
+ sbp = sb.prototype = new F();
265
+ sbp.constructor=sb;
266
+ sb.superclass=spp;
267
+ if(spp.constructor == oc){
268
+ spp.constructor=sp;
269
+ }
270
+ sb.override = function(o){
271
+ Ext.override(sb, o);
272
+ };
273
+ sbp.superclass = sbp.supr = (function(){
274
+ return spp;
275
+ });
276
+ sbp.override = io;
277
+ Ext.override(sb, overrides);
278
+ sb.extend = function(o){return Ext.extend(sb, o);};
279
+ return sb;
280
+ };
281
+ }(),
282
+
283
+ /**
284
+ * Adds a list of functions to the prototype of an existing class, overwriting any existing methods with the same name.
285
+ * Usage:<pre><code>
286
+ Ext.override(MyClass, {
287
+ newMethod1: function(){
288
+ // etc.
289
+ },
290
+ newMethod2: function(foo){
291
+ // etc.
292
+ }
293
+ });
294
+ </code></pre>
295
+ * @param {Object} origclass The class to override
296
+ * @param {Object} overrides The list of functions to add to origClass. This should be specified as an object literal
297
+ * containing one or more methods.
298
+ * @method override
299
+ */
300
+ override : function(origclass, overrides){
301
+ if(overrides){
302
+ var p = origclass.prototype;
303
+ Ext.apply(p, overrides);
304
+ if(Ext.isIE && overrides.hasOwnProperty('toString')){
305
+ p.toString = overrides.toString;
306
+ }
307
+ }
308
+ },
309
+
310
+ /**
311
+ * Creates namespaces to be used for scoping variables and classes so that they are not global.
312
+ * Specifying the last node of a namespace implicitly creates all other nodes. Usage:
313
+ * <pre><code>
314
+ Ext.namespace('Company', 'Company.data');
315
+ Ext.namespace('Company.data'); // equivalent and preferable to above syntax
316
+ Company.Widget = function() { ... }
317
+ Company.data.CustomStore = function(config) { ... }
318
+ </code></pre>
319
+ * @param {String} namespace1
320
+ * @param {String} namespace2
321
+ * @param {String} etc
322
+ * @return {Object} The namespace object. (If multiple arguments are passed, this will be the last namespace created)
323
+ * @method namespace
324
+ */
325
+ namespace : function(){
326
+ var o, d;
327
+ Ext.each(arguments, function(v) {
328
+ d = v.split(".");
329
+ o = window[d[0]] = window[d[0]] || {};
330
+ Ext.each(d.slice(1), function(v2){
331
+ o = o[v2] = o[v2] || {};
332
+ });
333
+ });
334
+ return o;
335
+ },
336
+
337
+ /**
338
+ * Takes an object and converts it to an encoded URL. e.g. Ext.urlEncode({foo: 1, bar: 2}); would return "foo=1&bar=2". Optionally, property values can be arrays, instead of keys and the resulting string that's returned will contain a name/value pair for each array value.
339
+ * @param {Object} o
340
+ * @param {String} pre (optional) A prefix to add to the url encoded string
341
+ * @return {String}
342
+ */
343
+ urlEncode : function(o, pre){
344
+ var empty,
345
+ buf = [],
346
+ e = encodeURIComponent;
347
+
348
+ Ext.iterate(o, function(key, item){
349
+ empty = Ext.isEmpty(item);
350
+ Ext.each(empty ? key : item, function(val){
351
+ buf.push('&', e(key), '=', (!Ext.isEmpty(val) && (val != key || !empty)) ? (Ext.isDate(val) ? Ext.encode(val).replace(/"/g, '') : e(val)) : '');
352
+ });
353
+ });
354
+ if(!pre){
355
+ buf.shift();
356
+ pre = '';
357
+ }
358
+ return pre + buf.join('');
359
+ },
360
+
361
+ /**
362
+ * Takes an encoded URL and and converts it to an object. Example: <pre><code>
363
+ Ext.urlDecode("foo=1&bar=2"); // returns {foo: "1", bar: "2"}
364
+ Ext.urlDecode("foo=1&bar=2&bar=3&bar=4", false); // returns {foo: "1", bar: ["2", "3", "4"]}
365
+ </code></pre>
366
+ * @param {String} string
367
+ * @param {Boolean} overwrite (optional) Items of the same name will overwrite previous values instead of creating an an array (Defaults to false).
368
+ * @return {Object} A literal with members
369
+ */
370
+ urlDecode : function(string, overwrite){
371
+ if(Ext.isEmpty(string)){
372
+ return {};
373
+ }
374
+ var obj = {},
375
+ pairs = string.split('&'),
376
+ d = decodeURIComponent,
377
+ name,
378
+ value;
379
+ Ext.each(pairs, function(pair) {
380
+ pair = pair.split('=');
381
+ name = d(pair[0]);
382
+ value = d(pair[1]);
383
+ obj[name] = overwrite || !obj[name] ? value :
384
+ [].concat(obj[name]).concat(value);
385
+ });
386
+ return obj;
387
+ },
388
+
389
+ /**
390
+ * Appends content to the query string of a URL, handling logic for whether to place
391
+ * a question mark or ampersand.
392
+ * @param {String} url The URL to append to.
393
+ * @param {String} s The content to append to the URL.
394
+ * @return (String) The resulting URL
395
+ */
396
+ urlAppend : function(url, s){
397
+ if(!Ext.isEmpty(s)){
398
+ return url + (url.indexOf('?') === -1 ? '?' : '&') + s;
399
+ }
400
+ return url;
401
+ },
402
+
403
+ /**
404
+ * Converts any iterable (numeric indices and a length property) into a true array
405
+ * Don't use this on strings. IE doesn't support "abc"[0] which this implementation depends on.
406
+ * For strings, use this instead: "abc".match(/./g) => [a,b,c];
407
+ * @param {Iterable} the iterable object to be turned into a true Array.
408
+ * @return (Array) array
409
+ */
410
+ toArray : function(){
411
+ return isIE ?
412
+ function(a, i, j, res){
413
+ res = [];
414
+ for(var x = 0, len = a.length; x < len; x++) {
415
+ res.push(a[x]);
416
+ }
417
+ return res.slice(i || 0, j || res.length);
418
+ } :
419
+ function(a, i, j){
420
+ return Array.prototype.slice.call(a, i || 0, j || a.length);
421
+ }
422
+ }(),
423
+
424
+ isIterable : function(v){
425
+ //check for array or arguments
426
+ if(Ext.isArray(v) || v.callee){
427
+ return true;
428
+ }
429
+ //check for node list type
430
+ if(/NodeList|HTMLCollection/.test(toString.call(v))){
431
+ return true;
432
+ }
433
+ //NodeList has an item and length property
434
+ //IXMLDOMNodeList has nextNode method, needs to be checked first.
435
+ return ((typeof v.nextNode != 'undefined' || v.item) && Ext.isNumber(v.length));
436
+ },
437
+
438
+ /**
439
+ * Iterates an array calling the supplied function.
440
+ * @param {Array/NodeList/Mixed} array The array to be iterated. If this
441
+ * argument is not really an array, the supplied function is called once.
442
+ * @param {Function} fn The function to be called with each item. If the
443
+ * supplied function returns false, iteration stops and this method returns
444
+ * the current <code>index</code>. This function is called with
445
+ * the following arguments:
446
+ * <div class="mdetail-params"><ul>
447
+ * <li><code>item</code> : <i>Mixed</i>
448
+ * <div class="sub-desc">The item at the current <code>index</code>
449
+ * in the passed <code>array</code></div></li>
450
+ * <li><code>index</code> : <i>Number</i>
451
+ * <div class="sub-desc">The current index within the array</div></li>
452
+ * <li><code>allItems</code> : <i>Array</i>
453
+ * <div class="sub-desc">The <code>array</code> passed as the first
454
+ * argument to <code>Ext.each</code>.</div></li>
455
+ * </ul></div>
456
+ * @param {Object} scope The scope (<code>this</code> reference) in which the specified function is executed.
457
+ * Defaults to the <code>item</code> at the current <code>index</code>
458
+ * within the passed <code>array</code>.
459
+ * @return See description for the fn parameter.
460
+ */
461
+ each : function(array, fn, scope){
462
+ if(Ext.isEmpty(array, true)){
463
+ return;
464
+ }
465
+ if(!Ext.isIterable(array) || Ext.isPrimitive(array)){
466
+ array = [array];
467
+ }
468
+ for(var i = 0, len = array.length; i < len; i++){
469
+ if(fn.call(scope || array[i], array[i], i, array) === false){
470
+ return i;
471
+ };
472
+ }
473
+ },
474
+
475
+ /**
476
+ * Iterates either the elements in an array, or each of the properties in an object.
477
+ * <b>Note</b>: If you are only iterating arrays, it is better to call {@link #each}.
478
+ * @param {Object/Array} object The object or array to be iterated
479
+ * @param {Function} fn The function to be called for each iteration.
480
+ * The iteration will stop if the supplied function returns false, or
481
+ * all array elements / object properties have been covered. The signature
482
+ * varies depending on the type of object being interated:
483
+ * <div class="mdetail-params"><ul>
484
+ * <li>Arrays : <tt>(Object item, Number index, Array allItems)</tt>
485
+ * <div class="sub-desc">
486
+ * When iterating an array, the supplied function is called with each item.</div></li>
487
+ * <li>Objects : <tt>(String key, Object value, Object)</tt>
488
+ * <div class="sub-desc">
489
+ * When iterating an object, the supplied function is called with each key-value pair in
490
+ * the object, and the iterated object</div></li>
491
+ * </ul></div>
492
+ * @param {Object} scope The scope (<code>this</code> reference) in which the specified function is executed. Defaults to
493
+ * the <code>object</code> being iterated.
494
+ */
495
+ iterate : function(obj, fn, scope){
496
+ if(Ext.isEmpty(obj)){
497
+ return;
498
+ }
499
+ if(Ext.isIterable(obj)){
500
+ Ext.each(obj, fn, scope);
501
+ return;
502
+ }else if(typeof obj == 'object'){
503
+ for(var prop in obj){
504
+ if(obj.hasOwnProperty(prop)){
505
+ if(fn.call(scope || obj, prop, obj[prop], obj) === false){
506
+ return;
507
+ };
508
+ }
509
+ }
510
+ }
511
+ },
512
+
513
+ /**
514
+ * Return the dom node for the passed String (id), dom node, or Ext.Element.
515
+ * Optional 'strict' flag is needed for IE since it can return 'name' and
516
+ * 'id' elements by using getElementById.
517
+ * Here are some examples:
518
+ * <pre><code>
519
+ // gets dom node based on id
520
+ var elDom = Ext.getDom('elId');
521
+ // gets dom node based on the dom node
522
+ var elDom1 = Ext.getDom(elDom);
523
+
524
+ // If we don&#39;t know if we are working with an
525
+ // Ext.Element or a dom node use Ext.getDom
526
+ function(el){
527
+ var dom = Ext.getDom(el);
528
+ // do something with the dom node
529
+ }
530
+ * </code></pre>
531
+ * <b>Note</b>: the dom node to be found actually needs to exist (be rendered, etc)
532
+ * when this method is called to be successful.
533
+ * @param {Mixed} el
534
+ * @return HTMLElement
535
+ */
536
+ getDom : function(el, strict){
537
+ if(!el || !DOC){
538
+ return null;
539
+ }
540
+ if (el.dom){
541
+ return el.dom;
542
+ } else {
543
+ if (typeof el == 'string') {
544
+ var e = DOC.getElementById(el);
545
+ // IE returns elements with the 'name' and 'id' attribute.
546
+ // we do a strict check to return the element with only the id attribute
547
+ if (e && isIE && strict) {
548
+ if (el == e.getAttribute('id')) {
549
+ return e;
550
+ } else {
551
+ return null;
552
+ }
553
+ }
554
+ return e;
555
+ } else {
556
+ return el;
557
+ }
558
+ }
559
+ },
560
+
561
+ /**
562
+ * Returns the current document body as an {@link Ext.Element}.
563
+ * @return Ext.Element The document body
564
+ */
565
+ getBody : function(){
566
+ return Ext.get(DOC.body || DOC.documentElement);
567
+ },
568
+
569
+ /**
570
+ * Removes a DOM node from the document.
571
+ */
572
+ /**
573
+ * <p>Removes this element from the document, removes all DOM event listeners, and deletes the cache reference.
574
+ * All DOM event listeners are removed from this element. If {@link Ext#enableNestedListenerRemoval} is
575
+ * <code>true</code>, then DOM event listeners are also removed from all child nodes. The body node
576
+ * will be ignored if passed in.</p>
577
+ * @param {HTMLElement} node The node to remove
578
+ */
579
+ removeNode : isIE && !isIE8 ? function(){
580
+ var d;
581
+ return function(n){
582
+ if(n && n.tagName != 'BODY'){
583
+ (Ext.enableNestedListenerRemoval) ? Ext.EventManager.purgeElement(n, true) : Ext.EventManager.removeAll(n);
584
+ d = d || DOC.createElement('div');
585
+ d.appendChild(n);
586
+ d.innerHTML = '';
587
+ delete Ext.elCache[n.id];
588
+ }
589
+ }
590
+ }() : function(n){
591
+ if(n && n.parentNode && n.tagName != 'BODY'){
592
+ (Ext.enableNestedListenerRemoval) ? Ext.EventManager.purgeElement(n, true) : Ext.EventManager.removeAll(n);
593
+ n.parentNode.removeChild(n);
594
+ delete Ext.elCache[n.id];
595
+ }
596
+ },
597
+
598
+ /**
599
+ * <p>Returns true if the passed value is empty.</p>
600
+ * <p>The value is deemed to be empty if it is<div class="mdetail-params"><ul>
601
+ * <li>null</li>
602
+ * <li>undefined</li>
603
+ * <li>an empty array</li>
604
+ * <li>a zero length string (Unless the <tt>allowBlank</tt> parameter is <tt>true</tt>)</li>
605
+ * </ul></div>
606
+ * @param {Mixed} value The value to test
607
+ * @param {Boolean} allowBlank (optional) true to allow empty strings (defaults to false)
608
+ * @return {Boolean}
609
+ */
610
+ isEmpty : function(v, allowBlank){
611
+ return v === null || v === undefined || ((Ext.isArray(v) && !v.length)) || (!allowBlank ? v === '' : false);
612
+ },
613
+
614
+ /**
615
+ * Returns true if the passed value is a JavaScript array, otherwise false.
616
+ * @param {Mixed} value The value to test
617
+ * @return {Boolean}
618
+ */
619
+ isArray : function(v){
620
+ return toString.apply(v) === '[object Array]';
621
+ },
622
+
623
+ /**
624
+ * Returns true if the passed object is a JavaScript date object, otherwise false.
625
+ * @param {Object} object The object to test
626
+ * @return {Boolean}
627
+ */
628
+ isDate : function(v){
629
+ return toString.apply(v) === '[object Date]';
630
+ },
631
+
632
+ /**
633
+ * Returns true if the passed value is a JavaScript Object, otherwise false.
634
+ * @param {Mixed} value The value to test
635
+ * @return {Boolean}
636
+ */
637
+ isObject : function(v){
638
+ return !!v && Object.prototype.toString.call(v) === '[object Object]';
639
+ },
640
+
641
+ /**
642
+ * Returns true if the passed value is a JavaScript 'primitive', a string, number or boolean.
643
+ * @param {Mixed} value The value to test
644
+ * @return {Boolean}
645
+ */
646
+ isPrimitive : function(v){
647
+ return Ext.isString(v) || Ext.isNumber(v) || Ext.isBoolean(v);
648
+ },
649
+
650
+ /**
651
+ * Returns true if the passed value is a JavaScript Function, otherwise false.
652
+ * @param {Mixed} value The value to test
653
+ * @return {Boolean}
654
+ */
655
+ isFunction : function(v){
656
+ return toString.apply(v) === '[object Function]';
657
+ },
658
+
659
+ /**
660
+ * Returns true if the passed value is a number. Returns false for non-finite numbers.
661
+ * @param {Mixed} value The value to test
662
+ * @return {Boolean}
663
+ */
664
+ isNumber : function(v){
665
+ return typeof v === 'number' && isFinite(v);
666
+ },
667
+
668
+ /**
669
+ * Returns true if the passed value is a string.
670
+ * @param {Mixed} value The value to test
671
+ * @return {Boolean}
672
+ */
673
+ isString : function(v){
674
+ return typeof v === 'string';
675
+ },
676
+
677
+ /**
678
+ * Returns true if the passed value is a boolean.
679
+ * @param {Mixed} value The value to test
680
+ * @return {Boolean}
681
+ */
682
+ isBoolean : function(v){
683
+ return typeof v === 'boolean';
684
+ },
685
+
686
+ /**
687
+ * Returns true if the passed value is an HTMLElement
688
+ * @param {Mixed} value The value to test
689
+ * @return {Boolean}
690
+ */
691
+ isElement : function(v) {
692
+ return v ? !!v.tagName : false;
693
+ },
694
+
695
+ /**
696
+ * Returns true if the passed value is not undefined.
697
+ * @param {Mixed} value The value to test
698
+ * @return {Boolean}
699
+ */
700
+ isDefined : function(v){
701
+ return typeof v !== 'undefined';
702
+ },
703
+
704
+ /**
705
+ * True if the detected browser is Opera.
706
+ * @type Boolean
707
+ */
708
+ isOpera : isOpera,
709
+ /**
710
+ * True if the detected browser uses WebKit.
711
+ * @type Boolean
712
+ */
713
+ isWebKit : isWebKit,
714
+ /**
715
+ * True if the detected browser is Chrome.
716
+ * @type Boolean
717
+ */
718
+ isChrome : isChrome,
719
+ /**
720
+ * True if the detected browser is Safari.
721
+ * @type Boolean
722
+ */
723
+ isSafari : isSafari,
724
+ /**
725
+ * True if the detected browser is Safari 3.x.
726
+ * @type Boolean
727
+ */
728
+ isSafari3 : isSafari3,
729
+ /**
730
+ * True if the detected browser is Safari 4.x.
731
+ * @type Boolean
732
+ */
733
+ isSafari4 : isSafari4,
734
+ /**
735
+ * True if the detected browser is Safari 2.x.
736
+ * @type Boolean
737
+ */
738
+ isSafari2 : isSafari2,
739
+ /**
740
+ * True if the detected browser is Internet Explorer.
741
+ * @type Boolean
742
+ */
743
+ isIE : isIE,
744
+ /**
745
+ * True if the detected browser is Internet Explorer 6.x.
746
+ * @type Boolean
747
+ */
748
+ isIE6 : isIE6,
749
+ /**
750
+ * True if the detected browser is Internet Explorer 7.x.
751
+ * @type Boolean
752
+ */
753
+ isIE7 : isIE7,
754
+ /**
755
+ * True if the detected browser is Internet Explorer 8.x.
756
+ * @type Boolean
757
+ */
758
+ isIE8 : isIE8,
759
+ /**
760
+ * True if the detected browser uses the Gecko layout engine (e.g. Mozilla, Firefox).
761
+ * @type Boolean
762
+ */
763
+ isGecko : isGecko,
764
+ /**
765
+ * True if the detected browser uses a pre-Gecko 1.9 layout engine (e.g. Firefox 2.x).
766
+ * @type Boolean
767
+ */
768
+ isGecko2 : isGecko2,
769
+ /**
770
+ * True if the detected browser uses a Gecko 1.9+ layout engine (e.g. Firefox 3.x).
771
+ * @type Boolean
772
+ */
773
+ isGecko3 : isGecko3,
774
+ /**
775
+ * True if the detected browser is Internet Explorer running in non-strict mode.
776
+ * @type Boolean
777
+ */
778
+ isBorderBox : isBorderBox,
779
+ /**
780
+ * True if the detected platform is Linux.
781
+ * @type Boolean
782
+ */
783
+ isLinux : isLinux,
784
+ /**
785
+ * True if the detected platform is Windows.
786
+ * @type Boolean
787
+ */
788
+ isWindows : isWindows,
789
+ /**
790
+ * True if the detected platform is Mac OS.
791
+ * @type Boolean
792
+ */
793
+ isMac : isMac,
794
+ /**
795
+ * True if the detected platform is Adobe Air.
796
+ * @type Boolean
797
+ */
798
+ isAir : isAir
799
+ });
800
+
801
+ /**
802
+ * Creates namespaces to be used for scoping variables and classes so that they are not global.
803
+ * Specifying the last node of a namespace implicitly creates all other nodes. Usage:
804
+ * <pre><code>
805
+ Ext.namespace('Company', 'Company.data');
806
+ Ext.namespace('Company.data'); // equivalent and preferable to above syntax
807
+ Company.Widget = function() { ... }
808
+ Company.data.CustomStore = function(config) { ... }
809
+ </code></pre>
810
+ * @param {String} namespace1
811
+ * @param {String} namespace2
812
+ * @param {String} etc
813
+ * @return {Object} The namespace object. (If multiple arguments are passed, this will be the last namespace created)
814
+ * @method ns
815
+ */
816
+ Ext.ns = Ext.namespace;
817
+ })();
818
+
819
+ Ext.ns("Ext.util", "Ext.lib", "Ext.data");
820
+
821
+ Ext.elCache = {};
822
+
823
+ /**
824
+ * @class Function
825
+ * These functions are available on every Function object (any JavaScript function).
826
+ */
827
+ Ext.apply(Function.prototype, {
828
+ /**
829
+ * Creates an interceptor function. The passed function is called before the original one. If it returns false,
830
+ * the original one is not called. The resulting function returns the results of the original function.
831
+ * The passed function is called with the parameters of the original function. Example usage:
832
+ * <pre><code>
833
+ var sayHi = function(name){
834
+ alert('Hi, ' + name);
835
+ }
836
+
837
+ sayHi('Fred'); // alerts "Hi, Fred"
838
+
839
+ // create a new function that validates input without
840
+ // directly modifying the original function:
841
+ var sayHiToFriend = sayHi.createInterceptor(function(name){
842
+ return name == 'Brian';
843
+ });
844
+
845
+ sayHiToFriend('Fred'); // no alert
846
+ sayHiToFriend('Brian'); // alerts "Hi, Brian"
847
+ </code></pre>
848
+ * @param {Function} fcn The function to call before the original
849
+ * @param {Object} scope (optional) The scope (<code><b>this</b></code> reference) in which the passed function is executed.
850
+ * <b>If omitted, defaults to the scope in which the original function is called or the browser window.</b>
851
+ * @return {Function} The new function
852
+ */
853
+ createInterceptor : function(fcn, scope){
854
+ var method = this;
855
+ return !Ext.isFunction(fcn) ?
856
+ this :
857
+ function() {
858
+ var me = this,
859
+ args = arguments;
860
+ fcn.target = me;
861
+ fcn.method = method;
862
+ return (fcn.apply(scope || me || window, args) !== false) ?
863
+ method.apply(me || window, args) :
864
+ null;
865
+ };
866
+ },
867
+
868
+ /**
869
+ * Creates a callback that passes arguments[0], arguments[1], arguments[2], ...
870
+ * Call directly on any function. Example: <code>myFunction.createCallback(arg1, arg2)</code>
871
+ * Will create a function that is bound to those 2 args. <b>If a specific scope is required in the
872
+ * callback, use {@link #createDelegate} instead.</b> The function returned by createCallback always
873
+ * executes in the window scope.
874
+ * <p>This method is required when you want to pass arguments to a callback function. If no arguments
875
+ * are needed, you can simply pass a reference to the function as a callback (e.g., callback: myFn).
876
+ * However, if you tried to pass a function with arguments (e.g., callback: myFn(arg1, arg2)) the function
877
+ * would simply execute immediately when the code is parsed. Example usage:
878
+ * <pre><code>
879
+ var sayHi = function(name){
880
+ alert('Hi, ' + name);
881
+ }
882
+
883
+ // clicking the button alerts "Hi, Fred"
884
+ new Ext.Button({
885
+ text: 'Say Hi',
886
+ renderTo: Ext.getBody(),
887
+ handler: sayHi.createCallback('Fred')
888
+ });
889
+ </code></pre>
890
+ * @return {Function} The new function
891
+ */
892
+ createCallback : function(/*args...*/){
893
+ // make args available, in function below
894
+ var args = arguments,
895
+ method = this;
896
+ return function() {
897
+ return method.apply(window, args);
898
+ };
899
+ },
900
+
901
+ /**
902
+ * Creates a delegate (callback) that sets the scope to obj.
903
+ * Call directly on any function. Example: <code>this.myFunction.createDelegate(this, [arg1, arg2])</code>
904
+ * Will create a function that is automatically scoped to obj so that the <tt>this</tt> variable inside the
905
+ * callback points to obj. Example usage:
906
+ * <pre><code>
907
+ var sayHi = function(name){
908
+ // Note this use of "this.text" here. This function expects to
909
+ // execute within a scope that contains a text property. In this
910
+ // example, the "this" variable is pointing to the btn object that
911
+ // was passed in createDelegate below.
912
+ alert('Hi, ' + name + '. You clicked the "' + this.text + '" button.');
913
+ }
914
+
915
+ var btn = new Ext.Button({
916
+ text: 'Say Hi',
917
+ renderTo: Ext.getBody()
918
+ });
919
+
920
+ // This callback will execute in the scope of the
921
+ // button instance. Clicking the button alerts
922
+ // "Hi, Fred. You clicked the "Say Hi" button."
923
+ btn.on('click', sayHi.createDelegate(btn, ['Fred']));
924
+ </code></pre>
925
+ * @param {Object} scope (optional) The scope (<code><b>this</b></code> reference) in which the function is executed.
926
+ * <b>If omitted, defaults to the browser window.</b>
927
+ * @param {Array} args (optional) Overrides arguments for the call. (Defaults to the arguments passed by the caller)
928
+ * @param {Boolean/Number} appendArgs (optional) if True args are appended to call args instead of overriding,
929
+ * if a number the args are inserted at the specified position
930
+ * @return {Function} The new function
931
+ */
932
+ createDelegate : function(obj, args, appendArgs){
933
+ var method = this;
934
+ return function() {
935
+ var callArgs = args || arguments;
936
+ if (appendArgs === true){
937
+ callArgs = Array.prototype.slice.call(arguments, 0);
938
+ callArgs = callArgs.concat(args);
939
+ }else if (Ext.isNumber(appendArgs)){
940
+ callArgs = Array.prototype.slice.call(arguments, 0); // copy arguments first
941
+ var applyArgs = [appendArgs, 0].concat(args); // create method call params
942
+ Array.prototype.splice.apply(callArgs, applyArgs); // splice them in
943
+ }
944
+ return method.apply(obj || window, callArgs);
945
+ };
946
+ },
947
+
948
+ /**
949
+ * Calls this function after the number of millseconds specified, optionally in a specific scope. Example usage:
950
+ * <pre><code>
951
+ var sayHi = function(name){
952
+ alert('Hi, ' + name);
953
+ }
954
+
955
+ // executes immediately:
956
+ sayHi('Fred');
957
+
958
+ // executes after 2 seconds:
959
+ sayHi.defer(2000, this, ['Fred']);
960
+
961
+ // this syntax is sometimes useful for deferring
962
+ // execution of an anonymous function:
963
+ (function(){
964
+ alert('Anonymous');
965
+ }).defer(100);
966
+ </code></pre>
967
+ * @param {Number} millis The number of milliseconds for the setTimeout call (if less than or equal to 0 the function is executed immediately)
968
+ * @param {Object} scope (optional) The scope (<code><b>this</b></code> reference) in which the function is executed.
969
+ * <b>If omitted, defaults to the browser window.</b>
970
+ * @param {Array} args (optional) Overrides arguments for the call. (Defaults to the arguments passed by the caller)
971
+ * @param {Boolean/Number} appendArgs (optional) if True args are appended to call args instead of overriding,
972
+ * if a number the args are inserted at the specified position
973
+ * @return {Number} The timeout id that can be used with clearTimeout
974
+ */
975
+ defer : function(millis, obj, args, appendArgs){
976
+ var fn = this.createDelegate(obj, args, appendArgs);
977
+ if(millis > 0){
978
+ return setTimeout(fn, millis);
979
+ }
980
+ fn();
981
+ return 0;
982
+ }
983
+ });
984
+
985
+ /**
986
+ * @class String
987
+ * These functions are available on every String object.
988
+ */
989
+ Ext.applyIf(String, {
990
+ /**
991
+ * Allows you to define a tokenized string and pass an arbitrary number of arguments to replace the tokens. Each
992
+ * token must be unique, and must increment in the format {0}, {1}, etc. Example usage:
993
+ * <pre><code>
994
+ var cls = 'my-class', text = 'Some text';
995
+ var s = String.format('&lt;div class="{0}">{1}&lt;/div>', cls, text);
996
+ // s now contains the string: '&lt;div class="my-class">Some text&lt;/div>'
997
+ * </code></pre>
998
+ * @param {String} string The tokenized string to be formatted
999
+ * @param {String} value1 The value to replace token {0}
1000
+ * @param {String} value2 Etc...
1001
+ * @return {String} The formatted string
1002
+ * @static
1003
+ */
1004
+ format : function(format){
1005
+ var args = Ext.toArray(arguments, 1);
1006
+ return format.replace(/\{(\d+)\}/g, function(m, i){
1007
+ return args[i];
1008
+ });
1009
+ }
1010
+ });
1011
+
1012
+ /**
1013
+ * @class Array
1014
+ */
1015
+ Ext.applyIf(Array.prototype, {
1016
+ /**
1017
+ * Checks whether or not the specified object exists in the array.
1018
+ * @param {Object} o The object to check for
1019
+ * @param {Number} from (Optional) The index at which to begin the search
1020
+ * @return {Number} The index of o in the array (or -1 if it is not found)
1021
+ */
1022
+ indexOf : function(o, from){
1023
+ var len = this.length;
1024
+ from = from || 0;
1025
+ from += (from < 0) ? len : 0;
1026
+ for (; from < len; ++from){
1027
+ if(this[from] === o){
1028
+ return from;
1029
+ }
1030
+ }
1031
+ return -1;
1032
+ },
1033
+
1034
+ /**
1035
+ * Removes the specified object from the array. If the object is not found nothing happens.
1036
+ * @param {Object} o The object to remove
1037
+ * @return {Array} this array
1038
+ */
1039
+ remove : function(o){
1040
+ var index = this.indexOf(o);
1041
+ if(index != -1){
1042
+ this.splice(index, 1);
1043
+ }
1044
+ return this;
1045
+ }
1046
+ });
1047
+ /**
1048
+ * @class Ext
1049
+ */
1050
+
1051
+ Ext.ns("Ext.grid", "Ext.list", "Ext.dd", "Ext.tree", "Ext.form", "Ext.menu",
1052
+ "Ext.state", "Ext.layout", "Ext.app", "Ext.ux", "Ext.chart", "Ext.direct");
1053
+ /**
1054
+ * Namespace alloted for extensions to the framework.
1055
+ * @property ux
1056
+ * @type Object
1057
+ */
1058
+
1059
+ Ext.apply(Ext, function(){
1060
+ var E = Ext,
1061
+ idSeed = 0,
1062
+ scrollWidth = null;
1063
+
1064
+ return {
1065
+ /**
1066
+ * A reusable empty function
1067
+ * @property
1068
+ * @type Function
1069
+ */
1070
+ emptyFn : function(){},
1071
+
1072
+ /**
1073
+ * URL to a 1x1 transparent gif image used by Ext to create inline icons with CSS background images.
1074
+ * In older versions of IE, this defaults to "http://extjs.com/s.gif" and you should change this to a URL on your server.
1075
+ * For other browsers it uses an inline data URL.
1076
+ * @type String
1077
+ */
1078
+ BLANK_IMAGE_URL : Ext.isIE6 || Ext.isIE7 || Ext.isAir ?
1079
+ 'http:/' + '/www.extjs.com/s.gif' :
1080
+ 'data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==',
1081
+
1082
+ extendX : function(supr, fn){
1083
+ return Ext.extend(supr, fn(supr.prototype));
1084
+ },
1085
+
1086
+ /**
1087
+ * Returns the current HTML document object as an {@link Ext.Element}.
1088
+ * @return Ext.Element The document
1089
+ */
1090
+ getDoc : function(){
1091
+ return Ext.get(document);
1092
+ },
1093
+
1094
+ /**
1095
+ * Utility method for validating that a value is numeric, returning the specified default value if it is not.
1096
+ * @param {Mixed} value Should be a number, but any type will be handled appropriately
1097
+ * @param {Number} defaultValue The value to return if the original value is non-numeric
1098
+ * @return {Number} Value, if numeric, else defaultValue
1099
+ */
1100
+ num : function(v, defaultValue){
1101
+ v = Number(Ext.isEmpty(v) || Ext.isArray(v) || typeof v == 'boolean' || (typeof v == 'string' && v.trim().length == 0) ? NaN : v);
1102
+ return isNaN(v) ? defaultValue : v;
1103
+ },
1104
+
1105
+ /**
1106
+ * <p>Utility method for returning a default value if the passed value is empty.</p>
1107
+ * <p>The value is deemed to be empty if it is<div class="mdetail-params"><ul>
1108
+ * <li>null</li>
1109
+ * <li>undefined</li>
1110
+ * <li>an empty array</li>
1111
+ * <li>a zero length string (Unless the <tt>allowBlank</tt> parameter is <tt>true</tt>)</li>
1112
+ * </ul></div>
1113
+ * @param {Mixed} value The value to test
1114
+ * @param {Mixed} defaultValue The value to return if the original value is empty
1115
+ * @param {Boolean} allowBlank (optional) true to allow zero length strings to qualify as non-empty (defaults to false)
1116
+ * @return {Mixed} value, if non-empty, else defaultValue
1117
+ */
1118
+ value : function(v, defaultValue, allowBlank){
1119
+ return Ext.isEmpty(v, allowBlank) ? defaultValue : v;
1120
+ },
1121
+
1122
+ /**
1123
+ * Escapes the passed string for use in a regular expression
1124
+ * @param {String} str
1125
+ * @return {String}
1126
+ */
1127
+ escapeRe : function(s) {
1128
+ return s.replace(/([-.*+?^${}()|[\]\/\\])/g, "\\$1");
1129
+ },
1130
+
1131
+ sequence : function(o, name, fn, scope){
1132
+ o[name] = o[name].createSequence(fn, scope);
1133
+ },
1134
+
1135
+ /**
1136
+ * Applies event listeners to elements by selectors when the document is ready.
1137
+ * The event name is specified with an <tt>&#64;</tt> suffix.
1138
+ * <pre><code>
1139
+ Ext.addBehaviors({
1140
+ // add a listener for click on all anchors in element with id foo
1141
+ '#foo a&#64;click' : function(e, t){
1142
+ // do something
1143
+ },
1144
+
1145
+ // add the same listener to multiple selectors (separated by comma BEFORE the &#64;)
1146
+ '#foo a, #bar span.some-class&#64;mouseover' : function(){
1147
+ // do something
1148
+ }
1149
+ });
1150
+ * </code></pre>
1151
+ * @param {Object} obj The list of behaviors to apply
1152
+ */
1153
+ addBehaviors : function(o){
1154
+ if(!Ext.isReady){
1155
+ Ext.onReady(function(){
1156
+ Ext.addBehaviors(o);
1157
+ });
1158
+ } else {
1159
+ var cache = {}, // simple cache for applying multiple behaviors to same selector does query multiple times
1160
+ parts,
1161
+ b,
1162
+ s;
1163
+ for (b in o) {
1164
+ if ((parts = b.split('@'))[1]) { // for Object prototype breakers
1165
+ s = parts[0];
1166
+ if(!cache[s]){
1167
+ cache[s] = Ext.select(s);
1168
+ }
1169
+ cache[s].on(parts[1], o[b]);
1170
+ }
1171
+ }
1172
+ cache = null;
1173
+ }
1174
+ },
1175
+
1176
+ /**
1177
+ * Utility method for getting the width of the browser scrollbar. This can differ depending on
1178
+ * operating system settings, such as the theme or font size.
1179
+ * @param {Boolean} force (optional) true to force a recalculation of the value.
1180
+ * @return {Number} The width of the scrollbar.
1181
+ */
1182
+ getScrollBarWidth: function(force){
1183
+ if(!Ext.isReady){
1184
+ return 0;
1185
+ }
1186
+
1187
+ if(force === true || scrollWidth === null){
1188
+ // Append our div, do our calculation and then remove it
1189
+ var div = Ext.getBody().createChild('<div class="x-hide-offsets" style="width:100px;height:50px;overflow:hidden;"><div style="height:200px;"></div></div>'),
1190
+ child = div.child('div', true);
1191
+ var w1 = child.offsetWidth;
1192
+ div.setStyle('overflow', (Ext.isWebKit || Ext.isGecko) ? 'auto' : 'scroll');
1193
+ var w2 = child.offsetWidth;
1194
+ div.remove();
1195
+ // Need to add 2 to ensure we leave enough space
1196
+ scrollWidth = w1 - w2 + 2;
1197
+ }
1198
+ return scrollWidth;
1199
+ },
1200
+
1201
+
1202
+ // deprecated
1203
+ combine : function(){
1204
+ var as = arguments, l = as.length, r = [];
1205
+ for(var i = 0; i < l; i++){
1206
+ var a = as[i];
1207
+ if(Ext.isArray(a)){
1208
+ r = r.concat(a);
1209
+ }else if(a.length !== undefined && !a.substr){
1210
+ r = r.concat(Array.prototype.slice.call(a, 0));
1211
+ }else{
1212
+ r.push(a);
1213
+ }
1214
+ }
1215
+ return r;
1216
+ },
1217
+
1218
+ /**
1219
+ * Copies a set of named properties fom the source object to the destination object.
1220
+ * <p>example:<pre><code>
1221
+ ImageComponent = Ext.extend(Ext.BoxComponent, {
1222
+ initComponent: function() {
1223
+ this.autoEl = { tag: 'img' };
1224
+ MyComponent.superclass.initComponent.apply(this, arguments);
1225
+ this.initialBox = Ext.copyTo({}, this.initialConfig, 'x,y,width,height');
1226
+ }
1227
+ });
1228
+ * </code></pre>
1229
+ * @param {Object} dest The destination object.
1230
+ * @param {Object} source The source object.
1231
+ * @param {Array/String} names Either an Array of property names, or a comma-delimited list
1232
+ * of property names to copy.
1233
+ * @return {Object} The modified object.
1234
+ */
1235
+ copyTo : function(dest, source, names){
1236
+ if(typeof names == 'string'){
1237
+ names = names.split(/[,;\s]/);
1238
+ }
1239
+ Ext.each(names, function(name){
1240
+ if(source.hasOwnProperty(name)){
1241
+ dest[name] = source[name];
1242
+ }
1243
+ }, this);
1244
+ return dest;
1245
+ },
1246
+
1247
+ /**
1248
+ * Attempts to destroy any objects passed to it by removing all event listeners, removing them from the
1249
+ * DOM (if applicable) and calling their destroy functions (if available). This method is primarily
1250
+ * intended for arguments of type {@link Ext.Element} and {@link Ext.Component}, but any subclass of
1251
+ * {@link Ext.util.Observable} can be passed in. Any number of elements and/or components can be
1252
+ * passed into this function in a single call as separate arguments.
1253
+ * @param {Mixed} arg1 An {@link Ext.Element}, {@link Ext.Component}, or an Array of either of these to destroy
1254
+ * @param {Mixed} arg2 (optional)
1255
+ * @param {Mixed} etc... (optional)
1256
+ */
1257
+ destroy : function(){
1258
+ Ext.each(arguments, function(arg){
1259
+ if(arg){
1260
+ if(Ext.isArray(arg)){
1261
+ this.destroy.apply(this, arg);
1262
+ }else if(typeof arg.destroy == 'function'){
1263
+ arg.destroy();
1264
+ }else if(arg.dom){
1265
+ arg.remove();
1266
+ }
1267
+ }
1268
+ }, this);
1269
+ },
1270
+
1271
+ /**
1272
+ * Attempts to destroy and then remove a set of named properties of the passed object.
1273
+ * @param {Object} o The object (most likely a Component) who's properties you wish to destroy.
1274
+ * @param {Mixed} arg1 The name of the property to destroy and remove from the object.
1275
+ * @param {Mixed} etc... More property names to destroy and remove.
1276
+ */
1277
+ destroyMembers : function(o, arg1, arg2, etc){
1278
+ for(var i = 1, a = arguments, len = a.length; i < len; i++) {
1279
+ Ext.destroy(o[a[i]]);
1280
+ delete o[a[i]];
1281
+ }
1282
+ },
1283
+
1284
+ /**
1285
+ * Creates a copy of the passed Array with falsy values removed.
1286
+ * @param {Array/NodeList} arr The Array from which to remove falsy values.
1287
+ * @return {Array} The new, compressed Array.
1288
+ */
1289
+ clean : function(arr){
1290
+ var ret = [];
1291
+ Ext.each(arr, function(v){
1292
+ if(!!v){
1293
+ ret.push(v);
1294
+ }
1295
+ });
1296
+ return ret;
1297
+ },
1298
+
1299
+ /**
1300
+ * Creates a copy of the passed Array, filtered to contain only unique values.
1301
+ * @param {Array} arr The Array to filter
1302
+ * @return {Array} The new Array containing unique values.
1303
+ */
1304
+ unique : function(arr){
1305
+ var ret = [],
1306
+ collect = {};
1307
+
1308
+ Ext.each(arr, function(v) {
1309
+ if(!collect[v]){
1310
+ ret.push(v);
1311
+ }
1312
+ collect[v] = true;
1313
+ });
1314
+ return ret;
1315
+ },
1316
+
1317
+ /**
1318
+ * Recursively flattens into 1-d Array. Injects Arrays inline.
1319
+ * @param {Array} arr The array to flatten
1320
+ * @return {Array} The new, flattened array.
1321
+ */
1322
+ flatten : function(arr){
1323
+ var worker = [];
1324
+ function rFlatten(a) {
1325
+ Ext.each(a, function(v) {
1326
+ if(Ext.isArray(v)){
1327
+ rFlatten(v);
1328
+ }else{
1329
+ worker.push(v);
1330
+ }
1331
+ });
1332
+ return worker;
1333
+ }
1334
+ return rFlatten(arr);
1335
+ },
1336
+
1337
+ /**
1338
+ * Returns the minimum value in the Array.
1339
+ * @param {Array|NodeList} arr The Array from which to select the minimum value.
1340
+ * @param {Function} comp (optional) a function to perform the comparision which determines minimization.
1341
+ * If omitted the "<" operator will be used. Note: gt = 1; eq = 0; lt = -1
1342
+ * @return {Object} The minimum value in the Array.
1343
+ */
1344
+ min : function(arr, comp){
1345
+ var ret = arr[0];
1346
+ comp = comp || function(a,b){ return a < b ? -1 : 1; };
1347
+ Ext.each(arr, function(v) {
1348
+ ret = comp(ret, v) == -1 ? ret : v;
1349
+ });
1350
+ return ret;
1351
+ },
1352
+
1353
+ /**
1354
+ * Returns the maximum value in the Array
1355
+ * @param {Array|NodeList} arr The Array from which to select the maximum value.
1356
+ * @param {Function} comp (optional) a function to perform the comparision which determines maximization.
1357
+ * If omitted the ">" operator will be used. Note: gt = 1; eq = 0; lt = -1
1358
+ * @return {Object} The maximum value in the Array.
1359
+ */
1360
+ max : function(arr, comp){
1361
+ var ret = arr[0];
1362
+ comp = comp || function(a,b){ return a > b ? 1 : -1; };
1363
+ Ext.each(arr, function(v) {
1364
+ ret = comp(ret, v) == 1 ? ret : v;
1365
+ });
1366
+ return ret;
1367
+ },
1368
+
1369
+ /**
1370
+ * Calculates the mean of the Array
1371
+ * @param {Array} arr The Array to calculate the mean value of.
1372
+ * @return {Number} The mean.
1373
+ */
1374
+ mean : function(arr){
1375
+ return arr.length > 0 ? Ext.sum(arr) / arr.length : undefined;
1376
+ },
1377
+
1378
+ /**
1379
+ * Calculates the sum of the Array
1380
+ * @param {Array} arr The Array to calculate the sum value of.
1381
+ * @return {Number} The sum.
1382
+ */
1383
+ sum : function(arr){
1384
+ var ret = 0;
1385
+ Ext.each(arr, function(v) {
1386
+ ret += v;
1387
+ });
1388
+ return ret;
1389
+ },
1390
+
1391
+ /**
1392
+ * Partitions the set into two sets: a true set and a false set.
1393
+ * Example:
1394
+ * Example2:
1395
+ * <pre><code>
1396
+ // Example 1:
1397
+ Ext.partition([true, false, true, true, false]); // [[true, true, true], [false, false]]
1398
+
1399
+ // Example 2:
1400
+ Ext.partition(
1401
+ Ext.query("p"),
1402
+ function(val){
1403
+ return val.className == "class1"
1404
+ }
1405
+ );
1406
+ // true are those paragraph elements with a className of "class1",
1407
+ // false set are those that do not have that className.
1408
+ * </code></pre>
1409
+ * @param {Array|NodeList} arr The array to partition
1410
+ * @param {Function} truth (optional) a function to determine truth. If this is omitted the element
1411
+ * itself must be able to be evaluated for its truthfulness.
1412
+ * @return {Array} [true<Array>,false<Array>]
1413
+ */
1414
+ partition : function(arr, truth){
1415
+ var ret = [[],[]];
1416
+ Ext.each(arr, function(v, i, a) {
1417
+ ret[ (truth && truth(v, i, a)) || (!truth && v) ? 0 : 1].push(v);
1418
+ });
1419
+ return ret;
1420
+ },
1421
+
1422
+ /**
1423
+ * Invokes a method on each item in an Array.
1424
+ * <pre><code>
1425
+ // Example:
1426
+ Ext.invoke(Ext.query("p"), "getAttribute", "id");
1427
+ // [el1.getAttribute("id"), el2.getAttribute("id"), ..., elN.getAttribute("id")]
1428
+ * </code></pre>
1429
+ * @param {Array|NodeList} arr The Array of items to invoke the method on.
1430
+ * @param {String} methodName The method name to invoke.
1431
+ * @param {...*} args Arguments to send into the method invocation.
1432
+ * @return {Array} The results of invoking the method on each item in the array.
1433
+ */
1434
+ invoke : function(arr, methodName){
1435
+ var ret = [],
1436
+ args = Array.prototype.slice.call(arguments, 2);
1437
+ Ext.each(arr, function(v,i) {
1438
+ if (v && typeof v[methodName] == 'function') {
1439
+ ret.push(v[methodName].apply(v, args));
1440
+ } else {
1441
+ ret.push(undefined);
1442
+ }
1443
+ });
1444
+ return ret;
1445
+ },
1446
+
1447
+ /**
1448
+ * Plucks the value of a property from each item in the Array
1449
+ * <pre><code>
1450
+ // Example:
1451
+ Ext.pluck(Ext.query("p"), "className"); // [el1.className, el2.className, ..., elN.className]
1452
+ * </code></pre>
1453
+ * @param {Array|NodeList} arr The Array of items to pluck the value from.
1454
+ * @param {String} prop The property name to pluck from each element.
1455
+ * @return {Array} The value from each item in the Array.
1456
+ */
1457
+ pluck : function(arr, prop){
1458
+ var ret = [];
1459
+ Ext.each(arr, function(v) {
1460
+ ret.push( v[prop] );
1461
+ });
1462
+ return ret;
1463
+ },
1464
+
1465
+ /**
1466
+ * <p>Zips N sets together.</p>
1467
+ * <pre><code>
1468
+ // Example 1:
1469
+ Ext.zip([1,2,3],[4,5,6]); // [[1,4],[2,5],[3,6]]
1470
+ // Example 2:
1471
+ Ext.zip(
1472
+ [ "+", "-", "+"],
1473
+ [ 12, 10, 22],
1474
+ [ 43, 15, 96],
1475
+ function(a, b, c){
1476
+ return "$" + a + "" + b + "." + c
1477
+ }
1478
+ ); // ["$+12.43", "$-10.15", "$+22.96"]
1479
+ * </code></pre>
1480
+ * @param {Arrays|NodeLists} arr This argument may be repeated. Array(s) to contribute values.
1481
+ * @param {Function} zipper (optional) The last item in the argument list. This will drive how the items are zipped together.
1482
+ * @return {Array} The zipped set.
1483
+ */
1484
+ zip : function(){
1485
+ var parts = Ext.partition(arguments, function( val ){ return typeof val != 'function'; }),
1486
+ arrs = parts[0],
1487
+ fn = parts[1][0],
1488
+ len = Ext.max(Ext.pluck(arrs, "length")),
1489
+ ret = [];
1490
+
1491
+ for (var i = 0; i < len; i++) {
1492
+ ret[i] = [];
1493
+ if(fn){
1494
+ ret[i] = fn.apply(fn, Ext.pluck(arrs, i));
1495
+ }else{
1496
+ for (var j = 0, aLen = arrs.length; j < aLen; j++){
1497
+ ret[i].push( arrs[j][i] );
1498
+ }
1499
+ }
1500
+ }
1501
+ return ret;
1502
+ },
1503
+
1504
+ /**
1505
+ * This is shorthand reference to {@link Ext.ComponentMgr#get}.
1506
+ * Looks up an existing {@link Ext.Component Component} by {@link Ext.Component#id id}
1507
+ * @param {String} id The component {@link Ext.Component#id id}
1508
+ * @return Ext.Component The Component, <tt>undefined</tt> if not found, or <tt>null</tt> if a
1509
+ * Class was found.
1510
+ */
1511
+ getCmp : function(id){
1512
+ return Ext.ComponentMgr.get(id);
1513
+ },
1514
+
1515
+ /**
1516
+ * By default, Ext intelligently decides whether floating elements should be shimmed. If you are using flash,
1517
+ * you may want to set this to true.
1518
+ * @type Boolean
1519
+ */
1520
+ useShims: E.isIE6 || (E.isMac && E.isGecko2),
1521
+
1522
+ // inpired by a similar function in mootools library
1523
+ /**
1524
+ * Returns the type of object that is passed in. If the object passed in is null or undefined it
1525
+ * return false otherwise it returns one of the following values:<div class="mdetail-params"><ul>
1526
+ * <li><b>string</b>: If the object passed is a string</li>
1527
+ * <li><b>number</b>: If the object passed is a number</li>
1528
+ * <li><b>boolean</b>: If the object passed is a boolean value</li>
1529
+ * <li><b>date</b>: If the object passed is a Date object</li>
1530
+ * <li><b>function</b>: If the object passed is a function reference</li>
1531
+ * <li><b>object</b>: If the object passed is an object</li>
1532
+ * <li><b>array</b>: If the object passed is an array</li>
1533
+ * <li><b>regexp</b>: If the object passed is a regular expression</li>
1534
+ * <li><b>element</b>: If the object passed is a DOM Element</li>
1535
+ * <li><b>nodelist</b>: If the object passed is a DOM NodeList</li>
1536
+ * <li><b>textnode</b>: If the object passed is a DOM text node and contains something other than whitespace</li>
1537
+ * <li><b>whitespace</b>: If the object passed is a DOM text node and contains only whitespace</li>
1538
+ * </ul></div>
1539
+ * @param {Mixed} object
1540
+ * @return {String}
1541
+ */
1542
+ type : function(o){
1543
+ if(o === undefined || o === null){
1544
+ return false;
1545
+ }
1546
+ if(o.htmlElement){
1547
+ return 'element';
1548
+ }
1549
+ var t = typeof o;
1550
+ if(t == 'object' && o.nodeName) {
1551
+ switch(o.nodeType) {
1552
+ case 1: return 'element';
1553
+ case 3: return (/\S/).test(o.nodeValue) ? 'textnode' : 'whitespace';
1554
+ }
1555
+ }
1556
+ if(t == 'object' || t == 'function') {
1557
+ switch(o.constructor) {
1558
+ case Array: return 'array';
1559
+ case RegExp: return 'regexp';
1560
+ case Date: return 'date';
1561
+ }
1562
+ if(typeof o.length == 'number' && typeof o.item == 'function') {
1563
+ return 'nodelist';
1564
+ }
1565
+ }
1566
+ return t;
1567
+ },
1568
+
1569
+ intercept : function(o, name, fn, scope){
1570
+ o[name] = o[name].createInterceptor(fn, scope);
1571
+ },
1572
+
1573
+ // internal
1574
+ callback : function(cb, scope, args, delay){
1575
+ if(typeof cb == 'function'){
1576
+ if(delay){
1577
+ cb.defer(delay, scope, args || []);
1578
+ }else{
1579
+ cb.apply(scope, args || []);
1580
+ }
1581
+ }
1582
+ }
1583
+ };
1584
+ }());
1585
+
1586
+ /**
1587
+ * @class Function
1588
+ * These functions are available on every Function object (any JavaScript function).
1589
+ */
1590
+ Ext.apply(Function.prototype, {
1591
+ /**
1592
+ * Create a combined function call sequence of the original function + the passed function.
1593
+ * The resulting function returns the results of the original function.
1594
+ * The passed fcn is called with the parameters of the original function. Example usage:
1595
+ * <pre><code>
1596
+ var sayHi = function(name){
1597
+ alert('Hi, ' + name);
1598
+ }
1599
+
1600
+ sayHi('Fred'); // alerts "Hi, Fred"
1601
+
1602
+ var sayGoodbye = sayHi.createSequence(function(name){
1603
+ alert('Bye, ' + name);
1604
+ });
1605
+
1606
+ sayGoodbye('Fred'); // both alerts show
1607
+ </code></pre>
1608
+ * @param {Function} fcn The function to sequence
1609
+ * @param {Object} scope (optional) The scope (<code><b>this</b></code> reference) in which the passed function is executed.
1610
+ * <b>If omitted, defaults to the scope in which the original function is called or the browser window.</b>
1611
+ * @return {Function} The new function
1612
+ */
1613
+ createSequence : function(fcn, scope){
1614
+ var method = this;
1615
+ return (typeof fcn != 'function') ?
1616
+ this :
1617
+ function(){
1618
+ var retval = method.apply(this || window, arguments);
1619
+ fcn.apply(scope || this || window, arguments);
1620
+ return retval;
1621
+ };
1622
+ }
1623
+ });
1624
+
1625
+
1626
+ /**
1627
+ * @class String
1628
+ * These functions are available as static methods on the JavaScript String object.
1629
+ */
1630
+ Ext.applyIf(String, {
1631
+
1632
+ /**
1633
+ * Escapes the passed string for ' and \
1634
+ * @param {String} string The string to escape
1635
+ * @return {String} The escaped string
1636
+ * @static
1637
+ */
1638
+ escape : function(string) {
1639
+ return string.replace(/('|\\)/g, "\\$1");
1640
+ },
1641
+
1642
+ /**
1643
+ * Pads the left side of a string with a specified character. This is especially useful
1644
+ * for normalizing number and date strings. Example usage:
1645
+ * <pre><code>
1646
+ var s = String.leftPad('123', 5, '0');
1647
+ // s now contains the string: '00123'
1648
+ * </code></pre>
1649
+ * @param {String} string The original string
1650
+ * @param {Number} size The total length of the output string
1651
+ * @param {String} char (optional) The character with which to pad the original string (defaults to empty string " ")
1652
+ * @return {String} The padded string
1653
+ * @static
1654
+ */
1655
+ leftPad : function (val, size, ch) {
1656
+ var result = String(val);
1657
+ if(!ch) {
1658
+ ch = " ";
1659
+ }
1660
+ while (result.length < size) {
1661
+ result = ch + result;
1662
+ }
1663
+ return result;
1664
+ }
1665
+ });
1666
+
1667
+ /**
1668
+ * Utility function that allows you to easily switch a string between two alternating values. The passed value
1669
+ * is compared to the current string, and if they are equal, the other value that was passed in is returned. If
1670
+ * they are already different, the first value passed in is returned. Note that this method returns the new value
1671
+ * but does not change the current string.
1672
+ * <pre><code>
1673
+ // alternate sort directions
1674
+ sort = sort.toggle('ASC', 'DESC');
1675
+
1676
+ // instead of conditional logic:
1677
+ sort = (sort == 'ASC' ? 'DESC' : 'ASC');
1678
+ </code></pre>
1679
+ * @param {String} value The value to compare to the current string
1680
+ * @param {String} other The new value to use if the string already equals the first value passed in
1681
+ * @return {String} The new value
1682
+ */
1683
+ String.prototype.toggle = function(value, other){
1684
+ return this == value ? other : value;
1685
+ };
1686
+
1687
+ /**
1688
+ * Trims whitespace from either end of a string, leaving spaces within the string intact. Example:
1689
+ * <pre><code>
1690
+ var s = ' foo bar ';
1691
+ alert('-' + s + '-'); //alerts "- foo bar -"
1692
+ alert('-' + s.trim() + '-'); //alerts "-foo bar-"
1693
+ </code></pre>
1694
+ * @return {String} The trimmed string
1695
+ */
1696
+ String.prototype.trim = function(){
1697
+ var re = /^\s+|\s+$/g;
1698
+ return function(){ return this.replace(re, ""); };
1699
+ }();
1700
+
1701
+ // here to prevent dependency on Date.js
1702
+ /**
1703
+ Returns the number of milliseconds between this date and date
1704
+ @param {Date} date (optional) Defaults to now
1705
+ @return {Number} The diff in milliseconds
1706
+ @member Date getElapsed
1707
+ */
1708
+ Date.prototype.getElapsed = function(date) {
1709
+ return Math.abs((date || new Date()).getTime()-this.getTime());
1710
+ };
1711
+
1712
+
1713
+ /**
1714
+ * @class Number
1715
+ */
1716
+ Ext.applyIf(Number.prototype, {
1717
+ /**
1718
+ * Checks whether or not the current number is within a desired range. If the number is already within the
1719
+ * range it is returned, otherwise the min or max value is returned depending on which side of the range is
1720
+ * exceeded. Note that this method returns the constrained value but does not change the current number.
1721
+ * @param {Number} min The minimum number in the range
1722
+ * @param {Number} max The maximum number in the range
1723
+ * @return {Number} The constrained value if outside the range, otherwise the current value
1724
+ */
1725
+ constrain : function(min, max){
1726
+ return Math.min(Math.max(this, min), max);
1727
+ }
1728
+ });
1729
+ /**
1730
+ * @class Ext.util.TaskRunner
1731
+ * Provides the ability to execute one or more arbitrary tasks in a multithreaded
1732
+ * manner. Generally, you can use the singleton {@link Ext.TaskMgr} instead, but
1733
+ * if needed, you can create separate instances of TaskRunner. Any number of
1734
+ * separate tasks can be started at any time and will run independently of each
1735
+ * other. Example usage:
1736
+ * <pre><code>
1737
+ // Start a simple clock task that updates a div once per second
1738
+ var updateClock = function(){
1739
+ Ext.fly('clock').update(new Date().format('g:i:s A'));
1740
+ }
1741
+ var task = {
1742
+ run: updateClock,
1743
+ interval: 1000 //1 second
1744
+ }
1745
+ var runner = new Ext.util.TaskRunner();
1746
+ runner.start(task);
1747
+
1748
+ // equivalent using TaskMgr
1749
+ Ext.TaskMgr.start({
1750
+ run: updateClock,
1751
+ interval: 1000
1752
+ });
1753
+
1754
+ * </code></pre>
1755
+ * <p>See the {@link #start} method for details about how to configure a task object.</p>
1756
+ * Also see {@link Ext.util.DelayedTask}.
1757
+ *
1758
+ * @constructor
1759
+ * @param {Number} interval (optional) The minimum precision in milliseconds supported by this TaskRunner instance
1760
+ * (defaults to 10)
1761
+ */
1762
+ Ext.util.TaskRunner = function(interval){
1763
+ interval = interval || 10;
1764
+ var tasks = [],
1765
+ removeQueue = [],
1766
+ id = 0,
1767
+ running = false,
1768
+
1769
+ // private
1770
+ stopThread = function(){
1771
+ running = false;
1772
+ clearInterval(id);
1773
+ id = 0;
1774
+ },
1775
+
1776
+ // private
1777
+ startThread = function(){
1778
+ if(!running){
1779
+ running = true;
1780
+ id = setInterval(runTasks, interval);
1781
+ }
1782
+ },
1783
+
1784
+ // private
1785
+ removeTask = function(t){
1786
+ removeQueue.push(t);
1787
+ if(t.onStop){
1788
+ t.onStop.apply(t.scope || t);
1789
+ }
1790
+ },
1791
+
1792
+ // private
1793
+ runTasks = function(){
1794
+ var rqLen = removeQueue.length,
1795
+ now = new Date().getTime();
1796
+
1797
+ if(rqLen > 0){
1798
+ for(var i = 0; i < rqLen; i++){
1799
+ tasks.remove(removeQueue[i]);
1800
+ }
1801
+ removeQueue = [];
1802
+ if(tasks.length < 1){
1803
+ stopThread();
1804
+ return;
1805
+ }
1806
+ }
1807
+ for(var i = 0, t, itime, rt, len = tasks.length; i < len; ++i){
1808
+ t = tasks[i];
1809
+ itime = now - t.taskRunTime;
1810
+ if(t.interval <= itime){
1811
+ rt = t.run.apply(t.scope || t, t.args || [++t.taskRunCount]);
1812
+ t.taskRunTime = now;
1813
+ if(rt === false || t.taskRunCount === t.repeat){
1814
+ removeTask(t);
1815
+ return;
1816
+ }
1817
+ }
1818
+ if(t.duration && t.duration <= (now - t.taskStartTime)){
1819
+ removeTask(t);
1820
+ }
1821
+ }
1822
+ };
1823
+
1824
+ /**
1825
+ * Starts a new task.
1826
+ * @method start
1827
+ * @param {Object} task <p>A config object that supports the following properties:<ul>
1828
+ * <li><code>run</code> : Function<div class="sub-desc"><p>The function to execute each time the task is invoked. The
1829
+ * function will be called at each interval and passed the <code>args</code> argument if specified, and the
1830
+ * current invocation count if not.</p>
1831
+ * <p>If a particular scope (<code>this</code> reference) is required, be sure to specify it using the <code>scope</code> argument.</p>
1832
+ * <p>Return <code>false</code> from this function to terminate the task.</p></div></li>
1833
+ * <li><code>interval</code> : Number<div class="sub-desc">The frequency in milliseconds with which the task
1834
+ * should be invoked.</div></li>
1835
+ * <li><code>args</code> : Array<div class="sub-desc">(optional) An array of arguments to be passed to the function
1836
+ * specified by <code>run</code>. If not specified, the current invocation count is passed.</div></li>
1837
+ * <li><code>scope</code> : Object<div class="sub-desc">(optional) The scope (<tt>this</tt> reference) in which to execute the
1838
+ * <code>run</code> function. Defaults to the task config object.</div></li>
1839
+ * <li><code>duration</code> : Number<div class="sub-desc">(optional) The length of time in milliseconds to invoke
1840
+ * the task before stopping automatically (defaults to indefinite).</div></li>
1841
+ * <li><code>repeat</code> : Number<div class="sub-desc">(optional) The number of times to invoke the task before
1842
+ * stopping automatically (defaults to indefinite).</div></li>
1843
+ * </ul></p>
1844
+ * <p>Before each invocation, Ext injects the property <code>taskRunCount</code> into the task object so
1845
+ * that calculations based on the repeat count can be performed.</p>
1846
+ * @return {Object} The task
1847
+ */
1848
+ this.start = function(task){
1849
+ tasks.push(task);
1850
+ task.taskStartTime = new Date().getTime();
1851
+ task.taskRunTime = 0;
1852
+ task.taskRunCount = 0;
1853
+ startThread();
1854
+ return task;
1855
+ };
1856
+
1857
+ /**
1858
+ * Stops an existing running task.
1859
+ * @method stop
1860
+ * @param {Object} task The task to stop
1861
+ * @return {Object} The task
1862
+ */
1863
+ this.stop = function(task){
1864
+ removeTask(task);
1865
+ return task;
1866
+ };
1867
+
1868
+ /**
1869
+ * Stops all tasks that are currently running.
1870
+ * @method stopAll
1871
+ */
1872
+ this.stopAll = function(){
1873
+ stopThread();
1874
+ for(var i = 0, len = tasks.length; i < len; i++){
1875
+ if(tasks[i].onStop){
1876
+ tasks[i].onStop();
1877
+ }
1878
+ }
1879
+ tasks = [];
1880
+ removeQueue = [];
1881
+ };
1882
+ };
1883
+
1884
+ /**
1885
+ * @class Ext.TaskMgr
1886
+ * @extends Ext.util.TaskRunner
1887
+ * A static {@link Ext.util.TaskRunner} instance that can be used to start and stop arbitrary tasks. See
1888
+ * {@link Ext.util.TaskRunner} for supported methods and task config properties.
1889
+ * <pre><code>
1890
+ // Start a simple clock task that updates a div once per second
1891
+ var task = {
1892
+ run: function(){
1893
+ Ext.fly('clock').update(new Date().format('g:i:s A'));
1894
+ },
1895
+ interval: 1000 //1 second
1896
+ }
1897
+ Ext.TaskMgr.start(task);
1898
+ </code></pre>
1899
+ * <p>See the {@link #start} method for details about how to configure a task object.</p>
1900
+ * @singleton
1901
+ */
1902
+ Ext.TaskMgr = new Ext.util.TaskRunner();if(typeof jQuery == "undefined"){
1903
+ throw "Unable to load Ext, jQuery not found.";
1904
+ }
1905
+
1906
+ (function(){
1907
+ var libFlyweight;
1908
+
1909
+ Ext.lib.Dom = {
1910
+ getViewWidth : function(full){
1911
+ // jQuery doesn't report full window size on document query, so max both
1912
+ return full ? Math.max(jQuery(document).width(),jQuery(window).width()) : jQuery(window).width();
1913
+ },
1914
+
1915
+ getViewHeight : function(full){
1916
+ // jQuery doesn't report full window size on document query, so max both
1917
+ return full ? Math.max(jQuery(document).height(),jQuery(window).height()) : jQuery(window).height();
1918
+ },
1919
+
1920
+ isAncestor : function(p, c){
1921
+ var ret = false;
1922
+
1923
+ p = Ext.getDom(p);
1924
+ c = Ext.getDom(c);
1925
+ if (p && c) {
1926
+ if (p.contains) {
1927
+ return p.contains(c);
1928
+ } else if (p.compareDocumentPosition) {
1929
+ return !!(p.compareDocumentPosition(c) & 16);
1930
+ } else {
1931
+ while (c = c.parentNode) {
1932
+ ret = c == p || ret;
1933
+ }
1934
+ }
1935
+ }
1936
+ return ret;
1937
+ },
1938
+
1939
+ getRegion : function(el){
1940
+ return Ext.lib.Region.getRegion(el);
1941
+ },
1942
+
1943
+ //////////////////////////////////////////////////////////////////////////////////////
1944
+ // Use of jQuery.offset() removed to promote consistent behavior across libs.
1945
+ // JVS 05/23/07
1946
+ //////////////////////////////////////////////////////////////////////////////////////
1947
+
1948
+ getY : function(el){
1949
+ return this.getXY(el)[1];
1950
+ },
1951
+
1952
+ getX : function(el){
1953
+ return this.getXY(el)[0];
1954
+ },
1955
+
1956
+ getXY : function(el) {
1957
+ var p, pe, b, scroll, bd = (document.body || document.documentElement);
1958
+ el = Ext.getDom(el);
1959
+
1960
+ if(el == bd){
1961
+ return [0, 0];
1962
+ }
1963
+
1964
+ if (el.getBoundingClientRect) {
1965
+ b = el.getBoundingClientRect();
1966
+ scroll = fly(document).getScroll();
1967
+ return [Math.round(b.left + scroll.left), Math.round(b.top + scroll.top)];
1968
+ }
1969
+ var x = 0, y = 0;
1970
+
1971
+ p = el;
1972
+
1973
+ var hasAbsolute = fly(el).getStyle("position") == "absolute";
1974
+
1975
+ while (p) {
1976
+
1977
+ x += p.offsetLeft;
1978
+ y += p.offsetTop;
1979
+
1980
+ if (!hasAbsolute && fly(p).getStyle("position") == "absolute") {
1981
+ hasAbsolute = true;
1982
+ }
1983
+
1984
+ if (Ext.isGecko) {
1985
+ pe = fly(p);
1986
+
1987
+ var bt = parseInt(pe.getStyle("borderTopWidth"), 10) || 0;
1988
+ var bl = parseInt(pe.getStyle("borderLeftWidth"), 10) || 0;
1989
+
1990
+
1991
+ x += bl;
1992
+ y += bt;
1993
+
1994
+
1995
+ if (p != el && pe.getStyle('overflow') != 'visible') {
1996
+ x += bl;
1997
+ y += bt;
1998
+ }
1999
+ }
2000
+ p = p.offsetParent;
2001
+ }
2002
+
2003
+ if (Ext.isSafari && hasAbsolute) {
2004
+ x -= bd.offsetLeft;
2005
+ y -= bd.offsetTop;
2006
+ }
2007
+
2008
+ if (Ext.isGecko && !hasAbsolute) {
2009
+ var dbd = fly(bd);
2010
+ x += parseInt(dbd.getStyle("borderLeftWidth"), 10) || 0;
2011
+ y += parseInt(dbd.getStyle("borderTopWidth"), 10) || 0;
2012
+ }
2013
+
2014
+ p = el.parentNode;
2015
+ while (p && p != bd) {
2016
+ if (!Ext.isOpera || (p.tagName != 'TR' && fly(p).getStyle("display") != "inline")) {
2017
+ x -= p.scrollLeft;
2018
+ y -= p.scrollTop;
2019
+ }
2020
+ p = p.parentNode;
2021
+ }
2022
+ return [x, y];
2023
+ },
2024
+
2025
+ setXY : function(el, xy){
2026
+ el = Ext.fly(el, '_setXY');
2027
+ el.position();
2028
+ var pts = el.translatePoints(xy);
2029
+ if(xy[0] !== false){
2030
+ el.dom.style.left = pts.left + "px";
2031
+ }
2032
+ if(xy[1] !== false){
2033
+ el.dom.style.top = pts.top + "px";
2034
+ }
2035
+ },
2036
+
2037
+ setX : function(el, x){
2038
+ this.setXY(el, [x, false]);
2039
+ },
2040
+
2041
+ setY : function(el, y){
2042
+ this.setXY(el, [false, y]);
2043
+ }
2044
+ };
2045
+
2046
+ // all lib flyweight calls use their own flyweight to prevent collisions with developer flyweights
2047
+ function fly(el){
2048
+ if(!libFlyweight){
2049
+ libFlyweight = new Ext.Element.Flyweight();
2050
+ }
2051
+ libFlyweight.dom = el;
2052
+ return libFlyweight;
2053
+ }
2054
+ Ext.lib.Event = {
2055
+ getPageX : function(e){
2056
+ e = e.browserEvent || e;
2057
+ return e.pageX;
2058
+ },
2059
+
2060
+ getPageY : function(e){
2061
+ e = e.browserEvent || e;
2062
+ return e.pageY;
2063
+ },
2064
+
2065
+ getXY : function(e){
2066
+ e = e.browserEvent || e;
2067
+ return [e.pageX, e.pageY];
2068
+ },
2069
+
2070
+ getTarget : function(e){
2071
+ return e.target;
2072
+ },
2073
+
2074
+ // all Ext events will go through event manager which provides scoping
2075
+ on : function(el, eventName, fn, scope, override){
2076
+ jQuery(el).bind(eventName, fn);
2077
+ },
2078
+
2079
+ un : function(el, eventName, fn){
2080
+ jQuery(el).unbind(eventName, fn);
2081
+ },
2082
+
2083
+ purgeElement : function(el){
2084
+ jQuery(el).unbind();
2085
+ },
2086
+
2087
+ preventDefault : function(e){
2088
+ e = e.browserEvent || e;
2089
+ if(e.preventDefault){
2090
+ e.preventDefault();
2091
+ }else{
2092
+ e.returnValue = false;
2093
+ }
2094
+ },
2095
+
2096
+ stopPropagation : function(e){
2097
+ e = e.browserEvent || e;
2098
+ if(e.stopPropagation){
2099
+ e.stopPropagation();
2100
+ }else{
2101
+ e.cancelBubble = true;
2102
+ }
2103
+ },
2104
+
2105
+ stopEvent : function(e){
2106
+ this.preventDefault(e);
2107
+ this.stopPropagation(e);
2108
+ },
2109
+
2110
+ onAvailable : function(id, fn, scope){
2111
+ var start = new Date();
2112
+ var f = function(){
2113
+ if(start.getElapsed() > 10000){
2114
+ clearInterval(iid);
2115
+ }
2116
+ var el = document.getElementById(id);
2117
+ if(el){
2118
+ clearInterval(iid);
2119
+ fn.call(scope||window, el);
2120
+ }
2121
+ };
2122
+ var iid = setInterval(f, 50);
2123
+ },
2124
+
2125
+ resolveTextNode: Ext.isGecko ? function(node){
2126
+ if(!node){
2127
+ return;
2128
+ }
2129
+ var s = HTMLElement.prototype.toString.call(node);
2130
+ if(s == '[xpconnect wrapped native prototype]' || s == '[object XULElement]'){
2131
+ return;
2132
+ }
2133
+ return node.nodeType == 3 ? node.parentNode : node;
2134
+ } : function(node){
2135
+ return node && node.nodeType == 3 ? node.parentNode : node;
2136
+ },
2137
+
2138
+ getRelatedTarget: function(ev) {
2139
+ ev = ev.browserEvent || ev;
2140
+ var t = ev.relatedTarget;
2141
+ if (!t) {
2142
+ if (ev.type == "mouseout") {
2143
+ t = ev.toElement;
2144
+ } else if (ev.type == "mouseover") {
2145
+ t = ev.fromElement;
2146
+ }
2147
+ }
2148
+
2149
+ return this.resolveTextNode(t);
2150
+ }
2151
+ };
2152
+
2153
+ Ext.lib.Ajax = function(){
2154
+ var createComplete = function(cb){
2155
+ return function(xhr, status){
2156
+ if((status == 'error' || status == 'timeout') && cb.failure){
2157
+ cb.failure.call(cb.scope||window, createResponse(cb, xhr));
2158
+ }else if(cb.success){
2159
+ cb.success.call(cb.scope||window, createResponse(cb, xhr));
2160
+ }
2161
+ };
2162
+ };
2163
+
2164
+ var createResponse = function(cb, xhr){
2165
+ var headerObj = {},
2166
+ headerStr,
2167
+ t,
2168
+ s;
2169
+
2170
+ try {
2171
+ headerStr = xhr.getAllResponseHeaders();
2172
+ Ext.each(headerStr.replace(/\r\n/g, '\n').split('\n'), function(v){
2173
+ t = v.indexOf(':');
2174
+ if(t >= 0){
2175
+ s = v.substr(0, t).toLowerCase();
2176
+ if(v.charAt(t + 1) == ' '){
2177
+ ++t;
2178
+ }
2179
+ headerObj[s] = v.substr(t + 1);
2180
+ }
2181
+ });
2182
+ } catch(e) {}
2183
+
2184
+ return {
2185
+ responseText: xhr.responseText,
2186
+ responseXML : xhr.responseXML,
2187
+ argument: cb.argument,
2188
+ status: xhr.status,
2189
+ statusText: xhr.statusText,
2190
+ getResponseHeader : function(header){return headerObj[header.toLowerCase()];},
2191
+ getAllResponseHeaders : function(){return headerStr}
2192
+ };
2193
+ };
2194
+ return {
2195
+ request : function(method, uri, cb, data, options){
2196
+ var o = {
2197
+ type: method,
2198
+ url: uri,
2199
+ data: data,
2200
+ timeout: cb.timeout,
2201
+ complete: createComplete(cb)
2202
+ };
2203
+
2204
+ if(options){
2205
+ var hs = options.headers;
2206
+ if(options.xmlData){
2207
+ o.data = options.xmlData;
2208
+ o.processData = false;
2209
+ o.type = (method ? method : (options.method ? options.method : 'POST'));
2210
+ if (!hs || !hs['Content-Type']){
2211
+ o.contentType = 'text/xml';
2212
+ }
2213
+ }else if(options.jsonData){
2214
+ o.data = typeof options.jsonData == 'object' ? Ext.encode(options.jsonData) : options.jsonData;
2215
+ o.processData = false;
2216
+ o.type = (method ? method : (options.method ? options.method : 'POST'));
2217
+ if (!hs || !hs['Content-Type']){
2218
+ o.contentType = 'application/json';
2219
+ }
2220
+ }
2221
+ if(hs){
2222
+ o.beforeSend = function(xhr){
2223
+ for(var h in hs){
2224
+ if(hs.hasOwnProperty(h)){
2225
+ xhr.setRequestHeader(h, hs[h]);
2226
+ }
2227
+ }
2228
+ }
2229
+ }
2230
+ }
2231
+ jQuery.ajax(o);
2232
+ },
2233
+
2234
+ formRequest : function(form, uri, cb, data, isUpload, sslUri){
2235
+ jQuery.ajax({
2236
+ type: Ext.getDom(form).method ||'POST',
2237
+ url: uri,
2238
+ data: jQuery(form).serialize()+(data?'&'+data:''),
2239
+ timeout: cb.timeout,
2240
+ complete: createComplete(cb)
2241
+ });
2242
+ },
2243
+
2244
+ isCallInProgress : function(trans){
2245
+ return false;
2246
+ },
2247
+
2248
+ abort : function(trans){
2249
+ return false;
2250
+ },
2251
+
2252
+ serializeForm : function(form){
2253
+ return jQuery(form.dom||form).serialize();
2254
+ }
2255
+ };
2256
+ }();
2257
+
2258
+ Ext.lib.Anim = function(){
2259
+ var createAnim = function(cb, scope){
2260
+ var animated = true;
2261
+ return {
2262
+ stop : function(skipToLast){
2263
+ // do nothing
2264
+ },
2265
+
2266
+ isAnimated : function(){
2267
+ return animated;
2268
+ },
2269
+
2270
+ proxyCallback : function(){
2271
+ animated = false;
2272
+ Ext.callback(cb, scope);
2273
+ }
2274
+ };
2275
+ };
2276
+ return {
2277
+ scroll : function(el, args, duration, easing, cb, scope){
2278
+ // scroll anim not supported so just scroll immediately
2279
+ var anim = createAnim(cb, scope);
2280
+ el = Ext.getDom(el);
2281
+ if(typeof args.scroll.to[0] == 'number'){
2282
+ el.scrollLeft = args.scroll.to[0];
2283
+ }
2284
+ if(typeof args.scroll.to[1] == 'number'){
2285
+ el.scrollTop = args.scroll.to[1];
2286
+ }
2287
+ anim.proxyCallback();
2288
+ return anim;
2289
+ },
2290
+
2291
+ motion : function(el, args, duration, easing, cb, scope){
2292
+ return this.run(el, args, duration, easing, cb, scope);
2293
+ },
2294
+
2295
+ color : function(el, args, duration, easing, cb, scope){
2296
+ // color anim not supported, so execute callback immediately
2297
+ var anim = createAnim(cb, scope);
2298
+ anim.proxyCallback();
2299
+ return anim;
2300
+ },
2301
+
2302
+ run : function(el, args, duration, easing, cb, scope, type){
2303
+ var anim = createAnim(cb, scope), e = Ext.fly(el, '_animrun');
2304
+ var o = {};
2305
+ for(var k in args){
2306
+ switch(k){ // jquery doesn't support, so convert
2307
+ case 'points':
2308
+ var by, pts;
2309
+ e.position();
2310
+ if(by = args.points.by){
2311
+ var xy = e.getXY();
2312
+ pts = e.translatePoints([xy[0]+by[0], xy[1]+by[1]]);
2313
+ }else{
2314
+ pts = e.translatePoints(args.points.to);
2315
+ }
2316
+ o.left = pts.left;
2317
+ o.top = pts.top;
2318
+ if(!parseInt(e.getStyle('left'), 10)){ // auto bug
2319
+ e.setLeft(0);
2320
+ }
2321
+ if(!parseInt(e.getStyle('top'), 10)){
2322
+ e.setTop(0);
2323
+ }
2324
+ if(args.points.from){
2325
+ e.setXY(args.points.from);
2326
+ }
2327
+ break;
2328
+ case 'width':
2329
+ o.width = args.width.to;
2330
+ if (args.width.from)
2331
+ e.setWidth(args.width.from);
2332
+ break;
2333
+ case 'height':
2334
+ o.height = args.height.to;
2335
+ if (args.height.from)
2336
+ e.setHeight(args.height.from);
2337
+ break;
2338
+ case 'opacity':
2339
+ o.opacity = args.opacity.to;
2340
+ if (args.opacity.from)
2341
+ e.setOpacity(args.opacity.from);
2342
+ break;
2343
+ case 'left':
2344
+ o.left = args.left.to;
2345
+ if (args.left.from)
2346
+ e.setLeft(args.left.from);
2347
+ break;
2348
+ case 'top':
2349
+ o.top = args.top.to;
2350
+ if (args.top.from)
2351
+ e.setTop(args.top.from);
2352
+ break;
2353
+ // jQuery can't handle callback, scope, and xy arguments, so break here
2354
+ case 'callback':
2355
+ case 'scope':
2356
+ case 'xy':
2357
+ break;
2358
+
2359
+ default:
2360
+ o[k] = args[k].to;
2361
+ if (args[k].from)
2362
+ e.setStyle(k, args[k].from);
2363
+ break;
2364
+ }
2365
+ }
2366
+ // TODO: find out about easing plug in?
2367
+ jQuery(el).animate(o, duration*1000, undefined, anim.proxyCallback);
2368
+ return anim;
2369
+ }
2370
+ };
2371
+ }();
2372
+
2373
+
2374
+ Ext.lib.Region = function(t, r, b, l) {
2375
+ this.top = t;
2376
+ this[1] = t;
2377
+ this.right = r;
2378
+ this.bottom = b;
2379
+ this.left = l;
2380
+ this[0] = l;
2381
+ };
2382
+
2383
+ Ext.lib.Region.prototype = {
2384
+ contains : function(region) {
2385
+ return ( region.left >= this.left &&
2386
+ region.right <= this.right &&
2387
+ region.top >= this.top &&
2388
+ region.bottom <= this.bottom );
2389
+
2390
+ },
2391
+
2392
+ getArea : function() {
2393
+ return ( (this.bottom - this.top) * (this.right - this.left) );
2394
+ },
2395
+
2396
+ intersect : function(region) {
2397
+ var t = Math.max( this.top, region.top );
2398
+ var r = Math.min( this.right, region.right );
2399
+ var b = Math.min( this.bottom, region.bottom );
2400
+ var l = Math.max( this.left, region.left );
2401
+
2402
+ if (b >= t && r >= l) {
2403
+ return new Ext.lib.Region(t, r, b, l);
2404
+ } else {
2405
+ return null;
2406
+ }
2407
+ },
2408
+ union : function(region) {
2409
+ var t = Math.min( this.top, region.top );
2410
+ var r = Math.max( this.right, region.right );
2411
+ var b = Math.max( this.bottom, region.bottom );
2412
+ var l = Math.min( this.left, region.left );
2413
+
2414
+ return new Ext.lib.Region(t, r, b, l);
2415
+ },
2416
+
2417
+ constrainTo : function(r) {
2418
+ this.top = this.top.constrain(r.top, r.bottom);
2419
+ this.bottom = this.bottom.constrain(r.top, r.bottom);
2420
+ this.left = this.left.constrain(r.left, r.right);
2421
+ this.right = this.right.constrain(r.left, r.right);
2422
+ return this;
2423
+ },
2424
+
2425
+ adjust : function(t, l, b, r){
2426
+ this.top += t;
2427
+ this.left += l;
2428
+ this.right += r;
2429
+ this.bottom += b;
2430
+ return this;
2431
+ }
2432
+ };
2433
+
2434
+ Ext.lib.Region.getRegion = function(el) {
2435
+ var p = Ext.lib.Dom.getXY(el);
2436
+
2437
+ var t = p[1];
2438
+ var r = p[0] + el.offsetWidth;
2439
+ var b = p[1] + el.offsetHeight;
2440
+ var l = p[0];
2441
+
2442
+ return new Ext.lib.Region(t, r, b, l);
2443
+ };
2444
+
2445
+ Ext.lib.Point = function(x, y) {
2446
+ if (Ext.isArray(x)) {
2447
+ y = x[1];
2448
+ x = x[0];
2449
+ }
2450
+ this.x = this.right = this.left = this[0] = x;
2451
+ this.y = this.top = this.bottom = this[1] = y;
2452
+ };
2453
+
2454
+ Ext.lib.Point.prototype = new Ext.lib.Region();
2455
+
2456
+ // prevent IE leaks
2457
+ if(Ext.isIE) {
2458
+ function fnCleanUp() {
2459
+ var p = Function.prototype;
2460
+ delete p.createSequence;
2461
+ delete p.defer;
2462
+ delete p.createDelegate;
2463
+ delete p.createCallback;
2464
+ delete p.createInterceptor;
2465
+
2466
+ window.detachEvent("onunload", fnCleanUp);
2467
+ }
2468
+ window.attachEvent("onunload", fnCleanUp);
2469
+ }
2470
+ })();