bs-helper 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (451) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +22 -0
  3. data/README.md +46 -0
  4. data/Rakefile +14 -0
  5. data/app/assets/javascripts/bs-modal/bootstrap-modal.js +379 -0
  6. data/app/assets/javascripts/bs-modal/bootstrap-modalmanager.js +422 -0
  7. data/app/assets/javascripts/init-bootbox.js +254 -0
  8. data/app/assets/javascripts/init-bshelper.js +11 -0
  9. data/app/assets/stylesheets/bs-modal/bootstrap-modal-bs3patch.css +35 -0
  10. data/app/assets/stylesheets/bs-modal/bootstrap-modal.css +214 -0
  11. data/app/helpers/bootstrap_base_helper.rb +145 -0
  12. data/app/helpers/bootstrap_button_helper.rb +135 -0
  13. data/app/helpers/bootstrap_component_helper.rb +358 -0
  14. data/app/helpers/bootstrap_helper.rb +24 -0
  15. data/app/helpers/bootstrap_notify_helper.rb +49 -0
  16. data/app/helpers/bootstrap_post_paginate_helper.rb +62 -0
  17. data/app/helpers/bootstrap_tab_helper.rb +124 -0
  18. data/app/helpers/bootstrap_table_helper.rb +341 -0
  19. data/lib/bs-helper.rb +8 -0
  20. data/lib/bs-helper/engine.rb +21 -0
  21. data/lib/bs-helper/version.rb +5 -0
  22. data/lib/generators/bshelper/install/install_generator.rb +46 -0
  23. data/test/dummy/README.rdoc +261 -0
  24. data/test/dummy/Rakefile +7 -0
  25. data/test/dummy/app/assets/images/favicon.ico +0 -0
  26. data/test/dummy/app/assets/images/rar_gold.png +0 -0
  27. data/test/dummy/app/assets/images/text_page.png +0 -0
  28. data/test/dummy/app/assets/javascripts/application.js +22 -0
  29. data/test/dummy/app/assets/javascripts/components.js +2 -0
  30. data/test/dummy/app/assets/javascripts/paginations.js +2 -0
  31. data/test/dummy/app/assets/javascripts/prettify.js +376 -0
  32. data/test/dummy/app/assets/stylesheets/application.css.scss +163 -0
  33. data/test/dummy/app/assets/stylesheets/components.css.scss +3 -0
  34. data/test/dummy/app/assets/stylesheets/paginations.css.scss +3 -0
  35. data/test/dummy/app/assets/stylesheets/prettify.css +55 -0
  36. data/test/dummy/app/controllers/application_controller.rb +3 -0
  37. data/test/dummy/app/controllers/components_controller.rb +9 -0
  38. data/test/dummy/app/controllers/home_controller.rb +4 -0
  39. data/test/dummy/app/controllers/paginations_controller.rb +5 -0
  40. data/test/dummy/app/helpers/application_helper.rb +2 -0
  41. data/test/dummy/app/helpers/components_helper.rb +2 -0
  42. data/test/dummy/app/helpers/paginations_helper.rb +2 -0
  43. data/test/dummy/app/models/order.rb +2 -0
  44. data/test/dummy/app/views/components/_bootbox.html.erb +30 -0
  45. data/test/dummy/app/views/components/_button.html.erb +145 -0
  46. data/test/dummy/app/views/components/_flash.html.erb +44 -0
  47. data/test/dummy/app/views/components/_image.html.erb +66 -0
  48. data/test/dummy/app/views/components/_list.html.erb +162 -0
  49. data/test/dummy/app/views/components/_modal.html.erb +263 -0
  50. data/test/dummy/app/views/components/_navbar.html.erb +36 -0
  51. data/test/dummy/app/views/components/_notify.html.erb +30 -0
  52. data/test/dummy/app/views/components/_progressbar.html.erb +42 -0
  53. data/test/dummy/app/views/components/_tab.html.erb +134 -0
  54. data/test/dummy/app/views/components/_table.html.erb +244 -0
  55. data/test/dummy/app/views/components/_thumbnails.html.erb +71 -0
  56. data/test/dummy/app/views/components/_typographic.html.erb +133 -0
  57. data/test/dummy/app/views/components/index.html.erb +128 -0
  58. data/test/dummy/app/views/components/update.html.erb +2 -0
  59. data/test/dummy/app/views/home/index.html.erb +12 -0
  60. data/test/dummy/app/views/layouts/application.html.erb +79 -0
  61. data/test/dummy/app/views/paginations/index.html.erb +45 -0
  62. data/test/dummy/bin/bundle +3 -0
  63. data/test/dummy/bin/rails +4 -0
  64. data/test/dummy/bin/rake +4 -0
  65. data/test/dummy/config.ru +4 -0
  66. data/test/dummy/config/application.rb +17 -0
  67. data/test/dummy/config/boot.rb +10 -0
  68. data/test/dummy/config/database.yml +27 -0
  69. data/test/dummy/config/environment.rb +5 -0
  70. data/test/dummy/config/environments/development.rb +28 -0
  71. data/test/dummy/config/environments/production.rb +80 -0
  72. data/test/dummy/config/environments/test.rb +36 -0
  73. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  74. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  75. data/test/dummy/config/initializers/inflections.rb +15 -0
  76. data/test/dummy/config/initializers/mime_types.rb +5 -0
  77. data/test/dummy/config/initializers/secret_token.rb +7 -0
  78. data/test/dummy/config/initializers/session_store.rb +8 -0
  79. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  80. data/test/dummy/config/locales/en.bootstrap.yml +18 -0
  81. data/test/dummy/config/locales/en.yml +5 -0
  82. data/test/dummy/config/routes.rb +8 -0
  83. data/test/dummy/db/development.sqlite3 +0 -0
  84. data/test/dummy/db/migrate/20131006012048_create_orders.rb +12 -0
  85. data/test/dummy/db/schema.rb +25 -0
  86. data/test/dummy/db/seeds.rb +3 -0
  87. data/test/dummy/db/test.sqlite3 +0 -0
  88. data/test/dummy/log/development.log +6445 -0
  89. data/test/dummy/log/test.log +3020 -0
  90. data/test/dummy/public/404.html +26 -0
  91. data/test/dummy/public/422.html +26 -0
  92. data/test/dummy/public/500.html +25 -0
  93. data/test/dummy/public/favicon.ico +0 -0
  94. data/test/dummy/tmp/cache/assets/BB7/B00/sprockets%2F255015c35d7237c7582051420593d535 +0 -0
  95. data/test/dummy/tmp/cache/assets/BFE/E90/sprockets%2F46051149c05424080ec21b4b160b2156 +0 -0
  96. data/test/dummy/tmp/cache/assets/C00/C70/sprockets%2F2042815e30a1a59041392a5ca5440290 +0 -0
  97. data/test/dummy/tmp/cache/assets/C14/150/sprockets%2Fb119a0eb512432ef7314727958150651 +0 -0
  98. data/test/dummy/tmp/cache/assets/C1B/A20/sprockets%2F418d652b582b3203c7654d337047c338 +0 -0
  99. data/test/dummy/tmp/cache/assets/C29/8A0/sprockets%2Fa899e19256a0845205636938010c6fe5 +0 -0
  100. data/test/dummy/tmp/cache/assets/C2A/C00/sprockets%2F3506a8282568971d3248601e5e5425ff +0 -0
  101. data/test/dummy/tmp/cache/assets/C4B/EF0/sprockets%2F131d29c56765d2433266063045fba4f8 +0 -0
  102. data/test/dummy/tmp/cache/assets/C52/380/sprockets%2Fc39dc5164502475828be3d207521847e +0 -0
  103. data/test/dummy/tmp/cache/assets/C5D/BA0/sprockets%2F3012b77e6950a5219d79e44061789fc7 +0 -0
  104. data/test/dummy/tmp/cache/assets/C66/980/sprockets%2F08834498e0872d20578ff783e2f406b7 +0 -0
  105. data/test/dummy/tmp/cache/assets/C6F/FE0/sprockets%2F5cce6081788d09120c598c7279f82888 +0 -0
  106. data/test/dummy/tmp/cache/assets/C70/2B0/sprockets%2F5463710e10c56c02c6b5755029280bfc +0 -0
  107. data/test/dummy/tmp/cache/assets/C73/E40/sprockets%2F5b82d31405900db244371901fc76e0f6 +0 -0
  108. data/test/dummy/tmp/cache/assets/C75/980/sprockets%2F2404708d3ebd336e5416726433b29c3a +0 -0
  109. data/test/dummy/tmp/cache/assets/C7A/A60/sprockets%2F8ed6a1437c208c22d819801375df2270 +0 -0
  110. data/test/dummy/tmp/cache/assets/C7F/250/sprockets%2F0d48d83101ec82689352144842cde29a +0 -0
  111. data/test/dummy/tmp/cache/assets/C80/840/sprockets%2F562c2d168da585f80579347d10790a0a +0 -0
  112. data/test/dummy/tmp/cache/assets/CA4/D30/sprockets%2F755264e416b5a070875ee90af0242cc0 +0 -0
  113. data/test/dummy/tmp/cache/assets/CA5/8D0/sprockets%2F2555a348ba314a08c0f6d85b066129a9 +0 -0
  114. data/test/dummy/tmp/cache/assets/CA8/330/sprockets%2F46c9ed7b190224e086e20ca6382465a1 +0 -0
  115. data/test/dummy/tmp/cache/assets/CAA/430/sprockets%2F54687e09b19575b8930eb3887e698ee8 +0 -0
  116. data/test/dummy/tmp/cache/assets/CAF/640/sprockets%2F2803327062d607ade5813f79bb61df74 +0 -0
  117. data/test/dummy/tmp/cache/assets/CB4/8E0/sprockets%2F00d59d696cc7efe4234258e306b83333 +0 -0
  118. data/test/dummy/tmp/cache/assets/CBF/370/sprockets%2F49ceca075582477f96382fa1c26b4846 +0 -0
  119. data/test/dummy/tmp/cache/assets/CC5/160/sprockets%2F74b7c3a59a0e88f9502866d0f9b49059 +0 -0
  120. data/test/dummy/tmp/cache/assets/CCF/730/sprockets%2F884d37d65980884f89898cbb009ba60d +0 -0
  121. data/test/dummy/tmp/cache/assets/CD2/320/sprockets%2F06f36e5565a415bc3f15b9a0438b204e +0 -0
  122. data/test/dummy/tmp/cache/assets/CD5/2C0/sprockets%2F166c056119ebdfb8b7104c97b424b423 +0 -0
  123. data/test/dummy/tmp/cache/assets/CD5/740/sprockets%2Fbb5277f1364450372ea69e473b0cb0e3 +0 -0
  124. data/test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
  125. data/test/dummy/tmp/cache/assets/CD8/810/sprockets%2Ffd61035950d2b33670fb8d3f4271fc15 +0 -0
  126. data/test/dummy/tmp/cache/assets/CD8/D90/sprockets%2Fc1f515271621dfef6c3941c1e210e587 +0 -0
  127. data/test/dummy/tmp/cache/assets/CDA/BD0/sprockets%2F549431bf0eb194b790b4060759fb1b8a +0 -0
  128. data/test/dummy/tmp/cache/assets/CDB/1D0/sprockets%2Fe0be664785a1118d4bf4b7110f6f0846 +0 -0
  129. data/test/dummy/tmp/cache/assets/CDB/970/sprockets%2F08f5b4a540db21d6b735be28047e3569 +0 -0
  130. data/test/dummy/tmp/cache/assets/CE1/310/sprockets%2F5a5d222a2e5345211e7969d3e860cd9e +0 -0
  131. data/test/dummy/tmp/cache/assets/CE1/3C0/sprockets%2Fcdd01087f3928656a4dd8c33d82641c3 +0 -0
  132. data/test/dummy/tmp/cache/assets/CE1/B90/sprockets%2F72230396f68b08a199d9a24ba9d2c9a0 +0 -0
  133. data/test/dummy/tmp/cache/assets/CE3/820/sprockets%2Fb760f2c7efb9312b9571a9a576854a30 +0 -0
  134. data/test/dummy/tmp/cache/assets/CE3/CC0/sprockets%2Ff9608666245b5b6f3de33b212d4e509d +0 -0
  135. data/test/dummy/tmp/cache/assets/CE7/310/sprockets%2F8b0357db2336e0598cb9e5810e199a7b +0 -0
  136. data/test/dummy/tmp/cache/assets/CE7/FD0/sprockets%2Fbb3a33894c855494dfe294248325a0ef +0 -0
  137. data/test/dummy/tmp/cache/assets/CE8/5F0/sprockets%2Fe313d803410c99bf15d6344fb77f578d +0 -0
  138. data/test/dummy/tmp/cache/assets/CEF/DA0/sprockets%2F5a60769c6b6e9d2926c7c558d98001bd +0 -0
  139. data/test/dummy/tmp/cache/assets/CF2/0A0/sprockets%2F2f5152f528c4f0586e490cbe978e26c8 +0 -0
  140. data/test/dummy/tmp/cache/assets/CF2/CB0/sprockets%2F47142f1e39d3ed8004649bc2968eee79 +0 -0
  141. data/test/dummy/tmp/cache/assets/CF3/640/sprockets%2F48de748d4590940ac2981d18ff216cf9 +0 -0
  142. data/test/dummy/tmp/cache/assets/CF4/1C0/sprockets%2Ff708449e989289d9d02b35ada290e18d +0 -0
  143. data/test/dummy/tmp/cache/assets/CF6/100/sprockets%2F53efd93222c0011cae70c56d34251df1 +0 -0
  144. data/test/dummy/tmp/cache/assets/CF6/BA0/sprockets%2F2999139a7870f72c257f820bc9f62cee +0 -0
  145. data/test/dummy/tmp/cache/assets/CF7/670/sprockets%2F86bb8f349783ee1007567e607c89dbc6 +0 -0
  146. data/test/dummy/tmp/cache/assets/CFB/C30/sprockets%2F0d44a6a2a55f865ac64b1ce4620b5036 +0 -0
  147. data/test/dummy/tmp/cache/assets/CFC/FD0/sprockets%2F5ea4bbab196a7829893dd7769374894c +0 -0
  148. data/test/dummy/tmp/cache/assets/CFD/010/sprockets%2Fd12aa1062f6c713a9efe86ab12263291 +0 -0
  149. data/test/dummy/tmp/cache/assets/D05/5F0/sprockets%2Fb44400c4299cbe671ffc09b1f1570d24 +0 -0
  150. data/test/dummy/tmp/cache/assets/D0B/760/sprockets%2F9e9498b160e9fb55d0ee0202a06d74a1 +0 -0
  151. data/test/dummy/tmp/cache/assets/D0C/DB0/sprockets%2Fcf235e0d96662a1376d2dda257d6f422 +0 -0
  152. data/test/dummy/tmp/cache/assets/D0E/F80/sprockets%2F8c2b061e379a23e7c4d207adcf992462 +0 -0
  153. data/test/dummy/tmp/cache/assets/D0F/220/sprockets%2F763a8623c9f9ca1da82ce1d3065195b4 +0 -0
  154. data/test/dummy/tmp/cache/assets/D10/220/sprockets%2F726f6657c33b6aa3c0d94af63411cc98 +0 -0
  155. data/test/dummy/tmp/cache/assets/D10/5A0/sprockets%2Fd2231fd71dfa3e6303aefa6662449597 +0 -0
  156. data/test/dummy/tmp/cache/assets/D10/BD0/sprockets%2F651f97e9f10e46d0b60870a29da1dd45 +0 -0
  157. data/test/dummy/tmp/cache/assets/D11/790/sprockets%2Fe9dd4830f03e40a2d643677026c7f8bd +0 -0
  158. data/test/dummy/tmp/cache/assets/D12/920/sprockets%2Ffcb404030b30e1a73c604ef0a41a721a +0 -0
  159. data/test/dummy/tmp/cache/assets/D17/4C0/sprockets%2F700827acd727b6fc8361f454c68a5cd7 +0 -0
  160. data/test/dummy/tmp/cache/assets/D17/AA0/sprockets%2Fb207b91eda797ba69e6e407427c9810d +0 -0
  161. data/test/dummy/tmp/cache/assets/D1A/C80/sprockets%2Fd05d17ace6d56d848f78eab067509821 +0 -0
  162. data/test/dummy/tmp/cache/assets/D1C/9D0/sprockets%2F73ff5a1b61c01067bb59f6fd89b54894 +0 -0
  163. data/test/dummy/tmp/cache/assets/D1D/A80/sprockets%2F587d710a85a815aa3d67a7496f59dcb6 +0 -0
  164. data/test/dummy/tmp/cache/assets/D1D/B00/sprockets%2Fc658105ac7b6fe7b9cc4656176259a9b +0 -0
  165. data/test/dummy/tmp/cache/assets/D23/CA0/sprockets%2F10af5eba24474e2fa3c15510681a60eb +0 -0
  166. data/test/dummy/tmp/cache/assets/D28/7A0/sprockets%2Fc0016b98f89c7f17cdd78b81fc194893 +0 -0
  167. data/test/dummy/tmp/cache/assets/D29/700/sprockets%2Fe6f667affe510637b6289bf664d73c94 +0 -0
  168. data/test/dummy/tmp/cache/assets/D29/7F0/sprockets%2F1814abebb27ea13dd682b39514d4221c +0 -0
  169. data/test/dummy/tmp/cache/assets/D2A/4D0/sprockets%2F93b2a67747d68990b77f7e2f4bb186ed +0 -0
  170. data/test/dummy/tmp/cache/assets/D2A/5F0/sprockets%2F444f8aab7211e90259e2a1e21afd050f +0 -0
  171. data/test/dummy/tmp/cache/assets/D2A/6D0/sprockets%2F56b0fec7ef32b116b33f6279131ac0c0 +0 -0
  172. data/test/dummy/tmp/cache/assets/D2B/0A0/sprockets%2Fcf0f777766ec93937f4950fb7eb450c7 +0 -0
  173. data/test/dummy/tmp/cache/assets/D2D/D50/sprockets%2Fd585a06e2ee6203ccb04c8b84150d14d +0 -0
  174. data/test/dummy/tmp/cache/assets/D30/050/sprockets%2F010cfbc0fe93ced742452b382b2f6137 +0 -0
  175. data/test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  176. data/test/dummy/tmp/cache/assets/D34/AF0/sprockets%2Ff9c3010efc1c070a7b965d5cf2e28440 +0 -0
  177. data/test/dummy/tmp/cache/assets/D37/910/sprockets%2F6d03353931352e58ead27bafa2b7e18d +0 -0
  178. data/test/dummy/tmp/cache/assets/D38/1F0/sprockets%2F3e51a308496425c44eddbd4831bd4a6e +0 -0
  179. data/test/dummy/tmp/cache/assets/D39/AC0/sprockets%2F374af92b8212b4bcb11df742483af93f +0 -0
  180. data/test/dummy/tmp/cache/assets/D3A/8F0/sprockets%2F286081105fc0bce1bb5e58d9437df6d1 +0 -0
  181. data/test/dummy/tmp/cache/assets/D3B/BA0/sprockets%2Fe6806877af3cba66407e110c72b4ddf2 +0 -0
  182. data/test/dummy/tmp/cache/assets/D3C/9A0/sprockets%2F0bfd8955817f68630d3c10eb1ca26d7b +0 -0
  183. data/test/dummy/tmp/cache/assets/D3D/210/sprockets%2F89af64f22b01d10b7759a29d4303ffcf +0 -0
  184. data/test/dummy/tmp/cache/assets/D3E/3F0/sprockets%2Fca760aeeff18c1f769100174c5f337d5 +0 -0
  185. data/test/dummy/tmp/cache/assets/D40/C40/sprockets%2Fe1e3f7030b8f90aa626ec8e640717d6e +0 -0
  186. data/test/dummy/tmp/cache/assets/D41/2F0/sprockets%2F95dccfb2296b7ba175585f06ea212e29 +0 -0
  187. data/test/dummy/tmp/cache/assets/D43/200/sprockets%2Faffca5ff9de508520551e380a948d136 +0 -0
  188. data/test/dummy/tmp/cache/assets/D46/1E0/sprockets%2F578ca1351d466b2a7f7681b90cfa9ee4 +0 -0
  189. data/test/dummy/tmp/cache/assets/D47/840/sprockets%2F619da8dda7f51281494c293bdd19e44d +0 -0
  190. data/test/dummy/tmp/cache/assets/D4B/110/sprockets%2Fbff37793c148d27d084ccc25c7e6d095 +0 -0
  191. data/test/dummy/tmp/cache/assets/D4B/120/sprockets%2F9851478267eda328424a664becdeaec8 +0 -0
  192. data/test/dummy/tmp/cache/assets/D4B/A40/sprockets%2Fea319dc44a8e75d8b4090ea37e35d977 +0 -0
  193. data/test/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655 +0 -0
  194. data/test/dummy/tmp/cache/assets/D50/870/sprockets%2Fd2bb3bfae89cf939627795942a30ef44 +0 -0
  195. data/test/dummy/tmp/cache/assets/D50/A50/sprockets%2F584ed79d21d49036c19ef6aa39ef39e1 +0 -0
  196. data/test/dummy/tmp/cache/assets/D50/DF0/sprockets%2F99e091c7908d7fca33de747cb53c535e +0 -0
  197. data/test/dummy/tmp/cache/assets/D53/080/sprockets%2F610ad73170cc39dc8d69a9e7f814fe89 +0 -0
  198. data/test/dummy/tmp/cache/assets/D55/A60/sprockets%2F7d2d3f238b17eb6b6a0149c230a2d0da +0 -0
  199. data/test/dummy/tmp/cache/assets/D58/630/sprockets%2F6e31211feb3b021ab13d59d6afa5e393 +0 -0
  200. data/test/dummy/tmp/cache/assets/D59/BD0/sprockets%2F8a2b501d930665d6c10ce2d52c5bccc3 +0 -0
  201. data/test/dummy/tmp/cache/assets/D5A/5A0/sprockets%2Ffb68b1e33aca410ae15c1e4a69b60087 +0 -0
  202. data/test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
  203. data/test/dummy/tmp/cache/assets/D5D/B60/sprockets%2F1d2b9d33eeac89cbaf405770a309203a +0 -0
  204. data/test/dummy/tmp/cache/assets/D62/FD0/sprockets%2F4e33cbf3c3ee86c3103de60d1534ce63 +0 -0
  205. data/test/dummy/tmp/cache/assets/D64/5C0/sprockets%2F7fdd0381b23dbf9ad6fed5532b044161 +0 -0
  206. data/test/dummy/tmp/cache/assets/D66/A50/sprockets%2Fa19d3c63b5c8d302b27d40bff9ac0694 +0 -0
  207. data/test/dummy/tmp/cache/assets/D67/4C0/sprockets%2F2acdba0f2819e272fd2775c1e2e135f6 +0 -0
  208. data/test/dummy/tmp/cache/assets/D69/8B0/sprockets%2F6165e3199da62d88d3cda04e9f0bab03 +0 -0
  209. data/test/dummy/tmp/cache/assets/D69/BC0/sprockets%2Fb4b3aa35e039b27b8e060c45f9775cbd +0 -0
  210. data/test/dummy/tmp/cache/assets/D6E/430/sprockets%2F4f91b073b921ebf764afe6b65e9c400b +0 -0
  211. data/test/dummy/tmp/cache/assets/D70/B20/sprockets%2Fe1b78bcabcbb629a3b7491f646e47444 +0 -0
  212. data/test/dummy/tmp/cache/assets/D71/610/sprockets%2F7f5938c3933df260b3c1d3ca966aba7d +0 -0
  213. data/test/dummy/tmp/cache/assets/D72/890/sprockets%2F1964d5b7e91e4bd75eaaa90372179abe +0 -0
  214. data/test/dummy/tmp/cache/assets/D72/F70/sprockets%2Ffc8249455de6cf6c7ee332c3da50b651 +0 -0
  215. data/test/dummy/tmp/cache/assets/D75/2E0/sprockets%2F8b14921da19c834965bfceae1f7653eb +0 -0
  216. data/test/dummy/tmp/cache/assets/D75/7C0/sprockets%2Fa6bd7e7accd75862c41df7761f20484c +0 -0
  217. data/test/dummy/tmp/cache/assets/D78/420/sprockets%2F1d8aadb52328eb71c38f6f6789541aef +0 -0
  218. data/test/dummy/tmp/cache/assets/D78/E40/sprockets%2Faedc95237ba36c670c945f38c90eff06 +0 -0
  219. data/test/dummy/tmp/cache/assets/D7B/0D0/sprockets%2F551a784b818d6b4b49c0c8f8b4fdf7a4 +0 -0
  220. data/test/dummy/tmp/cache/assets/D7B/BC0/sprockets%2F60689caf6e6b35ddfef5020e38cd6682 +0 -0
  221. data/test/dummy/tmp/cache/assets/D8B/080/sprockets%2F9acde0d230391c71d10e44b0bbfab788 +0 -0
  222. data/test/dummy/tmp/cache/assets/D91/1F0/sprockets%2F9d59f6d0a4e6c39d5df4967d495dae77 +0 -0
  223. data/test/dummy/tmp/cache/assets/D93/710/sprockets%2F4b23ca13b12ffd5b869d852dbd4517ab +0 -0
  224. data/test/dummy/tmp/cache/assets/D98/820/sprockets%2F9e134dbd90cdb62020573b5efa598cbc +0 -0
  225. data/test/dummy/tmp/cache/assets/D99/2B0/sprockets%2F6f461bec4036b94e05def91bcef2f212 +0 -0
  226. data/test/dummy/tmp/cache/assets/D9B/6D0/sprockets%2F233d91946fb5eec30dfb91d13645acbf +0 -0
  227. data/test/dummy/tmp/cache/assets/D9B/BC0/sprockets%2F972cc0f426f8a9a1502aac8008df9dbf +0 -0
  228. data/test/dummy/tmp/cache/assets/D9F/240/sprockets%2Fcbcc9415e68ada75302721596fff2beb +0 -0
  229. data/test/dummy/tmp/cache/assets/DA0/300/sprockets%2Fb0662d0bd4d1de35ee5275c9eb777f4a +0 -0
  230. data/test/dummy/tmp/cache/assets/DA0/A00/sprockets%2F470e7e6e53ac8e2d8b8cc67cc0ed4150 +0 -0
  231. data/test/dummy/tmp/cache/assets/DA2/9F0/sprockets%2F32e07f1e2ace5083e8d82fe128c9ce7b +0 -0
  232. data/test/dummy/tmp/cache/assets/DA3/130/sprockets%2F564d6aad8eed946ff1c02e46374ce61a +0 -0
  233. data/test/dummy/tmp/cache/assets/DA4/560/sprockets%2F2088bf8c4ce3fc99f1ca81b5daa30588 +0 -0
  234. data/test/dummy/tmp/cache/assets/DA6/C80/sprockets%2Ffb3fbf878626cb0b193398e604efdda1 +0 -0
  235. data/test/dummy/tmp/cache/assets/DAE/2F0/sprockets%2Fd1af60de6575897dbc5f714ecc8bc781 +0 -0
  236. data/test/dummy/tmp/cache/assets/DB0/8E0/sprockets%2Fa7e3c53c5e6be4829feaf8593d0cc739 +0 -0
  237. data/test/dummy/tmp/cache/assets/DB2/8C0/sprockets%2Fee6f626db3884fac4f4f534c594d58cb +0 -0
  238. data/test/dummy/tmp/cache/assets/DB3/FE0/sprockets%2Ff44f9fa62c88d3d8e1df6a9c770d5a73 +0 -0
  239. data/test/dummy/tmp/cache/assets/DB7/6A0/sprockets%2Fe62279cb658efbd4ee59afa72a4967f5 +0 -0
  240. data/test/dummy/tmp/cache/assets/DBD/170/sprockets%2Fd17e4102f6f24fcacccd2e3be411f670 +0 -0
  241. data/test/dummy/tmp/cache/assets/DC1/350/sprockets%2F462d90cc0af07b51cf4d9280bc96bdaa +0 -0
  242. data/test/dummy/tmp/cache/assets/DC2/1E0/sprockets%2Ffaebe1250f51bbc6ed1cd059807ea653 +0 -0
  243. data/test/dummy/tmp/cache/assets/DC5/510/sprockets%2F4a670eb7532fb1e85bb9f00de445bfba +0 -0
  244. data/test/dummy/tmp/cache/assets/DCA/3F0/sprockets%2F0413c8f1d459a08ebcfc047fa3d59dbe +0 -0
  245. data/test/dummy/tmp/cache/assets/DD4/BF0/sprockets%2F74d6a551a492207cbe7ef9a8b4d6fdea +0 -0
  246. data/test/dummy/tmp/cache/assets/DDB/A80/sprockets%2F1b4568e9df68ba3beab8a093e6c487ed +0 -0
  247. data/test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994 +0 -0
  248. data/test/dummy/tmp/cache/assets/DEA/6E0/sprockets%2Fea1fee1a4d51c17c3ca11ba896d8d20d +0 -0
  249. data/test/dummy/tmp/cache/assets/DEB/5C0/sprockets%2Fb5511bfe77b3e107e3fdcb20e6ba3f3a +0 -0
  250. data/test/dummy/tmp/cache/assets/DEE/2F0/sprockets%2F84a9fb3ac3f8c95f1bdc9e58ff79b648 +0 -0
  251. data/test/dummy/tmp/cache/assets/DF2/1C0/sprockets%2F3d3c6b606ac3f25bd883a15cc50dcfde +0 -0
  252. data/test/dummy/tmp/cache/assets/DF6/C30/sprockets%2F094cbbee3c8ae3a10a6351b3f879edbe +0 -0
  253. data/test/dummy/tmp/cache/assets/DF9/680/sprockets%2Feb943eab7c94dbb2ff5d4baf180a2825 +0 -0
  254. data/test/dummy/tmp/cache/assets/DF9/BF0/sprockets%2Facce48e27f31adf4ce5d7261eb0d634e +0 -0
  255. data/test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
  256. data/test/dummy/tmp/cache/assets/E30/F30/sprockets%2F2de6682f4a2f69a08c6bbafef6beb13f +0 -0
  257. data/test/dummy/tmp/cache/assets/E34/4E0/sprockets%2Fdfeb62c5bdee854323f83d507eca9ddc +0 -0
  258. data/test/dummy/tmp/cache/assets/E36/600/sprockets%2Fd3efa814e1719cd5ccd9e3f295deba9a +0 -0
  259. data/test/dummy/tmp/cache/assets/E37/AD0/sprockets%2Fffa65557afebb980751c8fed3cccc91a +0 -0
  260. data/test/dummy/tmp/cache/assets/E3A/330/sprockets%2F738a1f7a1b37d9a4edcdb685a9cdfe9c +0 -0
  261. data/test/dummy/tmp/cache/assets/E58/410/sprockets%2F1ffe555dcee543ffc25dc45c0fca2fc0 +0 -0
  262. data/test/dummy/tmp/cache/assets/E5D/A40/sprockets%2F6cfde019cc3feaf0a90cefaa6b39e494 +0 -0
  263. data/test/dummy/tmp/cache/assets/E79/EE0/sprockets%2Fba0bcc8fbaea1603d9e2e98cdab20af4 +0 -0
  264. data/test/dummy/tmp/cache/assets/development/sass/28736f96a991e275b6732cb50220e8c11ba4494b/application.css.scssc +0 -0
  265. data/test/dummy/tmp/cache/assets/development/sass/28736f96a991e275b6732cb50220e8c11ba4494b/components.css.scssc +0 -0
  266. data/test/dummy/tmp/cache/assets/development/sass/28736f96a991e275b6732cb50220e8c11ba4494b/paginations.css.scssc +0 -0
  267. data/test/dummy/tmp/cache/assets/development/sass/95877ca3fb97306427e6a8c3200a77fa726c2979/bootstrap-responsive.scssc +0 -0
  268. data/test/dummy/tmp/cache/assets/development/sass/95877ca3fb97306427e6a8c3200a77fa726c2979/bootstrap.scssc +0 -0
  269. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_accordion.scssc +0 -0
  270. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_alerts.scssc +0 -0
  271. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_breadcrumbs.scssc +0 -0
  272. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_button-groups.scssc +0 -0
  273. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_buttons.scssc +0 -0
  274. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_carousel.scssc +0 -0
  275. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_close.scssc +0 -0
  276. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_code.scssc +0 -0
  277. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_component-animations.scssc +0 -0
  278. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_dropdowns.scssc +0 -0
  279. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_forms.scssc +0 -0
  280. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_grid.scssc +0 -0
  281. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_hero-unit.scssc +0 -0
  282. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_labels-badges.scssc +0 -0
  283. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_layouts.scssc +0 -0
  284. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_media.scssc +0 -0
  285. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_mixins.scssc +0 -0
  286. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_modals.scssc +0 -0
  287. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_navbar.scssc +0 -0
  288. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_navs.scssc +0 -0
  289. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_pager.scssc +0 -0
  290. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_pagination.scssc +0 -0
  291. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_popovers.scssc +0 -0
  292. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_progress-bars.scssc +0 -0
  293. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_reset.scssc +0 -0
  294. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_responsive-1200px-min.scssc +0 -0
  295. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_responsive-767px-max.scssc +0 -0
  296. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_responsive-768px-979px.scssc +0 -0
  297. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_responsive-navbar.scssc +0 -0
  298. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_responsive-utilities.scssc +0 -0
  299. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_scaffolding.scssc +0 -0
  300. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_sprites.scssc +0 -0
  301. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_tables.scssc +0 -0
  302. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_thumbnails.scssc +0 -0
  303. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_tooltip.scssc +0 -0
  304. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_type.scssc +0 -0
  305. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_utilities.scssc +0 -0
  306. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_variables.scssc +0 -0
  307. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/_wells.scssc +0 -0
  308. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/bootstrap.scssc +0 -0
  309. data/test/dummy/tmp/cache/assets/development/sass/c75ed21fe4fe5a931216dc17f876dea4e6c936a7/responsive.scssc +0 -0
  310. data/test/dummy/tmp/cache/assets/development/sprockets/00171108bd75279e653c1ffb5b4650b8 +0 -0
  311. data/test/dummy/tmp/cache/assets/development/sprockets/02a5e97b270aecc19e04af22f1f1cd30 +0 -0
  312. data/test/dummy/tmp/cache/assets/development/sprockets/04184a8816ea3777ee27b854203f6019 +0 -0
  313. data/test/dummy/tmp/cache/assets/development/sprockets/048bae76f95c4ffc9b7af4e6c2785962 +0 -0
  314. data/test/dummy/tmp/cache/assets/development/sprockets/05029f2e1c68338ac88af8005acab3ca +0 -0
  315. data/test/dummy/tmp/cache/assets/development/sprockets/08318fdb5f5b783c22442a6aeb73730e +0 -0
  316. data/test/dummy/tmp/cache/assets/development/sprockets/08f00d4a1bac197d382c2269a184f9e4 +0 -0
  317. data/test/dummy/tmp/cache/assets/development/sprockets/0b6c06f6bcf535567c19f70f7aa5144d +0 -0
  318. data/test/dummy/tmp/cache/assets/development/sprockets/0b9076b70e22dd7976e589018cdf65ca +0 -0
  319. data/test/dummy/tmp/cache/assets/development/sprockets/0e8461b429e0249b8dc74d457fcc17d3 +0 -0
  320. data/test/dummy/tmp/cache/assets/development/sprockets/0f074c0ea10680a3ba979bbd1d2ff756 +0 -0
  321. data/test/dummy/tmp/cache/assets/development/sprockets/0f246c1ee41a544d79fbfe7e4c55395a +0 -0
  322. data/test/dummy/tmp/cache/assets/development/sprockets/0f5877c1fb159c1a5f1602569a0cdde2 +0 -0
  323. data/test/dummy/tmp/cache/assets/development/sprockets/114347d906f6bbc62846207e29d557ea +0 -0
  324. data/test/dummy/tmp/cache/assets/development/sprockets/15963a31c483fd420068248735916590 +0 -0
  325. data/test/dummy/tmp/cache/assets/development/sprockets/16039dc737e753516f4399dcd38d6de7 +0 -0
  326. data/test/dummy/tmp/cache/assets/development/sprockets/17343be9bd7b90029b2d0ba85cc272a6 +0 -0
  327. data/test/dummy/tmp/cache/assets/development/sprockets/22110de5943f742c8678358b15f96778 +0 -0
  328. data/test/dummy/tmp/cache/assets/development/sprockets/2475b7ccd67f97ce69957334b916f93e +0 -0
  329. data/test/dummy/tmp/cache/assets/development/sprockets/264e074302048cb000f909f2919a0c9a +0 -0
  330. data/test/dummy/tmp/cache/assets/development/sprockets/272f5096d49f011351e9f4780c313741 +0 -0
  331. data/test/dummy/tmp/cache/assets/development/sprockets/27a29069244dbf376d0988a1d36240ee +0 -0
  332. data/test/dummy/tmp/cache/assets/development/sprockets/29c2f0fd8e3c5f4dcd1332efa4a0371d +0 -0
  333. data/test/dummy/tmp/cache/assets/development/sprockets/2a2a275912bc287c9d7a3a311488e28c +0 -0
  334. data/test/dummy/tmp/cache/assets/development/sprockets/2a61f06ae5cf5f6f1d43645b9b219453 +0 -0
  335. data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  336. data/test/dummy/tmp/cache/assets/development/sprockets/32ef1c9e94a83350bad5e887c416c5b6 +0 -0
  337. data/test/dummy/tmp/cache/assets/development/sprockets/367865b241c60ef0e9a85c9f9910f7d4 +0 -0
  338. data/test/dummy/tmp/cache/assets/development/sprockets/37984c7de5e7d22002a378234035e51c +0 -0
  339. data/test/dummy/tmp/cache/assets/development/sprockets/40f725c6fe77af21a3d7c750a30b4d72 +0 -0
  340. data/test/dummy/tmp/cache/assets/development/sprockets/4201264f7710f91dc1c389a2497eda7d +0 -0
  341. data/test/dummy/tmp/cache/assets/development/sprockets/4632953f64dffdb8589b67c260f76a80 +0 -0
  342. data/test/dummy/tmp/cache/assets/development/sprockets/46a877b33fea5e34d8af620fa68516f6 +0 -0
  343. data/test/dummy/tmp/cache/assets/development/sprockets/4783fc0456df015fe93e64130dd123c9 +0 -0
  344. data/test/dummy/tmp/cache/assets/development/sprockets/4790af1cc9b3545ffd8c1ad8615c8461 +0 -0
  345. data/test/dummy/tmp/cache/assets/development/sprockets/4e81b6b6eb1e1462b1eea2caee6bfcc6 +0 -0
  346. data/test/dummy/tmp/cache/assets/development/sprockets/518c73ecd762cbf6d85a3ae693e08d01 +0 -0
  347. data/test/dummy/tmp/cache/assets/development/sprockets/536039d2b9042f61449290e282854f4d +0 -0
  348. data/test/dummy/tmp/cache/assets/development/sprockets/54cc1257b927751b13f0369969e17440 +0 -0
  349. data/test/dummy/tmp/cache/assets/development/sprockets/563bd386568f5c565af0f5e77d1465b6 +0 -0
  350. data/test/dummy/tmp/cache/assets/development/sprockets/56401bbafd08927b55572c8ef7e88883 +0 -0
  351. data/test/dummy/tmp/cache/assets/development/sprockets/58548b7df7a227fd1bf04f0c6dfccf36 +0 -0
  352. data/test/dummy/tmp/cache/assets/development/sprockets/5865993e4fa54b7f6f0186ebaffff12b +0 -0
  353. data/test/dummy/tmp/cache/assets/development/sprockets/5f206472cf6bcde2e61740cb5386efe6 +0 -0
  354. data/test/dummy/tmp/cache/assets/development/sprockets/5f4079f15430a7602518336faeccf957 +0 -0
  355. data/test/dummy/tmp/cache/assets/development/sprockets/5f62321f43b55988b6cb95367556d822 +0 -0
  356. data/test/dummy/tmp/cache/assets/development/sprockets/653178c2e0c5d134069e58196f7bf28e +0 -0
  357. data/test/dummy/tmp/cache/assets/development/sprockets/661c74f15a009d482fdad85f811e6f8e +0 -0
  358. data/test/dummy/tmp/cache/assets/development/sprockets/6645261a77362094829edc9269130cf4 +0 -0
  359. data/test/dummy/tmp/cache/assets/development/sprockets/6668d3ee30c1513097c95bcc0a27696a +0 -0
  360. data/test/dummy/tmp/cache/assets/development/sprockets/698c4f478493aa93e94a2c32cdd5f1cc +0 -0
  361. data/test/dummy/tmp/cache/assets/development/sprockets/69c3968e244ecbe63dba17e07301aa68 +0 -0
  362. data/test/dummy/tmp/cache/assets/development/sprockets/6a859ca0860b6b2173eaea6c1abd630a +0 -0
  363. data/test/dummy/tmp/cache/assets/development/sprockets/6a98434027a1ee08391a7294b1aa7a67 +0 -0
  364. data/test/dummy/tmp/cache/assets/development/sprockets/6ba848548341f31a12f3af01e5bcb01e +0 -0
  365. data/test/dummy/tmp/cache/assets/development/sprockets/700827acd727b6fc8361f454c68a5cd7 +0 -0
  366. data/test/dummy/tmp/cache/assets/development/sprockets/715840f8887bc1e70ef3cc18b429cbc8 +0 -0
  367. data/test/dummy/tmp/cache/assets/development/sprockets/754b02ea2ed1c85b7756de6452f4aeb7 +0 -0
  368. data/test/dummy/tmp/cache/assets/development/sprockets/779fd39741d5f4364f4453e6d9db3a8c +0 -0
  369. data/test/dummy/tmp/cache/assets/development/sprockets/789ee96fc4d6c86c29c7859b5a5fb64e +0 -0
  370. data/test/dummy/tmp/cache/assets/development/sprockets/78fdc1d9add39ed3fdcbf7cae3df4190 +0 -0
  371. data/test/dummy/tmp/cache/assets/development/sprockets/7b2d3e5e25b0901f78fbf8c9cb9570c4 +0 -0
  372. data/test/dummy/tmp/cache/assets/development/sprockets/7d3e001df1afe33a8b5380b294997051 +0 -0
  373. data/test/dummy/tmp/cache/assets/development/sprockets/7ee9049cecde358160bb72854ce9981e +0 -0
  374. data/test/dummy/tmp/cache/assets/development/sprockets/805a755d6887dd3f251ee8d671113a55 +0 -0
  375. data/test/dummy/tmp/cache/assets/development/sprockets/833fa0f8ca6eda2934d5875796ac0ddb +0 -0
  376. data/test/dummy/tmp/cache/assets/development/sprockets/84eb79ed8e43cf9414e6ecfd38c5a19f +0 -0
  377. data/test/dummy/tmp/cache/assets/development/sprockets/87a55c890eedab0cc5d1e3f2c2b2da4b +0 -0
  378. data/test/dummy/tmp/cache/assets/development/sprockets/87efe66475e2e502b42c392ff8273442 +0 -0
  379. data/test/dummy/tmp/cache/assets/development/sprockets/8ab512c9b33ac90e699b73469d71f061 +0 -0
  380. data/test/dummy/tmp/cache/assets/development/sprockets/8bd5ee2e9abbe312a72a1cec2ea714a7 +0 -0
  381. data/test/dummy/tmp/cache/assets/development/sprockets/8cc360b254f1bff91753f954e7591a9b +0 -0
  382. data/test/dummy/tmp/cache/assets/development/sprockets/8cef39f720d3603419826280adad9372 +0 -0
  383. data/test/dummy/tmp/cache/assets/development/sprockets/8d55d8baa9ba44e3a712be2608138977 +0 -0
  384. data/test/dummy/tmp/cache/assets/development/sprockets/8ec990d84f5dedd35001397078415137 +0 -0
  385. data/test/dummy/tmp/cache/assets/development/sprockets/94e46c0e76c8f392586af76b0f6c6e93 +0 -0
  386. data/test/dummy/tmp/cache/assets/development/sprockets/959e668443f5574a25645a9cb54649f5 +0 -0
  387. data/test/dummy/tmp/cache/assets/development/sprockets/968566581a35be861fa4f8fed757dcae +0 -0
  388. data/test/dummy/tmp/cache/assets/development/sprockets/98f1b84ebd547f6cd07a548569b3e1ae +0 -0
  389. data/test/dummy/tmp/cache/assets/development/sprockets/9b51a99e821d1802733dceac6764d18f +0 -0
  390. data/test/dummy/tmp/cache/assets/development/sprockets/9e6dd98de3da516019c66e5cea7aaa7f +0 -0
  391. data/test/dummy/tmp/cache/assets/development/sprockets/a0a671e624f03533a82b1ec899bf3b21 +0 -0
  392. data/test/dummy/tmp/cache/assets/development/sprockets/a0f669003bef02490064a16cfdb916fe +0 -0
  393. data/test/dummy/tmp/cache/assets/development/sprockets/a5b779be5a68643653ca723bce23c62c +0 -0
  394. data/test/dummy/tmp/cache/assets/development/sprockets/a71be32ef78d975a6d1d5e32143d05ee +0 -0
  395. data/test/dummy/tmp/cache/assets/development/sprockets/a899e19256a0845205636938010c6fe5 +0 -0
  396. data/test/dummy/tmp/cache/assets/development/sprockets/a927b1e06ff9451df692de08dca0e08f +0 -0
  397. data/test/dummy/tmp/cache/assets/development/sprockets/a97cd428904e5968d05f7d3a5fd50f85 +0 -0
  398. data/test/dummy/tmp/cache/assets/development/sprockets/aa87366fe7cd02f1be035665580cf066 +0 -0
  399. data/test/dummy/tmp/cache/assets/development/sprockets/ad1e6aa474266554a6dd880d462f633e +0 -0
  400. data/test/dummy/tmp/cache/assets/development/sprockets/af5ab48d2f371513fb609f8bdec3ac42 +0 -0
  401. data/test/dummy/tmp/cache/assets/development/sprockets/b0f49e3da03027c5e6d62ed7a5f49a43 +0 -0
  402. data/test/dummy/tmp/cache/assets/development/sprockets/b51a3679ccee92d6e374deac3359cc69 +0 -0
  403. data/test/dummy/tmp/cache/assets/development/sprockets/b58136bb390cf7c8bb94be5d819a0480 +0 -0
  404. data/test/dummy/tmp/cache/assets/development/sprockets/b7f56c6511e2ad0e7534e6f578b9070d +0 -0
  405. data/test/dummy/tmp/cache/assets/development/sprockets/ba8d058dd931d04837d9f0cf2a0ad5aa +0 -0
  406. data/test/dummy/tmp/cache/assets/development/sprockets/baed877d386dc374496dcd62af36bc5b +0 -0
  407. data/test/dummy/tmp/cache/assets/development/sprockets/bcca522c6302f184f12fe0e8a7d7e71a +0 -0
  408. data/test/dummy/tmp/cache/assets/development/sprockets/c09bd2cb81885f4b03d7c53a3d85fdb1 +0 -0
  409. data/test/dummy/tmp/cache/assets/development/sprockets/c13fc73ceafa45876a901b3e775b83ae +0 -0
  410. data/test/dummy/tmp/cache/assets/development/sprockets/c3ca63a68d9a17cf1beb8e708ffbd3ca +0 -0
  411. data/test/dummy/tmp/cache/assets/development/sprockets/c61c40e35c6ac853de21fd169c1c82b9 +0 -0
  412. data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  413. data/test/dummy/tmp/cache/assets/development/sprockets/d4c36568a5145e04bfbbefd37fecdde7 +0 -0
  414. data/test/dummy/tmp/cache/assets/development/sprockets/d75dd624db3682fd4fed243c5f6f2e69 +0 -0
  415. data/test/dummy/tmp/cache/assets/development/sprockets/d9fa58e1385bfb03f2ede65c90f36d70 +0 -0
  416. data/test/dummy/tmp/cache/assets/development/sprockets/db6179f67e9b6827b5870d2c1b6ccd3d +0 -0
  417. data/test/dummy/tmp/cache/assets/development/sprockets/de77caafdd411db4363036050ebbcbc9 +0 -0
  418. data/test/dummy/tmp/cache/assets/development/sprockets/e00413c4a11f1d7ee89901fd0cde57ec +0 -0
  419. data/test/dummy/tmp/cache/assets/development/sprockets/e0b0b28cfa788f3dd5e1608b17d49d40 +0 -0
  420. data/test/dummy/tmp/cache/assets/development/sprockets/e1eaf02d2c8b06a52fc43dd67875cf47 +0 -0
  421. data/test/dummy/tmp/cache/assets/development/sprockets/e256294192259b5603b8dc971d9d6a11 +0 -0
  422. data/test/dummy/tmp/cache/assets/development/sprockets/e6df0f40358bfc2568038d9cf71859a5 +0 -0
  423. data/test/dummy/tmp/cache/assets/development/sprockets/e7e85a25f51035ffdd3f6a0aa5ae9365 +0 -0
  424. data/test/dummy/tmp/cache/assets/development/sprockets/e9526b43370458899ac7c192f651ec8b +0 -0
  425. data/test/dummy/tmp/cache/assets/development/sprockets/edefa48dfc6b66b08d68e6438d1344b4 +0 -0
  426. data/test/dummy/tmp/cache/assets/development/sprockets/f54e09def1ebda9d30f2c9e507c4cfed +0 -0
  427. data/test/dummy/tmp/cache/assets/development/sprockets/f55c8dc7137551c5fff69d2c179ea900 +0 -0
  428. data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  429. data/test/dummy/tmp/cache/assets/development/sprockets/fde3d3c8658f07dd5aef16cc104c05c9 +0 -0
  430. data/test/dummy/tmp/cache/assets/development/sprockets/feb5e7071e30ce243a861932e21945b1 +0 -0
  431. data/test/dummy/tmp/cache/sass/027d3fbe01791eb6107c6a3ad3a9a18ef7806de0/fcbklistselection.scssc +0 -0
  432. data/test/dummy/tmp/cache/sass/476f0290d8684ee445559257946d9bfbba0a7490/bootstrap-base.scssc +0 -0
  433. data/test/dummy/tmp/cache/sass/476f0290d8684ee445559257946d9bfbba0a7490/bootstrap-comp.scssc +0 -0
  434. data/test/dummy/tmp/cache/sass/476f0290d8684ee445559257946d9bfbba0a7490/bootstrap-form.scssc +0 -0
  435. data/test/dummy/tmp/cache/sass/476f0290d8684ee445559257946d9bfbba0a7490/bootstrap-media.scssc +0 -0
  436. data/test/dummy/tmp/cache/sass/476f0290d8684ee445559257946d9bfbba0a7490/bootstrap-mixin.scssc +0 -0
  437. data/test/dummy/tmp/cache/sass/476f0290d8684ee445559257946d9bfbba0a7490/bootstrap-table.scssc +0 -0
  438. data/test/dummy/tmp/cache/sass/7962b5625c147f225692330aa36a6e4a877e2e52/fcbklistselection.scssc +0 -0
  439. data/test/dummy/tmp/cache/sass/e4850d758e9663c32ffb065821c1e8a49db1e755/bootstrap-base.scssc +0 -0
  440. data/test/dummy/tmp/cache/sass/e4850d758e9663c32ffb065821c1e8a49db1e755/bootstrap-comp.scssc +0 -0
  441. data/test/dummy/tmp/cache/sass/e4850d758e9663c32ffb065821c1e8a49db1e755/bootstrap-form.scssc +0 -0
  442. data/test/dummy/tmp/cache/sass/e4850d758e9663c32ffb065821c1e8a49db1e755/bootstrap-media.scssc +0 -0
  443. data/test/dummy/tmp/cache/sass/e4850d758e9663c32ffb065821c1e8a49db1e755/bootstrap-mixin.scssc +0 -0
  444. data/test/dummy/tmp/cache/sass/e4850d758e9663c32ffb065821c1e8a49db1e755/bootstrap-table.scssc +0 -0
  445. data/test/test_helper.rb +15 -0
  446. data/test/unit/helpers/bootstrap_base_helper_test.rb +47 -0
  447. data/test/unit/helpers/bootstrap_button_helper_test.rb +56 -0
  448. data/test/unit/helpers/bootstrap_component_helper_test.rb +130 -0
  449. data/test/unit/helpers/bootstrap_notify_helper_test.rb +10 -0
  450. data/test/unit/helpers/bootstrap_tab_helper_test.rb +27 -0
  451. metadata +1021 -0
