bcms_kcfinder 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (381) hide show
  1. data/COPYRIGHT.txt +23 -0
  2. data/GPL.txt +674 -0
  3. data/Gemfile +5 -0
  4. data/LICENSE.txt +165 -0
  5. data/app/assets/javascripts/bcms_kcfinder/application.js +20 -0
  6. data/app/assets/javascripts/bcms_kcfinder/browse.js +32 -0
  7. data/app/assets/javascripts/bcms_kcfinder/config.js +2 -0
  8. data/app/assets/javascripts/bcms_kcfinder/enable_kcfinder.js +10 -0
  9. data/app/assets/javascripts/bcms_kcfinder/files.js +613 -0
  10. data/app/assets/stylesheets/bcms_kcfinder/application.css +14 -0
  11. data/app/assets/stylesheets/bcms_kcfinder/browse.css +235 -0
  12. data/app/controllers/bcms_kcfinder/application_controller.rb +4 -0
  13. data/app/controllers/bcms_kcfinder/browse_controller.rb +121 -0
  14. data/app/helpers/bcms_kcfinder/application_helper.rb +4 -0
  15. data/app/helpers/bcms_kcfinder/browse_helper.rb +4 -0
  16. data/app/views/bcms_kcfinder/browse/index.html.erb +83 -0
  17. data/app/views/bcms_kcfinder/init.json +226 -0
  18. data/app/views/layouts/bcms_kcfinder/application.html.erb +45 -0
  19. data/config/routes.rb +7 -0
  20. data/lib/bcms_kcfinder.rb +4 -0
  21. data/lib/bcms_kcfinder/engine.rb +73 -0
  22. data/lib/bcms_kcfinder/version.rb +3 -0
  23. data/lib/generators/bcms_kcfinder/install/USAGE +3 -0
  24. data/lib/generators/bcms_kcfinder/install/install_generator.rb +23 -0
  25. data/lib/tasks/bcms_kcfinder_tasks.rake +4 -0
  26. data/lib/tasks/module_tasks.rake +10 -0
  27. data/test/bcms_kcfinder_test.rb +7 -0
  28. data/test/functional/bcms_kcfinder/browse_controller_test.rb +11 -0
  29. data/test/integration/navigation_test.rb +10 -0
  30. data/test/test_helper.rb +15 -0
  31. data/test/unit/helpers/bcms_kcfinder/browse_helper_test.rb +6 -0
  32. data/vendor/assets/javascript/kcfinder/doc/Changelog +141 -0
  33. data/vendor/assets/javascript/kcfinder/doc/LICENSE.GPL +340 -0
  34. data/vendor/assets/javascript/kcfinder/doc/LICENSE.LGPL +167 -0
  35. data/vendor/assets/javascript/kcfinder/doc/README +78 -0
  36. data/vendor/assets/javascript/kcfinder/js/browser/0bject.js +22 -0
  37. data/vendor/assets/javascript/kcfinder/js/browser/clipboard.js +297 -0
  38. data/vendor/assets/javascript/kcfinder/js/browser/dropUpload.js +229 -0
  39. data/vendor/assets/javascript/kcfinder/js/browser/folders.js +368 -0
  40. data/vendor/assets/javascript/kcfinder/js/browser/init.js +186 -0
  41. data/vendor/assets/javascript/kcfinder/js/browser/joiner.php +35 -0
  42. data/vendor/assets/javascript/kcfinder/js/browser/misc.js +383 -0
  43. data/vendor/assets/javascript/kcfinder/js/browser/settings.js +101 -0
  44. data/vendor/assets/javascript/kcfinder/js/browser/toolbar.js +328 -0
  45. data/vendor/assets/javascript/kcfinder/js/helper.js +412 -0
  46. data/vendor/assets/javascript/kcfinder/js/jquery.drag.js +6 -0
  47. data/vendor/assets/javascript/kcfinder/js/jquery.js +18 -0
  48. data/vendor/assets/javascript/kcfinder/js/jquery.rightClick.js +16 -0
  49. data/vendor/assets/javascript/kcfinder/themes/dark/about.txt +15 -0
  50. data/vendor/assets/javascript/kcfinder/themes/dark/img/bg_transparent.png +0 -0
  51. data/vendor/assets/javascript/kcfinder/themes/dark/img/cross.png +0 -0
  52. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/avi.png +0 -0
  53. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/bat.png +0 -0
  54. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/bmp.png +0 -0
  55. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/bz2.png +0 -0
  56. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/ccd.png +0 -0
  57. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/cgi.png +0 -0
  58. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/com.png +0 -0
  59. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/csh.png +0 -0
  60. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/cue.png +0 -0
  61. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/deb.png +0 -0
  62. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/dll.png +0 -0
  63. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/doc.png +0 -0
  64. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/docx.png +0 -0
  65. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/exe.png +0 -0
  66. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/fla.png +0 -0
  67. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/flv.png +0 -0
  68. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/fon.png +0 -0
  69. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/gif.png +0 -0
  70. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/gz.png +0 -0
  71. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/htm.png +0 -0
  72. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/html.png +0 -0
  73. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/ini.png +0 -0
  74. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/iso.png +0 -0
  75. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/jar.png +0 -0
  76. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/java.png +0 -0
  77. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/jpeg.png +0 -0
  78. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/jpg.png +0 -0
  79. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/js.png +0 -0
  80. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/mds.png +0 -0
  81. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/mdx.png +0 -0
  82. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/mid.png +0 -0
  83. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/midi.png +0 -0
  84. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/mkv.png +0 -0
  85. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/mov.png +0 -0
  86. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/mp3.png +0 -0
  87. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/mpeg.png +0 -0
  88. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/mpg.png +0 -0
  89. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/nfo.png +0 -0
  90. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/nrg.png +0 -0
  91. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/ogg.png +0 -0
  92. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/pdf.png +0 -0
  93. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/php.png +0 -0
  94. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/phps.png +0 -0
  95. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/pl.png +0 -0
  96. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/pm.png +0 -0
  97. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/png.png +0 -0
  98. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/ppt.png +0 -0
  99. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/pptx.png +0 -0
  100. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/qt.png +0 -0
  101. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/rpm.png +0 -0
  102. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/rtf.png +0 -0
  103. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/sh.png +0 -0
  104. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/srt.png +0 -0
  105. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/sub.png +0 -0
  106. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/swf.png +0 -0
  107. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/tgz.png +0 -0
  108. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/tif.png +0 -0
  109. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/tiff.png +0 -0
  110. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/torrent.png +0 -0
  111. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/ttf.png +0 -0
  112. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/txt.png +0 -0
  113. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/wav.png +0 -0
  114. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/wma.png +0 -0
  115. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/xls.png +0 -0
  116. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/xlsx.png +0 -0
  117. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/big/zip.png +0 -0
  118. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/avi.png +0 -0
  119. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/bat.png +0 -0
  120. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/bmp.png +0 -0
  121. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/bz2.png +0 -0
  122. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/ccd.png +0 -0
  123. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/cgi.png +0 -0
  124. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/com.png +0 -0
  125. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/csh.png +0 -0
  126. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/cue.png +0 -0
  127. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/deb.png +0 -0
  128. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/dll.png +0 -0
  129. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/doc.png +0 -0
  130. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/docx.png +0 -0
  131. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/exe.png +0 -0
  132. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/fla.png +0 -0
  133. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/flv.png +0 -0
  134. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/fon.png +0 -0
  135. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/gif.png +0 -0
  136. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/gz.png +0 -0
  137. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/htm.png +0 -0
  138. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/html.png +0 -0
  139. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/ini.png +0 -0
  140. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/iso.png +0 -0
  141. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/jar.png +0 -0
  142. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/java.png +0 -0
  143. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/jpeg.png +0 -0
  144. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/jpg.png +0 -0
  145. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/js.png +0 -0
  146. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/mds.png +0 -0
  147. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/mdx.png +0 -0
  148. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/mid.png +0 -0
  149. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/midi.png +0 -0
  150. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/mkv.png +0 -0
  151. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/mov.png +0 -0
  152. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/mp3.png +0 -0
  153. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/mpeg.png +0 -0
  154. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/mpg.png +0 -0
  155. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/nfo.png +0 -0
  156. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/nrg.png +0 -0
  157. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/ogg.png +0 -0
  158. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/pdf.png +0 -0
  159. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/php.png +0 -0
  160. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/phps.png +0 -0
  161. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/pl.png +0 -0
  162. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/pm.png +0 -0
  163. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/png.png +0 -0
  164. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/ppt.png +0 -0
  165. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/pptx.png +0 -0
  166. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/qt.png +0 -0
  167. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/rpm.png +0 -0
  168. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/rtf.png +0 -0
  169. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/sh.png +0 -0
  170. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/srt.png +0 -0
  171. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/sub.png +0 -0
  172. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/swf.png +0 -0
  173. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/tgz.png +0 -0
  174. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/tif.png +0 -0
  175. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/tiff.png +0 -0
  176. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/torrent.png +0 -0
  177. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/ttf.png +0 -0
  178. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/txt.png +0 -0
  179. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/wav.png +0 -0
  180. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/wma.png +0 -0
  181. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/xls.png +0 -0
  182. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/xlsx.png +0 -0
  183. data/vendor/assets/javascript/kcfinder/themes/dark/img/files/small/zip.png +0 -0
  184. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/about.png +0 -0
  185. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/clipboard-add.png +0 -0
  186. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/clipboard-clear.png +0 -0
  187. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/clipboard.png +0 -0
  188. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/close-clicked.png +0 -0
  189. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/close-hover.png +0 -0
  190. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/close.png +0 -0
  191. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/copy.png +0 -0
  192. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/delete.png +0 -0
  193. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/download.png +0 -0
  194. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/folder-new.png +0 -0
  195. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/maximize.png +0 -0
  196. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/move.png +0 -0
  197. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/refresh.png +0 -0
  198. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/rename.png +0 -0
  199. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/select.png +0 -0
  200. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/settings.png +0 -0
  201. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/upload.png +0 -0
  202. data/vendor/assets/javascript/kcfinder/themes/dark/img/icons/view.png +0 -0
  203. data/vendor/assets/javascript/kcfinder/themes/dark/img/kcf_logo.png +0 -0
  204. data/vendor/assets/javascript/kcfinder/themes/dark/img/loading.gif +0 -0
  205. data/vendor/assets/javascript/kcfinder/themes/dark/img/question.png +0 -0
  206. data/vendor/assets/javascript/kcfinder/themes/dark/img/tree/denied.png +0 -0
  207. data/vendor/assets/javascript/kcfinder/themes/dark/img/tree/folder.png +0 -0
  208. data/vendor/assets/javascript/kcfinder/themes/dark/img/tree/folder_current.png +0 -0
  209. data/vendor/assets/javascript/kcfinder/themes/dark/img/tree/minus.png +0 -0
  210. data/vendor/assets/javascript/kcfinder/themes/dark/img/tree/plus.png +0 -0
  211. data/vendor/assets/javascript/kcfinder/themes/dark/init.js +4 -0
  212. data/vendor/assets/javascript/kcfinder/themes/dark/style.css +560 -0
  213. data/vendor/assets/javascript/kcfinder/themes/oxygen/about.txt +11 -0
  214. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/alert.png +0 -0
  215. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/bg_transparent.png +0 -0
  216. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/confirm.png +0 -0
  217. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/avi.png +0 -0
  218. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/bat.png +0 -0
  219. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/bmp.png +0 -0
  220. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/bz2.png +0 -0
  221. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/ccd.png +0 -0
  222. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/cgi.png +0 -0
  223. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/com.png +0 -0
  224. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/csh.png +0 -0
  225. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/cue.png +0 -0
  226. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/deb.png +0 -0
  227. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/dll.png +0 -0
  228. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/doc.png +0 -0
  229. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/docx.png +0 -0
  230. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/exe.png +0 -0
  231. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/fla.png +0 -0
  232. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/flv.png +0 -0
  233. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/fon.png +0 -0
  234. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/gif.png +0 -0
  235. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/gz.png +0 -0
  236. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/htm.png +0 -0
  237. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/html.png +0 -0
  238. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/ini.png +0 -0
  239. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/iso.png +0 -0
  240. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/jar.png +0 -0
  241. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/java.png +0 -0
  242. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/jpeg.png +0 -0
  243. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/jpg.png +0 -0
  244. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/js.png +0 -0
  245. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/mds.png +0 -0
  246. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/mdx.png +0 -0
  247. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/mid.png +0 -0
  248. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/midi.png +0 -0
  249. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/mkv.png +0 -0
  250. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/mov.png +0 -0
  251. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/mp3.png +0 -0
  252. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/mpeg.png +0 -0
  253. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/mpg.png +0 -0
  254. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/nfo.png +0 -0
  255. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/nrg.png +0 -0
  256. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/ogg.png +0 -0
  257. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/pdf.png +0 -0
  258. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/php.png +0 -0
  259. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/phps.png +0 -0
  260. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/pl.png +0 -0
  261. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/pm.png +0 -0
  262. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/png.png +0 -0
  263. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/ppt.png +0 -0
  264. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/pptx.png +0 -0
  265. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/psd.png +0 -0
  266. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/qt.png +0 -0
  267. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/rar.png +0 -0
  268. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/rpm.png +0 -0
  269. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/rtf.png +0 -0
  270. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/sh.png +0 -0
  271. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/srt.png +0 -0
  272. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/sub.png +0 -0
  273. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/swf.png +0 -0
  274. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/tgz.png +0 -0
  275. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/tif.png +0 -0
  276. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/tiff.png +0 -0
  277. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/torrent.png +0 -0
  278. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/ttf.png +0 -0
  279. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/txt.png +0 -0
  280. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/wav.png +0 -0
  281. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/wma.png +0 -0
  282. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/xls.png +0 -0
  283. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/xlsx.png +0 -0
  284. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/big/zip.png +0 -0
  285. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/avi.png +0 -0
  286. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/bat.png +0 -0
  287. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/bmp.png +0 -0
  288. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/bz2.png +0 -0
  289. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/ccd.png +0 -0
  290. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/cgi.png +0 -0
  291. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/com.png +0 -0
  292. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/csh.png +0 -0
  293. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/cue.png +0 -0
  294. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/deb.png +0 -0
  295. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/dll.png +0 -0
  296. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/doc.png +0 -0
  297. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/docx.png +0 -0
  298. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/exe.png +0 -0
  299. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/fla.png +0 -0
  300. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/flv.png +0 -0
  301. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/fon.png +0 -0
  302. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/gif.png +0 -0
  303. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/gz.png +0 -0
  304. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/htm.png +0 -0
  305. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/html.png +0 -0
  306. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/ini.png +0 -0
  307. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/iso.png +0 -0
  308. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/jar.png +0 -0
  309. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/java.png +0 -0
  310. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/jpeg.png +0 -0
  311. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/jpg.png +0 -0
  312. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/js.png +0 -0
  313. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/mds.png +0 -0
  314. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/mdx.png +0 -0
  315. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/mid.png +0 -0
  316. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/midi.png +0 -0
  317. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/mkv.png +0 -0
  318. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/mov.png +0 -0
  319. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/mp3.png +0 -0
  320. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/mpeg.png +0 -0
  321. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/mpg.png +0 -0
  322. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/nfo.png +0 -0
  323. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/nrg.png +0 -0
  324. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/ogg.png +0 -0
  325. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/pdf.png +0 -0
  326. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/php.png +0 -0
  327. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/phps.png +0 -0
  328. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/pl.png +0 -0
  329. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/pm.png +0 -0
  330. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/png.png +0 -0
  331. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/ppt.png +0 -0
  332. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/pptx.png +0 -0
  333. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/psd.png +0 -0
  334. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/qt.png +0 -0
  335. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/rar.png +0 -0
  336. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/rpm.png +0 -0
  337. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/rtf.png +0 -0
  338. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/sh.png +0 -0
  339. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/srt.png +0 -0
  340. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/sub.png +0 -0
  341. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/swf.png +0 -0
  342. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/tgz.png +0 -0
  343. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/tif.png +0 -0
  344. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/tiff.png +0 -0
  345. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/torrent.png +0 -0
  346. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/ttf.png +0 -0
  347. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/txt.png +0 -0
  348. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/wav.png +0 -0
  349. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/wma.png +0 -0
  350. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/xls.png +0 -0
  351. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/xlsx.png +0 -0
  352. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/files/small/zip.png +0 -0
  353. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/about.png +0 -0
  354. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/clipboard-add.png +0 -0
  355. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/clipboard-clear.png +0 -0
  356. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/clipboard.png +0 -0
  357. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/close-clicked.png +0 -0
  358. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/close-hover.png +0 -0
  359. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/close.png +0 -0
  360. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/copy.png +0 -0
  361. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/delete.png +0 -0
  362. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/download.png +0 -0
  363. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/folder-new.png +0 -0
  364. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/maximize.png +0 -0
  365. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/move.png +0 -0
  366. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/refresh.png +0 -0
  367. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/rename.png +0 -0
  368. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/select.png +0 -0
  369. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/settings.png +0 -0
  370. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/upload.png +0 -0
  371. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/icons/view.png +0 -0
  372. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/kcf_logo.png +0 -0
  373. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/loading.gif +0 -0
  374. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/tree/denied.png +0 -0
  375. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/tree/folder.png +0 -0
  376. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/tree/folder_current.png +0 -0
  377. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/tree/minus.png +0 -0
  378. data/vendor/assets/javascript/kcfinder/themes/oxygen/img/tree/plus.png +0 -0
  379. data/vendor/assets/javascript/kcfinder/themes/oxygen/init.js +4 -0
  380. data/vendor/assets/javascript/kcfinder/themes/oxygen/style.css +566 -0
  381. metadata +453 -0
