ceo 0.1.7 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (449) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +135 -0
  3. data/app/assets/stylesheets/admin/application.sass +59 -0
  4. data/app/assets/stylesheets/admin/base/forms.sass +138 -0
  5. data/app/assets/stylesheets/admin/base/layout.sass +6 -0
  6. data/app/assets/stylesheets/admin/base/lists.sass +14 -0
  7. data/app/assets/stylesheets/admin/base/scale.sass +8 -0
  8. data/app/assets/stylesheets/admin/base/svg.sass +9 -0
  9. data/app/assets/stylesheets/admin/base/tables.sass +32 -0
  10. data/app/assets/stylesheets/admin/base/type.sass +120 -0
  11. data/app/assets/stylesheets/admin/components/content.sass +13 -0
  12. data/app/assets/stylesheets/admin/components/filters.sass +145 -0
  13. data/app/assets/stylesheets/admin/components/forms.sass +5 -0
  14. data/app/assets/stylesheets/admin/components/header.sass +21 -0
  15. data/app/assets/stylesheets/admin/components/links.sass +5 -0
  16. data/app/assets/stylesheets/admin/components/nav.sass +112 -0
  17. data/app/assets/stylesheets/admin/components/notifier.sass +5 -0
  18. data/app/assets/stylesheets/admin/components/sidebar.sass +10 -0
  19. data/app/assets/stylesheets/admin/components/user.sass +11 -0
  20. data/app/assets/stylesheets/admin/generic/reset.sass +35 -0
  21. data/app/assets/stylesheets/admin/objects/avatar.sass +11 -0
  22. data/app/assets/stylesheets/admin/objects/cart.sass +12 -0
  23. data/app/assets/stylesheets/admin/objects/layout.sass +19 -0
  24. data/app/assets/stylesheets/admin/objects/lists.sass +26 -0
  25. data/app/assets/stylesheets/admin/objects/logo.sass +3 -0
  26. data/app/assets/stylesheets/admin/objects/nav.sass +38 -0
  27. data/app/assets/stylesheets/admin/objects/panels.sass +42 -0
  28. data/app/assets/stylesheets/admin/objects/search.sass +25 -0
  29. data/app/assets/stylesheets/admin/objects/tables.sass +85 -0
  30. data/app/assets/stylesheets/admin/objects/titles.sass +43 -0
  31. data/app/assets/stylesheets/admin/overrides/forms.sass +10 -0
  32. data/app/assets/stylesheets/admin/overrides/jquery-ui.sass +177 -0
  33. data/app/assets/stylesheets/admin/settings/backgrounds.sass +6 -0
  34. data/app/assets/stylesheets/admin/settings/borders.sass +14 -0
  35. data/app/assets/stylesheets/admin/settings/colors.sass +34 -0
  36. data/app/assets/stylesheets/admin/settings/forms.sass +9 -0
  37. data/app/assets/stylesheets/admin/settings/global.sass +50 -0
  38. data/app/assets/stylesheets/admin/settings/header.sass +6 -0
  39. data/app/assets/stylesheets/admin/settings/media-queries.sass +21 -0
  40. data/app/assets/stylesheets/admin/settings/tables.sass +16 -0
  41. data/app/assets/stylesheets/admin/settings/type.sass +42 -0
  42. data/app/assets/stylesheets/admin/tools/button-generator.sass +50 -0
  43. data/app/assets/stylesheets/admin/tools/clearfix.sass +5 -0
  44. data/app/assets/stylesheets/admin/tools/dynamic-text-lightness.sass +5 -0
  45. data/app/assets/stylesheets/admin/tools/ellipsize.sass +4 -0
  46. data/app/assets/stylesheets/admin/tools/greyscale.sass +16 -0
  47. data/app/assets/stylesheets/admin/tools/link-generator.sass +18 -0
  48. data/app/assets/stylesheets/admin/tools/notifier-generator.sass +27 -0
  49. data/app/assets/stylesheets/admin/tools/panel-generator.sass +13 -0
  50. data/app/assets/stylesheets/admin/tools/placeholder.sass +5 -0
  51. data/app/assets/stylesheets/admin/tools/space-generator.sass +17 -0
  52. data/app/assets/svg/admin/eye.svg +1 -0
  53. data/app/assets/svg/admin/hamburger.svg +1 -0
  54. data/app/assets/svg/admin/pencil.svg +1 -0
  55. data/app/assets/svg/admin/search.svg +1 -0
  56. data/app/controllers/admin/admin_controller.rb +18 -219
  57. data/app/controllers/admin/ceo_controller.rb +235 -0
  58. data/app/views/admin/dashboard.html.erb +0 -0
  59. data/app/views/admin/edit.html.erb +9 -4
  60. data/app/views/admin/index.html.erb +50 -47
  61. data/app/views/admin/new.html.erb +9 -5
  62. data/app/views/admin/show.html.erb +10 -6
  63. data/app/views/admin/styleguide.html.erb +779 -0
  64. data/app/views/layouts/admin/_header.html.erb +38 -0
  65. data/app/views/layouts/admin/application.html.erb +22 -0
  66. data/config/initializers/simple_form.rb +223 -0
  67. data/config/routes.rb +7 -0
  68. data/lib/ceo.rb +2 -0
  69. data/lib/ceo/engine.rb +1 -0
  70. data/lib/ceo/iterator.rb +2 -4
  71. data/lib/ceo/version.rb +1 -1
  72. data/lib/generators/admin/admin_generator.rb +4 -1
  73. data/lib/generators/admin/templates/admin_page_controller.rb.erb +3 -2
  74. data/test/ceo/authenticate_admin_test.rb +47 -0
  75. data/test/ceo/edit_apple_test.rb +3 -3
  76. data/test/ceo/index_apple_test.rb +52 -56
  77. data/test/ceo/namespaced_assets_test.rb +19 -0
  78. data/test/ceo/new_apple_test.rb +1 -1
  79. data/test/controllers/admin/oranges_controller_test.rb +21 -0
  80. data/test/dummy/app/assets/stylesheets/custom.css +3 -0
  81. data/test/dummy/app/controllers/admin/apples_controller.rb +1 -1
  82. data/test/dummy/app/controllers/admin/bananas_controller.rb +1 -1
  83. data/test/dummy/app/controllers/admin/oranges_controller.rb +7 -0
  84. data/test/dummy/app/controllers/admin/other_controller.rb +1 -1
  85. data/test/dummy/app/controllers/application_controller.rb +1 -0
  86. data/test/dummy/app/controllers/home_controller.rb +5 -0
  87. data/test/dummy/app/views/admin/apples/_form.html.erb +1 -1
  88. data/test/dummy/app/views/admin/bananas/_form.html.erb +1 -1
  89. data/test/dummy/app/views/admin/dashboard.html.erb +0 -0
  90. data/test/dummy/app/views/admin/oranges/_form.html.erb +1 -0
  91. data/test/dummy/app/views/admin/oranges/index.html.erb +1 -0
  92. data/test/dummy/app/views/home/index.html.erb +7 -0
  93. data/test/dummy/app/views/layouts/application.html.erb +1 -1
  94. data/test/dummy/config/initializers/simple_form.rb +165 -0
  95. data/test/dummy/config/locales/simple_form.en.yml +31 -0
  96. data/test/dummy/config/routes.rb +4 -0
  97. data/test/dummy/lib/templates/erb/scaffold/_form.html.erb +13 -0
  98. data/test/dummy/log/development.log +25 -0
  99. data/test/dummy/log/test.log +29749 -0
  100. data/test/dummy/tmp/cache/assets/sprockets/v3.0/-1/-1M_pwyyGbsyeljxUSsT3Rt1Betbddr_9mOSBO_-oC0.cache +1 -0
  101. data/test/dummy/tmp/cache/assets/sprockets/v3.0/-Y/-YNE6OzapSny_gpGHx5vNEykkNqZ_4ljcIHCNboOBIo.cache +1 -0
  102. data/test/dummy/tmp/cache/assets/sprockets/v3.0/-v/-vrNxEnoe8NZLRx73fD33W5Yke08zUQSjiI8ZY8E5LY.cache +1 -0
  103. data/test/dummy/tmp/cache/assets/sprockets/v3.0/0o/0o7O5liMX_XX-mP4Y5UVeMY7MW0r6spshlVxKHoea2o.cache +0 -0
  104. data/test/dummy/tmp/cache/assets/sprockets/v3.0/0z/0zSAa2iL_IpyvpPxlwboBp-0NpghhId6ZpuziOuRxR4.cache +0 -0
  105. data/test/dummy/tmp/cache/assets/sprockets/v3.0/1K/1KEUY-lGNZshn0gR1dDVHzLBvs8AWMA9M4uAs0_WAWY.cache +1 -0
  106. data/test/dummy/tmp/cache/assets/sprockets/v3.0/1K/1knxFSqGMS9aYm_k9-3PDxj1UnlRm4tSMohZ6cRIw3E.cache +1 -0
  107. data/test/dummy/tmp/cache/assets/sprockets/v3.0/1Q/1Q1MfPlwhWJAhFmMd9I-wvk-TuDUkaK7OMD__8ioXHk.cache +1 -0
  108. data/test/dummy/tmp/cache/assets/sprockets/v3.0/1e/1eTGRphLGa0HF0H_F0P-TzKaLs3sOIPHt2k4MOk2eMk.cache +0 -0
  109. data/test/dummy/tmp/cache/assets/sprockets/v3.0/1p/1puFHG5TEj2f59zveWzoSlQTHogaYMaGTqky-q-rLNs.cache +0 -0
  110. data/test/dummy/tmp/cache/assets/sprockets/v3.0/1u/1uOptr8shgZwrphvPXIIJSam-n3b_OIARoBL5Yf3HZc.cache +1 -0
  111. data/test/dummy/tmp/cache/assets/sprockets/v3.0/1y/1yv-YS-mZn1aEPR8UgW_DsQwEtIhbNszS_lRzbsn_Y4.cache +0 -0
  112. data/test/dummy/tmp/cache/assets/sprockets/v3.0/23/23vTsHOViNUzfKkoXbCQQfP2lG-Z-pu5UYHRR-wc14U.cache +1 -0
  113. data/test/dummy/tmp/cache/assets/sprockets/v3.0/2A/2AO6gB-jh98gOscSkC4a5VSOpRa4GHMAgFZR6OeTuPY.cache +1 -0
  114. data/test/dummy/tmp/cache/assets/sprockets/v3.0/2K/2KOZAY0AXwCArs_b7yhyo_fhP4jsT7rEs2lOjRtInYE.cache +1 -0
  115. data/test/dummy/tmp/cache/assets/sprockets/v3.0/2Q/2QwSDH31hwbW6saxcjxe4VtngcynzzLKAiFUufVz1RI.cache +0 -0
  116. data/test/dummy/tmp/cache/assets/sprockets/v3.0/2S/2Su-ySa2vInMbIwnLEDJoFlBW0JmskGUtOkGtO59Lfs.cache +1 -0
  117. data/test/dummy/tmp/cache/assets/sprockets/v3.0/2b/2beMX9FYifTR4HRNCxhijapYEtVOEEbsqISHulX7FI4.cache +0 -0
  118. data/test/dummy/tmp/cache/assets/sprockets/v3.0/39/39Ly2a5XQPgzdI0NwMxAzUjhrnP22cOi4skqz1t-W5I.cache +1 -0
  119. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4B/4Br-exmbWXpAbbUL57wwDiDJ3STJ9FLOb-NKRAJ3gxA.cache +1 -0
  120. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4D/4DPweSP0g4sgIjH0D4kdw9ZVo4aHeYYvflCeV9aAxwE.cache +0 -0
  121. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4D/4DuW9uF1rTeQ2M_8oBIhGhtUcSsVuRJ7rVPfz1q5-No.cache +1 -0
  122. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4Q/4QD_DoXWL8DpVbI6aVB8e1aFpNwO9fyIE__LOMjk9Sg.cache +3 -0
  123. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4S/4SYcGDHQNAIS2UMd7vvRqzGByI7dMgPtadSkxp5g-hA.cache +1 -0
  124. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4V/4Vm2vRc1fj79xCggJkbHDJF2Kpm_o-pNLOleLmn6j_Q.cache +1 -0
  125. data/test/dummy/tmp/cache/assets/sprockets/v3.0/4V/4VtHr1qUpG88ad-8AARLkBYn1sgigr1tx6ZdySKcgig.cache +1 -0
  126. data/test/dummy/tmp/cache/assets/sprockets/v3.0/55/55fBZFrS3nuYLBlr20opsD3-FD9pzvJtDzE_YwIKPVk.cache +1 -0
  127. data/test/dummy/tmp/cache/assets/sprockets/v3.0/5L/5Lly_CA8DZvPhQV2jDQx-Y6P_y3Ygra9t5jfSlGhHDA.cache +0 -0
  128. data/test/dummy/tmp/cache/assets/sprockets/v3.0/5r/5rYnFtUYDDuQPZ8gWz2DdG7ha9sgbiDcB-GHwIj9I2s.cache +1 -0
  129. data/test/dummy/tmp/cache/assets/sprockets/v3.0/61/61eVAsPlG4mzFMAkFrkVpz2_y7xAIiHeNOc2_P1gvaE.cache +1 -0
  130. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6H/6H_Pfj5xpdHDpyBlWhgMLvetPt9trhJmHVau1QnJGMQ.cache +1 -0
  131. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6O/6O0fxhP9cU3YHTxuPUCMe8-0iqPkfFHEcpG4EVRB6Os.cache +1 -0
  132. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6U/6U9WE2Sg6FKISaT3W0NCAtvVGzCCho0AlKI_m_0n2AA.cache +0 -0
  133. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6Z/6Zeg7PYIkBHoRVc4sev57X-u5-YnG4O_vvVfW5IBijw.cache +1 -0
  134. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6a/6aUYLqPqK-EmQ83wxPiiBnSQzbAwl_qRg0YyOt9Z57o.cache +1 -0
  135. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6c/6cP95vgo4HxbKfHvd9zIOyTKF095_bGidmHfagJMXhk.cache +0 -0
  136. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6p/6p1Ve0Pi16rmvx0cPrhKN_1iIp1E8ha5q5hO0B34PQU.cache +0 -0
  137. data/test/dummy/tmp/cache/assets/sprockets/v3.0/6x/6xxMhUfl7_AEvJ2hgwUTR_JqnsqfZhPMhL4nVwmQevg.cache +1 -0
  138. data/test/dummy/tmp/cache/assets/sprockets/v3.0/7H/7HV8nA3skWSIGyhqKSdvjOZfX0rfKW3Ig5HOnnMO-RU.cache +0 -0
  139. data/test/dummy/tmp/cache/assets/sprockets/v3.0/7V/7VDCAKeHwXSQYPSqq7aRU00XWsHZDLOUj4zUDCCzf7M.cache +1 -0
  140. data/test/dummy/tmp/cache/assets/sprockets/v3.0/7i/7IkpigF44tWq0oaJOlERbC5h0DoIAVAZG14R6F1ZmZc.cache +0 -0
  141. data/test/dummy/tmp/cache/assets/sprockets/v3.0/7i/7iYcDilGdkoS4eG-JxX0s59mnMYTYsu47m45_QpPhZs.cache +1 -0
  142. data/test/dummy/tmp/cache/assets/sprockets/v3.0/8Y/8YALBwPsi_SbunPnvCjXLJR1yEgjovWBiJgradedua8.cache +1 -0
  143. data/test/dummy/tmp/cache/assets/sprockets/v3.0/8_/8_1n59aUmhfWDbPllmAQiKgahqornt4mcmeJNRLq64A.cache +1 -0
  144. data/test/dummy/tmp/cache/assets/sprockets/v3.0/8d/8duqGLzryIBQZVbh6pv8i7oa2e5TbrYK06uzYjEgmf0.cache +0 -0
  145. data/test/dummy/tmp/cache/assets/sprockets/v3.0/8x/8xI8fpBswB1U91XDXMB62FQ2wNUj30ibciqvyATKAj4.cache +0 -0
  146. data/test/dummy/tmp/cache/assets/sprockets/v3.0/96/96T3mU8EinvLtzGywlufw8DPP6Ajq2HvbX6TwV-xuv8.cache +0 -0
  147. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9C/9C4LmIwy7EHjZhEd1jCzpSz_iz3LiToI_pSEr9Bk-G8.cache +1 -0
  148. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9N/9N4OIQ2rMOe1Ozp41LFc7_O1huwpuWI3lnHjtIXqhKo.cache +0 -0
  149. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9N/9NG_ukk9M9Cs885xM3TKrTgQAXHZf7M9fLm32lHO8Pw.cache +3 -0
  150. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9N/9NdMl7nGaq-xZXsCnjrO4Mmghh7JqtUksdQWGtNc0vE.cache +0 -0
  151. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9S/9SOCnUe27lZ9zgOLZL-zGLBaEZndPW3OmTG-5eJ9CaU.cache +0 -0
  152. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9Z/9Zz8hHBQrzWjLNwcWE5lOQNmz9bgfpz-o2MkcC_6Gzk.cache +0 -0
  153. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9o/9O8EAEIuKne6-KZNYiK0ngS5YBaXnp41hUZUjw_bhdo.cache +2 -0
  154. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9o/9ooGS6mLB-FLGP3fmGd6AzUQCYmE6iQ8RT0MPnazn3g.cache +1 -0
  155. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9r/9rwXZxOaPzqcjQ27A1jnqi6qqRtN-px71irilG4nqBE.cache +0 -0
  156. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9w/9w2u-W8C9OQmPr9Q4pnFE1PndA8ND4stbpZP93badxw.cache +0 -0
  157. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9x/9xnusKycqjvc-fBrMXFueZvswntKFGpFD9P0E05y26w.cache +1 -0
  158. data/test/dummy/tmp/cache/assets/sprockets/v3.0/9y/9yuxANWupETIud9lc6_VRAb-xTt95fwzQEvQplVmIjE.cache +2 -0
  159. data/test/dummy/tmp/cache/assets/sprockets/v3.0/A4/A4XZr8H3x9sJs-u5zYmUnNhMunNursqcIOWEFVlTJPo.cache +1 -0
  160. data/test/dummy/tmp/cache/assets/sprockets/v3.0/AB/ABMNz0mhUOELrJQTsvODX4FE5dO4qA_ZwRZlTqZaNvk.cache +0 -0
  161. data/test/dummy/tmp/cache/assets/sprockets/v3.0/AD/AD5DIX08moywNzW0FDPE-inLyAY2R9fW_oWxdNe13uc.cache +2 -0
  162. data/test/dummy/tmp/cache/assets/sprockets/v3.0/AR/ARBMtXeVFgKl7fXhVqLllu-tBEgTxmwPeZFbbMERv8o.cache +0 -0
  163. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ac/AcRrCleFNVnRawI3kPItFg8-tstOBsisEE0aFcywb70.cache +0 -0
  164. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ai/Ai-pymgLhxmZjUlTeuFnZU3zDpAF1HWT7nZI216jDTo.cache +1 -0
  165. data/test/dummy/tmp/cache/assets/sprockets/v3.0/BF/BFGGos7NpAzdOcD7B0_Jh7OY_KqFKDFDXcByK7R_-8s.cache +0 -0
  166. data/test/dummy/tmp/cache/assets/sprockets/v3.0/BN/BNqxEVmfkXCKtL5nM2_PJ04jeN69YkIqyTc9TW-WQdU.cache +1 -0
  167. data/test/dummy/tmp/cache/assets/sprockets/v3.0/BR/BRh8FwWRr5ejm8oyljLq8kbk8b6LOwHVF3VEBvInGcM.cache +1 -0
  168. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Bi/BiWSzPBpw138FsMGNMLntYkDDbgM6Waqfx_u838XxCQ.cache +1 -0
  169. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Bt/BtGT4q94Ec-6HRYqK1XsWyzF35hy9TEW8QlCLBgBhO8.cache +1 -0
  170. data/test/dummy/tmp/cache/assets/sprockets/v3.0/C9/C9CxMJ65MK0wNwR34Dg_G_vw3gOAWslAiZlkHklDm4k.cache +1 -0
  171. data/test/dummy/tmp/cache/assets/sprockets/v3.0/CS/CSA1Lc57isn9pcBM_NdYl5J_Dhn1-bOYHkFpsFjhlTY.cache +1 -0
  172. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cc/CcZZRZUggMa5vGgVC6C4qPtQ1blDRJksWHepZtglaXk.cache +0 -0
  173. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cd/Cd0HIdwDNN5MjMWSxQfoc1lK5G8s72OtHswMRr4mJzA.cache +0 -0
  174. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cl/ClVGjzjCZviDQA1T_Z4b72ujprzCaUkJS0eLDzVbjdo.cache +1 -0
  175. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cm/CmHFpuTBr5mTdCCcwGG2FUMWjFqZRQeEfoCeln_26VI.cache +0 -0
  176. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cp/CpMojVy8CylDZK7FrinyYRBBDCc2VO2IG_7YSl39_QY.cache +0 -0
  177. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cp/cPufbhwNI0Vkqd8FW30T9evT5kwMijlMgnKeEzezmDM.cache +1 -0
  178. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cy/CyDQMoOGFRU0hiQclRLIdX2It0jEOXSD1KI5wfabQo8.cache +1 -0
  179. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Cz/Cz1UDttTVDOXna5gQmlH2zAYfm74g3fedR5x6J0SuJc.cache +2 -0
  180. data/test/dummy/tmp/cache/assets/sprockets/v3.0/D9/D9SVrbKxO8-jIjck7iS_kOKH5OuUQUplPrxT0_wlFCs.cache +0 -0
  181. data/test/dummy/tmp/cache/assets/sprockets/v3.0/DD/DDmAIKA7KRrgRR7ldzf7wU4-bR7eNEymmMQFQdu5DN8.cache +1 -0
  182. data/test/dummy/tmp/cache/assets/sprockets/v3.0/DO/DO4GjHPhfDaidI_0lepQghaViZpGYO1qGak_9qxXX5g.cache +1 -0
  183. data/test/dummy/tmp/cache/assets/sprockets/v3.0/D_/D_XjkYrlVpDY0HvSNH5AS3dXs-vJTD1hES7MHud1Uxg.cache +1 -0
  184. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Du/DuQt9UG7qQU7pbhDZOQwO0JZu1lY-7zWtctZGhrMhs4.cache +1 -0
  185. data/test/dummy/tmp/cache/assets/sprockets/v3.0/EJ/EJXopIbv25LgwpTIDMWMKqSL6wuKZvxSE_Jqq21CVuU.cache +0 -0
  186. data/test/dummy/tmp/cache/assets/sprockets/v3.0/EK/EKtD0w3vIVVhsYpZpIo5ZHyfuxsaAbdn-yhrS1rEBUM.cache +2 -0
  187. data/test/dummy/tmp/cache/assets/sprockets/v3.0/F9/F9nBy9BUWIUzlJeZbClBAPDOF5ufOJ0A7zxtxJPEge4.cache +1 -0
  188. data/test/dummy/tmp/cache/assets/sprockets/v3.0/FH/FHs31y9juXbRG4GOOz2iGfn9kyETkiDlbJWqxxn2Gzk.cache +0 -0
  189. data/test/dummy/tmp/cache/assets/sprockets/v3.0/FK/FK3Qvm8s4rLCqq5Qf7tTNWcNwJefirfcDrjSkpa-Fj0.cache +1 -0
  190. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Fp/FpraLF0iAFSPJFf2_lNbv-CzvigcGwrNa_jU8dRJzrQ.cache +0 -0
  191. data/test/dummy/tmp/cache/assets/sprockets/v3.0/G7/G7y5hBmT-JXkJS3jIBfn5f41NNqTTbrtcNfUxqncGVc.cache +1 -0
  192. data/test/dummy/tmp/cache/assets/sprockets/v3.0/G8/G88gAVDPz_XwjG5bc40DRbsw9FP1C2UyEdSF1ypo0AU.cache +1 -0
  193. data/test/dummy/tmp/cache/assets/sprockets/v3.0/G9/G9jENb4qPBPkzkwXaP-PBspsimVBQEUTfKWIFEVEJ8k.cache +1 -0
  194. data/test/dummy/tmp/cache/assets/sprockets/v3.0/GV/GVEKmZfkTd0Kn_nkJ0oyWZFLkmwCHt3W3zx_tpk_OC8.cache +1 -0
  195. data/test/dummy/tmp/cache/assets/sprockets/v3.0/GV/Gv4DZthaTy27j7pCLfFUaeXgn2emeknBiyp-Yjru2pw.cache +2 -0
  196. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Gi/GiUQ67SdKt-LAO9Lex8mmrMBpO_ZZ2qtOTCm47onZqY.cache +1 -0
  197. data/test/dummy/tmp/cache/assets/sprockets/v3.0/HQ/HQAkZq6I__awZd-mbL9xI10JjGry1rZSYDg2QurbArY.cache +1 -0
  198. data/test/dummy/tmp/cache/assets/sprockets/v3.0/H_/H_YcXvMs9neCbHL5uS0EY93jQdXNpkr35xRrwi7APig.cache +0 -0
  199. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hb/HbgxhEW_ogqyOlaGeb1YJaxbCnVuM3LjCviW-PkcmSU.cache +2 -0
  200. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hb/hb1LaW-DjnunjsU1K6QUEq8So_wSKNGqzXMbciozB6o.cache +0 -0
  201. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hb/hbdtIQ4uncd1naO1R_xUhBeSh5nuDEb9XkSzzwRTN8I.cache +1 -0
  202. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hj/HjM4ZwqBB7Nk-K1PKfLg1yjbTRFC0aXsrnfkiWt0ws4.cache +1 -0
  203. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hj/HjQycNywhgVXRri0y3XHOGd2Ndhx1M5fYbs9XDydo7E.cache +1 -0
  204. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hp/HpzvKdlVwx6trqE8DsBH0gUP2UnQY4WGj_ksiipN-uI.cache +0 -0
  205. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hs/Hs0zBH7uiD1yutw_dl8TBGGgzmpl47NFWY1CpHbkizI.cache +0 -0
  206. data/test/dummy/tmp/cache/assets/sprockets/v3.0/IF/IFS5YDB8xAWPptr6YD3utkTKtxiV4xgRTQLBJqzcuTs.cache +1 -0
  207. data/test/dummy/tmp/cache/assets/sprockets/v3.0/IH/IHUJyJgnb-qzlh4xjjhDURxgI2ya9gCallv78_g2mSc.cache +0 -0
  208. data/test/dummy/tmp/cache/assets/sprockets/v3.0/IJ/IJpjqbBNeUqOiEZGpSi1svIDaFPzRmakYCtviwGF7Cg.cache +0 -0
  209. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ie/IeV6v7HUZ0MDRQp7TiM7GlVrYZ547nYMiG4-sctOacc.cache +0 -0
  210. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ig/IgWciSW6NE--fhaSDclwrkpJQfX_GXYyVjDG6IMXsIw.cache +0 -0
  211. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ix/IxVVEu_g4_nGKSlD3fOM1J8nn4-Mr9R9N_qFY6WJdT8.cache +1 -0
  212. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Jv/JVQlx2oYt9kZ9z6WQ18aXkyrCC2R0Ub9U22otWBkzfE.cache +2 -0
  213. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Jv/JvFPe8HwxG202a8HcYkIh7T2XIWK8auwvYosSKwbwoM.cache +1 -0
  214. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Jv/jv6yxp1qArkT7AaFWyWCIO2cr2CjDFR_So15qBUPPHc.cache +1 -0
  215. data/test/dummy/tmp/cache/assets/sprockets/v3.0/K3/K3MDaq_Ro8Nt9XABUmThPgv4G9se0CZgUzd-7EFKQVs.cache +1 -0
  216. data/test/dummy/tmp/cache/assets/sprockets/v3.0/KF/KFdbQwKY8o5lBd9FWdywrWThK_XYHdDAjMB27bRPHXk.cache +0 -0
  217. data/test/dummy/tmp/cache/assets/sprockets/v3.0/KU/KUgQEsOzwcrg0qIO_IKnnab7LXI6xzT9c36AuemIsCk.cache +1 -0
  218. data/test/dummy/tmp/cache/assets/sprockets/v3.0/KX/KXl7wvom800haotvRD51M8mqhDAKGbPwjLz1IyOlUsE.cache +1 -0
  219. data/test/dummy/tmp/cache/assets/sprockets/v3.0/KX/kX9MIPa0KicGwVnn2w1SnpKUrtkFa_qlpLv9Xb50V0s.cache +1 -0
  220. data/test/dummy/tmp/cache/assets/sprockets/v3.0/KZ/KZITHzbMosPcvoMBUNeiZK5hAQGWFnvd0DfAZA1OqPs.cache +0 -0
  221. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Kq/KqcikpZFzEmDOevvSl20SYhJpGT5EttV9TnSr6a190s.cache +1 -0
  222. data/test/dummy/tmp/cache/assets/sprockets/v3.0/L-/L-rLbD8XzRGGf8_xMiJwNaUVddfko8DD5Odu2yKkOHo.cache +1 -0
  223. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Lc/Lc6a5o_7RZcAO3qH50b23TnvX2eBQKn8SDmCiahXPyM.cache +0 -0
  224. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Lx/LxR4JOnr_8sRrSHe6BZU1Yp-ILvpWiiraEKpZIWLj34.cache +0 -0
  225. data/test/dummy/tmp/cache/assets/sprockets/v3.0/M4/M4-QnolZZ9QNEnyN-xZXmoDo7IIZdg2brtHM3cH4Tps.cache +0 -0
  226. data/test/dummy/tmp/cache/assets/sprockets/v3.0/MB/MByz9OZmbFdyofi7lAx8IZkRvDakWpFVcTMawCRtr4k.cache +1 -0
  227. data/test/dummy/tmp/cache/assets/sprockets/v3.0/MM/MMzMVZB9pKn9N-j_pMkszfDWWbh0xaBt-EFlc6vdEcc.cache +0 -0
  228. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ml/Ml5JwAeYKf0HenBURunQvIO5dj7UrFwHmDSlO4W5y_k.cache +0 -0
  229. data/test/dummy/tmp/cache/assets/sprockets/v3.0/NB/NBVFS8J9i4V5Qjvwg287ny_sUkla6uY6ybm34QPtJNs.cache +1 -0
  230. data/test/dummy/tmp/cache/assets/sprockets/v3.0/NN/NNo6W9mzx0ZElMk4rFkYMBQ0JdJKM7xR7GWeQdvFpKw.cache +1 -0
  231. data/test/dummy/tmp/cache/assets/sprockets/v3.0/NN/nNC8bF6k5KBqhwsBRHp41YQ7z0PIYhOF0JCsXbVJizA.cache +1 -0
  232. data/test/dummy/tmp/cache/assets/sprockets/v3.0/NT/NTcN7vdDpCCb-rks_UuDvalFnecYlGq6Ef2cQTOu-68.cache +0 -0
  233. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Np/Npaote0OETS7KvJACkck2sGyog8r7x0qXVLg-Fb8F9w.cache +4 -0
  234. data/test/dummy/tmp/cache/assets/sprockets/v3.0/O9/O9LuTOlyTawsb8Z-a9v2xXa58D0qG8jRPnDwDX3mjOw.cache +3 -0
  235. data/test/dummy/tmp/cache/assets/sprockets/v3.0/OA/OApz4zdyKysqaHUaTR0asc0SPTzLOKh1WPtOdfKbrxw.cache +1 -0
  236. data/test/dummy/tmp/cache/assets/sprockets/v3.0/OI/OI6uxGcnsKavdWTtwDAasU3wPx8QXhzBgV0X2n1KjMQ.cache +0 -0
  237. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ON/ON4ujxwVRC8zBl-BI6ALArYKqsQyglvwmFsG1QsU4AQ.cache +1 -0
  238. data/test/dummy/tmp/cache/assets/sprockets/v3.0/OU/OUsur7GWiQSXKHiZfikkmaJ2tOAKjLSmek7Wa84LLlI.cache +0 -0
  239. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Oe/OeKVunLf9094gjOjYURmg3IVJQn84epg-DHjUrq3rSY.cache +1 -0
  240. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Oy/OyyGReIz7MKdIgmL_jYEP8OavJ8wp_DucM5MWvXgo0A.cache +1 -0
  241. data/test/dummy/tmp/cache/assets/sprockets/v3.0/P0/P01q_KJLEGN3sAyHP5-74irQrZ8xXOKy5KSdYpKSJQc.cache +3 -0
  242. data/test/dummy/tmp/cache/assets/sprockets/v3.0/P5/P5qhU-1rVkrKPkjBN7VFNg3tyvOUpfTwOnSuji2gmus.cache +0 -0
  243. data/test/dummy/tmp/cache/assets/sprockets/v3.0/PJ/PJYpSOEpvY6U8aMLe1Xi0sxV6lr9qSw3syCgXpzZpAw.cache +1 -0
  244. data/test/dummy/tmp/cache/assets/sprockets/v3.0/PJ/pJ6xwSVi5LvxONRWmG5QH0LsVE_u0UOYT3-GgJpmwmU.cache +1 -0
  245. data/test/dummy/tmp/cache/assets/sprockets/v3.0/PM/PMfBC8qwv2jXFZaj0p8RodpWjxoItxQaTva7gRM0MBw.cache +1 -0
  246. data/test/dummy/tmp/cache/assets/sprockets/v3.0/PY/PYsjPFyJEvAnONb-jCh8Mt-pqt1jyHFukma6_hieIiA.cache +1 -0
  247. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Pp/Ppn3EfHr6yoJEQhrerMru8q1QtV4rMNmsrDQYP9-b9c.cache +0 -0
  248. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Q5/Q5M3ZyOedu6LXnWGL1KPzP9d-m2mOgMgJ4og-3UzK3E.cache +1 -0
  249. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Q7/Q7Axrj2C5NJtqBXmrkbXZnmBfJXcEeaRvSmjVclo2vc.cache +0 -0
  250. data/test/dummy/tmp/cache/assets/sprockets/v3.0/QF/QF-wzbPPHZdEptVstSYNiuGXaAWFQHpXqQeEhHOPpZk.cache +1 -0
  251. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Qu/Qu9ufKA0-J0cE8kjpAhGgsScdkWU1-aN410sYNoXICc.cache +0 -0
  252. data/test/dummy/tmp/cache/assets/sprockets/v3.0/RC/RCBYCsmm4ccRqFRSBl5MNQDl0vlnXJRoqZAk-iUuwTQ.cache +0 -0
  253. data/test/dummy/tmp/cache/assets/sprockets/v3.0/RV/RViXp0prmsDc_34H4yrD4cfs6SVK2KNuKdB0DgtNkmI.cache +1 -0
  254. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ru/Ruvxnck9Bt5FBO8Fm4baI6pKPXLaw16Q-4Bgg0J_wdk.cache +0 -0
  255. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ru/rU8ApZ1fQvF58lqC5JwUArba-zYTxqJ_A_wXsnBKo0E.cache +1 -0
  256. data/test/dummy/tmp/cache/assets/sprockets/v3.0/S1/S1hmqmNgDJ7Vl1YtKbNshPXRyzQp8YZMqbKoQYw8PDk.cache +0 -0
  257. data/test/dummy/tmp/cache/assets/sprockets/v3.0/S1/s1KJTHkKhCNCiVfe9AEMlWxwePIdKLiLTZ3tZoyAkwo.cache +1 -0
  258. data/test/dummy/tmp/cache/assets/sprockets/v3.0/S3/S3o7er2KAcXh4qQ0RASZaU9V-9ilME4rPWJJXMD5wEc.cache +1 -0
  259. data/test/dummy/tmp/cache/assets/sprockets/v3.0/S5/S5X_DHIYTch5KbN1gVMGnpSnswHQgxK8Ru3kKpm9NQs.cache +1 -0
  260. data/test/dummy/tmp/cache/assets/sprockets/v3.0/SA/SA9beYRzgN_5laVMyWHtBPqPnO_oIhqZr8lyVUo4tUk.cache +1 -0
  261. data/test/dummy/tmp/cache/assets/sprockets/v3.0/T4/T4MOvsg1O4rFXJspXsMivng0rC6QD35xLbihVO2ATj8.cache +0 -0
  262. data/test/dummy/tmp/cache/assets/sprockets/v3.0/TH/THExDoOJ49McAHE6aT_fH1IP8gh8RZlP91mZx2hNByg.cache +1 -0
  263. data/test/dummy/tmp/cache/assets/sprockets/v3.0/TM/TMKzA4-cYXQZtgJz9Vdid9YL1ZGjlBQUOYIfmjs5xow.cache +0 -0
  264. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Te/TeU4EAthLIhLOH289fqTvmKiGxLFi1V5HExPDWKXMrU.cache +0 -0
  265. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Tt/Tt0D5LpBmHYhqgzBtOTzJv10alxtF7x1O53Kpi0oFbw.cache +1 -0
  266. data/test/dummy/tmp/cache/assets/sprockets/v3.0/U5/U5FT_DjjF-dscvzkmHdVa5uyi1Wl8Bsa2mxl30BYASk.cache +1 -0
  267. data/test/dummy/tmp/cache/assets/sprockets/v3.0/UM/UMA1HpAwOUPHhHbdihd6Iht0B8XoROj3FEKhlzSGz7c.cache +2 -0
  268. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Uf/UfN7PkBRJJumEIwXHfyVS-4-OpiuCmP_miXezzeyMdc.cache +0 -0
  269. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Uh/UhPr_dR0GPDvQUVwJis_hpg_5b1aFrAMmtcs8bjoje4.cache +1 -0
  270. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Un/UNNhnrlRiaIm8sl0m9TXdAF8mqpmwMCXckHzxkgVun0.cache +1 -0
  271. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Un/UnPb6pruLi_X9MOUDm5O0zrg0qsIyyi6JEPQDIAk2-4.cache +0 -0
  272. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ut/UtTo_u1Vbw5gvqXJvmKfgGcXYEOush9mj5A8jXQ7-Zc.cache +0 -0
  273. data/test/dummy/tmp/cache/assets/sprockets/v3.0/V3/V3NFtF0DzyQdJ_4Nhw1hA4-MRYCItlBzQqm9aABSzr0.cache +1 -0
  274. data/test/dummy/tmp/cache/assets/sprockets/v3.0/V3/v3AXorjUMhegGw-aZPY1jvP8yCOoh35JG8UiEX7ZN4M.cache +0 -0
  275. data/test/dummy/tmp/cache/assets/sprockets/v3.0/VW/VWjzy3la81pQDogvSg8P6WH6m4ZsqXC3QhJ0PwrT2cE.cache +1 -0
  276. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Vf/VfSXf9vusNYuyzKkdNziyenjblNhKxHA28CYd1NePn0.cache +1 -0
  277. data/test/dummy/tmp/cache/assets/sprockets/v3.0/W1/W1yz_uXN6zcvemNgFL-3MbqgvyXTdBVtCfxOI4ahZec.cache +0 -0
  278. data/test/dummy/tmp/cache/assets/sprockets/v3.0/WC/WCkhm3Iog5jkY48jk7P3YbK-DdGpcGSSn8NC8Dongpc.cache +1 -0
  279. data/test/dummy/tmp/cache/assets/sprockets/v3.0/WC/wCSLgI7hqdw3SN-0RBzuVHbextkww3WdQpp_rYkISgE.cache +1 -0
  280. data/test/dummy/tmp/cache/assets/sprockets/v3.0/WJ/WJPFvUl4A0X6ehXk1sExRn5LCOvmv_PUfpMPoyeHvqw.cache +1 -0
  281. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Wa/WayodFW9Z6cUn9cT25utsI7nt5iEUEwmT8lrXM07wSM.cache +1 -0
  282. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Wm/Wm7DhgjnJ2CD0YYTpn8YgAyJQ0iLrNss5y9BfZK-E_c.cache +1 -0
  283. data/test/dummy/tmp/cache/assets/sprockets/v3.0/XC/XCsO3t9MvuKvn7WFNQ8H9vQcGX7gJMK_QEdIRGUy1Pw.cache +4 -0
  284. data/test/dummy/tmp/cache/assets/sprockets/v3.0/XM/XMMPCK5N975_vdRk-juxT7hZNV-KPu-N5C4aJagJYJw.cache +0 -0
  285. data/test/dummy/tmp/cache/assets/sprockets/v3.0/XT/XTpiDwwZkgwNap954M1cqv8KZhM2NWxAct16PWqiH9E.cache +1 -0
  286. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Xh/XhAM8jUomzjHehSalCCbozfLyM3PNtIGR9YSIo6wxgk.cache +1 -0
  287. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Xh/xhd7uk8rZDIh-WU6Webw34InDVvAd8o_o0iMDBacPNk.cache +1 -0
  288. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Xl/Xlf90JTM50Gl0rJA2TqM9FfDDiQW69UCrEnaQI0ooVc.cache +2 -0
  289. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Xr/XrSET1mjEop-9pYFWzm8Z-mbiCH4_JLLsLWBuddwpvY.cache +0 -0
  290. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Y6/Y63ZPmqo5SxQ5Mh_i64drdxFNLGX5oMXDK00Z-5TPtg.cache +0 -0
  291. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Y9/Y9-P3IRKZ6fLlzjV-H9ejKPD3SUZzGeBilxIDAthugQ.cache +1 -0
  292. data/test/dummy/tmp/cache/assets/sprockets/v3.0/YF/YFr5NwVi-rAS8iLanFxbb5kjfeLX_zH6aysgD9YN3Cc.cache +2 -0
  293. data/test/dummy/tmp/cache/assets/sprockets/v3.0/YR/YR0sp_87RmmYYy_5z3GSl0dujY4V0l51yi1Ze0DYVTA.cache +1 -0
  294. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Yd/Yd9czEByqdrA4yjI_yhiui8SL7F34O4CT9F8HLny8HE.cache +1 -0
  295. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Z9/Z9sIdO4ajBUc2xhSbp9_7_TVK8n1QyzBmd6dM78m1i4.cache +0 -0
  296. data/test/dummy/tmp/cache/assets/sprockets/v3.0/Zm/ZmTiv9eJEHLZAIW7rorIfdawdObqhvWtHBtdnQB1SC4.cache +1 -0
  297. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_5/_5Lqlz0x4iJP7cxKZqD9mq-5AuX53Cf1xw2b_MhmR4Y.cache +1 -0
  298. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_6/_6iSd7AxcMyYtYl8N7uuQ11hk8b1_c3EpPdrx2ssRDE.cache +0 -0
  299. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_J/_JEcbyAq8k23MLBtiErSYElv8TIxk2NgFebmrxCr_Vk.cache +1 -0
  300. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_N/_NgHE-jaOhlMkX9msEAdBWgq7OrpaqRTbVavZ0gm0YY.cache +1 -0
  301. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_S/_SrtfRje2aAhNdMpMSLN7hD2m1-FqgX639PXG_-jq0g.cache +3 -0
  302. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_d/_dvo_ECQj7tNZJdn9b6iXQgExzvEFcPVzXmRYyVOWZA.cache +1 -0
  303. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_g/_g5tIVGfR-DePftmhMfYOLeWGWRdeGQZSkkrZOWzE8E.cache +1 -0
  304. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_i/_i_05JN0IooeeWdhusebliQ726hLeJ_nJrR-Oh4jttA.cache +1 -0
  305. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_o/_oKkX19GdAApvk1m_kJBf9NKw2M5zuopoCMyrSy04EM.cache +0 -0
  306. data/test/dummy/tmp/cache/assets/sprockets/v3.0/_z/_zYc0_Ox7vjuYs-y4mEOr0lHjpUJAyHAY5Gsc2BKh1Q.cache +0 -0
  307. data/test/dummy/tmp/cache/assets/sprockets/v3.0/a3/a3nEFbljo2Wozfc6x8vC7ydF52EuedegASNW7c_8ksQ.cache +0 -0
  308. data/test/dummy/tmp/cache/assets/sprockets/v3.0/a3/a3qxfwkhYWwt6EK-8nfVFtsjELgkLHbUnZcp5bRX2FU.cache +1 -0
  309. data/test/dummy/tmp/cache/assets/sprockets/v3.0/a6/a6QR-DFedzWeHfQkI7ZnBgyTkrum2IGbxAJmSFF_ZyY.cache +0 -0
  310. data/test/dummy/tmp/cache/assets/sprockets/v3.0/a9/a9eQl9fE9X_oQgLuEEw8EQm8lMsVy1RKKX6zSPze5wE.cache +0 -0
  311. data/test/dummy/tmp/cache/assets/sprockets/v3.0/aM/aM-VgyR8IO8Fe7XaLGp1L0CEqdsu9lL1yTp-XxS83Uc.cache +1 -0
  312. data/test/dummy/tmp/cache/assets/sprockets/v3.0/aM/am_gqM0tWxGqVlSOyo7pdWQa93Cqy_pxCtBPj5hl9Ic.cache +1 -0
  313. data/test/dummy/tmp/cache/assets/sprockets/v3.0/aV/aVSyjARRlbARV3i7iqyfLWYom4D0HISLTkH-9zJq3Vc.cache +1 -0
  314. data/test/dummy/tmp/cache/assets/sprockets/v3.0/aV/aVtLy9ZpC0fdfTCfede0Mxhyf376dTax-FldL-LAhb8.cache +0 -0
  315. data/test/dummy/tmp/cache/assets/sprockets/v3.0/aY/aYYCqxNKlTpzsZa9sqQht_pYiXcyv0EHHu6YPfkqbAs.cache +1 -0
  316. data/test/dummy/tmp/cache/assets/sprockets/v3.0/az/azLk_zqBlRIAgAFElTpfSext9gkewu9on2V03Xl4jxU.cache +0 -0
  317. data/test/dummy/tmp/cache/assets/sprockets/v3.0/b9/b9NCeXuw0is4JY9pYPkyT_22bVSHnYyHew1qJrQeEFU.cache +1 -0
  318. data/test/dummy/tmp/cache/assets/sprockets/v3.0/bL/bLvD_U80aJ4Hft-NW5UqC57Y4akx1dmQKVChOvhJ6nk.cache +1 -0
  319. data/test/dummy/tmp/cache/assets/sprockets/v3.0/bO/bOmpIqlXXgsiNt2GCZdrsC3fSC27CixHrZLM_SckARs.cache +1 -0
  320. data/test/dummy/tmp/cache/assets/sprockets/v3.0/bz/BZWFQhR1NUxXIw3zNKMqRIBdsfBzsZaXT2JD8xOtfuQ.cache +1 -0
  321. data/test/dummy/tmp/cache/assets/sprockets/v3.0/bz/bzzfxWiH2VzOawbcPEGH14jtTdiKvdglCFDDzzy8s5U.cache +1 -0
  322. data/test/dummy/tmp/cache/assets/sprockets/v3.0/cA/cAgfy-peGQJEYv4kXpqhVio-6j2mlipH9aPtWZdeNvk.cache +1 -0
  323. data/test/dummy/tmp/cache/assets/sprockets/v3.0/cB/cB3Ab7jyzoe0zUclV1XbICgPJ0fov5Peynmdv6bJiek.cache +0 -0
  324. data/test/dummy/tmp/cache/assets/sprockets/v3.0/cI/cIUp1Ai-BcUs5tkaLvIBX-lWOW95ZwcXOxlqeNgYJlw.cache +0 -0
  325. data/test/dummy/tmp/cache/assets/sprockets/v3.0/cI/cik6BpTFOUVPATCzKvrldwEvXwN9zB2HYddxuNtdgQE.cache +0 -0
  326. data/test/dummy/tmp/cache/assets/sprockets/v3.0/cK/cK7s29gAcSl9No56Mg-pRYJqtVnDTEqPz0Urk2Ud1CQ.cache +1 -0
  327. data/test/dummy/tmp/cache/assets/sprockets/v3.0/dA/Da3jz9BvVOxKZBA5ww3lB3ZDFv3oo-OSDmGXyhana-s.cache +1 -0
  328. data/test/dummy/tmp/cache/assets/sprockets/v3.0/dA/dA-c4NLOR2LoCw_XdgtK7Mi9IxJTiXNGyq1gOhVIg-o.cache +1 -0
  329. data/test/dummy/tmp/cache/assets/sprockets/v3.0/dF/dFOstaHSXfubtopCWnkZUadAUgNbaaRKQuF6TMma7UM.cache +1 -0
  330. data/test/dummy/tmp/cache/assets/sprockets/v3.0/dV/dVYcWQ0qmMlx6egm_U9VuPakU-cSVPuwVorwZxCRgFA.cache +1 -0
  331. data/test/dummy/tmp/cache/assets/sprockets/v3.0/dm/dmMcLLkTNu1YVhBfPp5216MTKAY20DJ_2yfXnvXZ-h4.cache +1 -0
  332. data/test/dummy/tmp/cache/assets/sprockets/v3.0/e9/E9uD_zKlgGPmeTjrd8jjlsuUgnoq7i4gC50ICifl2nA.cache +0 -0
  333. data/test/dummy/tmp/cache/assets/sprockets/v3.0/e9/e9z7UL2GcVLN3_bIvdxVp5MGls59i1UTXpzXDWTTHog.cache +0 -0
  334. data/test/dummy/tmp/cache/assets/sprockets/v3.0/eT/eTzbQD4PCvjLIvyTMPWJRFGlGdFL28k0YEdfgMcrBQE.cache +1 -0
  335. data/test/dummy/tmp/cache/assets/sprockets/v3.0/eW/eWQbPlTRXrddf0A9Q_0gzVpWRnIcI9EGEN8g4m2pEbw.cache +1 -0
  336. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ei/eixkm-DotGsg92JHKeRxMrmXhbRmLbdYIFIVmI_EWvM.cache +1 -0
  337. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ex/exWEJHi5ASZ76zx4iLvLUhvXsQTWKfM5Yz_7V8yPw50.cache +1 -0
  338. data/test/dummy/tmp/cache/assets/sprockets/v3.0/f1/f1koQn-yiZNI3sz36o_7RM0QXIxHlXBXmxKKzjdzjnw.cache +1 -0
  339. data/test/dummy/tmp/cache/assets/sprockets/v3.0/fA/fA2cEH23afmcgadZgljh15rOb-2pdlFrSmKatJbq-34.cache +1 -0
  340. data/test/dummy/tmp/cache/assets/sprockets/v3.0/fA/fAVsYqk4ogoJhTm8GygNL_jDG-sRso7QZTIE664hYVc.cache +0 -0
  341. data/test/dummy/tmp/cache/assets/sprockets/v3.0/fJ/fJqv1rS9qoF1uhpdG2jzI3OiVs4x-022oeH_FiJZZhg.cache +1 -0
  342. data/test/dummy/tmp/cache/assets/sprockets/v3.0/fM/fMz9ETGj2OQbwMaeGCPCpLMVdT57TYqIIYVyaAFEdM0.cache +0 -0
  343. data/test/dummy/tmp/cache/assets/sprockets/v3.0/fR/fR2XVTrZMNuOJbXDhmMIfdW3b5g1LtXeGh0c7HC3gNQ.cache +1 -0
  344. data/test/dummy/tmp/cache/assets/sprockets/v3.0/fY/fYcPA5Ewns66QItM1eTcKrNFoHdpSiyR6t2xtVnWwYg.cache +1 -0
  345. data/test/dummy/tmp/cache/assets/sprockets/v3.0/fc/fcrQQN3Cuh28-rJYW3fYaJ7JzJb83zP9aix1WXlDk18.cache +0 -0
  346. data/test/dummy/tmp/cache/assets/sprockets/v3.0/fs/fsypoHlza3x8sxe4FXVDazRqvBZCBLAFmP2lTW5aAIM.cache +1 -0
  347. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ga/gaandvC9kV1P3TSczVO-KDssnAXsMiwrNlPFmMwsEWM.cache +0 -0
  348. data/test/dummy/tmp/cache/assets/sprockets/v3.0/gg/ggEcxbTx5PJt4vHdWKZ6qBj4NB50w5LZbRtdgGLTla4.cache +1 -0
  349. data/test/dummy/tmp/cache/assets/sprockets/v3.0/gm/gmb1zkOL5aZCFVo73IPMzobFoheMscp66GoWlMoDZU4.cache +0 -0
  350. data/test/dummy/tmp/cache/assets/sprockets/v3.0/gq/gqNQKCLhCUC4ChgFlwq7jBAS7SLwtfLM4Vy-NAZg6e4.cache +1 -0
  351. data/test/dummy/tmp/cache/assets/sprockets/v3.0/gt/gtPtjI5N1DSB5P1bdK-bNIJqWUFvE0ehLOMVXgF2tCY.cache +1 -0
  352. data/test/dummy/tmp/cache/assets/sprockets/v3.0/gu/guzIHul2knhPL8YUnKWOCfs-X9Dq0KvqUK-WEMHzaD4.cache +0 -0
  353. data/test/dummy/tmp/cache/assets/sprockets/v3.0/hK/hKuUOawFepQqjveE7g2sVozolQcoBliNyhnunmPslsg.cache +1 -0
  354. data/test/dummy/tmp/cache/assets/sprockets/v3.0/hO/hONP4oZGnRf5CRPcpFnIxcaSZYntuQuXkt8LNmkP8MM.cache +1 -0
  355. data/test/dummy/tmp/cache/assets/sprockets/v3.0/hZ/hZi1k6tpxxCGYxRe7zY74ItcOI8gZrREOpGuA8JSpGg.cache +0 -0
  356. data/test/dummy/tmp/cache/assets/sprockets/v3.0/he/heTtS3ZFj526a9bsM6T2u0GYqvdpqWOhGdT8A-tEQgE.cache +0 -0
  357. data/test/dummy/tmp/cache/assets/sprockets/v3.0/i6/i6DHOT_Zcn_6hRHl7aNwxwy3ebGC6U5P_WGEbU-X_TQ.cache +0 -0
  358. data/test/dummy/tmp/cache/assets/sprockets/v3.0/i6/i6HNUWZH5zteCFCe1R35B3gTH9cg1M8o_hffi-uWoRM.cache +0 -0
  359. data/test/dummy/tmp/cache/assets/sprockets/v3.0/iD/iDuUWO0yUxAvq9ELEkCj4O4J42l4OkEVBbhit-o0YXc.cache +1 -0
  360. data/test/dummy/tmp/cache/assets/sprockets/v3.0/iQ/iQ_GmXix39hgy5yhxUhvc-BhzDbx6E_qhnN8hpY6k3s.cache +1 -0
  361. data/test/dummy/tmp/cache/assets/sprockets/v3.0/is/ISA9HDXLcm6f-EPZwtZ3PvvTRcY1wGGQNq_e2avktNQ.cache +1 -0
  362. data/test/dummy/tmp/cache/assets/sprockets/v3.0/is/iszlrQzjh9-37lqIcffksyWK-hoGcrVOXONdOqjjL5s.cache +0 -0
  363. data/test/dummy/tmp/cache/assets/sprockets/v3.0/iy/iym5qgUuFqEaTtoMJ4XXp2LbuLHBx76yDAha8UPqZB8.cache +0 -0
  364. data/test/dummy/tmp/cache/assets/sprockets/v3.0/jB/jB2XvHmSPEbBzF7s4P-HzdKK1VgCHj7Xs37q0B1S2iY.cache +1 -0
  365. data/test/dummy/tmp/cache/assets/sprockets/v3.0/jH/jH2YboIoaG8EdorJFbhedtxPkVZ9CN9AoiqqLJ6qWJ4.cache +2 -0
  366. data/test/dummy/tmp/cache/assets/sprockets/v3.0/je/je0OHchcJ6ofg69CiZNdjoy_gmdq_nS_hSf9EEApIxs.cache +1 -0
  367. data/test/dummy/tmp/cache/assets/sprockets/v3.0/k6/k6lvtEnXCFpENLvrJXxZiANe0MsmZcUa7-gtPaB81oM.cache +0 -0
  368. data/test/dummy/tmp/cache/assets/sprockets/v3.0/kH/kHqX3aSIRVoHMx9XD_917KDmR-XgPfPEN_KzUXkBjnM.cache +1 -0
  369. data/test/dummy/tmp/cache/assets/sprockets/v3.0/kI/kI6EjHeiOR9Y3bQap7RhQAaVBgaA-ALBFCBC0XVcq_8.cache +4 -0
  370. data/test/dummy/tmp/cache/assets/sprockets/v3.0/kT/kTDRSPgjkgsOA96MXs8Lw0mVF8EjAf3hhEWQj0UQgKs.cache +1 -0
  371. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ka/KaIv5B0hZK_DGS5phYCInEVsozlzvdBuDQDFZ8pbEE0.cache +1 -0
  372. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ka/kauR7_UXXgOAep3iqfG3aX1w5EOokj-p9pWHqpCOh8w.cache +0 -0
  373. data/test/dummy/tmp/cache/assets/sprockets/v3.0/kc/kchg-OoRYJdZqz3ELQQXZX1XCYp_ouQIol1cvjzBk90.cache +0 -0
  374. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ko/koYTd66ZXj_9IToRaMSaq5juT7JXradWzmkeanXpOTo.cache +1 -0
  375. data/test/dummy/tmp/cache/assets/sprockets/v3.0/l1/l1pF3dK2_Ht7XCN9hyMvED-Hee8vOhw8HoeGE0MVCBU.cache +1 -0
  376. data/test/dummy/tmp/cache/assets/sprockets/v3.0/l2/l2C55ez2bNOzRM7dQQUo3clI6LdrEtsYVTAgL6net9g.cache +1 -0
  377. data/test/dummy/tmp/cache/assets/sprockets/v3.0/l3/l3tAw6XmXvpbhEwFRnym3bD_r7RPPekaH0Ki6ZtoDtI.cache +1 -0
  378. data/test/dummy/tmp/cache/assets/sprockets/v3.0/lI/Li3yqj6JJKOH62Q4A62e46JlVIOnN69OzQbU0fjqxBs.cache +1 -0
  379. data/test/dummy/tmp/cache/assets/sprockets/v3.0/lI/lIFpYLORV3vlP03olbSJgC-qJtkKtw8Ufb08WH6TjTY.cache +0 -0
  380. data/test/dummy/tmp/cache/assets/sprockets/v3.0/lV/lV-w0KC-NGdZvAOndi4eI0-tfteOjxmc6orMHNZMX7k.cache +1 -0
  381. data/test/dummy/tmp/cache/assets/sprockets/v3.0/lr/lrXR7t6IGiDU95dQ6xX4wmq9stUB33EYaE2k1-Dk2R0.cache +1 -0
  382. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ls/lsGa4OIoW8IQwKLVTCdbz0rEXdTepE2VoWsBf0YEAJk.cache +1 -0
  383. data/test/dummy/tmp/cache/assets/sprockets/v3.0/mT/mTIp-1taV40mcDc6P6a-W3MshbqApeYzcMnaxuSzrgM.cache +0 -0
  384. data/test/dummy/tmp/cache/assets/sprockets/v3.0/mW/MwZXEadj6mEJJ5fIDNDDXOHXIB62tZxA2eLvcoKfUSc.cache +1 -0
  385. data/test/dummy/tmp/cache/assets/sprockets/v3.0/mW/mWXBx2uTKjhavJGG-DVkNOlyzVd1u3j9Psd4JMs5NPg.cache +0 -0
  386. data/test/dummy/tmp/cache/assets/sprockets/v3.0/m_/m_84UWrLCnvca3LjNwP9zpzUzLkyLNm8HVGZrKCcASw.cache +0 -0
  387. data/test/dummy/tmp/cache/assets/sprockets/v3.0/mo/mo6LGVvPD2VMca_kw98GpSYtLm_dBdKCLSvx8tC3FNY.cache +0 -0
  388. data/test/dummy/tmp/cache/assets/sprockets/v3.0/n9/n9gl4h4rv028P0UQ8Y7_9GA3bTPFcH2gpPtcZKV31cI.cache +1 -0
  389. data/test/dummy/tmp/cache/assets/sprockets/v3.0/na/nagcAtkTnEic3bguZ-8Lsn3iU1u-G580-a5_PDGzcLY.cache +2 -0
  390. data/test/dummy/tmp/cache/assets/sprockets/v3.0/o5/o54sA1modO6Y3X00t3XplFH-HWwgayKkd2xPk803wSM.cache +0 -0
  391. data/test/dummy/tmp/cache/assets/sprockets/v3.0/o7/o75I20QPsWT6wv-65y7VMD2P1sqTtpq_Ww2SfpMFS6A.cache +1 -0
  392. data/test/dummy/tmp/cache/assets/sprockets/v3.0/oC/oC0WlUAEOcGT1iVVLZAB9mZwWTr4UWuE6dQ_qzCXPU8.cache +0 -0
  393. data/test/dummy/tmp/cache/assets/sprockets/v3.0/oO/oOKj-T-fl4jFWtgQ7OitTLIQmgCF6U7YJOFSbp5xPN8.cache +1 -0
  394. data/test/dummy/tmp/cache/assets/sprockets/v3.0/oO/oOR47j8fCLlue8MCWBs1qUkeij729RfD3VqnETHF5bc.cache +1 -0
  395. data/test/dummy/tmp/cache/assets/sprockets/v3.0/oZ/oZsjBPZxJNJD8wGvnqZmjwU4pbknZYuPMnY66OpQ_s0.cache +1 -0
  396. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ol/olgVIytSawox-_geaXjTRtdhtCib13NsNxcr6eertls.cache +4 -0
  397. data/test/dummy/tmp/cache/assets/sprockets/v3.0/pE/pEhaat2KBd5SrT7szC_8R1_6hK17FTpvoRFkmCRSD3M.cache +0 -0
  398. data/test/dummy/tmp/cache/assets/sprockets/v3.0/pF/pFmW1gmAZibi_iHBifw4vbyZS0qtnVK5lJY3a_EZy_s.cache +1 -0
  399. data/test/dummy/tmp/cache/assets/sprockets/v3.0/pW/pWkj-93urCjEEUbWRMvvdeX3hToMQCWFN2JnHFUHYyY.cache +0 -0
  400. data/test/dummy/tmp/cache/assets/sprockets/v3.0/pZ/pZa_XMQtdWmTpxGhxOHRwpLu-rMzIOspvsMJiEQjxJo.cache +0 -0
  401. data/test/dummy/tmp/cache/assets/sprockets/v3.0/pl/plUR966kw0KQT_r2Vq9ObkjAEDXvj0zBpaC6Z5ITIW0.cache +1 -0
  402. data/test/dummy/tmp/cache/assets/sprockets/v3.0/pt/ptTZ8Ht5vDgK1JbCYoDKGHClncG3Xz2S8gJv8ztMC2M.cache +1 -0
  403. data/test/dummy/tmp/cache/assets/sprockets/v3.0/qJ/qJupxS-F8ClOwBELAcYPaKTwF8uynRas3GTvJlcC-Mw.cache +1 -0
  404. data/test/dummy/tmp/cache/assets/sprockets/v3.0/qP/QpDtuKl4FCtnNOSVcI-3EGPJR-41pEu4hUFJZsRVFE0.cache +1 -0
  405. data/test/dummy/tmp/cache/assets/sprockets/v3.0/qP/qPrQVxH3O5eViAPmtuJ74nXfavfCMxzR2JcMyPUvCbA.cache +1 -0
  406. data/test/dummy/tmp/cache/assets/sprockets/v3.0/qk/qkgEs9D5Tyon0rlY1Seegd3C6fDWXT_hUUWp46CzeFk.cache +1 -0
  407. data/test/dummy/tmp/cache/assets/sprockets/v3.0/qk/qkkjB0GmeEcWjyLPtf0A4R4hYAbaE0EiVp1vOTLzU2g.cache +1 -0
  408. data/test/dummy/tmp/cache/assets/sprockets/v3.0/qr/qrHman0aUHfoCGYcw_DrhhbxAzoBhOoUX_MfSfmlxLI.cache +1 -0
  409. data/test/dummy/tmp/cache/assets/sprockets/v3.0/rA/rAvN9noQ4Xjp7pSmzgJxlx3EXeyUhOJsPjz_Av61A3k.cache +2 -0
  410. data/test/dummy/tmp/cache/assets/sprockets/v3.0/rg/RGRsOoh2xQOevC5DY7dGO17COr1IvdxATdm1ZmwlAk0.cache +0 -0
  411. data/test/dummy/tmp/cache/assets/sprockets/v3.0/rg/rg78JyUVrQTIJ4ii1q-FyCPIEQL2DBFe-84uEFUdV14.cache +0 -0
  412. data/test/dummy/tmp/cache/assets/sprockets/v3.0/rt/rtcTdKF7lUGOQoDgloqxt1rLHBdouff2cDvLpaXXjQE.cache +1 -0
  413. data/test/dummy/tmp/cache/assets/sprockets/v3.0/s2/s2IEbMhwq-y3tfxXyuqb-TMzwJ8GELDKn5OUrJWG3Qs.cache +2 -0
  414. data/test/dummy/tmp/cache/assets/sprockets/v3.0/sK/sKOq7fr7FpLJOm3aCHCF2OU1lZ5_hLgwpM4MnUeoYPo.cache +1 -0
  415. data/test/dummy/tmp/cache/assets/sprockets/v3.0/sh/sh85gqIOq0XEXE45PbFkOABOPt0pa5qH5NpPxSO2rME.cache +1 -0
  416. data/test/dummy/tmp/cache/assets/sprockets/v3.0/t2/t2YewDsCnLBElnAkDksUp6pK-kCXgCs0aW7sWBqnL7Q.cache +0 -0
  417. data/test/dummy/tmp/cache/assets/sprockets/v3.0/t7/t75LiISsyHSR4Y9VaWSNXBsqxjLh26PUvEgzaLW3K7Q.cache +1 -0
  418. data/test/dummy/tmp/cache/assets/sprockets/v3.0/tl/tlJ4WTPsKOI7_dsTMGH1muRNVL6w0RioL3dWe9Jtts4.cache +1 -0
  419. data/test/dummy/tmp/cache/assets/sprockets/v3.0/tr/trIrqCe1yekofCwo3N4fUQQ7snQn3YHIMeiTqUSyCCo.cache +1 -0
  420. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ty/tyNzgeNTeJR6cW-W_VgjNX6ud0TordT-ov-pLCreQXA.cache +0 -0
  421. data/test/dummy/tmp/cache/assets/sprockets/v3.0/uL/uLcTmzKlskP7_yOMj_yKE_fjgWFcxmWCg-2xCA3nIH0.cache +0 -0
  422. data/test/dummy/tmp/cache/assets/sprockets/v3.0/us/usl5OJRq3b0d-1APtgkD5RoBuNoRL6gZv3wrOReji-o.cache +1 -0
  423. data/test/dummy/tmp/cache/assets/sprockets/v3.0/v1/v1t8N5WLBSnimJrn9UXH0kzk7ZmYQXfVJCr2tT7YIJw.cache +1 -0
  424. data/test/dummy/tmp/cache/assets/sprockets/v3.0/v5/v5UkqiWWtuwiW_wAN7GjlePPTtJUdgix8tXYZ1Jj4kw.cache +0 -0
  425. data/test/dummy/tmp/cache/assets/sprockets/v3.0/vE/vEpqAMl0wWv2y8ONxFYn8hDf54gkguSObFxaZcXOpAQ.cache +3 -0
  426. data/test/dummy/tmp/cache/assets/sprockets/v3.0/vK/vKJRYj4JRd0HcWxcOkyP-9-97tYE7hNBdbWsJabLYEU.cache +0 -0
  427. data/test/dummy/tmp/cache/assets/sprockets/v3.0/vL/vLx9S70tRr-sRpryc-nqe2F74FqRh7v8D6WupBQi9Q4.cache +0 -0
  428. data/test/dummy/tmp/cache/assets/sprockets/v3.0/v_/v_Rcf-6UDGcEpf9_h2dle0m1mGQAarWR6X04yYsqs_4.cache +0 -0
  429. data/test/dummy/tmp/cache/assets/sprockets/v3.0/vm/vmfopQdFnsKQzKuuu15SPllQY_H02O2Aq1th73TKW6Y.cache +0 -0
  430. data/test/dummy/tmp/cache/assets/sprockets/v3.0/wE/wE09fu8QcVTYAZEexPpX1PAUQRz0Zy2F9lZhjK2KQ58.cache +0 -0
  431. data/test/dummy/tmp/cache/assets/sprockets/v3.0/wF/wF4qGEvmS69h8DHCAI32EwT78k2cHViAjUkL8Z1I8E8.cache +3 -0
  432. data/test/dummy/tmp/cache/assets/sprockets/v3.0/wh/whuYDNpoV7JQyT7AC5grUG7YQOpNBwHid6GKT7jWyms.cache +0 -0
  433. data/test/dummy/tmp/cache/assets/sprockets/v3.0/x8/x8uDBvd5o58FDCU4baEJ0fLsjiQ5piZqTaSMhm19Q2k.cache +1 -0
  434. data/test/dummy/tmp/cache/assets/sprockets/v3.0/xs/xs_ncAMwUYeSKXDLm-TqM8gk-9H7XjFt1GsL3E68AXE.cache +1 -0
  435. data/test/dummy/tmp/cache/assets/sprockets/v3.0/yO/yOikccH8pD0ufEjGWckfu4ooNJFW9yDhnhBEkw9z54s.cache +1 -0
  436. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ya/yaKaPg6TFrKRtz81rt4Ug2O7TBrN3wquaV-ST0JlIQk.cache +3 -0
  437. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ys/ysNZtLVJ7TzSH4eKZakVHOvr7hZhlg-4bLgeMl0LcpM.cache +1 -0
  438. data/test/dummy/tmp/cache/assets/sprockets/v3.0/yt/yteX5leOLZaMFXIqq3hOcz_7Y6c11h5_RNCTlN09TBY.cache +1 -0
  439. data/test/dummy/tmp/cache/assets/sprockets/v3.0/zI/zI_1Womd93w6dFYrsswj94ILgXrJha7zVoVoJFGMShc.cache +1 -0
  440. data/test/dummy/tmp/cache/assets/sprockets/v3.0/zX/ZXAaYM3l4CeZZUzZMTxeDRj_Sy5zer8dGXT-5tnDRRM.cache +1 -0
  441. data/test/dummy/tmp/cache/assets/sprockets/v3.0/zX/zXOPfSBUC4dF2kpBpk7m2wO-XJZ4mAswwrLjQMWsTVw.cache +0 -0
  442. data/test/dummy/tmp/cache/assets/sprockets/v3.0/z_/z_a8Us1cyUTvypL3FdkXgWbHB1ZKLt7e34p9lzfycts.cache +0 -0
  443. data/test/dummy/tmp/cache/assets/sprockets/v3.0/ze/zeBwqDxHFJtBvdiJKVB_L0U80912nUj7lIY47B6LnNo.cache +2 -0
  444. data/test/dummy/tmp/cache/assets/sprockets/v3.0/zh/zhu2-UioBuypMwbNOm1cBpbeOQtXlmS20wa4GuvLjDs.cache +1 -0
  445. data/test/dummy/tmp/cache/assets/sprockets/v3.0/zu/zu35iDCejhEjZn_QpCGtRoT__vuoBlzUQycyyksxLMw.cache +0 -0
  446. data/test/dummy/tmp/cache/assets/sprockets/v3.0/zv/zvkOvfSHi5VUjxkdl1uD-LdPNE15nNw4sjYcRlZ0w78.cache +0 -0
  447. data/test/routes_test.rb +8 -0
  448. data/test/test_helper.rb +2 -2
  449. metadata +834 -12
