boss-cms 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1029) hide show
  1. data/COPYING +16 -0
  2. data/README.rdoc +63 -0
  3. data/Rakefile +38 -0
  4. data/app/assets/images/boss/ajax-loader.gif +0 -0
  5. data/app/assets/images/boss/icons/Small Icons/accdb.ico +0 -0
  6. data/app/assets/images/boss/icons/Small Icons/avi.ico +0 -0
  7. data/app/assets/images/boss/icons/Small Icons/bmp.ico +0 -0
  8. data/app/assets/images/boss/icons/Small Icons/css.ico +0 -0
  9. data/app/assets/images/boss/icons/Small Icons/docx_mac.ico +0 -0
  10. data/app/assets/images/boss/icons/Small Icons/docx_win.ico +0 -0
  11. data/app/assets/images/boss/icons/Small Icons/eml.ico +0 -0
  12. data/app/assets/images/boss/icons/Small Icons/eps.ico +0 -0
  13. data/app/assets/images/boss/icons/Small Icons/fla.ico +0 -0
  14. data/app/assets/images/boss/icons/Small Icons/gif.ico +0 -0
  15. data/app/assets/images/boss/icons/Small Icons/html.ico +0 -0
  16. data/app/assets/images/boss/icons/Small Icons/ind.ico +0 -0
  17. data/app/assets/images/boss/icons/Small Icons/ini.ico +0 -0
  18. data/app/assets/images/boss/icons/Small Icons/jpeg.ico +0 -0
  19. data/app/assets/images/boss/icons/Small Icons/jsf.ico +0 -0
  20. data/app/assets/images/boss/icons/Small Icons/midi.ico +0 -0
  21. data/app/assets/images/boss/icons/Small Icons/mov.ico +0 -0
  22. data/app/assets/images/boss/icons/Small Icons/mp3.ico +0 -0
  23. data/app/assets/images/boss/icons/Small Icons/mpeg.ico +0 -0
  24. data/app/assets/images/boss/icons/Small Icons/pdf.ico +0 -0
  25. data/app/assets/images/boss/icons/Small Icons/png.ico +0 -0
  26. data/app/assets/images/boss/icons/Small Icons/pptx_mac.ico +0 -0
  27. data/app/assets/images/boss/icons/Small Icons/pptx_win.ico +0 -0
  28. data/app/assets/images/boss/icons/Small Icons/proj.ico +0 -0
  29. data/app/assets/images/boss/icons/Small Icons/psd.ico +0 -0
  30. data/app/assets/images/boss/icons/Small Icons/pst.ico +0 -0
  31. data/app/assets/images/boss/icons/Small Icons/pub.ico +0 -0
  32. data/app/assets/images/boss/icons/Small Icons/rar.ico +0 -0
  33. data/app/assets/images/boss/icons/Small Icons/readme.ico +0 -0
  34. data/app/assets/images/boss/icons/Small Icons/settings.ico +0 -0
  35. data/app/assets/images/boss/icons/Small Icons/text.ico +0 -0
  36. data/app/assets/images/boss/icons/Small Icons/tiff.ico +0 -0
  37. data/app/assets/images/boss/icons/Small Icons/url.ico +0 -0
  38. data/app/assets/images/boss/icons/Small Icons/vsd.ico +0 -0
  39. data/app/assets/images/boss/icons/Small Icons/wav.ico +0 -0
  40. data/app/assets/images/boss/icons/Small Icons/wma.ico +0 -0
  41. data/app/assets/images/boss/icons/Small Icons/wmv.ico +0 -0
  42. data/app/assets/images/boss/icons/Small Icons/xlsx_mac.ico +0 -0
  43. data/app/assets/images/boss/icons/Small Icons/xlsx_win.ico +0 -0
  44. data/app/assets/images/boss/icons/Small Icons/zip.ico +0 -0
  45. data/app/assets/images/boss/icons/accdb/accdb-128_32.png +0 -0
  46. data/app/assets/images/boss/icons/accdb/accdb-16_32.png +0 -0
  47. data/app/assets/images/boss/icons/accdb/accdb-24_32.png +0 -0
  48. data/app/assets/images/boss/icons/accdb/accdb-256_32.png +0 -0
  49. data/app/assets/images/boss/icons/accdb/accdb-32_32.png +0 -0
  50. data/app/assets/images/boss/icons/accdb/accdb-48_32.png +0 -0
  51. data/app/assets/images/boss/icons/accdb/accdb-64_32.png +0 -0
  52. data/app/assets/images/boss/icons/accdb/accdb-72_32.png +0 -0
  53. data/app/assets/images/boss/icons/accdb/accdb-80_32.png +0 -0
  54. data/app/assets/images/boss/icons/accdb/accdb-96_32.png +0 -0
  55. data/app/assets/images/boss/icons/accdb/accdb-sm-16_32.png +0 -0
  56. data/app/assets/images/boss/icons/accdb/accdb-sm-24_32.png +0 -0
  57. data/app/assets/images/boss/icons/accdb/accdb-sm-32_32.png +0 -0
  58. data/app/assets/images/boss/icons/accdb/accdb-sm.ico +0 -0
  59. data/app/assets/images/boss/icons/accdb/accdb.ico +0 -0
  60. data/app/assets/images/boss/icons/avi/avi-128_32.png +0 -0
  61. data/app/assets/images/boss/icons/avi/avi-16_32.png +0 -0
  62. data/app/assets/images/boss/icons/avi/avi-24_32.png +0 -0
  63. data/app/assets/images/boss/icons/avi/avi-256_32.png +0 -0
  64. data/app/assets/images/boss/icons/avi/avi-32_32.png +0 -0
  65. data/app/assets/images/boss/icons/avi/avi-48_32.png +0 -0
  66. data/app/assets/images/boss/icons/avi/avi-64_32.png +0 -0
  67. data/app/assets/images/boss/icons/avi/avi-72_32.png +0 -0
  68. data/app/assets/images/boss/icons/avi/avi-80_32.png +0 -0
  69. data/app/assets/images/boss/icons/avi/avi-96_32.png +0 -0
  70. data/app/assets/images/boss/icons/avi/avi-sm-16_32.png +0 -0
  71. data/app/assets/images/boss/icons/avi/avi-sm-24_32.png +0 -0
  72. data/app/assets/images/boss/icons/avi/avi-sm-32_32.png +0 -0
  73. data/app/assets/images/boss/icons/avi/avi-sm.ico +0 -0
  74. data/app/assets/images/boss/icons/avi/avi.icns +0 -0
  75. data/app/assets/images/boss/icons/avi/avi.ico +0 -0
  76. data/app/assets/images/boss/icons/bmp/bmp-128_32.png +0 -0
  77. data/app/assets/images/boss/icons/bmp/bmp-16_32.png +0 -0
  78. data/app/assets/images/boss/icons/bmp/bmp-24_32.png +0 -0
  79. data/app/assets/images/boss/icons/bmp/bmp-256_32.png +0 -0
  80. data/app/assets/images/boss/icons/bmp/bmp-32_32.png +0 -0
  81. data/app/assets/images/boss/icons/bmp/bmp-48_32.png +0 -0
  82. data/app/assets/images/boss/icons/bmp/bmp-64_32.png +0 -0
  83. data/app/assets/images/boss/icons/bmp/bmp-72_32.png +0 -0
  84. data/app/assets/images/boss/icons/bmp/bmp-80_32.png +0 -0
  85. data/app/assets/images/boss/icons/bmp/bmp-96_32.png +0 -0
  86. data/app/assets/images/boss/icons/bmp/bmp-sm-16_32.png +0 -0
  87. data/app/assets/images/boss/icons/bmp/bmp-sm-24_32.png +0 -0
  88. data/app/assets/images/boss/icons/bmp/bmp-sm-32_32.png +0 -0
  89. data/app/assets/images/boss/icons/bmp/bmp-sm.ico +0 -0
  90. data/app/assets/images/boss/icons/bmp/bmp.icns +0 -0
  91. data/app/assets/images/boss/icons/bmp/bmp.ico +0 -0
  92. data/app/assets/images/boss/icons/css/css-128_32.png +0 -0
  93. data/app/assets/images/boss/icons/css/css-16_32.png +0 -0
  94. data/app/assets/images/boss/icons/css/css-24_32.png +0 -0
  95. data/app/assets/images/boss/icons/css/css-256_32.png +0 -0
  96. data/app/assets/images/boss/icons/css/css-32_32.png +0 -0
  97. data/app/assets/images/boss/icons/css/css-48_32.png +0 -0
  98. data/app/assets/images/boss/icons/css/css-64_32.png +0 -0
  99. data/app/assets/images/boss/icons/css/css-72_32.png +0 -0
  100. data/app/assets/images/boss/icons/css/css-80_32.png +0 -0
  101. data/app/assets/images/boss/icons/css/css-96_32.png +0 -0
  102. data/app/assets/images/boss/icons/css/css-sm-16_32.png +0 -0
  103. data/app/assets/images/boss/icons/css/css-sm-24_32.png +0 -0
  104. data/app/assets/images/boss/icons/css/css-sm-32_32.png +0 -0
  105. data/app/assets/images/boss/icons/css/css-sm.ico +0 -0
  106. data/app/assets/images/boss/icons/css/css.icns +0 -0
  107. data/app/assets/images/boss/icons/css/css.ico +0 -0
  108. data/app/assets/images/boss/icons/docx_mac/docx_mac-128_32.png +0 -0
  109. data/app/assets/images/boss/icons/docx_mac/docx_mac-16_32.png +0 -0
  110. data/app/assets/images/boss/icons/docx_mac/docx_mac-24_32.png +0 -0
  111. data/app/assets/images/boss/icons/docx_mac/docx_mac-256_32.png +0 -0
  112. data/app/assets/images/boss/icons/docx_mac/docx_mac-32_32.png +0 -0
  113. data/app/assets/images/boss/icons/docx_mac/docx_mac-48_32.png +0 -0
  114. data/app/assets/images/boss/icons/docx_mac/docx_mac-64_32.png +0 -0
  115. data/app/assets/images/boss/icons/docx_mac/docx_mac-72_32.png +0 -0
  116. data/app/assets/images/boss/icons/docx_mac/docx_mac-80_32.png +0 -0
  117. data/app/assets/images/boss/icons/docx_mac/docx_mac-96_32.png +0 -0
  118. data/app/assets/images/boss/icons/docx_mac/docx_mac-sm-16_32.png +0 -0
  119. data/app/assets/images/boss/icons/docx_mac/docx_mac-sm-24_32.png +0 -0
  120. data/app/assets/images/boss/icons/docx_mac/docx_mac-sm-32_32.png +0 -0
  121. data/app/assets/images/boss/icons/docx_mac/docx_mac-sm.ico +0 -0
  122. data/app/assets/images/boss/icons/docx_mac/docx_mac.icns +0 -0
  123. data/app/assets/images/boss/icons/docx_mac/docx_mac.ico +0 -0
  124. data/app/assets/images/boss/icons/docx_win/docx_win-128_32.png +0 -0
  125. data/app/assets/images/boss/icons/docx_win/docx_win-16_32.png +0 -0
  126. data/app/assets/images/boss/icons/docx_win/docx_win-24_32.png +0 -0
  127. data/app/assets/images/boss/icons/docx_win/docx_win-256_32.png +0 -0
  128. data/app/assets/images/boss/icons/docx_win/docx_win-32_32.png +0 -0
  129. data/app/assets/images/boss/icons/docx_win/docx_win-48_32.png +0 -0
  130. data/app/assets/images/boss/icons/docx_win/docx_win-64_32.png +0 -0
  131. data/app/assets/images/boss/icons/docx_win/docx_win-72_32.png +0 -0
  132. data/app/assets/images/boss/icons/docx_win/docx_win-80_32.png +0 -0
  133. data/app/assets/images/boss/icons/docx_win/docx_win-96_32.png +0 -0
  134. data/app/assets/images/boss/icons/docx_win/docx_win-sm-16_32.png +0 -0
  135. data/app/assets/images/boss/icons/docx_win/docx_win-sm-24_32.png +0 -0
  136. data/app/assets/images/boss/icons/docx_win/docx_win-sm-32_32.png +0 -0
  137. data/app/assets/images/boss/icons/docx_win/docx_win-sm.ico +0 -0
  138. data/app/assets/images/boss/icons/docx_win/docx_win.ico +0 -0
  139. data/app/assets/images/boss/icons/eml/eml-128_32.png +0 -0
  140. data/app/assets/images/boss/icons/eml/eml-16_32.png +0 -0
  141. data/app/assets/images/boss/icons/eml/eml-24_32.png +0 -0
  142. data/app/assets/images/boss/icons/eml/eml-256_32.png +0 -0
  143. data/app/assets/images/boss/icons/eml/eml-32_32.png +0 -0
  144. data/app/assets/images/boss/icons/eml/eml-48_32.png +0 -0
  145. data/app/assets/images/boss/icons/eml/eml-64_32.png +0 -0
  146. data/app/assets/images/boss/icons/eml/eml-72_32.png +0 -0
  147. data/app/assets/images/boss/icons/eml/eml-80_32.png +0 -0
  148. data/app/assets/images/boss/icons/eml/eml-96_32.png +0 -0
  149. data/app/assets/images/boss/icons/eml/eml-sm-16_32.png +0 -0
  150. data/app/assets/images/boss/icons/eml/eml-sm-24_32.png +0 -0
  151. data/app/assets/images/boss/icons/eml/eml-sm-32_32.png +0 -0
  152. data/app/assets/images/boss/icons/eml/eml-sm.ico +0 -0
  153. data/app/assets/images/boss/icons/eml/eml.icns +0 -0
  154. data/app/assets/images/boss/icons/eml/eml.ico +0 -0
  155. data/app/assets/images/boss/icons/eps/eps-128_32.png +0 -0
  156. data/app/assets/images/boss/icons/eps/eps-16_32.png +0 -0
  157. data/app/assets/images/boss/icons/eps/eps-24_32.png +0 -0
  158. data/app/assets/images/boss/icons/eps/eps-256_32.png +0 -0
  159. data/app/assets/images/boss/icons/eps/eps-32_32.png +0 -0
  160. data/app/assets/images/boss/icons/eps/eps-48_32.png +0 -0
  161. data/app/assets/images/boss/icons/eps/eps-64_32.png +0 -0
  162. data/app/assets/images/boss/icons/eps/eps-72_32.png +0 -0
  163. data/app/assets/images/boss/icons/eps/eps-80_32.png +0 -0
  164. data/app/assets/images/boss/icons/eps/eps-96_32.png +0 -0
  165. data/app/assets/images/boss/icons/eps/eps-sm-16_32.png +0 -0
  166. data/app/assets/images/boss/icons/eps/eps-sm-24_32.png +0 -0
  167. data/app/assets/images/boss/icons/eps/eps-sm-32_32.png +0 -0
  168. data/app/assets/images/boss/icons/eps/eps-sm.ico +0 -0
  169. data/app/assets/images/boss/icons/eps/eps.icns +0 -0
  170. data/app/assets/images/boss/icons/eps/eps.ico +0 -0
  171. data/app/assets/images/boss/icons/fla/fla-128_32.png +0 -0
  172. data/app/assets/images/boss/icons/fla/fla-16_32.png +0 -0
  173. data/app/assets/images/boss/icons/fla/fla-24_32.png +0 -0
  174. data/app/assets/images/boss/icons/fla/fla-256_32.png +0 -0
  175. data/app/assets/images/boss/icons/fla/fla-32_32.png +0 -0
  176. data/app/assets/images/boss/icons/fla/fla-48_32.png +0 -0
  177. data/app/assets/images/boss/icons/fla/fla-64_32.png +0 -0
  178. data/app/assets/images/boss/icons/fla/fla-72_32.png +0 -0
  179. data/app/assets/images/boss/icons/fla/fla-80_32.png +0 -0
  180. data/app/assets/images/boss/icons/fla/fla-96_32.png +0 -0
  181. data/app/assets/images/boss/icons/fla/fla-sm-16_32.png +0 -0
  182. data/app/assets/images/boss/icons/fla/fla-sm-24_32.png +0 -0
  183. data/app/assets/images/boss/icons/fla/fla-sm-32_32.png +0 -0
  184. data/app/assets/images/boss/icons/fla/fla-sm.ico +0 -0
  185. data/app/assets/images/boss/icons/fla/fla.icns +0 -0
  186. data/app/assets/images/boss/icons/fla/fla.ico +0 -0
  187. data/app/assets/images/boss/icons/gif/gif-128_32.png +0 -0
  188. data/app/assets/images/boss/icons/gif/gif-16_32.png +0 -0
  189. data/app/assets/images/boss/icons/gif/gif-24_32.png +0 -0
  190. data/app/assets/images/boss/icons/gif/gif-256_32.png +0 -0
  191. data/app/assets/images/boss/icons/gif/gif-32_32.png +0 -0
  192. data/app/assets/images/boss/icons/gif/gif-48_32.png +0 -0
  193. data/app/assets/images/boss/icons/gif/gif-64_32.png +0 -0
  194. data/app/assets/images/boss/icons/gif/gif-72_32.png +0 -0
  195. data/app/assets/images/boss/icons/gif/gif-80_32.png +0 -0
  196. data/app/assets/images/boss/icons/gif/gif-96_32.png +0 -0
  197. data/app/assets/images/boss/icons/gif/gif-sm-16_32.png +0 -0
  198. data/app/assets/images/boss/icons/gif/gif-sm-24_32.png +0 -0
  199. data/app/assets/images/boss/icons/gif/gif-sm-32_32.png +0 -0
  200. data/app/assets/images/boss/icons/gif/gif-sm.ico +0 -0
  201. data/app/assets/images/boss/icons/gif/gif.icns +0 -0
  202. data/app/assets/images/boss/icons/gif/gif.ico +0 -0
  203. data/app/assets/images/boss/icons/html/html-128_32.png +0 -0
  204. data/app/assets/images/boss/icons/html/html-16_32.png +0 -0
  205. data/app/assets/images/boss/icons/html/html-24_32.png +0 -0
  206. data/app/assets/images/boss/icons/html/html-256_32.png +0 -0
  207. data/app/assets/images/boss/icons/html/html-32_32.png +0 -0
  208. data/app/assets/images/boss/icons/html/html-48_32.png +0 -0
  209. data/app/assets/images/boss/icons/html/html-64_32.png +0 -0
  210. data/app/assets/images/boss/icons/html/html-72_32.png +0 -0
  211. data/app/assets/images/boss/icons/html/html-80_32.png +0 -0
  212. data/app/assets/images/boss/icons/html/html-96_32.png +0 -0
  213. data/app/assets/images/boss/icons/html/html-sm-16_32.png +0 -0
  214. data/app/assets/images/boss/icons/html/html-sm-24_32.png +0 -0
  215. data/app/assets/images/boss/icons/html/html-sm-32_32.png +0 -0
  216. data/app/assets/images/boss/icons/html/html-sm.ico +0 -0
  217. data/app/assets/images/boss/icons/html/html.icns +0 -0
  218. data/app/assets/images/boss/icons/html/html.ico +0 -0
  219. data/app/assets/images/boss/icons/ind/ind-128_32.png +0 -0
  220. data/app/assets/images/boss/icons/ind/ind-16_32.png +0 -0
  221. data/app/assets/images/boss/icons/ind/ind-24_32.png +0 -0
  222. data/app/assets/images/boss/icons/ind/ind-256_32.png +0 -0
  223. data/app/assets/images/boss/icons/ind/ind-32_32.png +0 -0
  224. data/app/assets/images/boss/icons/ind/ind-48_32.png +0 -0
  225. data/app/assets/images/boss/icons/ind/ind-64_32.png +0 -0
  226. data/app/assets/images/boss/icons/ind/ind-72_32.png +0 -0
  227. data/app/assets/images/boss/icons/ind/ind-80_32.png +0 -0
  228. data/app/assets/images/boss/icons/ind/ind-96_32.png +0 -0
  229. data/app/assets/images/boss/icons/ind/ind-sm-16_32.png +0 -0
  230. data/app/assets/images/boss/icons/ind/ind-sm-24_32.png +0 -0
  231. data/app/assets/images/boss/icons/ind/ind-sm-32_32.png +0 -0
  232. data/app/assets/images/boss/icons/ind/ind-sm.ico +0 -0
  233. data/app/assets/images/boss/icons/ind/ind.icns +0 -0
  234. data/app/assets/images/boss/icons/ind/ind.ico +0 -0
  235. data/app/assets/images/boss/icons/ini/ini-128_32.png +0 -0
  236. data/app/assets/images/boss/icons/ini/ini-16_32.png +0 -0
  237. data/app/assets/images/boss/icons/ini/ini-24_32.png +0 -0
  238. data/app/assets/images/boss/icons/ini/ini-256_32.png +0 -0
  239. data/app/assets/images/boss/icons/ini/ini-32_32.png +0 -0
  240. data/app/assets/images/boss/icons/ini/ini-48_32.png +0 -0
  241. data/app/assets/images/boss/icons/ini/ini-64_32.png +0 -0
  242. data/app/assets/images/boss/icons/ini/ini-72_32.png +0 -0
  243. data/app/assets/images/boss/icons/ini/ini-80_32.png +0 -0
  244. data/app/assets/images/boss/icons/ini/ini-96_32.png +0 -0
  245. data/app/assets/images/boss/icons/ini/ini-sm-16_32.png +0 -0
  246. data/app/assets/images/boss/icons/ini/ini-sm-24_32.png +0 -0
  247. data/app/assets/images/boss/icons/ini/ini-sm-32_32.png +0 -0
  248. data/app/assets/images/boss/icons/ini/ini-sm.ico +0 -0
  249. data/app/assets/images/boss/icons/ini/ini.icns +0 -0
  250. data/app/assets/images/boss/icons/ini/ini.ico +0 -0
  251. data/app/assets/images/boss/icons/jpeg/jpeg-128_32.png +0 -0
  252. data/app/assets/images/boss/icons/jpeg/jpeg-16_32.png +0 -0
  253. data/app/assets/images/boss/icons/jpeg/jpeg-24_32.png +0 -0
  254. data/app/assets/images/boss/icons/jpeg/jpeg-256_32.png +0 -0
  255. data/app/assets/images/boss/icons/jpeg/jpeg-32_32.png +0 -0
  256. data/app/assets/images/boss/icons/jpeg/jpeg-48_32.png +0 -0
  257. data/app/assets/images/boss/icons/jpeg/jpeg-64_32.png +0 -0
  258. data/app/assets/images/boss/icons/jpeg/jpeg-72_32.png +0 -0
  259. data/app/assets/images/boss/icons/jpeg/jpeg-80_32.png +0 -0
  260. data/app/assets/images/boss/icons/jpeg/jpeg-96_32.png +0 -0
  261. data/app/assets/images/boss/icons/jpeg/jpeg-sm-16_32.png +0 -0
  262. data/app/assets/images/boss/icons/jpeg/jpeg-sm-24_32.png +0 -0
  263. data/app/assets/images/boss/icons/jpeg/jpeg-sm-32_32.png +0 -0
  264. data/app/assets/images/boss/icons/jpeg/jpeg-sm.ico +0 -0
  265. data/app/assets/images/boss/icons/jpeg/jpeg.icns +0 -0
  266. data/app/assets/images/boss/icons/jpeg/jpeg.ico +0 -0
  267. data/app/assets/images/boss/icons/jsf/jsf-128_32.png +0 -0
  268. data/app/assets/images/boss/icons/jsf/jsf-16_32.png +0 -0
  269. data/app/assets/images/boss/icons/jsf/jsf-24_32.png +0 -0
  270. data/app/assets/images/boss/icons/jsf/jsf-256_32.png +0 -0
  271. data/app/assets/images/boss/icons/jsf/jsf-32_32.png +0 -0
  272. data/app/assets/images/boss/icons/jsf/jsf-48_32.png +0 -0
  273. data/app/assets/images/boss/icons/jsf/jsf-64_32.png +0 -0
  274. data/app/assets/images/boss/icons/jsf/jsf-72_32.png +0 -0
  275. data/app/assets/images/boss/icons/jsf/jsf-80_32.png +0 -0
  276. data/app/assets/images/boss/icons/jsf/jsf-96_32.png +0 -0
  277. data/app/assets/images/boss/icons/jsf/jsf-sm-16_32.png +0 -0
  278. data/app/assets/images/boss/icons/jsf/jsf-sm-24_32.png +0 -0
  279. data/app/assets/images/boss/icons/jsf/jsf-sm-32_32.png +0 -0
  280. data/app/assets/images/boss/icons/jsf/jsf-sm.ico +0 -0
  281. data/app/assets/images/boss/icons/jsf/jsf.icns +0 -0
  282. data/app/assets/images/boss/icons/jsf/jsf.ico +0 -0
  283. data/app/assets/images/boss/icons/midi/midi-128_32.png +0 -0
  284. data/app/assets/images/boss/icons/midi/midi-16_32.png +0 -0
  285. data/app/assets/images/boss/icons/midi/midi-24_32.png +0 -0
  286. data/app/assets/images/boss/icons/midi/midi-256_32.png +0 -0
  287. data/app/assets/images/boss/icons/midi/midi-32_32.png +0 -0
  288. data/app/assets/images/boss/icons/midi/midi-48_32.png +0 -0
  289. data/app/assets/images/boss/icons/midi/midi-64_32.png +0 -0
  290. data/app/assets/images/boss/icons/midi/midi-72_32.png +0 -0
  291. data/app/assets/images/boss/icons/midi/midi-80_32.png +0 -0
  292. data/app/assets/images/boss/icons/midi/midi-96_32.png +0 -0
  293. data/app/assets/images/boss/icons/midi/midi-sm-16_32.png +0 -0
  294. data/app/assets/images/boss/icons/midi/midi-sm-24_32.png +0 -0
  295. data/app/assets/images/boss/icons/midi/midi-sm-32_32.png +0 -0
  296. data/app/assets/images/boss/icons/midi/midi-sm.ico +0 -0
  297. data/app/assets/images/boss/icons/midi/midi.icns +0 -0
  298. data/app/assets/images/boss/icons/midi/midi.ico +0 -0
  299. data/app/assets/images/boss/icons/mov/mov-128_32.png +0 -0
  300. data/app/assets/images/boss/icons/mov/mov-16_32.png +0 -0
  301. data/app/assets/images/boss/icons/mov/mov-24_32.png +0 -0
  302. data/app/assets/images/boss/icons/mov/mov-256_32.png +0 -0
  303. data/app/assets/images/boss/icons/mov/mov-32_32.png +0 -0
  304. data/app/assets/images/boss/icons/mov/mov-48_32.png +0 -0
  305. data/app/assets/images/boss/icons/mov/mov-64_32.png +0 -0
  306. data/app/assets/images/boss/icons/mov/mov-72_32.png +0 -0
  307. data/app/assets/images/boss/icons/mov/mov-80_32.png +0 -0
  308. data/app/assets/images/boss/icons/mov/mov-96_32.png +0 -0
  309. data/app/assets/images/boss/icons/mov/mov-sm-16_32.png +0 -0
  310. data/app/assets/images/boss/icons/mov/mov-sm-24_32.png +0 -0
  311. data/app/assets/images/boss/icons/mov/mov-sm-32_32.png +0 -0
  312. data/app/assets/images/boss/icons/mov/mov-sm.ico +0 -0
  313. data/app/assets/images/boss/icons/mov/mov.icns +0 -0
  314. data/app/assets/images/boss/icons/mov/mov.ico +0 -0
  315. data/app/assets/images/boss/icons/mp3/mp3-128_32.png +0 -0
  316. data/app/assets/images/boss/icons/mp3/mp3-16_32.png +0 -0
  317. data/app/assets/images/boss/icons/mp3/mp3-24_32.png +0 -0
  318. data/app/assets/images/boss/icons/mp3/mp3-256_32.png +0 -0
  319. data/app/assets/images/boss/icons/mp3/mp3-32_32.png +0 -0
  320. data/app/assets/images/boss/icons/mp3/mp3-48_32.png +0 -0
  321. data/app/assets/images/boss/icons/mp3/mp3-64_32.png +0 -0
  322. data/app/assets/images/boss/icons/mp3/mp3-72_32.png +0 -0
  323. data/app/assets/images/boss/icons/mp3/mp3-80_32.png +0 -0
  324. data/app/assets/images/boss/icons/mp3/mp3-96_32.png +0 -0
  325. data/app/assets/images/boss/icons/mp3/mp3-sm-16_32.png +0 -0
  326. data/app/assets/images/boss/icons/mp3/mp3-sm-24_32.png +0 -0
  327. data/app/assets/images/boss/icons/mp3/mp3-sm-32_32.png +0 -0
  328. data/app/assets/images/boss/icons/mp3/mp3-sm.ico +0 -0
  329. data/app/assets/images/boss/icons/mp3/mp3.icns +0 -0
  330. data/app/assets/images/boss/icons/mp3/mp3.ico +0 -0
  331. data/app/assets/images/boss/icons/mpeg/mpeg-128_32.png +0 -0
  332. data/app/assets/images/boss/icons/mpeg/mpeg-16_32.png +0 -0
  333. data/app/assets/images/boss/icons/mpeg/mpeg-24_32.png +0 -0
  334. data/app/assets/images/boss/icons/mpeg/mpeg-256_32.png +0 -0
  335. data/app/assets/images/boss/icons/mpeg/mpeg-32_32.png +0 -0
  336. data/app/assets/images/boss/icons/mpeg/mpeg-48_32.png +0 -0
  337. data/app/assets/images/boss/icons/mpeg/mpeg-64_32.png +0 -0
  338. data/app/assets/images/boss/icons/mpeg/mpeg-72_32.png +0 -0
  339. data/app/assets/images/boss/icons/mpeg/mpeg-80_32.png +0 -0
  340. data/app/assets/images/boss/icons/mpeg/mpeg-96_32.png +0 -0
  341. data/app/assets/images/boss/icons/mpeg/mpeg-sm-16_32.png +0 -0
  342. data/app/assets/images/boss/icons/mpeg/mpeg-sm-24_32.png +0 -0
  343. data/app/assets/images/boss/icons/mpeg/mpeg-sm-32_32.png +0 -0
  344. data/app/assets/images/boss/icons/mpeg/mpeg-sm.ico +0 -0
  345. data/app/assets/images/boss/icons/mpeg/mpeg.icns +0 -0
  346. data/app/assets/images/boss/icons/mpeg/mpeg.ico +0 -0
  347. data/app/assets/images/boss/icons/pdf/pdf-128_32.png +0 -0
  348. data/app/assets/images/boss/icons/pdf/pdf-16_32.png +0 -0
  349. data/app/assets/images/boss/icons/pdf/pdf-24_32.png +0 -0
  350. data/app/assets/images/boss/icons/pdf/pdf-256_32.png +0 -0
  351. data/app/assets/images/boss/icons/pdf/pdf-32_32.png +0 -0
  352. data/app/assets/images/boss/icons/pdf/pdf-48_32.png +0 -0
  353. data/app/assets/images/boss/icons/pdf/pdf-64_32.png +0 -0
  354. data/app/assets/images/boss/icons/pdf/pdf-72_32.png +0 -0
  355. data/app/assets/images/boss/icons/pdf/pdf-80_32.png +0 -0
  356. data/app/assets/images/boss/icons/pdf/pdf-96_32.png +0 -0
  357. data/app/assets/images/boss/icons/pdf/pdf-sm-16_32.png +0 -0
  358. data/app/assets/images/boss/icons/pdf/pdf-sm-24_32.png +0 -0
  359. data/app/assets/images/boss/icons/pdf/pdf-sm-32_32.png +0 -0
  360. data/app/assets/images/boss/icons/pdf/pdf-sm.ico +0 -0
  361. data/app/assets/images/boss/icons/pdf/pdf.icns +0 -0
  362. data/app/assets/images/boss/icons/pdf/pdf.ico +0 -0
  363. data/app/assets/images/boss/icons/png/png-128_32.png +0 -0
  364. data/app/assets/images/boss/icons/png/png-16_32.png +0 -0
  365. data/app/assets/images/boss/icons/png/png-24_32.png +0 -0
  366. data/app/assets/images/boss/icons/png/png-256_32.png +0 -0
  367. data/app/assets/images/boss/icons/png/png-32_32.png +0 -0
  368. data/app/assets/images/boss/icons/png/png-48_32.png +0 -0
  369. data/app/assets/images/boss/icons/png/png-64_32.png +0 -0
  370. data/app/assets/images/boss/icons/png/png-72_32.png +0 -0
  371. data/app/assets/images/boss/icons/png/png-80_32.png +0 -0
  372. data/app/assets/images/boss/icons/png/png-96_32.png +0 -0
  373. data/app/assets/images/boss/icons/png/png-sm-16_32.png +0 -0
  374. data/app/assets/images/boss/icons/png/png-sm-24_32.png +0 -0
  375. data/app/assets/images/boss/icons/png/png-sm-32_32.png +0 -0
  376. data/app/assets/images/boss/icons/png/png-sm.ico +0 -0
  377. data/app/assets/images/boss/icons/png/png.icns +0 -0
  378. data/app/assets/images/boss/icons/png/png.ico +0 -0
  379. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-128_32.png +0 -0
  380. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-16_32.png +0 -0
  381. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-24_32.png +0 -0
  382. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-256_32.png +0 -0
  383. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-32_32.png +0 -0
  384. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-48_32.png +0 -0
  385. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-64_32.png +0 -0
  386. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-72_32.png +0 -0
  387. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-80_32.png +0 -0
  388. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-96_32.png +0 -0
  389. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-sm-16_32.png +0 -0
  390. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-sm-24_32.png +0 -0
  391. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-sm-32_32.png +0 -0
  392. data/app/assets/images/boss/icons/pptx_mac/pptx_mac-sm.ico +0 -0
  393. data/app/assets/images/boss/icons/pptx_mac/pptx_mac.icns +0 -0
  394. data/app/assets/images/boss/icons/pptx_mac/pptx_mac.ico +0 -0
  395. data/app/assets/images/boss/icons/pptx_win/pptx_win-128_32.png +0 -0
  396. data/app/assets/images/boss/icons/pptx_win/pptx_win-16_32.png +0 -0
  397. data/app/assets/images/boss/icons/pptx_win/pptx_win-24_32.png +0 -0
  398. data/app/assets/images/boss/icons/pptx_win/pptx_win-256_32.png +0 -0
  399. data/app/assets/images/boss/icons/pptx_win/pptx_win-32_32.png +0 -0
  400. data/app/assets/images/boss/icons/pptx_win/pptx_win-48_32.png +0 -0
  401. data/app/assets/images/boss/icons/pptx_win/pptx_win-64_32.png +0 -0
  402. data/app/assets/images/boss/icons/pptx_win/pptx_win-72_32.png +0 -0
  403. data/app/assets/images/boss/icons/pptx_win/pptx_win-80_32.png +0 -0
  404. data/app/assets/images/boss/icons/pptx_win/pptx_win-96_32.png +0 -0
  405. data/app/assets/images/boss/icons/pptx_win/pptx_win-sm-16_32.png +0 -0
  406. data/app/assets/images/boss/icons/pptx_win/pptx_win-sm-24_32.png +0 -0
  407. data/app/assets/images/boss/icons/pptx_win/pptx_win-sm-32_32.png +0 -0
  408. data/app/assets/images/boss/icons/pptx_win/pptx_win-sm.ico +0 -0
  409. data/app/assets/images/boss/icons/pptx_win/pptx_win.ico +0 -0
  410. data/app/assets/images/boss/icons/proj/proj-128_32.png +0 -0
  411. data/app/assets/images/boss/icons/proj/proj-16_32.png +0 -0
  412. data/app/assets/images/boss/icons/proj/proj-24_32.png +0 -0
  413. data/app/assets/images/boss/icons/proj/proj-256_32.png +0 -0
  414. data/app/assets/images/boss/icons/proj/proj-32_32.png +0 -0
  415. data/app/assets/images/boss/icons/proj/proj-48_32.png +0 -0
  416. data/app/assets/images/boss/icons/proj/proj-64_32.png +0 -0
  417. data/app/assets/images/boss/icons/proj/proj-72_32.png +0 -0
  418. data/app/assets/images/boss/icons/proj/proj-80_32.png +0 -0
  419. data/app/assets/images/boss/icons/proj/proj-96_32.png +0 -0
  420. data/app/assets/images/boss/icons/proj/proj-sm-16_32.png +0 -0
  421. data/app/assets/images/boss/icons/proj/proj-sm-24_32.png +0 -0
  422. data/app/assets/images/boss/icons/proj/proj-sm-32_32.png +0 -0
  423. data/app/assets/images/boss/icons/proj/proj-sm.ico +0 -0
  424. data/app/assets/images/boss/icons/proj/proj.icns +0 -0
  425. data/app/assets/images/boss/icons/proj/proj.ico +0 -0
  426. data/app/assets/images/boss/icons/psd/psd-128_32.png +0 -0
  427. data/app/assets/images/boss/icons/psd/psd-16_32.png +0 -0
  428. data/app/assets/images/boss/icons/psd/psd-24_32.png +0 -0
  429. data/app/assets/images/boss/icons/psd/psd-256_32.png +0 -0
  430. data/app/assets/images/boss/icons/psd/psd-32_32.png +0 -0
  431. data/app/assets/images/boss/icons/psd/psd-48_32.png +0 -0
  432. data/app/assets/images/boss/icons/psd/psd-64_32.png +0 -0
  433. data/app/assets/images/boss/icons/psd/psd-72_32.png +0 -0
  434. data/app/assets/images/boss/icons/psd/psd-80_32.png +0 -0
  435. data/app/assets/images/boss/icons/psd/psd-96_32.png +0 -0
  436. data/app/assets/images/boss/icons/psd/psd-sm-16_32.png +0 -0
  437. data/app/assets/images/boss/icons/psd/psd-sm-24_32.png +0 -0
  438. data/app/assets/images/boss/icons/psd/psd-sm-32_32.png +0 -0
  439. data/app/assets/images/boss/icons/psd/psd-sm.ico +0 -0
  440. data/app/assets/images/boss/icons/psd/psd.icns +0 -0
  441. data/app/assets/images/boss/icons/psd/psd.ico +0 -0
  442. data/app/assets/images/boss/icons/pst/pst-128_32.png +0 -0
  443. data/app/assets/images/boss/icons/pst/pst-16_32.png +0 -0
  444. data/app/assets/images/boss/icons/pst/pst-24_32.png +0 -0
  445. data/app/assets/images/boss/icons/pst/pst-256_32.png +0 -0
  446. data/app/assets/images/boss/icons/pst/pst-32_32.png +0 -0
  447. data/app/assets/images/boss/icons/pst/pst-48_32.png +0 -0
  448. data/app/assets/images/boss/icons/pst/pst-64_32.png +0 -0
  449. data/app/assets/images/boss/icons/pst/pst-72_32.png +0 -0
  450. data/app/assets/images/boss/icons/pst/pst-80_32.png +0 -0
  451. data/app/assets/images/boss/icons/pst/pst-96_32.png +0 -0
  452. data/app/assets/images/boss/icons/pst/pst-sm-16_32.png +0 -0
  453. data/app/assets/images/boss/icons/pst/pst-sm-24_32.png +0 -0
  454. data/app/assets/images/boss/icons/pst/pst-sm-32_32.png +0 -0
  455. data/app/assets/images/boss/icons/pst/pst-sm.ico +0 -0
  456. data/app/assets/images/boss/icons/pst/pst.ico +0 -0
  457. data/app/assets/images/boss/icons/pub/pub-128_32.png +0 -0
  458. data/app/assets/images/boss/icons/pub/pub-16_32.png +0 -0
  459. data/app/assets/images/boss/icons/pub/pub-24_32.png +0 -0
  460. data/app/assets/images/boss/icons/pub/pub-256_32.png +0 -0
  461. data/app/assets/images/boss/icons/pub/pub-32_32.png +0 -0
  462. data/app/assets/images/boss/icons/pub/pub-48_32.png +0 -0
  463. data/app/assets/images/boss/icons/pub/pub-64_32.png +0 -0
  464. data/app/assets/images/boss/icons/pub/pub-72_32.png +0 -0
  465. data/app/assets/images/boss/icons/pub/pub-80_32.png +0 -0
  466. data/app/assets/images/boss/icons/pub/pub-96_32.png +0 -0
  467. data/app/assets/images/boss/icons/pub/pub-sm-16_32.png +0 -0
  468. data/app/assets/images/boss/icons/pub/pub-sm-24_32.png +0 -0
  469. data/app/assets/images/boss/icons/pub/pub-sm-32_32.png +0 -0
  470. data/app/assets/images/boss/icons/pub/pub-sm.ico +0 -0
  471. data/app/assets/images/boss/icons/pub/pub.ico +0 -0
  472. data/app/assets/images/boss/icons/rar/rar-128_32.png +0 -0
  473. data/app/assets/images/boss/icons/rar/rar-16_32.png +0 -0
  474. data/app/assets/images/boss/icons/rar/rar-24_32.png +0 -0
  475. data/app/assets/images/boss/icons/rar/rar-256_32.png +0 -0
  476. data/app/assets/images/boss/icons/rar/rar-32_32.png +0 -0
  477. data/app/assets/images/boss/icons/rar/rar-48_32.png +0 -0
  478. data/app/assets/images/boss/icons/rar/rar-64_32.png +0 -0
  479. data/app/assets/images/boss/icons/rar/rar-72_32.png +0 -0
  480. data/app/assets/images/boss/icons/rar/rar-80_32.png +0 -0
  481. data/app/assets/images/boss/icons/rar/rar-96_32.png +0 -0
  482. data/app/assets/images/boss/icons/rar/rar-sm-16_32.png +0 -0
  483. data/app/assets/images/boss/icons/rar/rar-sm-24_32.png +0 -0
  484. data/app/assets/images/boss/icons/rar/rar-sm-32_32.png +0 -0
  485. data/app/assets/images/boss/icons/rar/rar-sm.ico +0 -0
  486. data/app/assets/images/boss/icons/rar/rar.ico +0 -0
  487. data/app/assets/images/boss/icons/readme/readme-128_32.png +0 -0
  488. data/app/assets/images/boss/icons/readme/readme-16_32.png +0 -0
  489. data/app/assets/images/boss/icons/readme/readme-24_32.png +0 -0
  490. data/app/assets/images/boss/icons/readme/readme-256_32.png +0 -0
  491. data/app/assets/images/boss/icons/readme/readme-32_32.png +0 -0
  492. data/app/assets/images/boss/icons/readme/readme-48_32.png +0 -0
  493. data/app/assets/images/boss/icons/readme/readme-64_32.png +0 -0
  494. data/app/assets/images/boss/icons/readme/readme-72_32.png +0 -0
  495. data/app/assets/images/boss/icons/readme/readme-80_32.png +0 -0
  496. data/app/assets/images/boss/icons/readme/readme-96_32.png +0 -0
  497. data/app/assets/images/boss/icons/readme/readme-sm-16_32.png +0 -0
  498. data/app/assets/images/boss/icons/readme/readme-sm-24_32.png +0 -0
  499. data/app/assets/images/boss/icons/readme/readme-sm-32_32.png +0 -0
  500. data/app/assets/images/boss/icons/readme/readme-sm.ico +0 -0
  501. data/app/assets/images/boss/icons/readme/readme.icns +0 -0
  502. data/app/assets/images/boss/icons/readme/readme.ico +0 -0
  503. data/app/assets/images/boss/icons/settings/settings-128_32.png +0 -0
  504. data/app/assets/images/boss/icons/settings/settings-16_32.png +0 -0
  505. data/app/assets/images/boss/icons/settings/settings-24_32.png +0 -0
  506. data/app/assets/images/boss/icons/settings/settings-256_32.png +0 -0
  507. data/app/assets/images/boss/icons/settings/settings-32_32.png +0 -0
  508. data/app/assets/images/boss/icons/settings/settings-48_32.png +0 -0
  509. data/app/assets/images/boss/icons/settings/settings-64_32.png +0 -0
  510. data/app/assets/images/boss/icons/settings/settings-72_32.png +0 -0
  511. data/app/assets/images/boss/icons/settings/settings-80_32.png +0 -0
  512. data/app/assets/images/boss/icons/settings/settings-96_32.png +0 -0
  513. data/app/assets/images/boss/icons/settings/settings-sm-16_32.png +0 -0
  514. data/app/assets/images/boss/icons/settings/settings-sm-24_32.png +0 -0
  515. data/app/assets/images/boss/icons/settings/settings-sm-32_32.png +0 -0
  516. data/app/assets/images/boss/icons/settings/settings-sm.ico +0 -0
  517. data/app/assets/images/boss/icons/settings/settings.icns +0 -0
  518. data/app/assets/images/boss/icons/settings/settings.ico +0 -0
  519. data/app/assets/images/boss/icons/text/text-128_32.png +0 -0
  520. data/app/assets/images/boss/icons/text/text-16_32.png +0 -0
  521. data/app/assets/images/boss/icons/text/text-24_32.png +0 -0
  522. data/app/assets/images/boss/icons/text/text-256_32.png +0 -0
  523. data/app/assets/images/boss/icons/text/text-32_32.png +0 -0
  524. data/app/assets/images/boss/icons/text/text-48_32.png +0 -0
  525. data/app/assets/images/boss/icons/text/text-64_32.png +0 -0
  526. data/app/assets/images/boss/icons/text/text-72_32.png +0 -0
  527. data/app/assets/images/boss/icons/text/text-80_32.png +0 -0
  528. data/app/assets/images/boss/icons/text/text-96_32.png +0 -0
  529. data/app/assets/images/boss/icons/text/text-sm-16_32.png +0 -0
  530. data/app/assets/images/boss/icons/text/text-sm-24_32.png +0 -0
  531. data/app/assets/images/boss/icons/text/text-sm-32_32.png +0 -0
  532. data/app/assets/images/boss/icons/text/text-sm.ico +0 -0
  533. data/app/assets/images/boss/icons/text/text.icns +0 -0
  534. data/app/assets/images/boss/icons/text/text.ico +0 -0
  535. data/app/assets/images/boss/icons/tiff/tiff-128_32.png +0 -0
  536. data/app/assets/images/boss/icons/tiff/tiff-16_32.png +0 -0
  537. data/app/assets/images/boss/icons/tiff/tiff-24_32.png +0 -0
  538. data/app/assets/images/boss/icons/tiff/tiff-256_32.png +0 -0
  539. data/app/assets/images/boss/icons/tiff/tiff-32_32.png +0 -0
  540. data/app/assets/images/boss/icons/tiff/tiff-48_32.png +0 -0
  541. data/app/assets/images/boss/icons/tiff/tiff-64_32.png +0 -0
  542. data/app/assets/images/boss/icons/tiff/tiff-72_32.png +0 -0
  543. data/app/assets/images/boss/icons/tiff/tiff-80_32.png +0 -0
  544. data/app/assets/images/boss/icons/tiff/tiff-96_32.png +0 -0
  545. data/app/assets/images/boss/icons/tiff/tiff-sm-16_32.png +0 -0
  546. data/app/assets/images/boss/icons/tiff/tiff-sm-24_32.png +0 -0
  547. data/app/assets/images/boss/icons/tiff/tiff-sm-32_32.png +0 -0
  548. data/app/assets/images/boss/icons/tiff/tiff-sm.ico +0 -0
  549. data/app/assets/images/boss/icons/tiff/tiff.icns +0 -0
  550. data/app/assets/images/boss/icons/tiff/tiff.ico +0 -0
  551. data/app/assets/images/boss/icons/url/url-128_32.png +0 -0
  552. data/app/assets/images/boss/icons/url/url-16_32.png +0 -0
  553. data/app/assets/images/boss/icons/url/url-24_32.png +0 -0
  554. data/app/assets/images/boss/icons/url/url-256_32.png +0 -0
  555. data/app/assets/images/boss/icons/url/url-32_32.png +0 -0
  556. data/app/assets/images/boss/icons/url/url-48_32.png +0 -0
  557. data/app/assets/images/boss/icons/url/url-64_32.png +0 -0
  558. data/app/assets/images/boss/icons/url/url-72_32.png +0 -0
  559. data/app/assets/images/boss/icons/url/url-80_32.png +0 -0
  560. data/app/assets/images/boss/icons/url/url-96_32.png +0 -0
  561. data/app/assets/images/boss/icons/url/url-sm-16_32.png +0 -0
  562. data/app/assets/images/boss/icons/url/url-sm-24_32.png +0 -0
  563. data/app/assets/images/boss/icons/url/url-sm-32_32.png +0 -0
  564. data/app/assets/images/boss/icons/url/url-sm.ico +0 -0
  565. data/app/assets/images/boss/icons/url/url.icns +0 -0
  566. data/app/assets/images/boss/icons/url/url.ico +0 -0
  567. data/app/assets/images/boss/icons/vsd/vsd-128_32.png +0 -0
  568. data/app/assets/images/boss/icons/vsd/vsd-16_32.png +0 -0
  569. data/app/assets/images/boss/icons/vsd/vsd-24_32.png +0 -0
  570. data/app/assets/images/boss/icons/vsd/vsd-256_32.png +0 -0
  571. data/app/assets/images/boss/icons/vsd/vsd-32_32.png +0 -0
  572. data/app/assets/images/boss/icons/vsd/vsd-48_32.png +0 -0
  573. data/app/assets/images/boss/icons/vsd/vsd-64_32.png +0 -0
  574. data/app/assets/images/boss/icons/vsd/vsd-72_32.png +0 -0
  575. data/app/assets/images/boss/icons/vsd/vsd-80_32.png +0 -0
  576. data/app/assets/images/boss/icons/vsd/vsd-96_32.png +0 -0
  577. data/app/assets/images/boss/icons/vsd/vsd-sm-16_32.png +0 -0
  578. data/app/assets/images/boss/icons/vsd/vsd-sm-24_32.png +0 -0
  579. data/app/assets/images/boss/icons/vsd/vsd-sm-32_32.png +0 -0
  580. data/app/assets/images/boss/icons/vsd/vsd-sm.ico +0 -0
  581. data/app/assets/images/boss/icons/vsd/vsd.ico +0 -0
  582. data/app/assets/images/boss/icons/wav/wav-128_32.png +0 -0
  583. data/app/assets/images/boss/icons/wav/wav-16_32.png +0 -0
  584. data/app/assets/images/boss/icons/wav/wav-24_32.png +0 -0
  585. data/app/assets/images/boss/icons/wav/wav-256_32.png +0 -0
  586. data/app/assets/images/boss/icons/wav/wav-32_32.png +0 -0
  587. data/app/assets/images/boss/icons/wav/wav-48_32.png +0 -0
  588. data/app/assets/images/boss/icons/wav/wav-64_32.png +0 -0
  589. data/app/assets/images/boss/icons/wav/wav-72_32.png +0 -0
  590. data/app/assets/images/boss/icons/wav/wav-80_32.png +0 -0
  591. data/app/assets/images/boss/icons/wav/wav-96_32.png +0 -0
  592. data/app/assets/images/boss/icons/wav/wav-sm-16_32.png +0 -0
  593. data/app/assets/images/boss/icons/wav/wav-sm-24_32.png +0 -0
  594. data/app/assets/images/boss/icons/wav/wav-sm-32_32.png +0 -0
  595. data/app/assets/images/boss/icons/wav/wav-sm.ico +0 -0
  596. data/app/assets/images/boss/icons/wav/wav.icns +0 -0
  597. data/app/assets/images/boss/icons/wav/wav.ico +0 -0
  598. data/app/assets/images/boss/icons/wma/wma-128_32.png +0 -0
  599. data/app/assets/images/boss/icons/wma/wma-16_32.png +0 -0
  600. data/app/assets/images/boss/icons/wma/wma-24_32.png +0 -0
  601. data/app/assets/images/boss/icons/wma/wma-256_32.png +0 -0
  602. data/app/assets/images/boss/icons/wma/wma-32_32.png +0 -0
  603. data/app/assets/images/boss/icons/wma/wma-48_32.png +0 -0
  604. data/app/assets/images/boss/icons/wma/wma-64_32.png +0 -0
  605. data/app/assets/images/boss/icons/wma/wma-72_32.png +0 -0
  606. data/app/assets/images/boss/icons/wma/wma-80_32.png +0 -0
  607. data/app/assets/images/boss/icons/wma/wma-96_32.png +0 -0
  608. data/app/assets/images/boss/icons/wma/wma-sm-16_32.png +0 -0
  609. data/app/assets/images/boss/icons/wma/wma-sm-24_32.png +0 -0
  610. data/app/assets/images/boss/icons/wma/wma-sm-32_32.png +0 -0
  611. data/app/assets/images/boss/icons/wma/wma-sm.ico +0 -0
  612. data/app/assets/images/boss/icons/wma/wma.icns +0 -0
  613. data/app/assets/images/boss/icons/wma/wma.ico +0 -0
  614. data/app/assets/images/boss/icons/wmv/wmv-128_32.png +0 -0
  615. data/app/assets/images/boss/icons/wmv/wmv-16_32.png +0 -0
  616. data/app/assets/images/boss/icons/wmv/wmv-24_32.png +0 -0
  617. data/app/assets/images/boss/icons/wmv/wmv-256_32.png +0 -0
  618. data/app/assets/images/boss/icons/wmv/wmv-32_32.png +0 -0
  619. data/app/assets/images/boss/icons/wmv/wmv-48_32.png +0 -0
  620. data/app/assets/images/boss/icons/wmv/wmv-64_32.png +0 -0
  621. data/app/assets/images/boss/icons/wmv/wmv-72_32.png +0 -0
  622. data/app/assets/images/boss/icons/wmv/wmv-80_32.png +0 -0
  623. data/app/assets/images/boss/icons/wmv/wmv-96_32.png +0 -0
  624. data/app/assets/images/boss/icons/wmv/wmv-sm-16_32.png +0 -0
  625. data/app/assets/images/boss/icons/wmv/wmv-sm-24_32.png +0 -0
  626. data/app/assets/images/boss/icons/wmv/wmv-sm-32_32.png +0 -0
  627. data/app/assets/images/boss/icons/wmv/wmv-sm.ico +0 -0
  628. data/app/assets/images/boss/icons/wmv/wmv.icns +0 -0
  629. data/app/assets/images/boss/icons/wmv/wmv.ico +0 -0
  630. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-128_32.png +0 -0
  631. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-16_32.png +0 -0
  632. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-24_32.png +0 -0
  633. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-256_32.png +0 -0
  634. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-32_32.png +0 -0
  635. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-48_32.png +0 -0
  636. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-64_32.png +0 -0
  637. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-72_32.png +0 -0
  638. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-80_32.png +0 -0
  639. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-96_32.png +0 -0
  640. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-sm-16_32.png +0 -0
  641. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-sm-24_32.png +0 -0
  642. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-sm-32_32.png +0 -0
  643. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac-sm.ico +0 -0
  644. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac.icns +0 -0
  645. data/app/assets/images/boss/icons/xlsx_mac/xlsx_mac.ico +0 -0
  646. data/app/assets/images/boss/icons/xlsx_win/xlsx-win.ico +0 -0
  647. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-128_32.png +0 -0
  648. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-16_32.png +0 -0
  649. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-24_32.png +0 -0
  650. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-256_32.png +0 -0
  651. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-32_32.png +0 -0
  652. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-48_32.png +0 -0
  653. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-64_32.png +0 -0
  654. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-72_32.png +0 -0
  655. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-80_32.png +0 -0
  656. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-96_32.png +0 -0
  657. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-sm-16_32.png +0 -0
  658. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-sm-24_32.png +0 -0
  659. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-sm-32_32.png +0 -0
  660. data/app/assets/images/boss/icons/xlsx_win/xlsx_win-sm.ico +0 -0
  661. data/app/assets/images/boss/icons/zip/zip-128_32.png +0 -0
  662. data/app/assets/images/boss/icons/zip/zip-16_32.png +0 -0
  663. data/app/assets/images/boss/icons/zip/zip-24_32.png +0 -0
  664. data/app/assets/images/boss/icons/zip/zip-256_32.png +0 -0
  665. data/app/assets/images/boss/icons/zip/zip-32_32.png +0 -0
  666. data/app/assets/images/boss/icons/zip/zip-48_32.png +0 -0
  667. data/app/assets/images/boss/icons/zip/zip-64_32.png +0 -0
  668. data/app/assets/images/boss/icons/zip/zip-72_32.png +0 -0
  669. data/app/assets/images/boss/icons/zip/zip-80_32.png +0 -0
  670. data/app/assets/images/boss/icons/zip/zip-96_32.png +0 -0
  671. data/app/assets/images/boss/icons/zip/zip-sm-16_32.png +0 -0
  672. data/app/assets/images/boss/icons/zip/zip-sm-24_32.png +0 -0
  673. data/app/assets/images/boss/icons/zip/zip-sm-32_32.png +0 -0
  674. data/app/assets/images/boss/icons/zip/zip-sm.ico +0 -0
  675. data/app/assets/images/boss/icons/zip/zip.icns +0 -0
  676. data/app/assets/images/boss/icons/zip/zip.ico +0 -0
  677. data/app/assets/javascripts/boss.js +25 -0
  678. data/app/assets/javascripts/boss/banners.js.coffee +14 -0
  679. data/app/assets/javascripts/boss/better-pagination.js.coffee +84 -0
  680. data/app/assets/javascripts/boss/posts.js.coffee.erb +42 -0
  681. data/app/assets/javascripts/boss/resources.js.coffee.erb +13 -0
  682. data/app/assets/javascripts/boss/utils.js.coffee +17 -0
  683. data/app/assets/javascripts/datepicker-locales/jquery.ui.datepicker-en-GB.js +23 -0
  684. data/app/assets/javascripts/datepicker-locales/jquery.ui.datepicker-pt-BR.js +23 -0
  685. data/app/assets/javascripts/jQueryFileUpload/jquery.fileupload-fp.js +219 -0
  686. data/app/assets/javascripts/jQueryFileUpload/jquery.fileupload-ui.js +736 -0
  687. data/app/assets/javascripts/jQueryFileUpload/jquery.fileupload.js +975 -0
  688. data/app/assets/javascripts/jQueryFileUpload/jquery.iframe-transport.js +172 -0
  689. data/app/assets/javascripts/jQueryFileUpload/load-image.min.js +1 -0
  690. data/app/assets/javascripts/jQueryFileUpload/locale.js +29 -0
  691. data/app/assets/javascripts/jQueryFileUpload/tmpl.min.js +1 -0
  692. data/app/assets/javascripts/jquery-ui-1.8.23.custom.min.js +9 -0
  693. data/app/assets/javascripts/redactor/langs/bg.js +67 -0
  694. data/app/assets/javascripts/redactor/langs/by.js +65 -0
  695. data/app/assets/javascripts/redactor/langs/cs.js +77 -0
  696. data/app/assets/javascripts/redactor/langs/de.js +70 -0
  697. data/app/assets/javascripts/redactor/langs/en.js +66 -0
  698. data/app/assets/javascripts/redactor/langs/es.js +66 -0
  699. data/app/assets/javascripts/redactor/langs/fi.js +69 -0
  700. data/app/assets/javascripts/redactor/langs/fr.js +76 -0
  701. data/app/assets/javascripts/redactor/langs/hr.js +69 -0
  702. data/app/assets/javascripts/redactor/langs/hu.js +67 -0
  703. data/app/assets/javascripts/redactor/langs/it.js +68 -0
  704. data/app/assets/javascripts/redactor/langs/ja.js +66 -0
  705. data/app/assets/javascripts/redactor/langs/ko.js +66 -0
  706. data/app/assets/javascripts/redactor/langs/lv.js +65 -0
  707. data/app/assets/javascripts/redactor/langs/nl.js +69 -0
  708. data/app/assets/javascripts/redactor/langs/pl.js +66 -0
  709. data/app/assets/javascripts/redactor/langs/pt_br.js +72 -0
  710. data/app/assets/javascripts/redactor/langs/ru.js +66 -0
  711. data/app/assets/javascripts/redactor/langs/sk.js +66 -0
  712. data/app/assets/javascripts/redactor/langs/sq.js +69 -0
  713. data/app/assets/javascripts/redactor/langs/tr.js +66 -0
  714. data/app/assets/javascripts/redactor/langs/ua.js +67 -0
  715. data/app/assets/javascripts/redactor/langs/zh_cn.js +67 -0
  716. data/app/assets/javascripts/redactor/redactor.js +3254 -0
  717. data/app/assets/javascripts/redactor/redactor.min.js +1 -0
  718. data/app/assets/javascripts/slides/slides.jquery.js +555 -0
  719. data/app/assets/javascripts/slides/slides.min.jquery.js +20 -0
  720. data/app/assets/javascripts/yepnope.1.5.4-min.js +2 -0
  721. data/app/assets/stylesheets/boss.css +15 -0
  722. data/app/assets/stylesheets/boss/structure.sass +14 -0
  723. data/app/assets/stylesheets/boss/style.sass +15 -0
  724. data/app/assets/stylesheets/jQueryFileUpload/jquery.fileupload-ui.css +84 -0
  725. data/app/assets/stylesheets/redactor.css +13 -0
  726. data/app/assets/stylesheets/redactor/css/docstyle.css +139 -0
  727. data/app/assets/stylesheets/redactor/css/redactor.css +409 -0
  728. data/app/assets/stylesheets/redactor/css/style.css +135 -0
  729. data/app/assets/stylesheets/redactor/css/wym.css +151 -0
  730. data/app/assets/stylesheets/redactor/img/icons.png +0 -0
  731. data/app/assets/stylesheets/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  732. data/app/assets/stylesheets/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  733. data/app/assets/stylesheets/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  734. data/app/assets/stylesheets/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  735. data/app/assets/stylesheets/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  736. data/app/assets/stylesheets/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  737. data/app/assets/stylesheets/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  738. data/app/assets/stylesheets/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  739. data/app/assets/stylesheets/smoothness/images/ui-icons_222222_256x240.png +0 -0
  740. data/app/assets/stylesheets/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  741. data/app/assets/stylesheets/smoothness/images/ui-icons_454545_256x240.png +0 -0
  742. data/app/assets/stylesheets/smoothness/images/ui-icons_888888_256x240.png +0 -0
  743. data/app/assets/stylesheets/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  744. data/app/assets/stylesheets/smoothness/jquery-ui-1.8.23.custom.css +563 -0
  745. data/app/controllers/boss/admin/application_controller.rb +14 -0
  746. data/app/controllers/boss/admin/banners_controller.rb +19 -0
  747. data/app/controllers/boss/admin/posts_controller.rb +14 -0
  748. data/app/controllers/boss/admin/resources_controller.rb +44 -0
  749. data/app/controllers/boss/application_controller.rb +2 -0
  750. data/app/controllers/boss/posts_controller.rb +86 -0
  751. data/app/controllers/boss/resources_controller.rb +33 -0
  752. data/app/helpers/boss/application_helper.rb +23 -0
  753. data/app/models/boss/banner.rb +28 -0
  754. data/app/models/boss/category.rb +5 -0
  755. data/app/models/boss/post.rb +20 -0
  756. data/app/models/boss/resource.rb +52 -0
  757. data/app/views/boss/admin/banners/new.html.erb +38 -0
  758. data/app/views/boss/admin/posts/_post.html.erb +8 -0
  759. data/app/views/boss/admin/posts/index.html.erb +3 -0
  760. data/app/views/boss/admin/resources/_resource.html.erb +5 -0
  761. data/app/views/boss/admin/resources/_upload.html.erb +22 -0
  762. data/app/views/boss/admin/resources/index.html.erb +75 -0
  763. data/app/views/boss/banners/_banner_viewer.html.erb +14 -0
  764. data/app/views/boss/posts/_footer.html.erb +7 -0
  765. data/app/views/boss/posts/_header.html.erb +3 -0
  766. data/app/views/boss/posts/_meta.html.erb +1 -0
  767. data/app/views/boss/posts/_post.html.erb +4 -0
  768. data/app/views/boss/posts/archive.html.erb +0 -0
  769. data/app/views/boss/posts/edit.html.erb +18 -0
  770. data/app/views/boss/posts/index.html.erb +11 -0
  771. data/app/views/boss/posts/new.html.erb +24 -0
  772. data/app/views/boss/posts/show.html.erb +11 -0
  773. data/app/views/layouts/admin.html.erb +21 -0
  774. data/app/views/layouts/application.html.erb +21 -0
  775. data/config/initializers/add_stuff_to_main_app.rb +32 -0
  776. data/config/initializers/generate_post_tmpl.rb +7 -0
  777. data/config/initializers/load_config.rb +3 -0
  778. data/config/locales/controllers/banners/en.yml +5 -0
  779. data/config/locales/controllers/posts/en.yml +5 -0
  780. data/config/locales/models/banners/en.yml +3 -0
  781. data/config/locales/models/posts/en.yml +3 -0
  782. data/config/locales/views/banners/form/en.yml +9 -0
  783. data/config/locales/views/banners/form/pt.yml +9 -0
  784. data/config/locales/views/pagination/en.yml +8 -0
  785. data/config/locales/views/posts/new/en.yml +8 -0
  786. data/config/locales/views/posts/post/en.yml +9 -0
  787. data/config/locales/views/posts/publish/en.yml +5 -0
  788. data/config/locales/views/resources/form/en.yml +5 -0
  789. data/config/posts_config.yml +1 -0
  790. data/config/resource_styles.yml +2 -0
  791. data/config/resources_config.yml +1 -0
  792. data/config/routes.rb +39 -0
  793. data/db/migrate/20120624233540_create_boss_posts.rb +12 -0
  794. data/db/migrate/20120706130424_create_resources_table.rb +10 -0
  795. data/db/migrate/20120706155028_add_content_type_index_to_resources.rb +5 -0
  796. data/db/migrate/20120810095209_add_extension_column_to_resources.rb +8 -0
  797. data/db/migrate/20120810170007_change_start_date_to_published_date.rb +5 -0
  798. data/db/migrate/20120814163213_create_banners.rb +11 -0
  799. data/db/migrate/20120903112923_create_categories.rb +18 -0
  800. data/db/migrate/20120907014143_acts_as_taggable_on_migration.rb +30 -0
  801. data/db/seeds.rb +8 -0
  802. data/lib/boss.rb +5 -0
  803. data/lib/boss/engine.rb +11 -0
  804. data/lib/boss/pagination.rb +26 -0
  805. data/lib/boss/post_generator.rb +32 -0
  806. data/lib/boss/version.rb +3 -0
  807. data/lib/tasks/boss_tasks.rake +4 -0
  808. data/spec/dummy/README.rdoc +261 -0
  809. data/spec/dummy/Rakefile +17 -0
  810. data/spec/dummy/app/assets/javascripts/application.js +17 -0
  811. data/spec/dummy/app/assets/stylesheets/application.css +14 -0
  812. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  813. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  814. data/spec/dummy/app/views/layouts/application.html.erb +19 -0
  815. data/spec/dummy/config.ru +4 -0
  816. data/spec/dummy/config/accounts.yml +3 -0
  817. data/spec/dummy/config/application.rb +59 -0
  818. data/spec/dummy/config/boot.rb +10 -0
  819. data/spec/dummy/config/cucumber.yml +8 -0
  820. data/spec/dummy/config/database.yml +28 -0
  821. data/spec/dummy/config/environment.rb +5 -0
  822. data/spec/dummy/config/environments/development.rb +39 -0
  823. data/spec/dummy/config/environments/production.rb +67 -0
  824. data/spec/dummy/config/environments/test.rb +37 -0
  825. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  826. data/spec/dummy/config/initializers/inflections.rb +15 -0
  827. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  828. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  829. data/spec/dummy/config/initializers/session_store.rb +8 -0
  830. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  831. data/spec/dummy/config/locales/en.yml +5 -0
  832. data/spec/dummy/config/routes.rb +3 -0
  833. data/spec/dummy/db/development.sqlite3 +0 -0
  834. data/spec/dummy/db/migrate/20120712230935_devise_create_users.citygate.rb +50 -0
  835. data/spec/dummy/db/migrate/20120712230936_add_name_to_users.citygate.rb +7 -0
  836. data/spec/dummy/db/migrate/20120712230937_add_confirmable_to_users.citygate.rb +12 -0
  837. data/spec/dummy/db/migrate/20120712230938_devise_invitable_add_to_users.citygate.rb +24 -0
  838. data/spec/dummy/db/migrate/20120712230939_add_omniauth_to_devise.citygate.rb +20 -0
  839. data/spec/dummy/db/migrate/20120712230940_create_roles.citygate.rb +11 -0
  840. data/spec/dummy/db/migrate/20120712230950_create_boss_posts.boss.rb +13 -0
  841. data/spec/dummy/db/migrate/20120712230951_create_resources_table.boss.rb +11 -0
  842. data/spec/dummy/db/migrate/20120712230952_add_content_type_index_to_resources.boss.rb +6 -0
  843. data/spec/dummy/db/migrate/20120727151629_create_permissions_table.citygate.rb +13 -0
  844. data/spec/dummy/db/migrate/20120810095503_add_extension_column_to_resources.boss.rb +9 -0
  845. data/spec/dummy/db/migrate/20120810170148_change_start_date_to_published_date.boss.rb +6 -0
  846. data/spec/dummy/db/migrate/20120814170416_create_banners.boss.rb +12 -0
  847. data/spec/dummy/db/migrate/20120903135116_create_categories.boss.rb +19 -0
  848. data/spec/dummy/db/migrate/20120907014721_acts_as_taggable_on_migration.boss.rb +31 -0
  849. data/spec/dummy/db/migrate/20121008164320_add_conditions_to_permissions.citygate.rb +6 -0
  850. data/spec/dummy/db/production.sqlite3 +0 -0
  851. data/spec/dummy/db/schema.rb +134 -0
  852. data/spec/dummy/db/seeds.rb +2 -0
  853. data/spec/dummy/db/test.sqlite3 +0 -0
  854. data/spec/dummy/features/support/env.rb +59 -0
  855. data/spec/dummy/lib/ability.rb +26 -0
  856. data/spec/dummy/lib/tasks/cucumber.rake +65 -0
  857. data/spec/dummy/log/development.log +148449 -0
  858. data/spec/dummy/log/production.log +2 -0
  859. data/spec/dummy/log/test.log +82744 -0
  860. data/spec/dummy/public/404.html +26 -0
  861. data/spec/dummy/public/422.html +26 -0
  862. data/spec/dummy/public/500.html +25 -0
  863. data/spec/dummy/public/favicon.ico +0 -0
  864. data/spec/dummy/public/system/boss/resources/resources/000/000/001/original/basketball.pdf +0 -0
  865. data/spec/dummy/public/system/boss/resources/resources/000/000/001/original/computer_0050.jpg +0 -0
  866. data/spec/dummy/public/system/boss/resources/resources/000/000/001/original/gb_logo100.png +0 -0
  867. data/spec/dummy/public/system/boss/resources/resources/000/000/002/original/basketball.pdf +0 -0
  868. data/spec/dummy/public/system/boss/resources/resources/000/000/002/original/computer_0050.jpg +0 -0
  869. data/spec/dummy/public/system/boss/resources/resources/000/000/002/original/example_file.txt +3 -0
  870. data/spec/dummy/public/system/boss/resources/resources/000/000/003/original/computer_0050.jpg +0 -0
  871. data/spec/dummy/public/system/boss/resources/resources/000/000/003/original/example_file.txt +3 -0
  872. data/spec/dummy/public/system/boss/resources/resources/000/000/004/original/example_file.txt +3 -0
  873. data/spec/dummy/public/system/boss/resources/resources/000/000/004/original/gb_logo100.png +0 -0
  874. data/spec/dummy/public/system/resources/1/original/56883622_18f242e114_b.jpg +0 -0
  875. data/spec/dummy/public/system/resources/1/original/basketball.pdf +0 -0
  876. data/spec/dummy/public/system/resources/1/original/computer_0050.jpg +0 -0
  877. data/spec/dummy/public/system/resources/10/original/1310855824664.jpg +0 -0
  878. data/spec/dummy/public/system/resources/2/original/1310855824664.jpg +0 -0
  879. data/spec/dummy/public/system/resources/2/original/basketball.pdf +0 -0
  880. data/spec/dummy/public/system/resources/2/original/computer_0050.jpg +0 -0
  881. data/spec/dummy/public/system/resources/3/original/1310856290635.jpg +0 -0
  882. data/spec/dummy/public/system/resources/4/original/1310856399167.jpg +0 -0
  883. data/spec/dummy/public/system/resources/5/original/158_7915_0.jpg +0 -0
  884. data/spec/dummy/public/system/resources/6/original/1310855824664.jpg +0 -0
  885. data/spec/dummy/public/system/resources/7/original/1310856290635.jpg +0 -0
  886. data/spec/dummy/public/system/resources/8/original/1310855824664.jpg +0 -0
  887. data/spec/dummy/public/system/resources/9/original/2257284249_4620b85e05.jpg +0 -0
  888. data/spec/dummy/script/cucumber +10 -0
  889. data/spec/dummy/script/rails +6 -0
  890. data/spec/dummy/spec/controllers/admin/banners_controller_spec.rb +41 -0
  891. data/spec/dummy/spec/controllers/admin/posts_controller_spec.rb +11 -0
  892. data/spec/dummy/spec/controllers/admin/resources_controller_spec.rb +33 -0
  893. data/spec/dummy/spec/controllers/posts_controller_spec.rb +171 -0
  894. data/spec/dummy/spec/controllers/resources_controller_spec.rb +49 -0
  895. data/spec/dummy/spec/fixtures/boss_banners.yml +17 -0
  896. data/spec/dummy/spec/fixtures/boss_posts.yml +14 -0
  897. data/spec/dummy/spec/fixtures/citygate_users.yml +16 -0
  898. data/spec/dummy/spec/fixtures/files/basketball.pdf +0 -0
  899. data/spec/dummy/spec/fixtures/files/computer_0050.jpg +0 -0
  900. data/spec/dummy/spec/helpers/boss_application_helper_spec.rb +23 -0
  901. data/spec/dummy/spec/models/banners_spec.rb +24 -0
  902. data/spec/dummy/spec/models/posts_spec.rb +41 -0
  903. data/spec/dummy/spec/models/resource_spec.rb +60 -0
  904. data/spec/dummy/spec/routing/routing_spec.rb +61 -0
  905. data/spec/dummy/spec/spec_helper.rb +42 -0
  906. data/spec/dummy/tmp/cache/assets/BC2/850/sprockets%2F878400110743687d61711159c65f8c22 +0 -0
  907. data/spec/dummy/tmp/cache/assets/C24/520/sprockets%2F2f3a8489d25374d44119141585f115e5 +0 -0
  908. data/spec/dummy/tmp/cache/assets/C40/030/sprockets%2F54436c0d13893197751ee6999856ad68 +0 -0
  909. data/spec/dummy/tmp/cache/assets/C53/0E0/sprockets%2F121790135397621ab7af6984cb91566b +0 -0
  910. data/spec/dummy/tmp/cache/assets/C5A/5F0/sprockets%2F52259544bea2a61627b95987a6d86044 +0 -0
  911. data/spec/dummy/tmp/cache/assets/C5D/7D0/sprockets%2Faa929f78240346438e0086eca2977087 +0 -0
  912. data/spec/dummy/tmp/cache/assets/C63/E40/sprockets%2F36a675f52eb281488964b58be8971051 +0 -0
  913. data/spec/dummy/tmp/cache/assets/C6F/580/sprockets%2F22851f7af64e526bab14507232230e55 +0 -0
  914. data/spec/dummy/tmp/cache/assets/C72/B10/sprockets%2F21a4b8118f1f4254bf815e306027b951 +0 -0
  915. data/spec/dummy/tmp/cache/assets/C79/470/sprockets%2F7247bad709a775b6100a0864e463e704 +0 -0
  916. data/spec/dummy/tmp/cache/assets/C79/600/sprockets%2F3b480b741c938623c715006562f7a5bd +0 -0
  917. data/spec/dummy/tmp/cache/assets/C7A/C80/sprockets%2Fd520714793fb36dc6631414827206ade +0 -0
  918. data/spec/dummy/tmp/cache/assets/C88/300/sprockets%2F423f0a9f7a3b8f3395957d890e105900 +0 -0
  919. data/spec/dummy/tmp/cache/assets/C89/540/sprockets%2F606a455261f8f047c994c4b9a582f126 +0 -0
  920. data/spec/dummy/tmp/cache/assets/C90/E00/sprockets%2F0e5cc463f8d36795635981b11d9819c1 +0 -0
  921. data/spec/dummy/tmp/cache/assets/C92/F90/sprockets%2F920438082fee7d6098e3cd0278b49287 +0 -0
  922. data/spec/dummy/tmp/cache/assets/CA2/A80/sprockets%2F7b2db319590bc1c8134a3e338e604506 +0 -0
  923. data/spec/dummy/tmp/cache/assets/CA6/B10/sprockets%2F3111836e637405cf7106ecf0d37c70a7 +0 -0
  924. data/spec/dummy/tmp/cache/assets/CA8/F30/sprockets%2Fd74b20422f5218a62a02c7f48628d83d +0 -0
  925. data/spec/dummy/tmp/cache/assets/CAD/200/sprockets%2F50793597dc52344a9e10c12a79b264ea +0 -0
  926. data/spec/dummy/tmp/cache/assets/CAD/860/sprockets%2Fd73482fc43b147c1c401c2569dd92393 +0 -0
  927. data/spec/dummy/tmp/cache/assets/CAF/7B0/sprockets%2F9143406f63303f9fd28ab3658e161a4e +0 -0
  928. data/spec/dummy/tmp/cache/assets/CAF/FD0/sprockets%2F6026648844c17c73d917e3cda02d08a7 +0 -0
  929. data/spec/dummy/tmp/cache/assets/CB5/850/sprockets%2F011afbabcc10d620043300f28f499101 +0 -0
  930. data/spec/dummy/tmp/cache/assets/CB8/120/sprockets%2F46e2c48936a7976a3cb1f04aa8571278 +0 -0
  931. data/spec/dummy/tmp/cache/assets/CB9/940/sprockets%2Fd292ab0519813823cf786f6f620c4e94 +0 -0
  932. data/spec/dummy/tmp/cache/assets/CBF/370/sprockets%2F4e92e9ef55274628e8a46a27f23196b0 +0 -0
  933. data/spec/dummy/tmp/cache/assets/CC5/020/sprockets%2Ffa39f3f719158fea829829617391b42c +0 -0
  934. data/spec/dummy/tmp/cache/assets/CCF/230/sprockets%2F75a20a5e4f06832a4224a5f4a6314d8d +0 -0
  935. data/spec/dummy/tmp/cache/assets/CD5/180/sprockets%2F1e035230c4b6e464f1146973f0c7bc5e +0 -0
  936. data/spec/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
  937. data/spec/dummy/tmp/cache/assets/CD9/C70/sprockets%2Fb120f38a079fa9924c79c7a8101d53c0 +0 -0
  938. data/spec/dummy/tmp/cache/assets/CD9/CC0/sprockets%2F0c3ccc56507dd6594d72265d72c0318a +0 -0
  939. data/spec/dummy/tmp/cache/assets/CDA/3C0/sprockets%2F7413c4409dccf4fb698a42d020c02688 +0 -0
  940. data/spec/dummy/tmp/cache/assets/CDE/400/sprockets%2F58e8203723604e6bde11c0eb480c85f9 +0 -0
  941. data/spec/dummy/tmp/cache/assets/CDF/140/sprockets%2Fb5f8e1000e499f4b6787017ce16322af +0 -0
  942. data/spec/dummy/tmp/cache/assets/CE1/400/sprockets%2F25fe90052e1eaac8751c1960196d865d +0 -0
  943. data/spec/dummy/tmp/cache/assets/CE1/760/sprockets%2F6485f6d500193d364be392c118e4ebd5 +0 -0
  944. data/spec/dummy/tmp/cache/assets/CE3/150/sprockets%2F7d7a09e1df5c7510266a8d752683c4b3 +0 -0
  945. data/spec/dummy/tmp/cache/assets/CE6/D70/sprockets%2Fdf419b464fb39e134b7354fb933e0565 +0 -0
  946. data/spec/dummy/tmp/cache/assets/CE8/510/sprockets%2F0d85ab6e3972f70636a990e91fec8301 +0 -0
  947. data/spec/dummy/tmp/cache/assets/CE8/830/sprockets%2Fbc45b7ec3697c73450861834ee1336de +0 -0
  948. data/spec/dummy/tmp/cache/assets/CE9/5C0/sprockets%2Fdbe1c3a9e49d07916422e46149e8f318 +0 -0
  949. data/spec/dummy/tmp/cache/assets/CEF/C10/sprockets%2Fee370705f1ec41a8f49d30066798ef67 +0 -0
  950. data/spec/dummy/tmp/cache/assets/CF6/600/sprockets%2Fbcad79f4640490fa8743c56693e4e794 +0 -0
  951. data/spec/dummy/tmp/cache/assets/CF9/DB0/sprockets%2F2c0c81d15b23ec2123be4e299b047d42 +0 -0
  952. data/spec/dummy/tmp/cache/assets/CFA/080/sprockets%2F332a10f033129bd16ecfc2d9fc629023 +0 -0
  953. data/spec/dummy/tmp/cache/assets/D00/6D0/sprockets%2Fbb3256f3c4232c8a34543ae1f82e165b +0 -0
  954. data/spec/dummy/tmp/cache/assets/D00/980/sprockets%2Fe4eaa22e351f850345723ac2429c2f5b +0 -0
  955. data/spec/dummy/tmp/cache/assets/D07/3E0/sprockets%2Fbc15323161b84e2c1764d726aec772fd +0 -0
  956. data/spec/dummy/tmp/cache/assets/D0C/870/sprockets%2F47b59bc508d38b0709f3be16ccd12572 +0 -0
  957. data/spec/dummy/tmp/cache/assets/D0D/DE0/sprockets%2Fa35442f02b0b2479f22d83d639d8c4fd +0 -0
  958. data/spec/dummy/tmp/cache/assets/D10/870/sprockets%2F113a9b82b3ca5f41b5c9dac767646881 +0 -0
  959. data/spec/dummy/tmp/cache/assets/D15/5F0/sprockets%2F60f459141be5f877fb1f8cf38ca12452 +0 -0
  960. data/spec/dummy/tmp/cache/assets/D19/8B0/sprockets%2Fe8e7c72b55150f9a3f6917b0a7dd0299 +0 -0
  961. data/spec/dummy/tmp/cache/assets/D1A/400/sprockets%2F68bf61e296672914dcad81f9d1c806a3 +0 -0
  962. data/spec/dummy/tmp/cache/assets/D1C/B60/sprockets%2F4562fff067923d7e68b607c2f360d6dc +0 -0
  963. data/spec/dummy/tmp/cache/assets/D24/F60/sprockets%2Fe36a043fa2b3b9a221b015dffc471462 +0 -0
  964. data/spec/dummy/tmp/cache/assets/D2C/720/sprockets%2Fe4490972a26bb2f531212009dfcafa1f +0 -0
  965. data/spec/dummy/tmp/cache/assets/D2F/100/sprockets%2F95ffc0bd9499bacd4991f99f29381722 +0 -0
  966. data/spec/dummy/tmp/cache/assets/D31/1A0/sprockets%2Fe4e3cb247a17e0b1b89b510f70d380b8 +0 -0
  967. data/spec/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  968. data/spec/dummy/tmp/cache/assets/D32/B30/sprockets%2F6ea2d01e1b76df9a9a003f35074d7f21 +0 -0
  969. data/spec/dummy/tmp/cache/assets/D38/0E0/sprockets%2F14794728d5ac05d5bace06f724f6c11b +0 -0
  970. data/spec/dummy/tmp/cache/assets/D39/8A0/sprockets%2F9a7afbe1b38452ba73fd008fd2562274 +0 -0
  971. data/spec/dummy/tmp/cache/assets/D40/580/sprockets%2Fe0e2cce283e3539345a7c317ea58c83d +0 -0
  972. data/spec/dummy/tmp/cache/assets/D41/3B0/sprockets%2F905d433e4ccd08f1c83aac66f4d95480 +0 -0
  973. data/spec/dummy/tmp/cache/assets/D41/B60/sprockets%2Ffc2aa47706f31fc127476ef51e37e5d4 +0 -0
  974. data/spec/dummy/tmp/cache/assets/D41/BC0/sprockets%2Ff0542487ca3fd0d2d9a8f66fc2557d02 +0 -0
  975. data/spec/dummy/tmp/cache/assets/D44/100/sprockets%2F5740af7d5182613d7ca172e87ecef37b +0 -0
  976. data/spec/dummy/tmp/cache/assets/D4A/B80/sprockets%2F9c633774f5ed1a90dcf2082bb874d6e6 +0 -0
  977. data/spec/dummy/tmp/cache/assets/D4C/B00/sprockets%2F3977e1b47c9709026f354f47fbc0dbef +0 -0
  978. data/spec/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655 +0 -0
  979. data/spec/dummy/tmp/cache/assets/D54/DC0/sprockets%2Fc135f87fe97a983cb7f6129251c6edd5 +0 -0
  980. data/spec/dummy/tmp/cache/assets/D55/4A0/sprockets%2F9f3585d6944fecfd21b9f37e97043b2d +0 -0
  981. data/spec/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
  982. data/spec/dummy/tmp/cache/assets/D5B/E80/sprockets%2F799adf29fe5a95e34f60f607ae37a759 +0 -0
  983. data/spec/dummy/tmp/cache/assets/D62/280/sprockets%2Fbe1d43fe20a23e4593bd52af6455e1b6 +0 -0
  984. data/spec/dummy/tmp/cache/assets/D68/920/sprockets%2Fb7eb6668f9387c950b87e57f48d9bbb9 +0 -0
  985. data/spec/dummy/tmp/cache/assets/D69/320/sprockets%2F79251cf5abbd4fa5ef49c48383021cb1 +0 -0
  986. data/spec/dummy/tmp/cache/assets/D6D/040/sprockets%2F8ce54cfeeabda42540f18e3751631d57 +0 -0
  987. data/spec/dummy/tmp/cache/assets/D6D/2D0/sprockets%2Fb7137c8c11def4ce710a890d95c3f09a +0 -0
  988. data/spec/dummy/tmp/cache/assets/D70/DD0/sprockets%2F76aa685bacba69f3578ee40ab6211e85 +0 -0
  989. data/spec/dummy/tmp/cache/assets/D73/010/sprockets%2F834fa37dfa7f28148e125baf3f9d91b0 +0 -0
  990. data/spec/dummy/tmp/cache/assets/D74/CC0/sprockets%2F0883849eeadbcaf588706f6c1a5f103c +0 -0
  991. data/spec/dummy/tmp/cache/assets/D75/DB0/sprockets%2F9ab37622fdef7070f42a0d37a757f8de +0 -0
  992. data/spec/dummy/tmp/cache/assets/D76/360/sprockets%2F3ff9a318f34d309c6d4c7be4737ec60c +0 -0
  993. data/spec/dummy/tmp/cache/assets/D77/0A0/sprockets%2Fd388097cc8fda1663fa0d805faa592b9 +0 -0
  994. data/spec/dummy/tmp/cache/assets/D77/400/sprockets%2F3f9e137933597c5abf943eb401e8aead +0 -0
  995. data/spec/dummy/tmp/cache/assets/D78/BD0/sprockets%2Fd0c9ac69560ea197444b7f759ecd06da +0 -0
  996. data/spec/dummy/tmp/cache/assets/D7B/530/sprockets%2F994683a9d7bd17be1814cd8ce84cb13d +0 -0
  997. data/spec/dummy/tmp/cache/assets/D7D/FE0/sprockets%2Fdc33f319e81df25ef8f283e179b0c5c9 +0 -0
  998. data/spec/dummy/tmp/cache/assets/D99/BF0/sprockets%2F2fd8d582e234f8d0a741c1b4cafb716e +0 -0
  999. data/spec/dummy/tmp/cache/assets/D9A/070/sprockets%2Fcf06bf41615e3c42efaab85673ecb591 +0 -0
  1000. data/spec/dummy/tmp/cache/assets/D9B/0B0/sprockets%2F609a6d0b06eb3752679f6e1f0adcb4fc +0 -0
  1001. data/spec/dummy/tmp/cache/assets/D9E/F10/sprockets%2F9ab223df888d724dcad09eb1163cc5f4 +0 -0
  1002. data/spec/dummy/tmp/cache/assets/D9E/F70/sprockets%2Fc5d4a6e7d907804c52cbf910339dafdb +0 -0
  1003. data/spec/dummy/tmp/cache/assets/DA1/A00/sprockets%2Fc20a87edd6bfdcca68f83b81471770e1 +0 -0
  1004. data/spec/dummy/tmp/cache/assets/DB0/A60/sprockets%2F543dcca95ec9c45dd5f88d64fc9f1620 +0 -0
  1005. data/spec/dummy/tmp/cache/assets/DBB/F90/sprockets%2Fba83ff631b0cae1097016bf1acecb863 +0 -0
  1006. data/spec/dummy/tmp/cache/assets/DC9/A10/sprockets%2F8af6bbb4c92572eafb144047bbfb76c4 +0 -0
  1007. data/spec/dummy/tmp/cache/assets/DCC/AB0/sprockets%2F666d2c1f4eb7d60e9b27d5b52ad3f0ed +0 -0
  1008. data/spec/dummy/tmp/cache/assets/DCD/2C0/sprockets%2F70bed510995762fcd03cc5adf38eba6d +0 -0
  1009. data/spec/dummy/tmp/cache/assets/DD0/CC0/sprockets%2F5dc3e3dd4a62a8f03f9382c3dc9b5f3d +0 -0
  1010. data/spec/dummy/tmp/cache/assets/DD5/DF0/sprockets%2F5fcfa0c08af9e7eda4660905e491d7eb +0 -0
  1011. data/spec/dummy/tmp/cache/assets/DD7/B50/sprockets%2F52b6bca7ef09caf889327a0d19edcd76 +0 -0
  1012. data/spec/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994 +0 -0
  1013. data/spec/dummy/tmp/cache/assets/DE3/490/sprockets%2F08c27bc6c1fc0f4f363e1a1ad4c0bda4 +0 -0
  1014. data/spec/dummy/tmp/cache/assets/DE4/E60/sprockets%2F9ca060c2613d9e0ee003e7babcdd06cb +0 -0
  1015. data/spec/dummy/tmp/cache/assets/DF8/930/sprockets%2F73e117a1d3fd83fbcfe7a21e6b68eb2a +0 -0
  1016. data/spec/dummy/tmp/cache/assets/DFD/2A0/sprockets%2Fb5ea1d5e0e1cefdde6fe0982ab051878 +0 -0
  1017. data/spec/dummy/tmp/cache/assets/DFD/810/sprockets%2F6a607a98f71d7eec0fa22eced69a1ca4 +0 -0
  1018. data/spec/dummy/tmp/cache/assets/E03/BA0/sprockets%2Ffc0b3e556a2adbef7659cdd773a9b1c8 +0 -0
  1019. data/spec/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
  1020. data/spec/dummy/tmp/cache/assets/E05/CF0/sprockets%2Fd3e87cf247dcc6c74cacb13c9f14af96 +0 -0
  1021. data/spec/dummy/tmp/cache/assets/E11/560/sprockets%2Fe5be2e9dd3ce26fb822c6d93fbe8369e +0 -0
  1022. data/spec/dummy/tmp/cache/assets/E18/240/sprockets%2Ff2f4de0be24db7a3b7b60c216adc0df4 +0 -0
  1023. data/spec/dummy/tmp/cache/assets/E29/D30/sprockets%2F8df60efdb80e123c26a8bb7be1dc4be8 +0 -0
  1024. data/spec/dummy/tmp/cache/assets/E2B/670/sprockets%2Feac21904ecb266ce92aecadb8681b7fe +0 -0
  1025. data/spec/dummy/tmp/cache/assets/E98/710/sprockets%2Fd95dbf0cd6cefb9477f7efba5d410cee +0 -0
  1026. data/spec/dummy/tmp/cache/assets/EA4/0A0/sprockets%2Ffabaa55761ccaaabaeb0bba2fd55e990 +0 -0
  1027. data/spec/dummy/tmp/restart.txt +0 -0
  1028. data/spec/spec_helper.rb +34 -0
  1029. metadata +1454 -0