@@ -0,0 +1,101 @@
1
+
2
+ /** This file is part of KCFinder project
3
+ *
4
+ * @desc Settings panel functionality
5
+ * @package KCFinder
6
+ * @version 2.51
7
+ * @author Pavel Tzonkov <pavelc@users.sourceforge.net>
8
+ * @copyright 2010, 2011 KCFinder Project
9
+ * @license http://www.opensource.org/licenses/gpl-2.0.php GPLv2
10
+ * @license http://www.opensource.org/licenses/lgpl-2.1.php LGPLv2
11
+ * @link http://kcfinder.sunhater.com
12
+ */
13
+
14
+ browser.initSettings = function() {
15
+
16
+ if (!this.shows.length) {
17
+ var showInputs = $('#show input[type="checkbox"]').toArray();
18
+ $.each(showInputs, function (i, input) {
19
+ browser.shows[i] = input.name;
20
+ });
21
+ }
22
+
23
+ var shows = this.shows;
24
+
25
+ if (!_.kuki.isSet('showname')) {
26
+ _.kuki.set('showname', 'on');
27
+ $.each(shows, function (i, val) {
28
+ if (val != "name") _.kuki.set('show' + val, 'off');
29
+ });
30
+ }
31
+
32
+ $('#show input[type="checkbox"]').click(function() {
33
+ var kuki = $(this).get(0).checked ? 'on' : 'off';
34
+ _.kuki.set('show' + $(this).get(0).name, kuki)
35
+ if ($(this).get(0).checked)
36
+ $('#files .file div.' + $(this).get(0).name).css('display', 'block');
37
+ else
38
+ $('#files .file div.' + $(this).get(0).name).css('display', 'none');
39
+ });
40
+
41
+ $.each(shows, function(i, val) {
42
+ var checked = (_.kuki.get('show' + val) == 'on') ? 'checked' : '';
43
+ $('#show input[name="' + val + '"]').get(0).checked = checked;
44
+ });
45
+
46
+ if (!this.orders.length) {
47
+ var orderInputs = $('#order input[type="radio"]').toArray();
48
+ $.each(orderInputs, function (i, input) {
49
+ browser.orders[i] = input.value;
50
+ });
51
+ }
52
+
53
+ var orders = this.orders;
54
+
55
+ if (!_.kuki.isSet('order'))
56
+ var result = _.kuki.set('order', 'name');
57
+
58
+ if (!_.kuki.isSet('orderDesc'))
59
+ _.kuki.set('orderDesc', 'off');
60
+
61
+ $('#order input[value="' + _.kuki.get('order') + '"]').get(0).checked = true;
62
+ $('#order input[name="desc"]').get(0).checked = (_.kuki.get('orderDesc') == 'on');
63
+
64
+ $('#order input[type="radio"]').click(function() {
65
+ _.kuki.set('order', $(this).get(0).value);
66
+ browser.orderFiles();
67
+ });
68
+
69
+ $('#order input[name="desc"]').click(function() {
70
+ _.kuki.set('orderDesc', $(this).get(0).checked ? 'on' : 'off');
71
+ browser.orderFiles();
72
+ });
73
+
74
+ if (!_.kuki.isSet('view'))
75
+ _.kuki.set('view', 'thumbs');
76
+
77
+ if (_.kuki.get('view') == 'list') {
78
+ $('#show input').each(function() { this.checked = true; });
79
+ $('#show input').each(function() { this.disabled = true; });
80
+ }
81
+
82
+ $('#view input[value="' + _.kuki.get('view') + '"]').get(0).checked = true;
83
+
84
+ $('#view input').click(function() {
85
+ var view = $(this).attr('value');
86
+ if (_.kuki.get('view') != view) {
87
+ _.kuki.set('view', view);
88
+ if (view == 'list') {
89
+ $('#show input').each(function() { this.checked = true; });
90
+ $('#show input').each(function() { this.disabled = true; });
91
+ } else {
92
+ $.each(browser.shows, function(i, val) {
93
+ $('#show input[name="' + val + '"]').get(0).checked =
94
+ (_.kuki.get('show' + val) == "on");
95
+ });
96
+ $('#show input').each(function() { this.disabled = false; });
97
+ }
98
+ }
99
+ browser.refresh();
100
+ });
101
+ };
@@ -0,0 +1,328 @@
1
+
2
+ /** This file is part of KCFinder project
3
+ *
4
+ * @desc Toolbar functionality
5
+ * @package KCFinder
6
+ * @version 2.51
7
+ * @author Pavel Tzonkov <pavelc@users.sourceforge.net>
8
+ * @copyright 2010, 2011 KCFinder Project
9
+ * @license http://www.opensource.org/licenses/gpl-2.0.php GPLv2
10
+ * @license http://www.opensource.org/licenses/lgpl-2.1.php LGPLv2
11
+ * @link http://kcfinder.sunhater.com
12
+ */
13
+
14
+ browser.initToolbar = function() {
15
+ $('#toolbar a').click(function() {
16
+ browser.hideDialog();
17
+ });
18
+
19
+ if (!_.kuki.isSet('displaySettings'))
20
+ _.kuki.set('displaySettings', 'off');
21
+
22
+ if (_.kuki.get('displaySettings') == 'on') {
23
+ $('#toolbar a[href="kcact:settings"]').addClass('selected');
24
+ $('#settings').css('display', 'block');
25
+ browser.resize();
26
+ }
27
+
28
+ $('#toolbar a[href="kcact:settings"]').click(function () {
29
+ if ($('#settings').css('display') == 'none') {
30
+ $(this).addClass('selected');
31
+ _.kuki.set('displaySettings', 'on');
32
+ $('#settings').css('display', 'block');
33
+ browser.fixFilesHeight();
34
+ } else {
35
+ $(this).removeClass('selected');
36
+ _.kuki.set('displaySettings', 'off');
37
+ $('#settings').css('display', 'none');
38
+ browser.fixFilesHeight();
39
+ }
40
+ return false;
41
+ });
42
+
43
+ $('#toolbar a[href="kcact:refresh"]').click(function() {
44
+ browser.refresh();
45
+ return false;
46
+ });
47
+
48
+ if (window.opener || this.opener.TinyMCE || $('iframe', window.parent.document).get(0))
49
+ $('#toolbar a[href="kcact:maximize"]').click(function() {
50
+ browser.maximize(this);
51
+ return false;
52
+ });
53
+ else
54
+ $('#toolbar a[href="kcact:maximize"]').css('display', 'none');
55
+
56
+ $('#toolbar a[href="kcact:about"]').click(function() {
57
+ var html = '<div class="box about">' +
58
+ '<div class="head"><a href="http://kcfinder.sunhater.com" target="_blank">KCFinder</a> ' + browser.version + '</div>';
59
+ if (browser.support.check4Update)
60
+ html += '<div id="checkver"><span class="loading"><span>' + browser.label("Checking for new version...") + '</span></span></div>';
61
+ html +=
62
+ '<div>' + browser.label("Licenses:") + ' GPLv2 & LGPLv2</div>' +
63
+ '<div>Copyright &copy;2010, 2011 Pavel Tzonkov</div>' +
64
+ '<button>' + browser.label("OK") + '</button>' +
65
+ '</div>';
66
+ $('#dialog').html(html);
67
+ $('#dialog').data('title', browser.label("About"));
68
+ browser.showDialog();
69
+ var close = function() {
70
+ browser.hideDialog();
71
+ browser.unshadow();
72
+ }
73
+ $('#dialog button').click(close);
74
+ var span = $('#checkver > span');
75
+ setTimeout(function() {
76
+ $.ajax({
77
+ dataType: 'json',
78
+ url: browser.baseGetData('check4Update'),
79
+ async: true,
80
+ success: function(data) {
81
+ if (!$('#dialog').html().length)
82
+ return;
83
+ span.removeClass('loading');
84
+ if (!data.version) {
85
+ span.html(browser.label("Unable to connect!"));
86
+ browser.showDialog();
87
+ return;
88
+ }
89
+ if (browser.version < data.version)
90
+ span.html('<a href="http://kcfinder.sunhater.com/download" target="_blank">' + browser.label("Download version {version} now!", {version: data.version}) + '</a>');
91
+ else
92
+ span.html(browser.label("KCFinder is up to date!"));
93
+ browser.showDialog();
94
+ },
95
+ error: function() {
96
+ if (!$('#dialog').html().length)
97
+ return;
98
+ span.removeClass('loading');
99
+ span.html(browser.label("Unable to connect!"));
100
+ browser.showDialog();
101
+ }
102
+ });
103
+ }, 1000);
104
+ $('#dialog').unbind();
105
+
106
+ return false;
107
+ });
108
+
109
+ this.initUploadButton();
110
+ };
111
+
112
+ browser.initUploadButton = function() {
113
+ var btn = $('#toolbar a[href="kcact:upload"]');
114
+ if (!this.access.files.upload) {
115
+ btn.css('display', 'none');
116
+ return;
117
+ }
118
+ var top = btn.get(0).offsetTop;
119
+ var width = btn.outerWidth();
120
+ var height = btn.outerHeight();
121
+ $('#toolbar').prepend('<div id="upload" style="top:' + top + 'px;width:' + width + 'px;height:' + height + 'px">' +
122
+ '<form enctype="multipart/form-data" method="post" target="uploadResponse" action="' + browser.baseGetData('upload') + '">' +
123
+ '<input type="file" name="upload[]" onchange="browser.uploadFile(this.form)" style="height:' + height + 'px" multiple="multiple" />' +
124
+ '<input type="hidden" name="dir" value="" />' +
125
+ '</form>' +
126
+ '</div>');
127
+ $('#upload input').css('margin-left', "-" + ($('#upload input').outerWidth() - width) + 'px');
128
+ $('#upload').mouseover(function() {
129
+ $('#toolbar a[href="kcact:upload"]').addClass('hover');
130
+ });
131
+ $('#upload').mouseout(function() {
132
+ $('#toolbar a[href="kcact:upload"]').removeClass('hover');
133
+ });
134
+ };
135
+
136
+ browser.uploadFile = function(form) {
137
+ if (!this.dirWritable) {
138
+ browser.alert(this.label("Cannot write to upload folder."));
139
+ $('#upload').detach();
140
+ browser.initUploadButton();
141
+ return;
142
+ }
143
+ form.elements[1].value = browser.dir;
144
+ $('<iframe id="uploadResponse" name="uploadResponse" src="javascript:;"></iframe>').prependTo(document.body);
145
+ $('#loading').html(this.label("Uploading file..."));
146
+ $('#loading').css('display', 'inline');
147
+ form.submit();
148
+ $('#uploadResponse').load(function() {
149
+ var response = $(this).contents().find('body').html();
150
+ $('#loading').css('display', 'none');
151
+ response = response.split("\n");
152
+ var selected = [], errors = [];
153
+ $.each(response, function(i, row) {
154
+ if (row.substr(0, 1) == '/')
155
+ selected[selected.length] = row.substr(1, row.length - 1)
156
+ else
157
+ errors[errors.length] = row;
158
+ });
159
+ if (errors.length)
160
+ browser.alert(errors.join("\n"));
161
+ if (!selected.length)
162
+ selected = null
163
+ browser.refresh(selected);
164
+ $('#upload').detach();
165
+ setTimeout(function() {
166
+ $('#uploadResponse').detach();
167
+ }, 1);
168
+ browser.initUploadButton();
169
+ });
170
+ };
171
+
172
+ browser.maximize = function(button) {
173
+ if (window.opener) {
174
+ window.moveTo(0, 0);
175
+ width = screen.availWidth;
176
+ height = screen.availHeight;
177
+ if ($.browser.opera)
178
+ height -= 50;
179
+ window.resizeTo(width, height);
180
+
181
+ } else if (browser.opener.TinyMCE) {
182
+ var win, ifr, id;
183
+
184
+ $('iframe', window.parent.document).each(function() {
185
+ if (/^mce_\d+_ifr$/.test($(this).attr('id'))) {
186
+ id = parseInt($(this).attr('id').replace(/^mce_(\d+)_ifr$/, "$1"));
187
+ win = $('#mce_' + id, window.parent.document);
188
+ ifr = $('#mce_' + id + '_ifr', window.parent.document);
189
+ }
190
+ });
191
+
192
+ if ($(button).hasClass('selected')) {
193
+ $(button).removeClass('selected');
194
+ win.css({
195
+ left: browser.maximizeMCE.left + 'px',
196
+ top: browser.maximizeMCE.top + 'px',
197
+ width: browser.maximizeMCE.width + 'px',
198
+ height: browser.maximizeMCE.height + 'px'
199
+ });
200
+ ifr.css({
201
+ width: browser.maximizeMCE.width - browser.maximizeMCE.Hspace + 'px',
202
+ height: browser.maximizeMCE.height - browser.maximizeMCE.Vspace + 'px'
203
+ });
204
+
205
+ } else {
206
+ $(button).addClass('selected')
207
+ browser.maximizeMCE = {
208
+ width: _.nopx(win.css('width')),
209
+ height: _.nopx(win.css('height')),
210
+ left: win.position().left,
211
+ top: win.position().top,
212
+ Hspace: _.nopx(win.css('width')) - _.nopx(ifr.css('width')),
213
+ Vspace: _.nopx(win.css('height')) - _.nopx(ifr.css('height'))
214
+ };
215
+ var width = $(window.parent).width();
216
+ var height = $(window.parent).height();
217
+ win.css({
218
+ left: $(window.parent).scrollLeft() + 'px',
219
+ top: $(window.parent).scrollTop() + 'px',
220
+ width: width + 'px',
221
+ height: height + 'px'
222
+ });
223
+ ifr.css({
224
+ width: width - browser.maximizeMCE.Hspace + 'px',
225
+ height: height - browser.maximizeMCE.Vspace + 'px'
226
+ });
227
+ }
228
+
229
+ } else if ($('iframe', window.parent.document).get(0)) {
230
+ var ifrm = $('iframe[name="' + window.name + '"]', window.parent.document);
231
+ var parent = ifrm.parent();
232
+ var width, height;
233
+ if ($(button).hasClass('selected')) {
234
+ $(button).removeClass('selected');
235
+ if (browser.maximizeThread) {
236
+ clearInterval(browser.maximizeThread);
237
+ browser.maximizeThread = null;
238
+ }
239
+ if (browser.maximizeW) browser.maximizeW = null;
240
+ if (browser.maximizeH) browser.maximizeH = null;
241
+ $.each($('*', window.parent.document).get(), function(i, e) {
242
+ e.style.display = browser.maximizeDisplay[i];
243
+ });
244
+ ifrm.css({
245
+ display: browser.maximizeCSS.display,
246
+ position: browser.maximizeCSS.position,
247
+ left: browser.maximizeCSS.left,
248
+ top: browser.maximizeCSS.top,
249
+ width: browser.maximizeCSS.width,
250
+ height: browser.maximizeCSS.height
251
+ });
252
+ $(window.parent).scrollLeft(browser.maximizeLest);
253
+ $(window.parent).scrollTop(browser.maximizeTop);
254
+
255
+ } else {
256
+ $(button).addClass('selected');
257
+ browser.maximizeCSS = {
258
+ display: ifrm.css('display'),
259
+ position: ifrm.css('position'),
260
+ left: ifrm.css('left'),
261
+ top: ifrm.css('top'),
262
+ width: ifrm.outerWidth() + 'px',
263
+ height: ifrm.outerHeight() + 'px'
264
+ };
265
+ browser.maximizeTop = $(window.parent).scrollTop();
266
+ browser.maximizeLeft = $(window.parent).scrollLeft();
267
+ browser.maximizeDisplay = [];
268
+ $.each($('*', window.parent.document).get(), function(i, e) {
269
+ browser.maximizeDisplay[i] = $(e).css('display');
270
+ $(e).css('display', 'none');
271
+ });
272
+
273
+ ifrm.css('display', 'block');
274
+ ifrm.parents().css('display', 'block');
275
+ var resize = function() {
276
+ width = $(window.parent).width();
277
+ height = $(window.parent).height();
278
+ if (!browser.maximizeW || (browser.maximizeW != width) ||
279
+ !browser.maximizeH || (browser.maximizeH != height)
280
+ ) {
281
+ browser.maximizeW = width;
282
+ browser.maximizeH = height;
283
+ ifrm.css({
284
+ width: width + 'px',
285
+ height: height + 'px'
286
+ });
287
+ browser.resize();
288
+ }
289
+ }
290
+ ifrm.css('position', 'absolute');
291
+ if ((ifrm.offset().left == ifrm.position().left) &&
292
+ (ifrm.offset().top == ifrm.position().top)
293
+ )
294
+ ifrm.css({left: '0', top: '0'});
295
+ else
296
+ ifrm.css({
297
+ left: - ifrm.offset().left + 'px',
298
+ top: - ifrm.offset().top + 'px'
299
+ });
300
+
301
+ resize();
302
+ browser.maximizeThread = setInterval(resize, 250);
303
+ }
304
+ }
305
+ };
306
+
307
+ browser.refresh = function(selected) {
308
+ this.fadeFiles();
309
+ $.ajax({
310
+ type: 'POST',
311
+ dataType: 'json',
312
+ url: browser.baseGetData('chDir'),
313
+ data: {dir:browser.dir},
314
+ async: false,
315
+ success: function(data) {
316
+ if (browser.check4errors(data))
317
+ return;
318
+ browser.dirWritable = data.dirWritable;
319
+ browser.files = data.files ? data.files : [];
320
+ browser.orderFiles(null, selected);
321
+ browser.statusDir();
322
+ },
323
+ error: function() {
324
+ $('#files > div').css({opacity:'', filter:''});
325
+ $('#files').html(browser.label("Unknown error."));
326
+ }
327
+ });
328
+ };
@@ -0,0 +1,412 @@
1
+ /** This file is part of KCFinder project
2
+ *
3
+ * @desc Helper object
4
+ * @package KCFinder
5
+ * @version 2.51
6
+ * @author Pavel Tzonkov <pavelc@users.sourceforge.net>
7
+ * @copyright 2010, 2011 KCFinder Project
8
+ * @license http://www.opensource.org/licenses/gpl-2.0.php GPLv2
9
+ * @license http://www.opensource.org/licenses/lgpl-2.1.php LGPLv2
10
+ * @link http://kcfinder.sunhater.com
11
+ */
12
+
13
+ var _ = function(id) {
14
+ return document.getElementById(id);
15
+ };
16
+
17
+ _.nopx = function(val) {
18
+ return parseInt(val.replace(/^(\d+)px$/, "$1"));
19
+ };
20
+
21
+ _.unselect = function() {
22
+ if (document.selection && document.selection.empty)
23
+ document.selection.empty() ;
24
+ else if (window.getSelection) {
25
+ var sel = window.getSelection();
26
+ if (sel && sel.removeAllRanges)
27
+ sel.removeAllRanges();
28
+ }
29
+ };
30
+
31
+ _.selection = function(field, start, end) {
32
+ if (field.createTextRange) {
33
+ var selRange = field.createTextRange();
34
+ selRange.collapse(true);
35
+ selRange.moveStart('character', start);
36
+ selRange.moveEnd('character', end-start);
37
+ selRange.select();
38
+ } else if (field.setSelectionRange) {
39
+ field.setSelectionRange(start, end);
40
+ } else if (field.selectionStart) {
41
+ field.selectionStart = start;
42
+ field.selectionEnd = end;
43
+ }
44
+ field.focus();
45
+ };
46
+
47
+ _.htmlValue = function(value) {
48
+ return value
49
+ .replace(/\&/g, "&amp;")
50
+ .replace(/\"/g, "&quot;")
51
+ .replace(/\'/g, "&#39;");
52
+ };
53
+
54
+ _.htmlData = function(value) {
55
+ return value
56
+ .replace(/\&/g, "&amp;")
57
+ .replace(/\</g, "&lt;")
58
+ .replace(/\>/g, "&gt;")
59
+ .replace(/\ /g, "&nbsp;");
60
+ }
61
+
62
+ _.jsValue = function(value) {
63
+ return value
64
+ .replace(/\\/g, "\\\\")
65
+ .replace(/\r?\n/, "\\\n")
66
+ .replace(/\"/g, "\\\"")
67
+ .replace(/\'/g, "\\'");
68
+ };
69
+
70
+ _.basename = function(path) {
71
+ var expr = /^.*\/([^\/]+)\/?$/g;
72
+ return expr.test(path)
73
+ ? path.replace(expr, "$1")
74
+ : path;
75
+ };
76
+
77
+ _.dirname = function(path) {
78
+ var expr = /^(.*)\/[^\/]+\/?$/g;
79
+ return expr.test(path)
80
+ ? path.replace(expr, "$1")
81
+ : '';
82
+ };
83
+
84
+ _.inArray = function(needle, arr) {
85
+ if ((typeof arr == 'undefined') || !arr.length || !arr.push)
86
+ return false;
87
+ for (var i = 0; i < arr.length; i++)
88
+ if (arr[i] == needle)
89
+ return true;
90
+ return false;
91
+ };
92
+
93
+ _.getFileExtension = function(filename, toLower) {
94
+ if (typeof(toLower) == 'undefined') toLower = true;
95
+ if (/^.*\.[^\.]*$/.test(filename)) {
96
+ var ext = filename.replace(/^.*\.([^\.]*)$/, "$1");
97
+ return toLower ? ext.toLowerCase(ext) : ext;
98
+ } else
99
+ return "";
100
+ };
101
+
102
+ _.escapeDirs = function(path) {
103
+ var fullDirExpr = /^([a-z]+)\:\/\/([^\/^\:]+)(\:(\d+))?\/(.+)$/,
104
+ prefix = "";
105
+ if (fullDirExpr.test(path)) {
106
+ var port = path.replace(fullDirExpr, "$4");
107
+ prefix = path.replace(fullDirExpr, "$1://$2")
108
+ if (port.length)
109
+ prefix += ":" + port;
110
+ prefix += "/";
111
+ path = path.replace(fullDirExpr, "$5");
112
+ }
113
+
114
+ var dirs = path.split('/');
115
+ var escapePath = '';
116
+ for (var i = 0; i < dirs.length; i++)
117
+ escapePath += encodeURIComponent(dirs[i]) + '/';
118
+
119
+ return prefix + escapePath.substr(0, escapePath.length - 1);
120
+ };
121
+
122
+ _.outerSpace = function(selector, type, mbp) {
123
+ if (!mbp) mbp = "mbp";
124
+ var r = 0;
125
+ if (/m/i.test(mbp)) {
126
+ var m = _.nopx($(selector).css('margin-' + type));
127
+ if (m) r += m;
128
+ }
129
+ if (/b/i.test(mbp)) {
130
+ var b = _.nopx($(selector).css('border-' + type + '-width'));
131
+ if (b) r += b;
132
+ }
133
+ if (/p/i.test(mbp)) {
134
+ var p = _.nopx($(selector).css('padding-' + type));
135
+ if (p) r += p;
136
+ }
137
+ return r;
138
+ };
139
+
140
+ _.outerLeftSpace = function(selector, mbp) {
141
+ return _.outerSpace(selector, 'left', mbp);
142
+ };
143
+
144
+ _.outerTopSpace = function(selector, mbp) {
145
+ return _.outerSpace(selector, 'top', mbp);
146
+ };
147
+
148
+ _.outerRightSpace = function(selector, mbp) {
149
+ return _.outerSpace(selector, 'right', mbp);
150
+ };
151
+
152
+ _.outerBottomSpace = function(selector, mbp) {
153
+ return _.outerSpace(selector, 'bottom', mbp);
154
+ };
155
+
156
+ _.outerHSpace = function(selector, mbp) {
157
+ return (_.outerLeftSpace(selector, mbp) + _.outerRightSpace(selector, mbp));
158
+ };
159
+
160
+ _.outerVSpace = function(selector, mbp) {
161
+ return (_.outerTopSpace(selector, mbp) + _.outerBottomSpace(selector, mbp));
162
+ };
163
+
164
+ _.kuki = {
165
+ prefix: '',
166
+ duration: 356,
167
+ domain: '',
168
+ path: '',
169
+ secure: false,
170
+
171
+ set: function(name, value, duration, domain, path, secure) {
172
+ name = this.prefix + name;
173
+ if (duration == null) duration = this.duration;
174
+ if (secure == null) secure = this.secure;
175
+ if ((domain == null) && this.domain) domain = this.domain;
176
+ if ((path == null) && this.path) path = this.path;
177
+ secure = secure ? true : false;
178
+
179
+ var date = new Date();
180
+ date.setTime(date.getTime() + (duration * 86400000));
181
+ var expires = date.toGMTString();
182
+
183
+ var str = name + '=' + value + '; expires=' + expires;
184
+ if (domain != null) str += '; domain=' + domain;
185
+ if (path != null) str += '; path=' + path;
186
+ if (secure) str += '; secure';
187
+
188
+ console.log("Final cookie set as '" + str + "'.");
189
+ return (document.cookie = str) ? true : false;
190
+ },
191
+
192
+ get: function(name) {
193
+ name = this.prefix + name;
194
+ var nameEQ = name + '=';
195
+ var kukis = document.cookie.split(';');
196
+ var kuki;
197
+
198
+ for (var i = 0; i < kukis.length; i++) {
199
+ kuki = kukis[i];
200
+ while (kuki.charAt(0) == ' ')
201
+ kuki = kuki.substring(1, kuki.length);
202
+
203
+ if (kuki.indexOf(nameEQ) == 0)
204
+ return kuki.substring(nameEQ.length, kuki.length);
205
+ }
206
+
207
+ return null;
208
+ },
209
+
210
+ del: function(name) {
211
+ return this.set(name, '', -1);
212
+ },
213
+
214
+ isSet: function(name) {
215
+ return (this.get(name) != null);
216
+ }
217
+ };
218
+
219
+ _.md5 = function(string) {
220
+
221
+ var RotateLeft = function(lValue, iShiftBits) {
222
+ return (lValue<<iShiftBits) | (lValue>>>(32-iShiftBits));
223
+ };
224
+
225
+ var AddUnsigned = function(lX,lY) {
226
+ var lX4, lY4, lX8, lY8, lResult;
227
+ lX8 = (lX & 0x80000000);
228
+ lY8 = (lY & 0x80000000);
229
+ lX4 = (lX & 0x40000000);
230
+ lY4 = (lY & 0x40000000);
231
+ lResult = (lX & 0x3FFFFFFF) + (lY & 0x3FFFFFFF);
232
+ if (lX4 & lY4)
233
+ return (lResult ^ 0x80000000 ^ lX8 ^ lY8);
234
+ if (lX4 | lY4)
235
+ return (lResult & 0x40000000)
236
+ ? (lResult ^ 0xC0000000 ^ lX8 ^ lY8)
237
+ : (lResult ^ 0x40000000 ^ lX8 ^ lY8);
238
+ else
239
+ return (lResult ^ lX8 ^ lY8);
240
+ };
241
+
242
+ var F = function(x, y, z) { return (x & y) | ((~x) & z); };
243
+ var G = function(x, y, z) { return (x & z) | (y & (~z)); };
244
+ var H = function(x, y, z) { return (x ^ y ^ z); };
245
+ var I = function(x, y, z) { return (y ^ (x | (~z))); };
246
+
247
+ var FF = function(a, b, c, d, x, s, ac) {
248
+ a = AddUnsigned(a, AddUnsigned(AddUnsigned(F(b, c, d), x), ac));
249
+ return AddUnsigned(RotateLeft(a, s), b);
250
+ };
251
+
252
+ var GG = function(a, b, c, d, x, s, ac) {
253
+ a = AddUnsigned(a, AddUnsigned(AddUnsigned(G(b, c, d), x), ac));
254
+ return AddUnsigned(RotateLeft(a, s), b);
255
+ };
256
+
257
+ var HH = function(a, b, c, d, x, s, ac) {
258
+ a = AddUnsigned(a, AddUnsigned(AddUnsigned(H(b, c, d), x), ac));
259
+ return AddUnsigned(RotateLeft(a, s), b);
260
+ };
261
+
262
+ var II = function(a, b, c, d, x, s, ac) {
263
+ a = AddUnsigned(a, AddUnsigned(AddUnsigned(I(b, c, d), x), ac));
264
+ return AddUnsigned(RotateLeft(a, s), b);
265
+ };
266
+
267
+ var ConvertToWordArray = function(string) {
268
+ var lWordCount;
269
+ var lMessageLength = string.length;
270
+ var lNumberOfWords_temp1 = lMessageLength + 8;
271
+ var lNumberOfWords_temp2 = (lNumberOfWords_temp1 - (lNumberOfWords_temp1 % 64)) / 64;
272
+ var lNumberOfWords = (lNumberOfWords_temp2 + 1) * 16;
273
+ var lWordArray = [lNumberOfWords - 1];
274
+ var lBytePosition = 0;
275
+ var lByteCount = 0;
276
+ while (lByteCount < lMessageLength) {
277
+ lWordCount = (lByteCount - (lByteCount % 4)) / 4;
278
+ lBytePosition = (lByteCount % 4) * 8;
279
+ lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount) << lBytePosition));
280
+ lByteCount++;
281
+ }
282
+ lWordCount = (lByteCount - (lByteCount % 4)) / 4;
283
+ lBytePosition = (lByteCount % 4) * 8;
284
+ lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80 << lBytePosition);
285
+ lWordArray[lNumberOfWords - 2] = lMessageLength << 3;
286
+ lWordArray[lNumberOfWords - 1] = lMessageLength >>> 29;
287
+ return lWordArray;
288
+ };
289
+
290
+ var WordToHex = function(lValue) {
291
+ var WordToHexValue = "", WordToHexValue_temp = "", lByte, lCount;
292
+ for (lCount = 0; lCount <= 3; lCount++) {
293
+ lByte = (lValue >>> (lCount * 8)) & 255;
294
+ WordToHexValue_temp = "0" + lByte.toString(16);
295
+ WordToHexValue = WordToHexValue + WordToHexValue_temp.substr(WordToHexValue_temp.length - 2,2);
296
+ }
297
+ return WordToHexValue;
298
+ };
299
+
300
+ var x = [];
301
+ var k, AA, BB, CC, DD, a, b, c, d;
302
+ var S11 = 7, S12 = 12, S13 = 17, S14 = 22;
303
+ var S21 = 5, S22 = 9, S23 = 14, S24 = 20;
304
+ var S31 = 4, S32 = 11, S33 = 16, S34 = 23;
305
+ var S41 = 6, S42 = 10, S43 = 15, S44 = 21;
306
+
307
+ string = _.utf8encode(string);
308
+
309
+ x = ConvertToWordArray(string);
310
+
311
+ a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476;
312
+
313
+ for (k = 0; k < x.length; k += 16) {
314
+ AA = a; BB = b; CC = c; DD = d;
315
+ a = FF(a, b, c, d, x[k + 0], S11, 0xD76AA478);
316
+ d = FF(d, a, b, c, x[k + 1], S12, 0xE8C7B756);
317
+ c = FF(c, d, a, b, x[k + 2], S13, 0x242070DB);
318
+ b = FF(b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);
319
+ a = FF(a, b, c, d, x[k + 4], S11, 0xF57C0FAF);
320
+ d = FF(d, a, b, c, x[k + 5], S12, 0x4787C62A);
321
+ c = FF(c, d, a, b, x[k + 6], S13, 0xA8304613);
322
+ b = FF(b, c, d, a, x[k + 7], S14, 0xFD469501);
323
+ a = FF(a, b, c, d, x[k + 8], S11, 0x698098D8);
324
+ d = FF(d, a, b, c, x[k + 9], S12, 0x8B44F7AF);
325
+ c = FF(c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);
326
+ b = FF(b, c, d, a, x[k + 11], S14, 0x895CD7BE);
327
+ a = FF(a, b, c, d, x[k + 12], S11, 0x6B901122);
328
+ d = FF(d, a, b, c, x[k + 13], S12, 0xFD987193);
329
+ c = FF(c, d, a, b, x[k + 14], S13, 0xA679438E);
330
+ b = FF(b, c, d, a, x[k + 15], S14, 0x49B40821);
331
+ a = GG(a, b, c, d, x[k + 1], S21, 0xF61E2562);
332
+ d = GG(d, a, b, c, x[k + 6], S22, 0xC040B340);
333
+ c = GG(c, d, a, b, x[k + 11], S23, 0x265E5A51);
334
+ b = GG(b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);
335
+ a = GG(a, b, c, d, x[k + 5], S21, 0xD62F105D);
336
+ d = GG(d, a, b, c, x[k + 10], S22, 0x2441453);
337
+ c = GG(c, d, a, b, x[k + 15], S23, 0xD8A1E681);
338
+ b = GG(b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);
339
+ a = GG(a, b, c, d, x[k + 9], S21, 0x21E1CDE6);
340
+ d = GG(d, a, b, c, x[k + 14], S22, 0xC33707D6);
341
+ c = GG(c, d, a, b, x[k + 3], S23, 0xF4D50D87);
342
+ b = GG(b, c, d, a, x[k + 8], S24, 0x455A14ED);
343
+ a = GG(a, b, c, d, x[k + 13], S21, 0xA9E3E905);
344
+ d = GG(d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);
345
+ c = GG(c, d, a, b, x[k + 7], S23, 0x676F02D9);
346
+ b = GG(b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);
347
+ a = HH(a, b, c, d, x[k + 5], S31, 0xFFFA3942);
348
+ d = HH(d, a, b, c, x[k + 8], S32, 0x8771F681);
349
+ c = HH(c, d, a, b, x[k + 11], S33, 0x6D9D6122);
350
+ b = HH(b, c, d, a, x[k + 14], S34, 0xFDE5380C);
351
+ a = HH(a, b, c, d, x[k + 1], S31, 0xA4BEEA44);
352
+ d = HH(d, a, b, c, x[k + 4], S32, 0x4BDECFA9);
353
+ c = HH(c, d, a, b, x[k + 7], S33, 0xF6BB4B60);
354
+ b = HH(b, c, d, a, x[k + 10], S34, 0xBEBFBC70);
355
+ a = HH(a, b, c, d, x[k + 13], S31, 0x289B7EC6);
356
+ d = HH(d, a, b, c, x[k + 0], S32, 0xEAA127FA);
357
+ c = HH(c, d, a, b, x[k + 3], S33, 0xD4EF3085);
358
+ b = HH(b, c, d, a, x[k + 6], S34, 0x4881D05);
359
+ a = HH(a, b, c, d, x[k + 9], S31, 0xD9D4D039);
360
+ d = HH(d, a, b, c, x[k + 12], S32, 0xE6DB99E5);
361
+ c = HH(c, d, a, b, x[k + 15], S33, 0x1FA27CF8);
362
+ b = HH(b, c, d, a, x[k + 2], S34, 0xC4AC5665);
363
+ a = II(a, b, c, d, x[k + 0], S41, 0xF4292244);
364
+ d = II(d, a, b, c, x[k + 7], S42, 0x432AFF97);
365
+ c = II(c, d, a, b, x[k + 14], S43, 0xAB9423A7);
366
+ b = II(b, c, d, a, x[k + 5], S44, 0xFC93A039);
367
+ a = II(a, b, c, d, x[k + 12], S41, 0x655B59C3);
368
+ d = II(d, a, b, c, x[k + 3], S42, 0x8F0CCC92);
369
+ c = II(c, d, a, b, x[k + 10], S43, 0xFFEFF47D);
370
+ b = II(b, c, d, a, x[k + 1], S44, 0x85845DD1);
371
+ a = II(a, b, c, d, x[k + 8], S41, 0x6FA87E4F);
372
+ d = II(d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);
373
+ c = II(c, d, a, b, x[k + 6], S43, 0xA3014314);
374
+ b = II(b, c, d, a, x[k + 13], S44, 0x4E0811A1);
375
+ a = II(a, b, c, d, x[k + 4], S41, 0xF7537E82);
376
+ d = II(d, a, b, c, x[k + 11], S42, 0xBD3AF235);
377
+ c = II(c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);
378
+ b = II(b, c, d, a, x[k + 9], S44, 0xEB86D391);
379
+ a = AddUnsigned(a, AA);
380
+ b = AddUnsigned(b, BB);
381
+ c = AddUnsigned(c, CC);
382
+ d = AddUnsigned(d, DD);
383
+ }
384
+
385
+ var temp = WordToHex(a) + WordToHex(b) + WordToHex(c) + WordToHex(d);
386
+
387
+ return temp.toLowerCase();
388
+ };
389
+
390
+ _.utf8encode = function(string) {
391
+ string = string.replace(/\r\n/g,"\n");
392
+ var utftext = "";
393
+
394
+ for (var n = 0; n < string.length; n++) {
395
+
396
+ var c = string.charCodeAt(n);
397
+
398
+ if (c < 128) {
399
+ utftext += String.fromCharCode(c);
400
+ } else if((c > 127) && (c < 2048)) {
401
+ utftext += String.fromCharCode((c >> 6) | 192);
402
+ utftext += String.fromCharCode((c & 63) | 128);
403
+ } else {
404
+ utftext += String.fromCharCode((c >> 12) | 224);
405
+ utftext += String.fromCharCode(((c >> 6) & 63) | 128);
406
+ utftext += String.fromCharCode((c & 63) | 128);
407
+ }
408
+
409
+ }
410
+
411
+ return utftext;
412
+ };