@@ -0,0 +1,34 @@
1
+ ////////////////////
2
+ // Primary Colors
3
+ ////////////////////
4
+
5
+ $black: rgb(50, 50, 50) !default
6
+ $grey: rgb(239, 239, 239) !default
7
+ $slate: rgb(108, 108, 108) !default
8
+ $white: rgb(249, 249, 249) !default
9
+ $blue: rgb(95, 175, 255) !default
10
+ $purple: rgb(175, 95, 215) !default
11
+ $red: rgb(215, 95, 95) !default
12
+ $yellow: rgb(247, 197, 42) !default
13
+ $orange: rgb(255, 135, 0) !default
14
+ $green: rgb(120, 210, 48) !default
15
+
16
+ // This allows all of the primary colors to be accessed by mixins that generate display classes for objects with one of each color
17
+ $all-colors: (black, $black) (grey, $grey) (slate, $slate) (white, $white) (blue, $blue) (purple, $purple) (red, $red) (yellow, $yellow) (orange, $orange) (green, $green)
18
+
19
+ ////////////////////
20
+ // Function Colors
21
+ ////////////////////
22
+
23
+ $color-primary: $black !default
24
+ $color-inverted: $white !default
25
+ $color-secondary: $grey !default
26
+ $color-accent: $blue !default
27
+ $color-function: $slate !default
28
+ $color-success: $green !default
29
+ $color-alert: $red !default
30
+ $color-warning: $yellow !default
31
+ $color-secure: $orange !default
32
+
33
+ // This allows all of the function colors to be accessed by mixins that generate display classes for objects with one of each color
34
+ $all-function-colors: (primary, $color-primary) (secondary, $color-secondary) (accent, $color-accent) (function, $color-function) (alert, $color-alert) (success, $color-success) (warning, $color-warning) (secure, $color-secure)
@@ -0,0 +1,9 @@
1
+ ////////////////////
2
+ // Inputs
3
+ ////////////////////
4
+
5
+ $input-background: lighten($color-accent, 27%) !default
6
+ $input-placeholder-color: $color-primary !default
7
+ $input-border-color: none !default
8
+ $input-border-size: none !default
9
+ $input-padding: 0.375em !default
@@ -0,0 +1,50 @@
1
+ ////////////////////
2
+ // Set Max Width
3
+ ////////////////////
4
+
5
+ $max-width: 93.75rem
6
+
7
+ ////////////////////
8
+ // Set REM Default
9
+ ////////////////////
10
+
11
+ $base-rem: 16px !default
12
+
13
+ ////////////////////
14
+ // Set REM Modifiers
15
+ ////////////////////
16
+
17
+ $small-rem: 14px !default
18
+ $large-rem: 18px !default
19
+ $xlarge-rem: 20px !default
20
+ $xxlarge-rem: 22px !default
21
+
22
+ ////////////////////
23
+ // Set Vertical/Horizontal Rhythm
24
+ ////////////////////
25
+
26
+ $rhythm-vertical: 1.5em !default
27
+ $rhythm-horizontal: 1em !default
28
+
29
+ $rhythm: $rhythm-vertical $rhythm-horizontal !default
30
+
31
+ ////////////////////
32
+ // Set Box-Sizing
33
+ ////////////////////
34
+
35
+ $box-sizing: border-box !default
36
+
37
+ ////////////////////
38
+ // Set Button Naming Convention
39
+ ////////////////////
40
+
41
+ $button-name: button !default
42
+
43
+ ////////////////////
44
+ // Set Animation Transitions
45
+ ////////////////////
46
+
47
+ $transition-duration: 0.2s
48
+ $transition-easing: ease-in-out
49
+
50
+
@@ -0,0 +1,6 @@
1
+ ////////////////////
2
+ // Default Header Settings
3
+ ////////////////////
4
+
5
+ $header-primary-background: $color-primary
6
+ $header-primary-color: $color-inverted
@@ -0,0 +1,21 @@
1
+ ////////////////////
2
+ // Media Breakpoints
3
+ ////////////////////
4
+
5
+ $breakpoint-large: 60em !default
6
+
7
+ ////////////////////
8
+ // Media Ranges
9
+ ////////////////////
10
+
11
+ $small-range: (0, $breakpoint-large) !default
12
+ $large-range: ($breakpoint-large+ em-calc(1), em-calc(9999999)) !default
13
+
14
+ ////////////////////
15
+ // Media Queries
16
+ ////////////////////
17
+
18
+ $screen: "only screen"
19
+
20
+ $small-only: "#{$screen} and (max-width: #{$breakpoint-large})"
21
+ $large-up: "#{$screen} and (min-width: #{$breakpoint-large})"
@@ -0,0 +1,16 @@
1
+ ////////////////////
2
+ // Default Table Settings
3
+ ////////////////////
4
+
5
+ $table-width: 100% !default
6
+ $table-border-collapse: collapse !default
7
+ $table-border-width: 0 !default
8
+
9
+ ////////////////////
10
+ // Default Table Colors
11
+ ////////////////////
12
+
13
+ $table-border-color: none !default
14
+ $table-header: $color-accent !default
15
+ $table-row-odd: $color-inverted !default
16
+ $table-row-even: lighten($color-accent, 27%) !default
@@ -0,0 +1,42 @@
1
+ ////////////////////
2
+ // Default Font Size/Spacing
3
+ ////////////////////
4
+
5
+ $font-size: 100% !default
6
+
7
+ $h1-size: 225% !default
8
+ $h2-size: 187.5% !default
9
+ $h3-size: 150% !default
10
+ $h4-size: 125% !default
11
+ $h5-size: 100% !default
12
+ $h6-size: 87.5% !default
13
+
14
+ $small-size: 75% !default
15
+
16
+ $line-height: 1.5 !default
17
+
18
+ $svg-size: 1.5em
19
+
20
+ ////////////////////
21
+ // Font Families
22
+ ////////////////////
23
+
24
+ $font-family: Tahoma, Verdana, Segoe, sans-serif !default
25
+ $header-family: Trebuchet MS, Lucida Grande, Lucida Sans Unicode, Lucida Sans, Tahoma, sans-serif !default
26
+ $monospace-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace
27
+
28
+ $font-weight-light: 300 !default
29
+ $font-weight: 400 !default
30
+ $font-weight-semi-bold: 600 !default
31
+ $font-weight-bold: 700 !default
32
+ $font-weight-extra-bold: 800 !default
33
+
34
+ $font-strong: $font-weight-bold
35
+
36
+ ////////////////////
37
+ // Font Colors
38
+ ////////////////////
39
+
40
+ $font-color: $color-primary !default
41
+ $font-color-inverted: $color-inverted !default
42
+ $font-color-strong: $color-accent !default
@@ -0,0 +1,50 @@
1
+ =button-generator
2
+
3
+ /* =button-inverted($inverted-color)
4
+ &--inverted
5
+ background-color: rgba($inverted-color, 0)
6
+ box-shadow: inset 0 0 0 $border-width $inverted-color
7
+ color: $inverted-color
8
+ &:active:enabled, &:focus:enabled, &:hover:enabled
9
+ box-shadow: inset 0 0 0 $border-width darken($inverted-color, 8%), inset 0 -2.25em 0 0 darken($inverted-color, 8%)
10
+ color: $color-inverted */
11
+
12
+
13
+ .#{$button-name}
14
+ background:
15
+ color: $color-accent
16
+ image: none
17
+ box-shadow: inset 0 0 0 $color-accent
18
+ border: none
19
+ color: dynamic-text-lightness($color-accent)
20
+ cursor: pointer
21
+ display: inline-block
22
+ font-size: 1em
23
+ line-height: $line-height
24
+ padding: $input-padding
25
+ vertical-align: middle
26
+ transition: box-shadow $transition-duration $transition-easing, color $transition-duration $transition-easing
27
+ &:active:enabled, &:focus:enabled, &:hover:enabled
28
+ box-shadow: inset 0 -2.25em 0 darken($color-accent, 8%)
29
+ &--disabled, &:disabled
30
+ cursor: default
31
+ opacity: .5
32
+ // +button-inverted($color-accent)
33
+
34
+ $size: 70%
35
+ @each $button-size in small, medium, large
36
+ &--#{$button-size}
37
+ font-size: $size
38
+ $size: $size + 30%
39
+
40
+
41
+ @each $name, $color in $all-function-colors
42
+ &--#{$name}
43
+ @if lightness($color) > 90%
44
+ $color: darken($color, 5%)
45
+ background-color: $color
46
+ box-shadow: inset 0 0 0 $color
47
+ color: dynamic-text-lightness($color)
48
+ &:active:enabled, &:focus:enabled, &:hover:enabled
49
+ box-shadow: inset 0 -2.25em 0 darken($color, 8%)
50
+ // +button-inverted($color)
@@ -0,0 +1,5 @@
1
+ =clearfix
2
+ &:after
3
+ content: ""
4
+ display: table
5
+ clear: both
@@ -0,0 +1,5 @@
1
+ @function dynamic-text-lightness($color, $lightness: 70)
2
+ @if (lightness($color) > $lightness)
3
+ @return $font-color // Lighter backgorund, return dark color
4
+ @else
5
+ @return $font-color-inverted // Darker background, return light color
@@ -0,0 +1,4 @@
1
+ =ellipsize
2
+ white-space: nowrap
3
+ overflow: hidden
4
+ text-overflow: ellipsis
@@ -0,0 +1,16 @@
1
+ =greyscale
2
+ float: left
3
+ filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\' filterRes=\'800\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale")
4
+ /* Firefox 10+
5
+ filter: gray
6
+ /* IE6-9
7
+ -webkit-filter: grayscale(1)
8
+ /* Chrome 19+ & Safari 6+
9
+ -webkit-backface-visibility: hidden
10
+ /* Fix for transition flickering
11
+ transition: all .1s ease
12
+ z-index: 40 !important
13
+ display: block
14
+ &:hover
15
+ filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\' filterRes=\'800\'><feColorMatrix type=\'matrix\' values=\'1 0 0 0 0, 0 1 0 0 0, 0 0 1 0 0, 0 0 0 1 0\'/></filter></svg>#grayscale")
16
+ -webkit-filter: grayscale(0%)
@@ -0,0 +1,18 @@
1
+ =link-generator
2
+ .link
3
+ box-shadow: inset 0 -.15em 0 $color-accent
4
+ cursor: pointer
5
+ display: inline
6
+ text-decoration: none
7
+ transition: box-shadow $transition-duration $transition-easing, color $transition-duration $transition-easing
8
+ &:hover, &:active, &:focus
9
+ box-shadow: inset 0 -1.5em 0 $color-accent
10
+ color: dyanmic-text-lightness($color-accent)
11
+ @each $name, $color in $all-function-colors
12
+ &--#{$name}
13
+ @if lightness($color) > 90%
14
+ $color: darken($color, 10%)
15
+ box-shadow: inset 0 -.15em 0 $color
16
+ &:active, &:focus, &:hover
17
+ box-shadow: inset 0 -1.5em 0 $color
18
+ color: dynamic-text-lightness($color)
@@ -0,0 +1,27 @@
1
+ =notifier-generator
2
+
3
+ .notifier
4
+ background:
5
+ color: $color-accent
6
+ image: none
7
+ color: dynamic-text-lightness($color-accent)
8
+ display: block
9
+ padding: $rhythm-vertical 0
10
+ vertical-align: middle
11
+
12
+ // .notifier__text
13
+ &__content
14
+ @extend .wrapper
15
+ padding: 0 $rhythm-horizontal
16
+
17
+ // .notifier__close
18
+ &__close
19
+ float: right
20
+ padding: 0 $rhythm-horizontal
21
+ &:hover
22
+ text-decoration: underline
23
+
24
+ @each $name, $color in $all-function-colors
25
+ &--#{$name}
26
+ background-color: $color
27
+ color: dynamic-text-lightness($color)
@@ -0,0 +1,13 @@
1
+ =panel-generator
2
+ .panel
3
+ display: block
4
+ padding: $rhythm
5
+ text-align: center
6
+ &--text-left
7
+ text-align: left
8
+ @each $name, $color in $all-function-colors
9
+ &--#{$name}
10
+ @if lightness($color) > 90%
11
+ $color: darken($color, 5%)
12
+ background-color: $color
13
+ color: dynamic-text-lightness($color)
@@ -0,0 +1,5 @@
1
+ =placeholder
2
+ &:-moz-placeholder
3
+ @content
4
+ &::-webkit-input-placeholder
5
+ @content
@@ -0,0 +1,17 @@
1
+ =space-generator($size, $name: "")
2
+ $n: #{$name}
3
+ @if $name != ""
4
+ $n: "#{$name}"
5
+ $sides: (top, left, bottom, right)
6
+
7
+ .space--#{$n}
8
+ margin: $size
9
+ @each $side in $sides
10
+ .space-#{$side}--#{$n}
11
+ margin-#{$side}: $size
12
+
13
+ .space-inner--#{$n}
14
+ padding: $size
15
+ @each $side in $sides
16
+ .space-inner--#{$side}--#{$n}
17
+ padding-#{$side}: $size
@@ -0,0 +1 @@
1
+ <svg class="svg" xmlns="http://www.w3.org/2000/svg" viewBox="-333.8 295.6 50 50" enable-background="new -333.8 295.6 50 50"><path d="M-284.3 319.6c0-.5-6-13.5-24.5-13.5s-24 13-24.5 13.5l-.5 1 .5 1c0 .5 5.5 13.5 24.5 13.5 18.5 0 24-13 24.5-13.5l.5-1-.5-1zm-24.5 6.5c-3 0-5.5-2.5-5.5-5.5s2.5-5.5 5.5-5.5 5.5 2.5 5.5 5.5-2.5 5.5-5.5 5.5zm-19-5.5c1.5-2 5-7.5 14-9-3 2-5 5-5 9s2 7 5 9c-9-1.5-13-7-14-9zm24.5 9c3-2 5-5 5-9s-2-7-5-9c8.5 1.5 12.5 7 14 9-1.5 2-5.5 7.5-14 9z"/></svg>
@@ -0,0 +1 @@
1
+ <svg class="svg hamburger" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19 18" enable-background="new 0 0 19 18"><path fill="#fff" d="M.5 2.5h18v3H.5zm0 5h18v3H.5zm0 5h18v3H.5z"/></svg>
@@ -0,0 +1 @@
1
+ <svg class="svg" xmlns="http://www.w3.org/2000/svg" viewBox="-327.6 294.3 50 50" enable-background="new -327.6 294.3 50 50"><path d="M-289.6 294.3l-11.4 11.4-22.3 22.3-4.3 16.3 16.3-4.3 26.1-26.1 7.6-7.6-12-12zm-21.7 38.6l-3.8-3.8 18.5-18.5 3.8 3.8-18.5 18.5zm22.3-22.8l-3.8-3.8 3.8-3.8 3.8 3.8-3.8 3.8z"/></svg>
@@ -0,0 +1 @@
1
+ <svg class="svg" xmlns="http://www.w3.org/2000/svg" viewBox="-1725.9 2208.2 50 50" enable-background="new -1725.9 2208.2 50 50"><path d="M-1676 2253.2l-16.1-16.1c1.8-3 3-6.5 3-10.1 0-10.1-8.3-18.5-18.5-18.5-10.1 0-18.5 8.3-18.5 18.5s8.3 18.5 18.5 18.5c4.2 0 7.7-1.2 10.7-3.6l16.1 16.1 4.8-4.8zm-31.4-14.1c-6.5 0-12.5-5.4-12.5-12.5 0-6.5 5.4-12.5 12.5-12.5 6.5 0 12.5 5.4 12.5 12.5-.6 7.2-6 12.5-12.5 12.5z"/></svg>
@@ -1,229 +1,28 @@
1
- # Public: A base controller for admin pages.
2
- class Admin::AdminController < ApplicationController
3
- before_action :find_thing, only: [:show, :edit, :update, :destroy]
1
+ module Admin
2
+ # Public: Base admin system controller. Contains authentication, a dashboard, and a
3
+ # style guide. Anything that must affect all admin pages should be added here.
4
+ class AdminController < ::ApplicationController
5
+ # An AdminMiddleware module can be added to change any part of the
6
+ # base AdminController class' functionality.
7
+ try(:include, ::AdminMiddleware)
4
8
 
5
- helper_method :thing_path
6
- helper_method :things_path
7
- helper_method :new_thing_path
8
- helper_method :edit_thing_path
9
- helper_method :thing_page_path
10
- try(:include, ::AdminMiddleware)
9
+ before_action :authenticate_admin!
11
10
 
12
- # GET /things
13
- # Public: Indexes all things in the model.
14
- #
15
- # Uses pagination by default.
16
- #
17
- # Sets several variables and renders to a view.
18
- def index(options = {})
19
- options[:query] ||= []
20
- @page = (params[:page] || 1).to_i
21
- @route_name ||= @controller_name ||= controller_name
11
+ layout "admin/application"
22
12
 
23
- @iterator = CEO::Iterator.new(
24
- thing,
25
- query: options[:query],
26
- page: @page,
27
- per_page: options.fetch(:per_page, 20),
28
- filters: {
29
- only: options[:only],
30
- except: options[:except]
31
- }
32
- )
33
-
34
- @things = @iterator.all || []
35
- @total_pages = @iterator.total_pages
36
-
37
- @model_name ||= thing.to_s.underscore
38
- @human_model = @model_name.humanize
39
- @title = thing.to_s.titleize.pluralize
40
- render 'admin/index'
41
- end
42
-
43
- # GET /:things/:id
44
- def show(options = {})
45
- @model = thing
46
- @title = @model.to_s.titleize.pluralize
47
- if options[:query]
48
- query_out = {}
49
- iterator = CEO::Iterator.new(thing)
50
- options[:query].each do |q|
51
- query_out.merge! iterator.query_eval(@thing, q)
52
- end
13
+ def dashboard
14
+ render 'admin/dashboard'
53
15
  end
54
16
 
55
- filtered_keys = CEO::Iterator.filter(keys(@thing), options)
56
- @thing_attrs = @thing.attributes.select do |k, _|
57
- filtered_keys.include? k
17
+ def styleguide
18
+ render 'admin/styleguide'
58
19
  end
59
20
 
60
- @thing_attrs.transform_keys! { |k| CEO::Iterator.acronymize(k) }
61
- @thing_attrs.merge! query_out if query_out
62
-
63
- render 'admin/show'
64
- end
65
-
66
- # GET /:things/new
67
- def new(options = { only: [], except: [:id, :created_at, :updated_at], required: [] })
68
- @thing_model = thing
69
- @thing = @thing_model.new
70
- @attrs = CEO::Iterator.filter(@thing.attributes.keys, options)
71
- @route_name ||= @controller_name ||= controller_name
72
- @index_route = send(:"admin_#{@route_name}_path")
73
-
74
- render 'admin/new'
75
- end
76
-
77
- # GET /:things/edit
78
- #
79
- # options - hash of options
80
- # only - filter attributes to edit by whitelist
81
- # except - filter attributes to edit by blacklist (has some preset defaults that you probably don't want)
82
- def edit(options = { only: [], except: [:id, :created_at, :updated_at], required: [] })
83
- @required_keys = options[:required]
84
- @attrs = CEO::Iterator.filter(@thing.attributes.keys, options)
85
- @model = @thing.model_name.name.constantize
86
- @route_name ||= @controller_name ||= controller_name
87
- @index_route = send(:"admin_#{@route_name}_path")
88
-
89
- render 'admin/edit'
90
- end
91
-
92
- # POST /:things
93
- def create
94
- @thing = thing.new(thing_params)
95
- @route_name ||= @controller_name ||= controller_name
96
-
97
- if @thing.save
98
- flash[:notice] = "#{thing} successfully created."
99
- redirect_to things_path(@route_name), notice: "#{thing.to_s.titleize} successfully created."
100
- else
101
- render 'admin/new'
102
- end
103
- end
104
-
105
- # PATCH/PUT /:things/:id
106
- def update
107
- @route_name ||= @controller_name ||= controller_name
108
-
109
- if @thing.update(thing_params)
110
- redirect_to things_path(@route_name), notice: "#{@controller_name.titleize} successfully updated."
111
- else
112
- render 'admin/edit'
21
+ # Defers to #authenticate_admin! in ApplicationController if it is defined
22
+ # If not, returns false/does nothing
23
+ def authenticate_admin!
24
+ super rescue false
113
25
  end
114
26
  end
115
-
116
- # DELETE /:things/:id
117
- def destroy
118
- @thing.destroy
119
-
120
- flash[:notice] = "#{thing} #{@thing.id} was successfully destroyed."
121
- redirect_to action: :index
122
- end
123
-
124
- private
125
-
126
- # Internal: Finds the ActiveRecord object of the current controller.
127
- #
128
- # Returns an ActiveRecord class.
129
- def thing
130
- controller_name.classify.constantize
131
- end
132
-
133
- # Private: Permits all model-defined parameters.
134
- #
135
- # Retuns a hash of parameters.
136
- def thing_params
137
- @params ||= thing.new.attributes.keys.map(&:to_sym)
138
- params.require(thing.name.underscore.to_sym).permit(
139
- @params,
140
- :page
141
- )
142
- end
143
-
144
- # Private: Finds an ActiveRecord object by id.
145
- #
146
- # Sets a variable `@thing`, which contains the object.
147
- def find_thing
148
- @thing = thing.find(params[:id])
149
- end
150
-
151
- # Private: Returns keys for a given model.
152
- #
153
- # Arguments:
154
- # - model: the model object to get the keys from
155
- #
156
- # Returns an array of keys.
157
- def keys(model)
158
- model.attributes.keys
159
- end
160
-
161
- # Private: Returns the path of the thing.
162
- #
163
- # object - An instance of a model.
164
- #
165
- # Returns the path of the thing.
166
- def thing_path(model, object)
167
- id = object['ID'] || object['id']
168
- send(:"admin_#{undersingularize(model)}_path", id: id)
169
- end
170
-
171
- # Private: Returns the index path of a model.
172
- #
173
- # object - An instance of a model.
174
- #
175
- # Returns the path of many things.
176
- def things_path(object = nil)
177
- object ||= @route_name || controller_name
178
- send(:"admin_#{underpluralize(object)}_path")
179
- end
180
-
181
- # Private
182
- #
183
- # model - The model name.
184
- # object - An instance of a model.
185
- #
186
- # Returns the edit path of a model.
187
- def edit_thing_path(model, object)
188
- id = object['ID'] || object['id']
189
- send(:"edit_admin_#{undersingularize(model)}_path", id: id)
190
- end
191
-
192
- # Private
193
- #
194
- # model - The model name.
195
- # object - An instance of a model.
196
- #
197
- # Returns the new path of a model.
198
- def new_thing_path(model)
199
- send(:"new_admin_#{undersingularize(model)}_path")
200
- end
201
-
202
- # Private
203
- #
204
- # model - The model name.
205
- # page - The page number.
206
- #
207
- # Returns the paginated path of an object.
208
- def thing_page_path(model, page)
209
- send(:"page_admin_#{underpluralize(model)}_path", page: page)
210
- end
211
-
212
- # Private
213
- #
214
- # noun - Something to underpluralize. (String)
215
- #
216
- # Returns an underscored and pluralized string.
217
- def underpluralize(noun)
218
- noun.to_s.underscore.pluralize.downcase
219
- end
220
-
221
- # Private
222
- #
223
- # noun - Something to undersingularize. (String)
224
- #
225
- # Returns an underscored and singularized string.
226
- def undersingularize(noun)
227
- noun.to_s.underscore.singularize.downcase
228
- end
229
27
  end
28
+