@@ -0,0 +1,422 @@
1
+ /* ===========================================================
2
+ * bootstrap-modalmanager.js v2.2.0
3
+ * ===========================================================
4
+ * Copyright 2012 Jordan Schroter.
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ * ========================================================== */
18
+
19
+ !function ($) {
20
+
21
+ "use strict"; // jshint ;_;
22
+
23
+ /* MODAL MANAGER CLASS DEFINITION
24
+ * ====================== */
25
+
26
+ var ModalManager = function (element, options) {
27
+ this.init(element, options);
28
+ };
29
+
30
+ ModalManager.prototype = {
31
+
32
+ constructor: ModalManager,
33
+
34
+ init: function (element, options) {
35
+ this.$element = $(element);
36
+ this.options = $.extend({}, $.fn.modalmanager.defaults, this.$element.data(), typeof options == 'object' && options);
37
+ this.stack = [];
38
+ this.backdropCount = 0;
39
+
40
+ if (this.options.resize) {
41
+ var resizeTimeout,
42
+ that = this;
43
+
44
+ $(window).on('resize.modal', function(){
45
+ resizeTimeout && clearTimeout(resizeTimeout);
46
+ resizeTimeout = setTimeout(function(){
47
+ for (var i = 0; i < that.stack.length; i++){
48
+ that.stack[i].isShown && that.stack[i].layout();
49
+ }
50
+ }, 10);
51
+ });
52
+ }
53
+ },
54
+
55
+ createModal: function (element, options) {
56
+ $(element).modal($.extend({ manager: this }, options));
57
+ },
58
+
59
+ appendModal: function (modal) {
60
+ this.stack.push(modal);
61
+
62
+ var that = this;
63
+
64
+ modal.$element.on('show.modalmanager', targetIsSelf(function (e) {
65
+
66
+ var showModal = function(){
67
+ modal.isShown = true;
68
+
69
+ var transition = $.support.transition && modal.$element.hasClass('fade');
70
+
71
+ that.$element
72
+ .toggleClass('modal-open', that.hasOpenModal())
73
+ .toggleClass('page-overflow', $(window).height() < that.$element.height());
74
+
75
+ modal.$parent = modal.$element.parent();
76
+
77
+ modal.$container = that.createContainer(modal);
78
+
79
+ modal.$element.appendTo(modal.$container);
80
+
81
+ that.backdrop(modal, function () {
82
+ modal.$element.show();
83
+
84
+ if (transition) {
85
+ //modal.$element[0].style.display = 'run-in';
86
+ modal.$element[0].offsetWidth;
87
+ //modal.$element.one($.support.transition.end, function () { modal.$element[0].style.display = 'block' });
88
+ }
89
+
90
+ modal.layout();
91
+
92
+ modal.$element
93
+ .addClass('in')
94
+ .attr('aria-hidden', false);
95
+
96
+ var complete = function () {
97
+ that.setFocus();
98
+ modal.$element.trigger('shown');
99
+ };
100
+
101
+ transition ?
102
+ modal.$element.one($.support.transition.end, complete) :
103
+ complete();
104
+ });
105
+ };
106
+
107
+ modal.options.replace ?
108
+ that.replace(showModal) :
109
+ showModal();
110
+ }));
111
+
112
+ modal.$element.on('hidden.modalmanager', targetIsSelf(function (e) {
113
+
114
+ that.backdrop(modal);
115
+ if (modal.$backdrop){
116
+ var transition = $.support.transition && modal.$element.hasClass('fade');
117
+
118
+ // trigger a relayout due to firebox's buggy transition end event
119
+ if (transition) { modal.$element[0].offsetWidth; }
120
+
121
+ $.support.transition && modal.$element.hasClass('fade') ?
122
+ modal.$backdrop.one($.support.transition.end, function () { that.destroyModal(modal) }) :
123
+ that.destroyModal(modal);
124
+ } else {
125
+ that.destroyModal(modal);
126
+ }
127
+
128
+ }));
129
+
130
+ modal.$element.on('destroy.modalmanager', targetIsSelf(function (e) {
131
+ that.removeModal(modal);
132
+ }));
133
+
134
+ },
135
+
136
+ destroyModal: function (modal) {
137
+ modal.destroy();
138
+
139
+ var hasOpenModal = this.hasOpenModal();
140
+
141
+ this.$element.toggleClass('modal-open', hasOpenModal);
142
+
143
+ if (!hasOpenModal){
144
+ this.$element.removeClass('page-overflow');
145
+ }
146
+
147
+ this.removeContainer(modal);
148
+
149
+ this.setFocus();
150
+ },
151
+
152
+ getOpenModals: function () {
153
+ var openModals = [];
154
+ for (var i = 0; i < this.stack.length; i++){
155
+ if (this.stack[i].isShown) openModals.push(this.stack[i]);
156
+ }
157
+
158
+ return openModals;
159
+ },
160
+
161
+ hasOpenModal: function () {
162
+ return this.getOpenModals().length > 0;
163
+ },
164
+
165
+ setFocus: function () {
166
+ var topModal;
167
+
168
+ for (var i = 0; i < this.stack.length; i++){
169
+ if (this.stack[i].isShown) topModal = this.stack[i];
170
+ }
171
+
172
+ if (!topModal) return;
173
+
174
+ topModal.focus();
175
+
176
+ },
177
+
178
+ removeModal: function (modal) {
179
+ modal.$element.off('.modalmanager');
180
+ if (modal.$backdrop) this.removeBackdrop(modal);
181
+ this.stack.splice(this.getIndexOfModal(modal), 1);
182
+ },
183
+
184
+ getModalAt: function (index) {
185
+ return this.stack[index];
186
+ },
187
+
188
+ getIndexOfModal: function (modal) {
189
+ for (var i = 0; i < this.stack.length; i++){
190
+ if (modal === this.stack[i]) return i;
191
+ }
192
+ },
193
+
194
+ replace: function (callback) {
195
+ var topModal;
196
+
197
+ for (var i = 0; i < this.stack.length; i++){
198
+ if (this.stack[i].isShown) topModal = this.stack[i];
199
+ }
200
+
201
+ if (topModal) {
202
+ this.$backdropHandle = topModal.$backdrop;
203
+ topModal.$backdrop = null;
204
+
205
+ callback && topModal.$element.one('hidden',
206
+ targetIsSelf( $.proxy(callback, this) ));
207
+
208
+ topModal.hide();
209
+ } else if (callback) {
210
+ callback();
211
+ }
212
+ },
213
+
214
+ removeBackdrop: function (modal) {
215
+ modal.$backdrop.remove();
216
+ modal.$backdrop = null;
217
+ },
218
+
219
+ createBackdrop: function (animate, tmpl) {
220
+ var $backdrop;
221
+
222
+ if (!this.$backdropHandle) {
223
+ $backdrop = $(tmpl)
224
+ .addClass(animate)
225
+ .appendTo(this.$element);
226
+ } else {
227
+ $backdrop = this.$backdropHandle;
228
+ $backdrop.off('.modalmanager');
229
+ this.$backdropHandle = null;
230
+ this.isLoading && this.removeSpinner();
231
+ }
232
+
233
+ return $backdrop;
234
+ },
235
+
236
+ removeContainer: function (modal) {
237
+ modal.$container.remove();
238
+ modal.$container = null;
239
+ },
240
+
241
+ createContainer: function (modal) {
242
+ var $container;
243
+
244
+ $container = $('<div class="modal-scrollable">')
245
+ .css('z-index', getzIndex('modal', this.getOpenModals().length))
246
+ .appendTo(this.$element);
247
+
248
+ if (modal && modal.options.backdrop != 'static') {
249
+ $container.on('click.modal', targetIsSelf(function (e) {
250
+ modal.hide();
251
+ }));
252
+ } else if (modal) {
253
+ $container.on('click.modal', targetIsSelf(function (e) {
254
+ modal.attention();
255
+ }));
256
+ }
257
+
258
+ return $container;
259
+
260
+ },
261
+
262
+ backdrop: function (modal, callback) {
263
+ var animate = modal.$element.hasClass('fade') ? 'fade' : '',
264
+ showBackdrop = modal.options.backdrop &&
265
+ this.backdropCount < this.options.backdropLimit;
266
+
267
+ if (modal.isShown && showBackdrop) {
268
+ var doAnimate = $.support.transition && animate && !this.$backdropHandle;
269
+
270
+ modal.$backdrop = this.createBackdrop(animate, modal.options.backdropTemplate);
271
+
272
+ modal.$backdrop.css('z-index', getzIndex( 'backdrop', this.getOpenModals().length ));
273
+
274
+ if (doAnimate) modal.$backdrop[0].offsetWidth; // force reflow
275
+
276
+ modal.$backdrop.addClass('in');
277
+
278
+ this.backdropCount += 1;
279
+
280
+ doAnimate ?
281
+ modal.$backdrop.one($.support.transition.end, callback) :
282
+ callback();
283
+
284
+ } else if (!modal.isShown && modal.$backdrop) {
285
+ modal.$backdrop.removeClass('in');
286
+
287
+ this.backdropCount -= 1;
288
+
289
+ var that = this;
290
+
291
+ $.support.transition && modal.$element.hasClass('fade')?
292
+ modal.$backdrop.one($.support.transition.end, function () { that.removeBackdrop(modal) }) :
293
+ that.removeBackdrop(modal);
294
+
295
+ } else if (callback) {
296
+ callback();
297
+ }
298
+ },
299
+
300
+ removeSpinner: function(){
301
+ this.$spinner && this.$spinner.remove();
302
+ this.$spinner = null;
303
+ this.isLoading = false;
304
+ },
305
+
306
+ removeLoading: function () {
307
+ this.$backdropHandle && this.$backdropHandle.remove();
308
+ this.$backdropHandle = null;
309
+ this.removeSpinner();
310
+ },
311
+
312
+ loading: function (callback) {
313
+ callback = callback || function () { };
314
+
315
+ this.$element
316
+ .toggleClass('modal-open', !this.isLoading || this.hasOpenModal())
317
+ .toggleClass('page-overflow', $(window).height() < this.$element.height());
318
+
319
+ if (!this.isLoading) {
320
+
321
+ this.$backdropHandle = this.createBackdrop('fade', this.options.backdropTemplate);
322
+
323
+ this.$backdropHandle[0].offsetWidth; // force reflow
324
+
325
+ var openModals = this.getOpenModals();
326
+
327
+ this.$backdropHandle
328
+ .css('z-index', getzIndex('backdrop', openModals.length + 1))
329
+ .addClass('in');
330
+
331
+ var $spinner = $(this.options.spinner)
332
+ .css('z-index', getzIndex('modal', openModals.length + 1))
333
+ .appendTo(this.$element)
334
+ .addClass('in');
335
+
336
+ this.$spinner = $(this.createContainer())
337
+ .append($spinner)
338
+ .on('click.modalmanager', $.proxy(this.loading, this));
339
+
340
+ this.isLoading = true;
341
+
342
+ $.support.transition ?
343
+ this.$backdropHandle.one($.support.transition.end, callback) :
344
+ callback();
345
+
346
+ } else if (this.isLoading && this.$backdropHandle) {
347
+ this.$backdropHandle.removeClass('in');
348
+
349
+ var that = this;
350
+ $.support.transition ?
351
+ this.$backdropHandle.one($.support.transition.end, function () { that.removeLoading() }) :
352
+ that.removeLoading();
353
+
354
+ } else if (callback) {
355
+ callback(this.isLoading);
356
+ }
357
+ }
358
+ };
359
+
360
+ /* PRIVATE METHODS
361
+ * ======================= */
362
+
363
+ // computes and caches the zindexes
364
+ var getzIndex = (function () {
365
+ var zIndexFactor,
366
+ baseIndex = {};
367
+
368
+ return function (type, pos) {
369
+
370
+ if (typeof zIndexFactor === 'undefined'){
371
+ var $baseModal = $('<div class="modal hide" />').appendTo('body'),
372
+ $baseBackdrop = $('<div class="modal-backdrop hide" />').appendTo('body');
373
+
374
+ baseIndex['modal'] = +$baseModal.css('z-index');
375
+ baseIndex['backdrop'] = +$baseBackdrop.css('z-index');
376
+ zIndexFactor = baseIndex['modal'] - baseIndex['backdrop'];
377
+
378
+ $baseModal.remove();
379
+ $baseBackdrop.remove();
380
+ $baseBackdrop = $baseModal = null;
381
+ }
382
+
383
+ return baseIndex[type] + (zIndexFactor * pos);
384
+
385
+ }
386
+ }());
387
+
388
+ // make sure the event target is the modal itself in order to prevent
389
+ // other components such as tabsfrom triggering the modal manager.
390
+ // if Boostsrap namespaced events, this would not be needed.
391
+ function targetIsSelf(callback){
392
+ return function (e) {
393
+ if (this === e.target){
394
+ return callback.apply(this, arguments);
395
+ }
396
+ }
397
+ }
398
+
399
+
400
+ /* MODAL MANAGER PLUGIN DEFINITION
401
+ * ======================= */
402
+
403
+ $.fn.modalmanager = function (option, args) {
404
+ return this.each(function () {
405
+ var $this = $(this),
406
+ data = $this.data('modalmanager');
407
+
408
+ if (!data) $this.data('modalmanager', (data = new ModalManager(this, option)));
409
+ if (typeof option === 'string') data[option].apply(data, [].concat(args))
410
+ })
411
+ };
412
+
413
+ $.fn.modalmanager.defaults = {
414
+ backdropLimit: 999,
415
+ resize: true,
416
+ spinner: '<div class="loading-spinner fade" style="width: 200px; margin-left: -100px;"><div class="progress progress-striped active"><div class="bar" style="width: 100%;"></div></div></div>',
417
+ backdropTemplate: '<div class="modal-backdrop" />'
418
+ };
419
+
420
+ $.fn.modalmanager.Constructor = ModalManager
421
+
422
+ }(jQuery);
@@ -0,0 +1,254 @@
1
+ $(function(){
2
+ //===================================================
3
+ // Replace alert and confirm with bootbox
4
+ //===================================================
5
+ var _alert = window.alert;
6
+
7
+ window.alert = function (message) {
8
+ bootbox.alert(message);
9
+ }
10
+
11
+ $.rails.newLinkClickSelector = $.rails.linkClickSelector + ', a[data-js]';
12
+ $.rails.newButtonClickSelector = $.rails.buttonClickSelector + ', button[data-js], button[href]';
13
+
14
+ $.rails.confirm = function (message, callback) {
15
+ bootbox.confirm(message, callback);
16
+ }
17
+
18
+ $.rails.processLink = function (element) {
19
+ if (element.data('js') !== undefined) {
20
+ eval(element.data('js'));
21
+ return false;
22
+
23
+ }
24
+ else if (element.attr('href') !== undefined) {
25
+ if (element.attr('target') !== undefined) {
26
+ switch (element.attr('target')) {
27
+ case '_blank':
28
+ window.open(element.attr('href'));
29
+ break;
30
+ case '_self':
31
+ window.location = element.attr('href');
32
+ break;
33
+ case '_parent':
34
+ window.parent.location = element.attr('href');
35
+ break;
36
+ case '_top':
37
+ window.top.location = element.attr('href');
38
+ break;
39
+ default:
40
+ window.top.frames[element.attr('target')].location = element.attr('href');
41
+ }
42
+ }
43
+ else
44
+ window.location = element.attr('href');
45
+
46
+
47
+ return false;
48
+ }
49
+ }
50
+
51
+ $.rails.allowAction = function (element, callback, directCall) {
52
+ var message = element.data('confirm');
53
+
54
+ if (!message) {
55
+ return directCall($(element));
56
+ }
57
+
58
+ if ($.rails.fire(element, 'confirm')) {
59
+ $.rails.confirm(message, function (result) {
60
+ callback(result);
61
+ $.rails.fire(element, 'confirm:complete', [result]);
62
+ });
63
+ }
64
+ }
65
+
66
+ //---------------------------------------------------
67
+ // link
68
+ //---------------------------------------------------
69
+ $.rails.linkClick = function (link) {
70
+ var method = link.data('method'), data = link.data('params');
71
+ if (link.is($.rails.linkDisableSelector)) $.rails.disableElement(link);
72
+
73
+ if (link.data('remote') !== undefined) {
74
+ if ((e.metaKey || e.ctrlKey) && (!method || method === 'GET') && !data) {
75
+ return true;
76
+ }
77
+
78
+ var handleRemote = $.rails.handleRemote(link);
79
+ // response from rails.handleRemote() will either be false or a deferred object promise.
80
+ if (handleRemote === false) {
81
+ $.rails.enableElement(link);
82
+ } else {
83
+ handleRemote.error(function () {
84
+ $.rails.enableElement(link);
85
+ });
86
+ }
87
+ return false;
88
+
89
+ } else if (link.data('method')) {
90
+ $.rails.handleMethod(link);
91
+ return false;
92
+ }
93
+
94
+ return $.rails.processLink(link);
95
+ }
96
+
97
+ $(document).off('click.rails', $.rails.linkClickSelector);
98
+
99
+ $(document).on('click.rails', $.rails.newLinkClickSelector, function (e) {
100
+ e.preventDefault();
101
+
102
+ var link = $(this);
103
+ $.rails.allowAction(link, function (result) {
104
+ if (result) {
105
+ return $.rails.linkClick(link);
106
+ }
107
+ else
108
+ return $.rails.stopEverything(e);
109
+ }, $.rails.linkClick);
110
+ });
111
+
112
+ //---------------------------------------------------
113
+ // button
114
+ //---------------------------------------------------
115
+ $.rails.buttonClick = function (button) {
116
+ if (button.data('remote') !== undefined) {
117
+ $.rails.handleRemote(button);
118
+ return false;
119
+ }
120
+
121
+ return $.rails.processLink(button);
122
+ }
123
+
124
+
125
+ $(document).off('click.rails', $.rails.buttonClickSelector);
126
+
127
+ $(document).on('click.rails', $.rails.newButtonClickSelector, function (e) {
128
+ e.preventDefault();
129
+
130
+ var button = $(this);
131
+ $.rails.allowAction(button, function (result) {
132
+ if (result) {
133
+ return $.rails.buttonClick(button);
134
+ }
135
+ else
136
+ return $.rails.stopEverything(e);
137
+ }, $.rails.buttonClick);
138
+ });
139
+
140
+ //---------------------------------------------------
141
+ // change event
142
+ //---------------------------------------------------
143
+ $.rails.inputChange = function (input) {
144
+ $.rails.handleRemote(input);
145
+ return false;
146
+ }
147
+
148
+ $(document).off('change.rails', $.rails.inputChangeSelector);
149
+
150
+ $(document).on('change.rails', $.rails.inputChangeSelector, function (e) {
151
+ e.preventDefault();
152
+
153
+ var link = $(this);
154
+ $.rails.allowAction(link, function (result) {
155
+ if (result) {
156
+ return $.rails.inputChange(link);
157
+ }
158
+ else
159
+ return $.rails.stopEverything(e);
160
+ }, $.rails.inputChange);
161
+ });
162
+
163
+ //---------------------------------------------------
164
+ // form
165
+ //---------------------------------------------------
166
+ $.rails.formSubmit = function (form) {
167
+ var remote = form.data('remote') !== undefined,
168
+ blankRequiredInputs = $.rails.blankInputs(form, $.rails.requiredInputSelector),
169
+ nonBlankFileInputs = $.rails.nonBlankInputs(form, $.rails.fileInputSelector);
170
+
171
+ // skip other logic when required values are missing or file upload is present
172
+ if (blankRequiredInputs && form.attr("novalidate") == undefined && $.rails.fire(form, 'ajax:aborted:required', [blankRequiredInputs])) {
173
+ return $.rails.stopEverything(e);
174
+ }
175
+
176
+ if (remote) {
177
+ if (nonBlankFileInputs) {
178
+ // slight timeout so that the submit button gets properly serialized
179
+ // (make it easy for event handler to serialize form without disabled values)
180
+ setTimeout(function () {
181
+ $.rails.disableFormElements(form);
182
+ }, 13);
183
+ var aborted = $.rails.fire(form, 'ajax:aborted:file', [nonBlankFileInputs]);
184
+
185
+ // re-enable form elements if event bindings return false (canceling normal form submission)
186
+ if (!aborted) {
187
+ setTimeout(function () {
188
+ $.rails.enableFormElements(form);
189
+ }, 13);
190
+ }
191
+
192
+ return aborted;
193
+ }
194
+
195
+ $.rails.handleRemote(form);
196
+ return false;
197
+
198
+ } else {
199
+ // slight timeout so that the submit button gets properly serialized
200
+ setTimeout(function () {
201
+ $.rails.disableFormElements(form);
202
+ }, 13);
203
+
204
+ form[0].submit();
205
+ }
206
+ }
207
+
208
+ $(document).off('submit.rails', $.rails.formSubmitSelector);
209
+
210
+ $(document).on('submit.rails', $.rails.formSubmitSelector, function (e) {
211
+ e.preventDefault();
212
+
213
+ var form = $(this);
214
+
215
+ $.rails.allowAction(form, function (result) {
216
+ if (result) {
217
+ return $.rails.formSubmit(form);
218
+ }
219
+ else
220
+ return $.rails.stopEverything(e);
221
+ }, $.rails.formSubmit);
222
+ });
223
+
224
+ //---------------------------------------------------
225
+ // submit
226
+ //---------------------------------------------------
227
+ $.rails.formInputClick = function (button) {
228
+ // register the pressed submit button
229
+ var name = button.attr('name'),
230
+ data = name ? {name: name, value: button.val()} : null;
231
+
232
+ button.closest('form').data('ujs:submit-button', data);
233
+ var submitButton = $('<input>', {type: 'hidden', name: name, value: button.val()});
234
+ var form = button.closest('form');
235
+ form.append(submitButton);
236
+ form[0].submit();
237
+ submitButton.remove();
238
+ }
239
+
240
+ $(document).off('click.rails', $.rails.formInputClickSelector);
241
+
242
+ $(document).on('click.rails', $.rails.formInputClickSelector, function (e) {
243
+ e.preventDefault();
244
+
245
+ var button = $(this);
246
+ $.rails.allowAction(button, function (result) {
247
+ if (result) {
248
+ return $.rails.formInputClick(button);
249
+ }
250
+ else
251
+ return $.rails.stopEverything(e);
252
+ }, $.rails.formInputClick);
253
+ });
254
+ });