@@ -0,0 +1,736 @@
1
+ /*
2
+ * jQuery File Upload User Interface Plugin 6.9.4
3
+ * https://github.com/blueimp/jQuery-File-Upload
4
+ *
5
+ * Copyright 2010, Sebastian Tschan
6
+ * https://blueimp.net
7
+ *
8
+ * Licensed under the MIT license:
9
+ * http://www.opensource.org/licenses/MIT
10
+ */
11
+
12
+ /*jslint nomen: true, unparam: true, regexp: true */
13
+ /*global define, window, document, URL, webkitURL, FileReader */
14
+
15
+ (function (factory) {
16
+ 'use strict';
17
+ if (typeof define === 'function' && define.amd) {
18
+ // Register as an anonymous AMD module:
19
+ define([
20
+ 'jquery',
21
+ 'tmpl',
22
+ 'load-image',
23
+ './jquery.fileupload-fp'
24
+ ], factory);
25
+ } else {
26
+ // Browser globals:
27
+ factory(
28
+ window.jQuery,
29
+ window.tmpl,
30
+ window.loadImage
31
+ );
32
+ }
33
+ }(function ($, tmpl, loadImage) {
34
+ 'use strict';
35
+
36
+ // The UI version extends the FP (file processing) version or the basic
37
+ // file upload widget and adds complete user interface interaction:
38
+ var parentWidget = ($.blueimpFP || $.blueimp).fileupload;
39
+ $.widget('blueimpUI.fileupload', parentWidget, {
40
+
41
+ options: {
42
+ // By default, files added to the widget are uploaded as soon
43
+ // as the user clicks on the start buttons. To enable automatic
44
+ // uploads, set the following option to true:
45
+ autoUpload: false,
46
+ // The following option limits the number of files that are
47
+ // allowed to be uploaded using this widget:
48
+ maxNumberOfFiles: undefined,
49
+ // The maximum allowed file size:
50
+ maxFileSize: undefined,
51
+ // The minimum allowed file size:
52
+ minFileSize: undefined,
53
+ // The regular expression for allowed file types, matches
54
+ // against either file type or file name:
55
+ acceptFileTypes: /.+$/i,
56
+ // The regular expression to define for which files a preview
57
+ // image is shown, matched against the file type:
58
+ previewSourceFileTypes: /^image\/(gif|jpeg|png)$/,
59
+ // The maximum file size of images that are to be displayed as preview:
60
+ previewSourceMaxFileSize: 5000000, // 5MB
61
+ // The maximum width of the preview images:
62
+ previewMaxWidth: 80,
63
+ // The maximum height of the preview images:
64
+ previewMaxHeight: 80,
65
+ // By default, preview images are displayed as canvas elements
66
+ // if supported by the browser. Set the following option to false
67
+ // to always display preview images as img elements:
68
+ previewAsCanvas: true,
69
+ // The ID of the upload template:
70
+ uploadTemplateId: 'template-upload',
71
+ // The ID of the download template:
72
+ downloadTemplateId: 'template-download',
73
+ // The container for the list of files. If undefined, it is set to
74
+ // an element with class "files" inside of the widget element:
75
+ filesContainer: undefined,
76
+ // By default, files are appended to the files container.
77
+ // Set the following option to true, to prepend files instead:
78
+ prependFiles: false,
79
+ // The expected data type of the upload response, sets the dataType
80
+ // option of the $.ajax upload requests:
81
+ dataType: 'json',
82
+
83
+ // The add callback is invoked as soon as files are added to the fileupload
84
+ // widget (via file input selection, drag & drop or add API call).
85
+ // See the basic file upload widget for more information:
86
+ add: function (e, data) {
87
+ var that = $(this).data('fileupload'),
88
+ options = that.options,
89
+ files = data.files;
90
+ $(this).fileupload('process', data).done(function () {
91
+ that._adjustMaxNumberOfFiles(-files.length);
92
+ data.maxNumberOfFilesAdjusted = true;
93
+ data.files.valid = data.isValidated = that._validate(files);
94
+ data.context = that._renderUpload(files).data('data', data);
95
+ options.filesContainer[
96
+ options.prependFiles ? 'prepend' : 'append'
97
+ ](data.context);
98
+ that._renderPreviews(files, data.context);
99
+ that._forceReflow(data.context);
100
+ that._transition(data.context).done(
101
+ function () {
102
+ if ((that._trigger('added', e, data) !== false) &&
103
+ (options.autoUpload || data.autoUpload) &&
104
+ data.autoUpload !== false && data.isValidated) {
105
+ data.submit();
106
+ }
107
+ }
108
+ );
109
+ });
110
+ },
111
+ // Callback for the start of each file upload request:
112
+ send: function (e, data) {
113
+ var that = $(this).data('fileupload');
114
+ if (!data.isValidated) {
115
+ if (!data.maxNumberOfFilesAdjusted) {
116
+ that._adjustMaxNumberOfFiles(-data.files.length);
117
+ data.maxNumberOfFilesAdjusted = true;
118
+ }
119
+ if (!that._validate(data.files)) {
120
+ return false;
121
+ }
122
+ }
123
+ if (data.context && data.dataType &&
124
+ data.dataType.substr(0, 6) === 'iframe') {
125
+ // Iframe Transport does not support progress events.
126
+ // In lack of an indeterminate progress bar, we set
127
+ // the progress to 100%, showing the full animated bar:
128
+ data.context
129
+ .find('.progress').addClass(
130
+ !$.support.transition && 'progress-animated'
131
+ )
132
+ .attr('aria-valuenow', 100)
133
+ .find('.bar').css(
134
+ 'width',
135
+ '100%'
136
+ );
137
+ }
138
+ return that._trigger('sent', e, data);
139
+ },
140
+ // Callback for successful uploads:
141
+ done: function (e, data) {
142
+ var that = $(this).data('fileupload'),
143
+ template;
144
+ if (data.context) {
145
+ data.context.each(function (index) {
146
+ var file = ($.isArray(data.result) &&
147
+ data.result[index]) || {error: 'emptyResult'};
148
+ if (file.error) {
149
+ that._adjustMaxNumberOfFiles(1);
150
+ }
151
+ that._transition($(this)).done(
152
+ function () {
153
+ var node = $(this);
154
+ template = that._renderDownload([file])
155
+ .replaceAll(node);
156
+ that._forceReflow(template);
157
+ that._transition(template).done(
158
+ function () {
159
+ data.context = $(this);
160
+ that._trigger('completed', e, data);
161
+ }
162
+ );
163
+ }
164
+ );
165
+ });
166
+ } else {
167
+ if ($.isArray(data.result)) {
168
+ $.each(data.result, function (index, file) {
169
+ if (data.maxNumberOfFilesAdjusted && file.error) {
170
+ that._adjustMaxNumberOfFiles(1);
171
+ } else if (!data.maxNumberOfFilesAdjusted &&
172
+ !file.error) {
173
+ that._adjustMaxNumberOfFiles(-1);
174
+ }
175
+ });
176
+ data.maxNumberOfFilesAdjusted = true;
177
+ }
178
+ template = that._renderDownload(data.result)
179
+ .appendTo(that.options.filesContainer);
180
+ that._forceReflow(template);
181
+ that._transition(template).done(
182
+ function () {
183
+ data.context = $(this);
184
+ that._trigger('completed', e, data);
185
+ }
186
+ );
187
+ }
188
+ },
189
+ // Callback for failed (abort or error) uploads:
190
+ fail: function (e, data) {
191
+ var that = $(this).data('fileupload'),
192
+ template;
193
+ if (data.maxNumberOfFilesAdjusted) {
194
+ that._adjustMaxNumberOfFiles(data.files.length);
195
+ }
196
+ if (data.context) {
197
+ data.context.each(function (index) {
198
+ if (data.errorThrown !== 'abort') {
199
+ var file = data.files[index];
200
+ file.error = file.error || data.errorThrown ||
201
+ true;
202
+ that._transition($(this)).done(
203
+ function () {
204
+ var node = $(this);
205
+ template = that._renderDownload([file])
206
+ .replaceAll(node);
207
+ that._forceReflow(template);
208
+ that._transition(template).done(
209
+ function () {
210
+ data.context = $(this);
211
+ that._trigger('failed', e, data);
212
+ }
213
+ );
214
+ }
215
+ );
216
+ } else {
217
+ that._transition($(this)).done(
218
+ function () {
219
+ $(this).remove();
220
+ that._trigger('failed', e, data);
221
+ }
222
+ );
223
+ }
224
+ });
225
+ } else if (data.errorThrown !== 'abort') {
226
+ data.context = that._renderUpload(data.files)
227
+ .appendTo(that.options.filesContainer)
228
+ .data('data', data);
229
+ that._forceReflow(data.context);
230
+ that._transition(data.context).done(
231
+ function () {
232
+ data.context = $(this);
233
+ that._trigger('failed', e, data);
234
+ }
235
+ );
236
+ } else {
237
+ that._trigger('failed', e, data);
238
+ }
239
+ },
240
+ // Callback for upload progress events:
241
+ progress: function (e, data) {
242
+ if (data.context) {
243
+ var progress = parseInt(data.loaded / data.total * 100, 10);
244
+ data.context.find('.progress')
245
+ .attr('aria-valuenow', progress)
246
+ .find('.bar').css(
247
+ 'width',
248
+ progress + '%'
249
+ );
250
+ }
251
+ },
252
+ // Callback for global upload progress events:
253
+ progressall: function (e, data) {
254
+ var $this = $(this),
255
+ progress = parseInt(data.loaded / data.total * 100, 10),
256
+ globalProgressNode = $this.find('.fileupload-progress'),
257
+ extendedProgressNode = globalProgressNode
258
+ .find('.progress-extended');
259
+ if (extendedProgressNode.length) {
260
+ extendedProgressNode.html(
261
+ $this.data('fileupload')._renderExtendedProgress(data)
262
+ );
263
+ }
264
+ globalProgressNode
265
+ .find('.progress')
266
+ .attr('aria-valuenow', progress)
267
+ .find('.bar').css(
268
+ 'width',
269
+ progress + '%'
270
+ );
271
+ },
272
+ // Callback for uploads start, equivalent to the global ajaxStart event:
273
+ start: function (e) {
274
+ var that = $(this).data('fileupload');
275
+ that._transition($(this).find('.fileupload-progress')).done(
276
+ function () {
277
+ that._trigger('started', e);
278
+ }
279
+ );
280
+ },
281
+ // Callback for uploads stop, equivalent to the global ajaxStop event:
282
+ stop: function (e) {
283
+ var that = $(this).data('fileupload');
284
+ that._transition($(this).find('.fileupload-progress')).done(
285
+ function () {
286
+ $(this).find('.progress')
287
+ .attr('aria-valuenow', '0')
288
+ .find('.bar').css('width', '0%');
289
+ $(this).find('.progress-extended').html(' ');
290
+ that._trigger('stopped', e);
291
+ }
292
+ );
293
+ },
294
+ // Callback for file deletion:
295
+ destroy: function (e, data) {
296
+ var that = $(this).data('fileupload');
297
+ if (data.url) {
298
+ $.ajax(data);
299
+ that._adjustMaxNumberOfFiles(1);
300
+ }
301
+ that._transition(data.context).done(
302
+ function () {
303
+ $(this).remove();
304
+ that._trigger('destroyed', e, data);
305
+ }
306
+ );
307
+ }
308
+ },
309
+
310
+ // Link handler, that allows to download files
311
+ // by drag & drop of the links to the desktop:
312
+ _enableDragToDesktop: function () {
313
+ var link = $(this),
314
+ url = link.prop('href'),
315
+ name = link.prop('download'),
316
+ type = 'application/octet-stream';
317
+ link.bind('dragstart', function (e) {
318
+ try {
319
+ e.originalEvent.dataTransfer.setData(
320
+ 'DownloadURL',
321
+ [type, name, url].join(':')
322
+ );
323
+ } catch (err) {}
324
+ });
325
+ },
326
+
327
+ _adjustMaxNumberOfFiles: function (operand) {
328
+ if (typeof this.options.maxNumberOfFiles === 'number') {
329
+ this.options.maxNumberOfFiles += operand;
330
+ if (this.options.maxNumberOfFiles < 1) {
331
+ this._disableFileInputButton();
332
+ } else {
333
+ this._enableFileInputButton();
334
+ }
335
+ }
336
+ },
337
+
338
+ _formatFileSize: function (bytes) {
339
+ if (typeof bytes !== 'number') {
340
+ return '';
341
+ }
342
+ if (bytes >= 1000000000) {
343
+ return (bytes / 1000000000).toFixed(2) + ' GB';
344
+ }
345
+ if (bytes >= 1000000) {
346
+ return (bytes / 1000000).toFixed(2) + ' MB';
347
+ }
348
+ return (bytes / 1000).toFixed(2) + ' KB';
349
+ },
350
+
351
+ _formatBitrate: function (bits) {
352
+ if (typeof bits !== 'number') {
353
+ return '';
354
+ }
355
+ if (bits >= 1000000000) {
356
+ return (bits / 1000000000).toFixed(2) + ' Gbit/s';
357
+ }
358
+ if (bits >= 1000000) {
359
+ return (bits / 1000000).toFixed(2) + ' Mbit/s';
360
+ }
361
+ if (bits >= 1000) {
362
+ return (bits / 1000).toFixed(2) + ' kbit/s';
363
+ }
364
+ return bits + ' bit/s';
365
+ },
366
+
367
+ _formatTime: function (seconds) {
368
+ var date = new Date(seconds * 1000),
369
+ days = parseInt(seconds / 86400, 10);
370
+ days = days ? days + 'd ' : '';
371
+ return days +
372
+ ('0' + date.getUTCHours()).slice(-2) + ':' +
373
+ ('0' + date.getUTCMinutes()).slice(-2) + ':' +
374
+ ('0' + date.getUTCSeconds()).slice(-2);
375
+ },
376
+
377
+ _formatPercentage: function (floatValue) {
378
+ return (floatValue * 100).toFixed(2) + ' %';
379
+ },
380
+
381
+ _renderExtendedProgress: function (data) {
382
+ return this._formatBitrate(data.bitrate) + ' | ' +
383
+ this._formatTime(
384
+ (data.total - data.loaded) * 8 / data.bitrate
385
+ ) + ' | ' +
386
+ this._formatPercentage(
387
+ data.loaded / data.total
388
+ ) + ' | ' +
389
+ this._formatFileSize(data.loaded) + ' / ' +
390
+ this._formatFileSize(data.total);
391
+ },
392
+
393
+ _hasError: function (file) {
394
+ if (file.error) {
395
+ return file.error;
396
+ }
397
+ // The number of added files is subtracted from
398
+ // maxNumberOfFiles before validation, so we check if
399
+ // maxNumberOfFiles is below 0 (instead of below 1):
400
+ if (this.options.maxNumberOfFiles < 0) {
401
+ return 'maxNumberOfFiles';
402
+ }
403
+ // Files are accepted if either the file type or the file name
404
+ // matches against the acceptFileTypes regular expression, as
405
+ // only browsers with support for the File API report the type:
406
+ if (!(this.options.acceptFileTypes.test(file.type) ||
407
+ this.options.acceptFileTypes.test(file.name))) {
408
+ return 'acceptFileTypes';
409
+ }
410
+ if (this.options.maxFileSize &&
411
+ file.size > this.options.maxFileSize) {
412
+ return 'maxFileSize';
413
+ }
414
+ if (typeof file.size === 'number' &&
415
+ file.size < this.options.minFileSize) {
416
+ return 'minFileSize';
417
+ }
418
+ return null;
419
+ },
420
+
421
+ _validate: function (files) {
422
+ var that = this,
423
+ valid = !!files.length;
424
+ $.each(files, function (index, file) {
425
+ file.error = that._hasError(file);
426
+ if (file.error) {
427
+ valid = false;
428
+ }
429
+ });
430
+ return valid;
431
+ },
432
+
433
+ _renderTemplate: function (func, files) {
434
+ if (!func) {
435
+ return $();
436
+ }
437
+ var result = func({
438
+ files: files,
439
+ formatFileSize: this._formatFileSize,
440
+ options: this.options
441
+ });
442
+ if (result instanceof $) {
443
+ return result;
444
+ }
445
+ return $(this.options.templatesContainer).html(result).children();
446
+ },
447
+
448
+ _renderPreview: function (file, node) {
449
+ var that = this,
450
+ options = this.options,
451
+ dfd = $.Deferred();
452
+ return ((loadImage && loadImage(
453
+ file,
454
+ function (img) {
455
+ node.append(img);
456
+ that._forceReflow(node);
457
+ that._transition(node).done(function () {
458
+ dfd.resolveWith(node);
459
+ });
460
+ if (!$.contains(document.body, node[0])) {
461
+ // If the element is not part of the DOM,
462
+ // transition events are not triggered,
463
+ // so we have to resolve manually:
464
+ dfd.resolveWith(node);
465
+ }
466
+ },
467
+ {
468
+ maxWidth: options.previewMaxWidth,
469
+ maxHeight: options.previewMaxHeight,
470
+ canvas: options.previewAsCanvas
471
+ }
472
+ )) || dfd.resolveWith(node)) && dfd;
473
+ },
474
+
475
+ _renderPreviews: function (files, nodes) {
476
+ var that = this,
477
+ options = this.options;
478
+ nodes.find('.preview span').each(function (index, element) {
479
+ var file = files[index];
480
+ if (options.previewSourceFileTypes.test(file.type) &&
481
+ ($.type(options.previewSourceMaxFileSize) !== 'number' ||
482
+ file.size < options.previewSourceMaxFileSize)) {
483
+ that._processingQueue = that._processingQueue.pipe(function () {
484
+ var dfd = $.Deferred();
485
+ that._renderPreview(file, $(element)).done(
486
+ function () {
487
+ dfd.resolveWith(that);
488
+ }
489
+ );
490
+ return dfd.promise();
491
+ });
492
+ }
493
+ });
494
+ return this._processingQueue;
495
+ },
496
+
497
+ _renderUpload: function (files) {
498
+ return this._renderTemplate(
499
+ this.options.uploadTemplate,
500
+ files
501
+ );
502
+ },
503
+
504
+ _renderDownload: function (files) {
505
+ return this._renderTemplate(
506
+ this.options.downloadTemplate,
507
+ files
508
+ ).find('a[download]').each(this._enableDragToDesktop).end();
509
+ },
510
+
511
+ _startHandler: function (e) {
512
+ e.preventDefault();
513
+ var button = $(this),
514
+ template = button.closest('.template-upload'),
515
+ data = template.data('data');
516
+ if (data && data.submit && !data.jqXHR && data.submit()) {
517
+ button.prop('disabled', true);
518
+ }
519
+ },
520
+
521
+ _cancelHandler: function (e) {
522
+ e.preventDefault();
523
+ var template = $(this).closest('.template-upload'),
524
+ data = template.data('data') || {};
525
+ if (!data.jqXHR) {
526
+ data.errorThrown = 'abort';
527
+ e.data.fileupload._trigger('fail', e, data);
528
+ } else {
529
+ data.jqXHR.abort();
530
+ }
531
+ },
532
+
533
+ _deleteHandler: function (e) {
534
+ e.preventDefault();
535
+ var button = $(this);
536
+ e.data.fileupload._trigger('destroy', e, {
537
+ context: button.closest('.template-download'),
538
+ url: button.attr('data-url'),
539
+ type: button.attr('data-type') || 'DELETE',
540
+ dataType: e.data.fileupload.options.dataType
541
+ });
542
+ },
543
+
544
+ _forceReflow: function (node) {
545
+ return $.support.transition && node.length &&
546
+ node[0].offsetWidth;
547
+ },
548
+
549
+ _transition: function (node) {
550
+ var dfd = $.Deferred();
551
+ if ($.support.transition && node.hasClass('fade')) {
552
+ node.bind(
553
+ $.support.transition.end,
554
+ function (e) {
555
+ // Make sure we don't respond to other transitions events
556
+ // in the container element, e.g. from button elements:
557
+ if (e.target === node[0]) {
558
+ node.unbind($.support.transition.end);
559
+ dfd.resolveWith(node);
560
+ }
561
+ }
562
+ ).toggleClass('in');
563
+ } else {
564
+ node.toggleClass('in');
565
+ dfd.resolveWith(node);
566
+ }
567
+ return dfd;
568
+ },
569
+
570
+ _initButtonBarEventHandlers: function () {
571
+ var fileUploadButtonBar = this.element.find('.fileupload-buttonbar'),
572
+ filesList = this.options.filesContainer,
573
+ ns = this.options.namespace;
574
+ fileUploadButtonBar.find('.start')
575
+ .bind('click.' + ns, function (e) {
576
+ e.preventDefault();
577
+ filesList.find('.start button').click();
578
+ });
579
+ fileUploadButtonBar.find('.cancel')
580
+ .bind('click.' + ns, function (e) {
581
+ e.preventDefault();
582
+ filesList.find('.cancel button').click();
583
+ });
584
+ fileUploadButtonBar.find('.delete')
585
+ .bind('click.' + ns, function (e) {
586
+ e.preventDefault();
587
+ filesList.find('.delete input:checked')
588
+ .siblings('button').click();
589
+ fileUploadButtonBar.find('.toggle')
590
+ .prop('checked', false);
591
+ });
592
+ fileUploadButtonBar.find('.toggle')
593
+ .bind('change.' + ns, function (e) {
594
+ filesList.find('.delete input').prop(
595
+ 'checked',
596
+ $(this).is(':checked')
597
+ );
598
+ });
599
+ },
600
+
601
+ _destroyButtonBarEventHandlers: function () {
602
+ this.element.find('.fileupload-buttonbar button')
603
+ .unbind('click.' + this.options.namespace);
604
+ this.element.find('.fileupload-buttonbar .toggle')
605
+ .unbind('change.' + this.options.namespace);
606
+ },
607
+
608
+ _initEventHandlers: function () {
609
+ parentWidget.prototype._initEventHandlers.call(this);
610
+ var eventData = {fileupload: this};
611
+ this.options.filesContainer
612
+ .delegate(
613
+ '.start button',
614
+ 'click.' + this.options.namespace,
615
+ eventData,
616
+ this._startHandler
617
+ )
618
+ .delegate(
619
+ '.cancel button',
620
+ 'click.' + this.options.namespace,
621
+ eventData,
622
+ this._cancelHandler
623
+ )
624
+ .delegate(
625
+ '.delete button',
626
+ 'click.' + this.options.namespace,
627
+ eventData,
628
+ this._deleteHandler
629
+ );
630
+ this._initButtonBarEventHandlers();
631
+ },
632
+
633
+ _destroyEventHandlers: function () {
634
+ var options = this.options;
635
+ this._destroyButtonBarEventHandlers();
636
+ options.filesContainer
637
+ .undelegate('.start button', 'click.' + options.namespace)
638
+ .undelegate('.cancel button', 'click.' + options.namespace)
639
+ .undelegate('.delete button', 'click.' + options.namespace);
640
+ parentWidget.prototype._destroyEventHandlers.call(this);
641
+ },
642
+
643
+ _enableFileInputButton: function () {
644
+ this.element.find('.fileinput-button input')
645
+ .prop('disabled', false)
646
+ .parent().removeClass('disabled');
647
+ },
648
+
649
+ _disableFileInputButton: function () {
650
+ this.element.find('.fileinput-button input')
651
+ .prop('disabled', true)
652
+ .parent().addClass('disabled');
653
+ },
654
+
655
+ _initTemplates: function () {
656
+ var options = this.options;
657
+ options.templatesContainer = document.createElement(
658
+ options.filesContainer.prop('nodeName')
659
+ );
660
+ if (tmpl) {
661
+ if (options.uploadTemplateId) {
662
+ options.uploadTemplate = tmpl(options.uploadTemplateId);
663
+ }
664
+ if (options.downloadTemplateId) {
665
+ options.downloadTemplate = tmpl(options.downloadTemplateId);
666
+ }
667
+ }
668
+ },
669
+
670
+ _initFilesContainer: function () {
671
+ var options = this.options;
672
+ if (options.filesContainer === undefined) {
673
+ options.filesContainer = this.element.find('.files');
674
+ } else if (!(options.filesContainer instanceof $)) {
675
+ options.filesContainer = $(options.filesContainer);
676
+ }
677
+ },
678
+
679
+ _stringToRegExp: function (str) {
680
+ var parts = str.split('/'),
681
+ modifiers = parts.pop();
682
+ parts.shift();
683
+ return new RegExp(parts.join('/'), modifiers);
684
+ },
685
+
686
+ _initRegExpOptions: function () {
687
+ var options = this.options;
688
+ if ($.type(options.acceptFileTypes) === 'string') {
689
+ options.acceptFileTypes = this._stringToRegExp(
690
+ options.acceptFileTypes
691
+ );
692
+ }
693
+ if ($.type(options.previewSourceFileTypes) === 'string') {
694
+ options.previewSourceFileTypes = this._stringToRegExp(
695
+ options.previewSourceFileTypes
696
+ );
697
+ }
698
+ },
699
+
700
+ _initSpecialOptions: function () {
701
+ parentWidget.prototype._initSpecialOptions.call(this);
702
+ this._initFilesContainer();
703
+ this._initTemplates();
704
+ this._initRegExpOptions();
705
+ },
706
+
707
+ _create: function () {
708
+ parentWidget.prototype._create.call(this);
709
+ this._refreshOptionsList.push(
710
+ 'filesContainer',
711
+ 'uploadTemplateId',
712
+ 'downloadTemplateId'
713
+ );
714
+ if (!$.blueimpFP) {
715
+ this._processingQueue = $.Deferred().resolveWith(this).promise();
716
+ this.process = function () {
717
+ return this._processingQueue;
718
+ };
719
+ }
720
+ },
721
+
722
+ enable: function () {
723
+ parentWidget.prototype.enable.call(this);
724
+ this.element.find('input, button').prop('disabled', false);
725
+ this._enableFileInputButton();
726
+ },
727
+
728
+ disable: function () {
729
+ this.element.find('input, button').prop('disabled', true);
730
+ this._disableFileInputButton();
731
+ parentWidget.prototype.disable.call(this);
732
+ }
733
+
734
+ });
735
+
736
+ }));