appt 0.0.1.beta.1 → 0.0.1.beta.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (310) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/appt/application.js +2 -13
  3. data/app/assets/stylesheets/appt/application.scss +3 -0
  4. data/app/assets/stylesheets/appt/spinner.scss +31 -0
  5. data/app/controllers/appt/base_controller.rb +7 -0
  6. data/app/controllers/appt/calendars_controller.rb +6 -0
  7. data/app/controllers/appt/home_controller.rb +8 -0
  8. data/app/helpers/appt/application_helper.rb +16 -0
  9. data/app/helpers/appt/calendars_helper.rb +4 -0
  10. data/app/mailers/base_mailer.rb +4 -0
  11. data/app/models/appt/appointment.rb +4 -0
  12. data/app/models/appt/block.rb +4 -0
  13. data/app/models/appt/calendar.rb +4 -0
  14. data/app/models/appt/calendar_event.rb +5 -0
  15. data/app/views/appt/home/index.html.haml +4 -0
  16. data/app/views/appt/shared/_flash.html.haml +15 -0
  17. data/app/views/appt/shared/_navbar.html.haml +5 -0
  18. data/app/views/kaminari/_first_page.html.haml +2 -0
  19. data/app/views/kaminari/_gap.html.haml +2 -0
  20. data/app/views/kaminari/_last_page.html.haml +2 -0
  21. data/app/views/kaminari/_next_page.html.haml +2 -0
  22. data/app/views/kaminari/_page.html.haml +6 -0
  23. data/app/views/kaminari/_paginator.html.haml +11 -0
  24. data/app/views/kaminari/_prev_page.html.haml +2 -0
  25. data/app/views/layouts/appt/application.html.haml +29 -0
  26. data/config/initializers/simple_calendar_patch.rb +27 -0
  27. data/config/initializers/tod_patch.rb +6 -0
  28. data/config/initializers/user_class_extensions.rb +6 -0
  29. data/config/initializers/workhours_patch.rb +8 -0
  30. data/config/routes.rb +5 -0
  31. data/db/migrate/20150804002016_create_appt_calendars.rb +9 -0
  32. data/db/migrate/20150804003348_create_appt_blocks.rb +8 -0
  33. data/db/migrate/20150804003846_create_appt_appointments.rb +8 -0
  34. data/lib/appt.rb +19 -0
  35. data/lib/appt/configuration.rb +54 -0
  36. data/lib/appt/version.rb +1 -1
  37. data/lib/bootstrap_month_calendar.rb +37 -0
  38. data/lib/workhours_serializer.rb +15 -0
  39. data/test/controllers/appt/calendars_controller_test.rb +13 -0
  40. data/test/dummy/app/assets/javascripts/application.js +1 -0
  41. data/test/dummy/app/assets/stylesheets/application.css +1 -0
  42. data/test/dummy/config/application.rb +3 -0
  43. data/test/dummy/config/database.yml +18 -15
  44. data/test/dummy/config/locales/en.yml +11 -1
  45. data/test/dummy/config/routes.rb +2 -0
  46. data/test/dummy/db/development.sqlite3 +0 -0
  47. data/test/dummy/db/schema.rb +35 -0
  48. data/test/dummy/db/test.sqlite3 +0 -0
  49. data/test/dummy/log/development.log +659 -0
  50. data/test/dummy/log/test.log +164 -0
  51. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-LSG_TEpDZ83_MXLhF3gRHnP24bBv-Tmcv32ocqtJ2w.cache +0 -0
  52. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-LzjdLnLfhZRXfKz1I1i_W9M7W3yZOgyt7zs7YpBjLY.cache +1 -0
  53. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-VpGyVKaMmazAg36f2MBRTMvPZMFBCoJkUG2ppRYSsM.cache +1 -0
  54. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/-t_3IouGpYYHvIRq_5a9ZKYTRh8D1Hv3-xaiPohCS1E.cache +0 -0
  55. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/02-bDhBXC6ILKo-zvZCTLQQJ4YLhc9L7eJUl-A8fZAQ.cache +14 -0
  56. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0SHW4qZP1qAJR5Fvw2AMsnBCNNtR2V9TdpZZgZKfBgo.cache +1 -0
  57. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0mL-lTA4Yyf2siKnu2uBJIldp_-r-Af_QpIAUGjzP3Y.cache +0 -0
  58. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/0yihE8zWQdIETt1YuSUUCzQPJgKohjHLB1pBJ2hEueE.cache +2 -0
  59. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/1S9BBL3mGjRfcK4ForW-zhdKfLU2PzDHCDPzO964G0s.cache +1 -0
  60. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/1bWUHvEyjI_al58trSsZi7e4uGVxIPMgaOIRWXwfgao.cache +0 -0
  61. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/1zZFKRR6397Fu-tEGOrlLUceQgcCAC5Xif5ioQ7tyV8.cache +1 -0
  62. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/273RU3lggNRfc3lCX20Gf4pQg6eUtaPW-IsjN3bggbc.cache +0 -0
  63. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/2hxQUt1m7n0bp8xnz23VJ_qU7DnOykwWN-d7AhsDkyY.cache +0 -0
  64. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/2x0pkiWDI4bbAfcuV1mcTXsPVvUduHAX6r3lRLc1Tgk.cache +1 -0
  65. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/355IUUcjfNAuHa---oBvTUJ-I0N8yz0vo9gG3QgcKbM.cache +0 -0
  66. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3CCLVUyBKZIPMxWNCogmp_eyLw1cE_xkLS909S06fsI.cache +0 -0
  67. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3HUNfWT6DBCnDF3ZCtJSe3DUfOYpv6IAxJSkiRxdpxU.cache +1 -0
  68. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3NTwfh28Gkld_Lgp4ww3wnAkHxvvEicNSr1tjAM6s18.cache +2 -0
  69. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3ZlbHot3mfRIo4buskOkakwRhR8Rjdk-pCBJ7gXuL2A.cache +2 -0
  70. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/3e7FaNFqp2UTBxkADJFyPmVnej2psMQCR7dmMRhbDms.cache +1 -0
  71. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5lIhWM_Y8mEkHREDIX-wD15DIsAzjFTKM1DQXlQP2dM.cache +2 -0
  72. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/5zOWdX7u6OXMG1CtVmoBfQ8n8UUV6twBvC5RSKpD7ao.cache +0 -0
  73. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6JbUkGM3x4obKxF3n--nnOiS-2g1hF-nM8NvxpbDgmo.cache +2 -0
  74. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/6eKwbRO8XdrGrXZazRpHNAALZD5ngXbaMj4pyj73zwk.cache +1 -0
  75. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/7VKyuYf76YDRM5HPH4IoqKCsi7YVBqQCrFeEOQn3G4Y.cache +0 -0
  76. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/7lBeKOoi4NxBfL9kSBdVkIK9pOTUe_e5ash-esqUu9E.cache +1 -0
  77. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/7syZ2WCpr38Fgp306yXMFTt53Xs13HoKuv8ZChW4kaE.cache +1 -0
  78. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/8O-gCeSAOqIUJtAyrVELRvBG_5m9bs9e4rNlZF39Ua8.cache +0 -0
  79. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/8PPjLBvwpFH3iIfhZZCt0xqom0f9nRq6cdrScrJi8Mo.cache +2 -0
  80. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9-ADTkHHNZKGWnbbJWvLRDxmObXZ7e5AzdPi66_RaAg.cache +0 -0
  81. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/94PF3X8eyVmRV5foOl_yFVEQXoSfT3rlZa3RX-5WM0s.cache +1 -0
  82. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/95n3vAbBD06ilHfSz8iIVGCu7GPhbvGdb7h7jlHv-4M.cache +0 -0
  83. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9CcP25GzSxP6IN_DigWDgqIobDLPRmJAbaXxycpNSnw.cache +0 -0
  84. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9bE7866OkJyClwouLeBSA3VDvu2A1KlrcByxVILtZHA.cache +2 -0
  85. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9bf-0Oe7rComR007AM8uzyOuESPSyAR8mSjZU7cgy9c.cache +0 -0
  86. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/AfQJVY3xdYVr299jf8Q5vSmNGSUoVtnna6PRfqQihJc.cache +1 -0
  87. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/AgWJjGQxtvCp47ZucE8AnNlFMADaO7PtgjRC4kClyik.cache +0 -0
  88. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Awp0Oqj5QhBMMz7T6wI8rXUnnOqiPkDDcFEIfyIJfE0.cache +0 -0
  89. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Axscy6BLYxr9FQFPWsG6mIHx8B-yBL77HDwT1eRvaMQ.cache +1 -0
  90. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/B-jTemGu3vPf5woul4WPScUFBB5HytlhdPV7LSxXxt4.cache +1 -0
  91. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/BEZAvNL769UPp98E5dqcUq5GK_zeDXSl-HI3w4LgGsI.cache +3 -0
  92. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/B_3EmDMPcbTMn5aE9_lz0GqHuT_hB5oR-qXGJ5UblAo.cache +1 -0
  93. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Bzn7bDwXYtLBYbhKUMYtlm3skj52HURxI-Q5qRkMMiY.cache +2 -0
  94. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/C3BKXHecRB8JBvZyVd6OuToNVwkbnzgHB1L56wZpmQI.cache +1 -0
  95. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/C5FmkBsT-Xk6kA4R0vzxZTZ2rTMuCLLtBhPZ1Nv_Xw0.cache +1 -0
  96. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/C9vrZY0n4M16Xss6f0x72K1mW5HCOCxyQBbbGV0M0vQ.cache +0 -0
  97. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CC9c3-YKy07HgdIKNKjvZyBW2S38lfo4tI23pGIC46s.cache +1 -0
  98. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/CQjHzUV3yKKs81vQWZvRNRsItE5VYlYgsL5ncMDAj5k.cache +0 -0
  99. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Cv1vOuED-37UA17CKdZ6sLhSlzJvRlM4TTQVnAgToaU.cache +1 -0
  100. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/D22LcxJo5J5Uc50GkaaJLiSf5QzhcmIAUsDLY7nfz4E.cache +0 -0
  101. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/D2hG5oxxXuEMVBWjuUzBni5o-WruHBzvsI4357PLyUE.cache +0 -0
  102. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/D8RR979resOIzmgUCw1xoWiSU3BHA2JkcRau_H9JE_Y.cache +0 -0
  103. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Di9kTh3BueJectedbvVZfofDVn-7DDdDUAS9gUdbNA8.cache +1 -0
  104. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/DkjOFWQfaV9sZW_6I3DceQefVrzBEFsIzzWZkEZjhSA.cache +0 -0
  105. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/EE4ZlaW4a7qUyCMdh8XPWdKhw_1wKwX6c54Iactjrn8.cache +0 -0
  106. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/EZ31t7Q7A3QxZL_-LBkM9CDQj-bEOSMPHqqletgLnSk.cache +1 -0
  107. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Eg4cGU7AAYQfrBXPhPjzfx1P6OI23B2Luz1fWlTJLTE.cache +1 -0
  108. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Ek8fdjYs3gQ9Qhi_bpJt1WpfHHWQBiC4KV9BBtfqIBk.cache +0 -0
  109. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Eq82VJKZRPgshmtGHBIX0peNZztoe44mdIXZL1xZlfg.cache +1 -0
  110. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FAGKWJzCUfxig4CRpKPi1uA2hjOxicmV9iZPCb0F8uY.cache +1 -0
  111. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FCKKiMwIBDoME0icPjL3ETrutUGDo-7SVh6M1DvGzCI.cache +0 -0
  112. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FGmVLLb32Sj6XkmU0sW2DTnGYUmT8K8pqJQHx8FQNY8.cache +0 -0
  113. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FNg5K9n02VfoR2BJ89f3lz7J0Vsm-TjVKTwGjVF_iDw.cache +0 -0
  114. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/F_dBpw655Fj4OWYsdOL42NzwUUaQGneD_iMO7RTReD8.cache +0 -0
  115. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/FdULas4yPLWkuCbzhhfhWT3tS_Zv9mj7Ab1Tm6zpR4o.cache +0 -0
  116. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/GU0VCiACBINTWQIMH-PkX9NCoDxiFVPA0M0Nze34xd4.cache +1 -0
  117. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/GUs_FFRSybCZKICwVCD8Sm5Oy2MpEiMjhp1kqF6asOQ.cache +1 -0
  118. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/GVTSWmjJAbzEzEHUqiCFpaysaPBS2UZ1NNvBsLS7HcU.cache +0 -0
  119. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Gw43Q1A-9Y25xI23iLmUh-z748--rFGUIN5pMY76oCo.cache +1 -0
  120. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HAdLteV4yd_8Xmtk4fHDFtVeN7HlLbaYTzVkudqc82U.cache +1 -0
  121. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HCHCmO-Ho-S7QLLyFBI9IrS-hS3hyUITgs4_2g3tAok.cache +1 -0
  122. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/HWTnZv_F0MDbD1Mput_A9vCP0P-q0x2vbtPr4NMDjf8.cache +0 -0
  123. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/I1EnZJglf8IevHzbdyu8BVMarnRbeKgfHuuD2RKih5Q.cache +0 -0
  124. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/I35bm5Pug33dDzeOlAJgxb0-YNL2hln8NGFnsIkGMzc.cache +1 -0
  125. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/IASUcdS_hBkhPcGjUAfQiuXTaiYa98ux4hDmuQoang4.cache +1 -0
  126. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/IBFyRxn1nUtKbt5mQAr0NSwQVlR47mwXmOZVwxG9v1E.cache +1 -0
  127. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ICzcadWbVKneq7eMmggnHGOoVHLHNpKLeW4lDVVUV0w.cache +0 -0
  128. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/IjcZ2ZWa50jguHqK7GrEU4GlhMPbf7LLw2CWZZwjJx0.cache +1 -0
  129. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/IsKcY1ywftDIysUaaLguqPkaxtljKUz-CW1cljQihk0.cache +0 -0
  130. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JBFuOvDj35JDtJnRWqZ4kzVjnmjyXaM1MVE5UomRQfo.cache +0 -0
  131. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JPARVT0HZ_RS9oT0kZngTDID777sorAZyLGiUrReLRg.cache +0 -0
  132. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/JVYdvDNdqqdnc5DVSkhGFNgLfe9QVeqAVSC5GHMjcek.cache +7 -0
  133. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/KqKpgqmyplmXgKuE-JHQ0qDjSA5oLQD-1pkMFKx0kcw.cache +1 -0
  134. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/KxSUizdklNSjhfTdO9szGNxMdeGaEdprPQ4emGCSfI8.cache +0 -0
  135. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/L3JD5hH7px_fbinVpLxmDCv_462DkCO6B993zElkbxY.cache +1 -0
  136. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Law0tsWpJa5oZAlaytEcCWdrCGgnvBpuj7OdRlTvEoU.cache +0 -0
  137. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/M3OjUzN5t0zP__zvXOtlWMWOSmLXfrXEwDJLgtyIYhk.cache +2 -0
  138. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MDd4UYCju1hcj8nSf9r4v-rDpSl-tbu0ZeEUXZBVvn8.cache +0 -0
  139. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MGudDYW9JvWLh139xlwUHveu4ZUSHc8BJ81FSdKHAD4.cache +1 -0
  140. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MgjWlRkm-LM0nDXw0YZSi6EpAx4hrWEF_BQyqXTnCQo.cache +0 -0
  141. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/MmFPgYnqZy0ZoU65s-HL_5YYJnn5bg8WkHWQdOPUZaw.cache +0 -0
  142. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NHzUXUiIyeKVqZ8p-n7jRP7V6KoyC03s4UYK0kGwrng.cache +1 -0
  143. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/NIcb2rxva4sFS6Ly_BTCx_P36hb3Q6tybPzhcjGHfI8.cache +0 -0
  144. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/O3o8TD-ciB9C6sj79E92KL9RLH06dmJziT7b9kUmXKA.cache +1 -0
  145. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/O3zZ9lE2Cmsg9sMR7QN1Po0MRLM275KpFOgiP9ZSGOA.cache +0 -0
  146. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/O5NybcB_NGUzNNYjnUIJGErPyxMCV-W4JR0Lc_6CNGs.cache +0 -0
  147. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/O6h2G813zQ-kiNMZmypYlV_d-Zg-DyWwWjEpxFb_gd0.cache +0 -0
  148. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/OD23orm9ULcMqvW9mttTVpiEjQRZgt1Ur_u-iMrjiU8.cache +0 -0
  149. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/OO3aBAI_BuklB6m6n5yOsyBvnnfLpHBanqGFFkJxyrc.cache +1 -0
  150. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/OpBajmt020_exZFdwLz1r_J-QdxfaxJ4ZSCO4S5lBA0.cache +0 -0
  151. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/OxNLhilpJDeaiLxRtdU8w0Hnx14BBa5uZukbdG8XiXU.cache +0 -0
  152. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Oyo4IgtTiSOxWdqqNEdsGukGk3hI47DENszS_WfuHwI.cache +2 -0
  153. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/P1Y26IxY26ft8_s98JQknxEGaHZEQjJawt3uGYk-JdE.cache +1 -0
  154. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/P6yxDOBf-gsYfcObprrKikExhr6Q71A1-d3_XqKVgEg.cache +1 -0
  155. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/P9TB_UfHZrWUq9VNXHL0T7ulE6aPWQ7XImERX5gqmqA.cache +1 -0
  156. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PI-c5YzvY2IcaETXq68AwJAo5sJeLgdoQRymFveGTY0.cache +2 -0
  157. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/POVlao3bvJAwgwc2VOIjH-DM8l-FwfV3LzTpBuOlJsE.cache +1 -0
  158. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PZVtKDj0TZ53AM9bwFUjbhy3UCI5zQhLIea0kmAnoNI.cache +1 -0
  159. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/PmnR7SRtnA89g-g7ScNoMCn8Yilqv5w7iXfAlAUByrE.cache +0 -0
  160. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QJ3o3wtqVGaZE1bvUUU73s9G5CMm58O4Rb1fllVjQHY.cache +3 -0
  161. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RDC725_dOpESrd2oXI4Twuu2anODz9TSKOxnrtcvnkM.cache +1 -0
  162. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RoZX9cXeBvQtgVb8Fk2eUg93gZ8L2OaIDQCAu4p-lNA.cache +1 -0
  163. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/RzMUfSi8tDd-yk4vIH805vTiuSbZFdOF6pgseIiHfYo.cache +1 -0
  164. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/S5TIUZWr1exOMtWdPindotHta6R4suCHejdzs2bMNBg.cache +0 -0
  165. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/SAmanhLSeQ6jiprMayiIseP8kNUCoLqOWB4fOuPKRgA.cache +0 -0
  166. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/SGMXuLe_iBzfg1I1yDPfBG7jHAIBdrJsdboaYrsC4rE.cache +1 -0
  167. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/SJEisPz1A2-6XPc0PbZWPyQu6KlDbrn3Wra7uFQUxMM.cache +1 -0
  168. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Sf4DxtungMF0ODWl5VFNM5Q51em_K53EeIS3npiwoMk.cache +1 -0
  169. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/T57BuLZwaWJ-aTcsb1HMvkFbk8FejOs0vpRZCfljt4U.cache +0 -0
  170. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TKa068Ofvl9Xrl2hVBNSPz3z0tTcw2YcN5vF_wZN0dc.cache +1 -0
  171. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TflJlkpZioxCtLjVq77kPAbSSs6WfPZsG9Ez57v1AQU.cache +0 -0
  172. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Tm0Dq94YNDMae52-fTn0fNoFQaKdtYd9P_oNwVPJToQ.cache +0 -0
  173. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TmbvFUxqhVA7KbLfk3aWnGIrqc3nSD6or0Dox01pSe0.cache +0 -0
  174. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Tod_j5BNwek7ftxsc7ywjgsOT1-b6LaS2L646WCbEVo.cache +0 -0
  175. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TqdBnfR9o3LeB0vFLPfN8j3IRjAT3em_rfPd5fe1gCU.cache +1 -0
  176. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/TsnjDzdZlfu1TjpZVLQwFK8Dw0rsFy2bi0i9mVjjCzk.cache +0 -0
  177. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/UxKEujnZA-XwiugFebqqq8b2FskoTAEfY85aWxgot1o.cache +0 -0
  178. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/UzgHVkIjnunoGFXgrMF5NZ9b2Ky8VlKs_ogKBJBSQ9E.cache +0 -0
  179. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VS-cu2YQUR0-iHDagmXOgwqELWi1JHJoU8ancoQkzDo.cache +0 -0
  180. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Vsf_SK9qDSaVSwgOuAdfAepTkUG8K27r_UfDt-vGIo8.cache +0 -0
  181. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VwQH8OXvOwko40PBJgE6raquDSATyHWIxqBNNFcBMec.cache +0 -0
  182. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VxzlMpH3RjyRcslZiWaK_4RQR5aGdmugyjLy954vFC8.cache +1 -0
  183. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/WQwVp-33dBTpJkDiUSXPSRWSRoI_5iTdwvZcEbv1AG0.cache +1 -0
  184. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Wf71r0xtWU7O0lD5TmD3n7_kWb0vjJb55flbKcRsUbw.cache +1 -0
  185. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/X1WD3F-HSA0aEhYbkDwEGGU95eOGSKL1z3LQ-dP-tE4.cache +1 -0
  186. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XAFjdASd0tjAlZ8ATlJgIHkVi5psSi0n5ZmDx3P97bY.cache +0 -0
  187. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XHop09A2iBKHsbiR16u6xeQzx9x4qsTfK8wjTabh87U.cache +2 -0
  188. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XN8iqigLx4yeqyjyslG1uufNKFi6IOKZbt6pAKUUGUA.cache +1 -0
  189. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XSMWRFJYqh9VznfIxjfzh8z0t0Et6kZAFStDho1rBP0.cache +0 -0
  190. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/XkzkUfgOfazWYxAxWMttYa9fZfD_EmvJPl-5gf_ZHL4.cache +1 -0
  191. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Y6ufi2DRsmygpAqUVl8UGofPrD-zB3FEFDDjyoh2j0g.cache +2 -0
  192. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/YuEpqvaabUovdr0tWcAYrBfmAruG4SY_QONWwmcTU38.cache +1 -0
  193. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZUG_vLlzg6bgbqFEkjoGa1cCs4r9ai22M-_WPx51Ztk.cache +1 -0
  194. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/Zak14bn7JrVek1Ti8icQxm8BbHlA5ZUqmfqj10d_AY0.cache +0 -0
  195. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_6sEYBhYq2AaK-OX_IHT4RmdDuatw9DETUuEGfqbwb4.cache +1 -0
  196. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/a0FmTPfmsydAoemXYNj6pij93GkinbDnM0LJwaiVjow.cache +1 -0
  197. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/a5ubF_MO3MIm-iWULPq47wmWG_I1csinjDpcR2UgB9Q.cache +1 -0
  198. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/aSamLabZX0IPiu0TNDNVUUdusKdwelkse2_1h0MIWHg.cache +0 -0
  199. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/asAaKqRIrRhJ0Yj_JKatFAH3bNnFSrvr59pAtUVuhqg.cache +2 -0
  200. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/aykUz-iik9P6H_a3X7tBn7H6-nWesTA3MCjh23q5xdU.cache +1 -0
  201. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/b3gRPzubv96ZuKMYr5LfG_7-0fQdP15XRipt5RhK8Gs.cache +0 -0
  202. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/b7F0vXHeWOykxV6GA9r1HK32yhaF5DWwnxI2AYYCrAs.cache +0 -0
  203. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/bLcU1iQ8R_NYeRBaTthKqmLyv-0Beg2m04ajRprgoOM.cache +1 -0
  204. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cHi6dE-zS9saalmZvgu6Yb5bwCvQtMi1T-ECOgzM9Ek.cache +0 -0
  205. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cQ-NmJZtkHrluWYE9cn8C1pP_qCELVZcuLdTHorSWHk.cache +0 -0
  206. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cRMIx3tfngBqQmVd63qg7GKDUVWc_5VCgEHn5UeVFrw.cache +0 -0
  207. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cnsqZl0alUkQjyQwxWsZeq8nah36NYX4JRiR7zY3lOY.cache +0 -0
  208. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/cxPnRHEe62KXen5TRMRyhdomeDLXletvho_IZdgMBW4.cache +1 -0
  209. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/d1yCa4-OmOk1W6LGJ0wX3y0mtIHRki9gMrJ8UsfcZ-Y.cache +0 -0
  210. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/dGmRhq6_LcVDk2TAEzxpTSDW3g5mSFwt3rm7yCSc3AE.cache +2 -0
  211. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/e5e8rbmRFG5e_nUboXrZwcSv22zhI0hh4tm0q0madAk.cache +0 -0
  212. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/eXWIXU3YlLfp5vjZoljcw-HPkLDzk4P5T0mRT942kxw.cache +0 -0
  213. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/f3n-tm_W_y-JjBvqGTA_A9Th4inFN5M3M5jqUQqVfdE.cache +0 -0
  214. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/fqOhjZsPvM1nFAL39xwdsxnvFL_vN5AMMDYGBYXwhaA.cache +1 -0
  215. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/g0nb13y45VEgcpTH3PJEmx9qG489JmhfBAYvEVVXae8.cache +1 -0
  216. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/glvw8gKHSWEJccCvrz6P5Dn0HpSNtDALzhRPYMbYtW0.cache +1 -0
  217. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/gqk-EWOCav-lJ2CMeyoi9d8dJGtu59buvvDcgn1GsXM.cache +2 -0
  218. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/gtjIaONRc7UYObSOHCg1tXy4vC1IzqNd4HGkLvqB9aY.cache +1 -0
  219. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/hI9Y1T8FjYttZhj-ekJibDDdzoGNIoSbCs7RdleS3Qk.cache +1 -0
  220. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/hQ3pO6KaiuSPGX2CI9aRNvj54QDHqm8J1llygRS7jxg.cache +1 -0
  221. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/hR0qGr_YrVxCcbl5RRnU_ft3vjoySpiDj2nMP4tPpD8.cache +0 -0
  222. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/hTsS0kBgaQDfRz5yfvnLYgfxd5Vuz-RYJhY7a4vpWyE.cache +1 -0
  223. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/hmbmYMIVfPHFv9pf2vfMnIPE_OMfr6W2Q6MT8Wp1fM0.cache +1 -0
  224. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/huyJOk4mHm2DZDMDMFs4srQnOfA69osbeqe16QT3GOE.cache +1 -0
  225. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/i9LvoHkjaXRrXfAiFLkLi5ViKT19v2wBXRYXNp1GRsY.cache +1 -0
  226. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/iVVJCbK4ZMBoxK2ehLu5jxP8ufGPfC87DdeTxXHy06g.cache +1 -0
  227. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/iZE9d5SOsVIAsOC7m8xDC0sBZXHAvIa4fQjM2P_n0BY.cache +2 -0
  228. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/j6uAcTFCcW6iSDXUD6m2r9PSWw5nyycsZdbtIn3oEXw.cache +1 -0
  229. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jHNmivg1not5tiq5C7N8a-KAKLQFu3kmcpu2ur4X3T0.cache +1 -0
  230. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jWOf08j_4CCDrg4QxyHC0FhEdRsJHyQvm3EuBVT0EKE.cache +1 -0
  231. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jbu4xumN143qDlpHPGEstBr1v2IMsXIRlaqJfRYYj2o.cache +0 -0
  232. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jer1DTGAnW-PqCpI0VYGp0P1c2p-VJklNy11oQXMY04.cache +1 -0
  233. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jhu3iP67Muax9VSqjUAi571jCJdoaxYoSFgBmHr8ALk.cache +1 -0
  234. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/jo2J844D3qwfi_md5tABW4nd1Eq26k6q6-cFrUdoCiY.cache +1 -0
  235. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/k7fJ-glDBQHN7Cd5x8lrBoxSYtOrsnMGB4XLcnyIPL4.cache +1 -0
  236. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kEy44W8vzPxIVt9TDtevh3XMThlKJ7-ZUYO9PDGatVE.cache +2 -0
  237. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kXu0CYfc8zGZ07ME4Za92m5zfexAqTqQAyvUXQFLPQs.cache +0 -0
  238. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/kc5R4kpTZHdRsPYrr5_rq6A3OXKGiFsiDaWTDZZTbNc.cache +0 -0
  239. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lSCsWVbjwodo00bqSu_V3Qaegxttnpe9J5TZjihPTms.cache +2 -0
  240. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/m-GB4LGaqS84BEG2pz6wRpeeM8-w_TaL5mJNqfBNYzs.cache +0 -0
  241. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/m6s6g99mB08ZMOmv8_lDzzsJErpFpKVny-eJnBpvyO4.cache +0 -0
  242. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/mPJRykN72qssHTgl9Nj90vWXrwkrCQ4lniHaiRO80Fg.cache +1 -0
  243. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nBUx0OzEQlxFyzJqY1cf0JQwYZY5cuoNO-gnj34QsjE.cache +1 -0
  244. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nKUkaVg0gvlT305gwzvd5B-k8Mgm_cWQ0LkR7_qX3Oo.cache +1 -0
  245. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nMy2oj1zGcIJiGWViF5l4x2PRSMzdVs_LwZqxQh1dm4.cache +1 -0
  246. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nTWaqV5AIWsN4RjUbPT1UvLgQFZ0XEFvPTWQViVKGms.cache +2 -0
  247. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nibqRjSvoS3izUAXjiTqjGIOaKjVTy_CRA43L_Lp_hU.cache +0 -0
  248. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/nsrB6-qKTuUHalDRHTDf4Dty3qJarXSyybYn11zYgwk.cache +2 -0
  249. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oLXgQ2-xgLmRlgu7Nwi38OkpQOVWXJm-gFVEQcGfzBQ.cache +1 -0
  250. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oNS2h0N67nBW97oYmyZSzDMp_J3Cs1hQtx1JXT6HvAI.cache +2 -0
  251. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oU4XTGvPMzAXdBy6NTsXQMMqSKaFpY_H8nBFGRQKzFs.cache +0 -0
  252. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oUY8tokSzEhvabEbg5aPk5oxM32tT1u2H-DT9lN2QHw.cache +0 -0
  253. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/oVxR83aG94N0516rSyDclqpA7gpLqNPKAyjFqkpQ338.cache +1 -0
  254. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ocHs9PGvBHW_356Xee0hXvhQy4WKnfgwGXI5GWdJslQ.cache +0 -0
  255. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/pPhvu4m25b707tUoUnn1spN1bVd32dbmmKO9y0lTTlI.cache +0 -0
  256. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/pZDjr3paymnoVK8kmkpPBeY5Sk067mLRtr8JpjVZd_Q.cache +1 -0
  257. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/pa8daNETCZP1IpLUngkk3cJGfKfsCE0kWEL48IKPVh4.cache +0 -0
  258. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/pqq6TigzkCGkVUMCsVQPoyLj9y6WSu2vKsMzrck3ogg.cache +0 -0
  259. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/pzvsFhMOGWHfetEGcj7ENMJqPP6Wn9DlPJmONbvWcIE.cache +1 -0
  260. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/q-b6NrF9QjgFbaMuY_hmrXEmalUxgXICWZOnNwS9wO4.cache +1 -0
  261. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qGImlANYFpmtAKJlZWtIRerodYLkfTSFugvCF074XOU.cache +1 -0
  262. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qQAAAKOZ2GwvyGvACFSsUhrTCM6fLvcpML6TgPWl_H4.cache +0 -0
  263. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qReKlyMe5JC5hSQmlHEKROeFcF9cG0-xwEgIOkJ2wJ8.cache +1 -0
  264. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qWBPx0EixlDTCjwCCj45hfxPgW3Uzk4Qm-UhvAkf7RI.cache +0 -0
  265. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qdANy6P7k6Ni9zAC9_DJOP7H6SLFuuuvTULYBmJa3ww.cache +0 -0
  266. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/qtzbkt06jPBWANr4VTqNmAA1xgPpIaa_zER9SYrp8Uc.cache +3 -0
  267. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/rD0rdeVTo-PmZLSStniBNteuh7SvaPNN9Fhv5QmIJ7E.cache +1 -0
  268. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/rqoPV_WjT3DMJTC0PKhoxp3QWCEISKLtiubHjHMOSnM.cache +2 -0
  269. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/sNhflhV7iApCs9UER2mzeWPESgmGbP_Ih3QhX7dsQWY.cache +0 -0
  270. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/sYfKedJYVky1T2jYyqSRkFGENGope89jigwOM8SmBEk.cache +1 -0
  271. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/sZf0gzbBms43a3Zq4Q6Z7XeiHD5zx77lqQQcv83izT4.cache +0 -0
  272. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/tBcT-l5pxJVzXpfgMG7UsY7QyRe2yvyg3idJ1sQjDu4.cache +0 -0
  273. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/tTcrsC4-30ptKxmyDDy20DA9vGYySU2vqQEupk4wurw.cache +0 -0
  274. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/u1RyrT0xlVU3JE0SUgEcLC4cmmInuDZxPcyN9nZmJz4.cache +0 -0
  275. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ucsyGVqNPCr_A0Ddm-3VYfU1YS9be734p1XxK-z7pl8.cache +1 -0
  276. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vHWBoQvpRXECcAy43UKmEi2nlfYCGmEItX9jZdVaUWs.cache +1 -0
  277. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vJY88t5E0QFrd5HfsfAG_7LiQBtxG3L5m0Ons9Y3M-Q.cache +0 -0
  278. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vSJ2gsond2x6trDD49mnyF_I7DW909fAyVhEiNZ6nlQ.cache +1 -0
  279. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vl1m2EoIB300TifpQu_hJhfNMIGlRZ2l_hPzvMRAzKA.cache +1 -0
  280. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/vmwZJqhmACNkYRTs1UEbcxgJtKaY_QyLl_pGsEHNWag.cache +0 -0
  281. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/w3bsuPw6fRf7ywYSA5x_tIX-1gdqUYQ7bAmWmRgaLLg.cache +2 -0
  282. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/wPcZebw9yAEoy5glsn2M9kwJiacyEktwbo_74p0Ja2k.cache +0 -0
  283. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/wY1ztOY3jc2Qsa46MLXAdxpjlJRfRGWvLyvadhiPUEk.cache +0 -0
  284. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/w_Mtqg4VUVqtivxw1LuScdEsGBzq1Ecl-IOkCAC42nE.cache +1 -0
  285. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/whuY4nkn8tPj2oFET1gu2KID0QSnESYHFxpgqCWANMY.cache +0 -0
  286. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/x7qpBs7eFKhjWyU9GBjKA7xss1psasfg8jzPq23R4gw.cache +1 -0
  287. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xRTEizshdJnRAwcHfJuR2q0oZLjHdG-tbjYqEoE9bUE.cache +0 -0
  288. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xRu_QzSHlTJi3rOyMb6-XLrX0u3QepaKyjwaIGDE9KY.cache +1 -0
  289. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/xdbNpyiZjYeVGg1HnGDb4ds6VXYOxYv1PtWHA0El4tg.cache +1 -0
  290. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yCCf_jHBjxqUFuMni2MDu1vTAH4hvza9YQtxR3VKDYw.cache +2 -0
  291. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ySEzf1YgfsZBjJOjsDEgwRqHZs3aJIYb423dGsbYGI0.cache +2 -0
  292. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/ypyKmY2NLyZKt_who30RKNOotuUOQcjAmAAue0ArwF4.cache +1 -0
  293. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yt8NfxtPzazaVQXhvDPpQML6XJdtYkILoSZ26sVNF1Y.cache +1 -0
  294. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yzXOZCJSRlR5Bo-1Yc1PVQSNBQ8Yj_4nvtRFzxpGATk.cache +0 -0
  295. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/yziiq5fAHTfvPKIFGfeSUyJ1yuDZ5PJDkoxERRt0kqA.cache +3 -0
  296. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/z-0boRa2BcOvLRdhfmt-Zzjbrdd372NouPGIVWhRcu4.cache +0 -0
  297. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/zczc97xHYENDncOHdEDQ1-S99Hjs1p2dl6WNIGMyDpw.cache +2 -0
  298. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/zhi5_UMcgcOUXh8gDXH9l9DYqWsajHnI7ekB5WFenBs.cache +0 -0
  299. data/test/fixtures/appt/appointments.yml +11 -0
  300. data/test/fixtures/appt/blocks.yml +11 -0
  301. data/test/fixtures/appt/calendars.yml +7 -0
  302. data/test/models/appt/appointment_test.rb +9 -0
  303. data/test/models/appt/block_test.rb +9 -0
  304. data/test/models/appt/calendar_event_test.rb +9 -0
  305. data/test/models/appt/calendar_test.rb +9 -0
  306. data/test/test_helper.rb +2 -0
  307. metadata +822 -7
  308. data/app/assets/stylesheets/appt/application.css +0 -15
  309. data/app/controllers/appt/application_controller.rb +0 -4
  310. data/app/views/layouts/appt/application.html.erb +0 -14
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 530ee2dd569a142de1fda3a48d4566990e2563e6
4
- data.tar.gz: c473bec4b181085a685de62a48020b97ea91dcfe
3
+ metadata.gz: 73f035a68c30f8eac84f27d4cdcfff44365cc54d
4
+ data.tar.gz: 53b9194885a34229d63b53fe4c321c52fa4d564e
5
5
  SHA512:
6
- metadata.gz: 8af4f8bcfb7a58c024e398c628bfb847617bf1d7f392ffa9efa4a8e3c7af982bcedc1ffcc36a9d4e9f05f81a958e95f9e3fb4aad64206c78ef92c998beba776b
7
- data.tar.gz: ca551c21adca184a2eedb2484bcdf6fa75a110a2aacf079fab0a2c3ec46ccf6c1b56160c0bd03f59d409c1865b15cab4fea5246ef4ee432c41f846b978d632c6
6
+ metadata.gz: cf1fc5306ac07b921de03d3f6493d6c7886fde806f0bcbf8ba676c7a369b9ec45fab1a46b4614fa9f0a9cc425939693fd3859325f7b7065aa21b3f66696ed706
7
+ data.tar.gz: d77546fe37a82824a65477fab31e6c0d3bafcb23041c94ea9b521d4abfeb904d89b5fba5e723dd61e514c07801e154dccfa1c29f07e1fc476af885bbc38ecf59
@@ -1,13 +1,2 @@
1
- // This is a manifest file that'll be compiled into application.js, which will include all the files
2
- // listed below.
3
- //
4
- // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
- // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
6
- //
7
- // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
- // compiled file.
9
- //
10
- // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11
- // about supported directives.
12
- //
13
- //= require_tree .
1
+ //= require jquery
2
+ //= require bootstrap-sprockets
@@ -0,0 +1,3 @@
1
+ @import "bootstrap-sprockets";
2
+ @import "bootstrap";
3
+ @import "spinner";
@@ -0,0 +1,31 @@
1
+ /* From https://github.com/tobiasahlin/SpinKit */
2
+
3
+ .spinner {
4
+ width: 40px;
5
+ height: 40px;
6
+ margin: 100px auto;
7
+ background-color: #333;
8
+
9
+ border-radius: 100%;
10
+ -webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
11
+ animation: sk-scaleout 1.0s infinite ease-in-out;
12
+ }
13
+
14
+ @-webkit-keyframes sk-scaleout {
15
+ 0% { -webkit-transform: scale(0) }
16
+ 100% {
17
+ -webkit-transform: scale(1.0);
18
+ opacity: 0;
19
+ }
20
+ }
21
+
22
+ @keyframes sk-scaleout {
23
+ 0% {
24
+ -webkit-transform: scale(0);
25
+ transform: scale(0);
26
+ } 100% {
27
+ -webkit-transform: scale(1.0);
28
+ transform: scale(1.0);
29
+ opacity: 0;
30
+ }
31
+ }
@@ -0,0 +1,7 @@
1
+ module Appt
2
+ class BaseController < Appt.parent_controller
3
+ helper Appt::ApplicationHelper
4
+
5
+ layout 'appt/application'
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ require_dependency "appt/base_controller"
2
+
3
+ module Appt
4
+ class CalendarsController < BaseController
5
+ end
6
+ end
@@ -0,0 +1,8 @@
1
+ require_dependency "appt/base_controller"
2
+
3
+ module Appt
4
+ class HomeController < BaseController
5
+ def index
6
+ end
7
+ end
8
+ end
@@ -1,4 +1,20 @@
1
1
  module Appt
2
2
  module ApplicationHelper
3
+ def title(title = nil)
4
+ if title
5
+ content_for(:title) { title }
6
+ else
7
+ content_for?(:title) ? content_for(:title) : nil
8
+ end
9
+ end
10
+
11
+ def time_ago_tag(value)
12
+ if value.nil?
13
+ nil
14
+ else
15
+ #TODO: i18n?
16
+ time_tag(value, "#{time_ago_in_words(value)} ago", title: value.strftime('%m/%d/%Y %I:%M%p'))
17
+ end
18
+ end
3
19
  end
4
20
  end
@@ -0,0 +1,4 @@
1
+ module Appt
2
+ module CalendarsHelper
3
+ end
4
+ end
@@ -0,0 +1,4 @@
1
+ class BaseMailer < Appt.parent_mailer
2
+ default from: "from@example.com"
3
+ layout 'mailer'
4
+ end
@@ -0,0 +1,4 @@
1
+ module Appt
2
+ class Appointment < ActiveRecord::Base
3
+ end
4
+ end
@@ -0,0 +1,4 @@
1
+ module Appt
2
+ class Block < ActiveRecord::Base
3
+ end
4
+ end
@@ -0,0 +1,4 @@
1
+ module Appt
2
+ class Calendar < ActiveRecord::Base
3
+ end
4
+ end
@@ -0,0 +1,5 @@
1
+ module Appt
2
+ class CalendarEvent < ActiveRecord::Base
3
+ self.abstract_class = true
4
+ end
5
+ end
@@ -0,0 +1,4 @@
1
+ - title 'Hello World'
2
+
3
+ .container
4
+ %h1 Hello World!
@@ -0,0 +1,15 @@
1
+ - unless flash.empty?
2
+ .container
3
+
4
+ - flash.each do |name, msg|
5
+ - bootstrap_type = 'info'
6
+ - bootstrap_type = 'danger' if ['alert'].include?(name)
7
+
8
+ %div{ class: "alert alert-#{bootstrap_type}"}
9
+ %button.close{ type: 'button', 'data-dismiss' => 'alert', 'aria-hidden' => 'true'} &times;
10
+ %strong
11
+ - if bootstrap_type == 'danger'
12
+ Warning!
13
+ - else
14
+ Heads up!
15
+ = msg
@@ -0,0 +1,5 @@
1
+ = navbar do
2
+ = navbar_header brand: 'Appt', brand_link: root_path
3
+ = navbar_collapse do
4
+ = navbar_group do
5
+ = navbar_item Appt::Calendar.model_name.human(count: 2), calendars_path
@@ -0,0 +1,2 @@
1
+ %li
2
+ = link_to_unless current_page.first?, raw(t 'views.pagination.first'), url, :remote => remote
@@ -0,0 +1,2 @@
1
+ %li.disabled
2
+ = content_tag :a, raw(t 'views.pagination.truncate')
@@ -0,0 +1,2 @@
1
+ %li
2
+ = link_to_unless current_page.last?, raw(t 'views.pagination.last'), url, {:remote => remote}
@@ -0,0 +1,2 @@
1
+ %li
2
+ = link_to_unless current_page.last?, raw(t 'views.pagination.next'), url, :rel => 'next', :remote => remote
@@ -0,0 +1,6 @@
1
+ - if page.current?
2
+ %li.active
3
+ = content_tag :a, page, remote: remote, rel: (page.next? ? 'next' : (page.prev? ? 'prev' : nil))
4
+ - else
5
+ %li
6
+ = link_to page, url, remote: remote, rel: (page.next? ? 'next' : (page.prev? ? 'prev' : nil))
@@ -0,0 +1,11 @@
1
+ = paginator.render do
2
+ %ul.pagination
3
+ = first_page_tag unless current_page.first?
4
+ = prev_page_tag unless current_page.first?
5
+ - each_page do |page|
6
+ - if page.left_outer? || page.right_outer? || page.inside_window?
7
+ = page_tag page
8
+ - elsif !page.was_truncated?
9
+ = gap_tag
10
+ = next_page_tag unless current_page.last?
11
+ = last_page_tag unless current_page.last?
@@ -0,0 +1,2 @@
1
+ %li
2
+ = link_to_unless current_page.first?, raw(t 'views.pagination.previous'), url, :rel => 'prev', :remote => remote
@@ -0,0 +1,29 @@
1
+ !!!
2
+ %html{:lang => "en"}
3
+ %head
4
+ %meta{:charset => "utf-8"}/
5
+ %meta{:content => "IE=edge", "http-equiv" => "X-UA-Compatible"}/
6
+ %meta{:content => "width=device-width, initial-scale=1", :name => "viewport"}/
7
+ %title= title ? title : "Appt"
8
+ = csrf_meta_tags
9
+ = stylesheet_link_tag "appt/application", media: "all"
10
+ = content_for :stylesheets
11
+
12
+ /[if lt IE 9]
13
+ <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
14
+ <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
15
+ %body
16
+ = render partial: 'appt/shared/navbar'
17
+
18
+ - if content_for?(:breadcrumbs)
19
+ .container
20
+ = yield :breadcrumbs
21
+
22
+ = render partial: 'appt/shared/flash'
23
+
24
+ = yield
25
+ %footer
26
+ %p &nbsp;
27
+
28
+ = javascript_include_tag "appt/application"
29
+ = content_for :javascripts
@@ -0,0 +1,27 @@
1
+ SimpleCalendar::Calendar.class_eval do
2
+ attr_reader :timezone
3
+
4
+ def start_date_with_timezone
5
+ @start_date ||= (get_option(:start_date) || params[param_name] || timezone.now).to_date
6
+ end
7
+ alias_method_chain :start_date, :timezone
8
+
9
+ def default_td_classes_with_timezone
10
+ ->(start_date, current_calendar_date) {
11
+ today = timezone.now.to_date
12
+ td_class = ["day"]
13
+ td_class << "today" if today == current_calendar_date
14
+ td_class << "past" if today > current_calendar_date
15
+ td_class << "future" if today < current_calendar_date
16
+ td_class << 'start-date' if current_calendar_date.to_date == start_date.to_date
17
+ td_class << "prev-month" if start_date.month != current_calendar_date.month && current_calendar_date < start_date
18
+ td_class << "next-month" if start_date.month != current_calendar_date.month && current_calendar_date > start_date
19
+ td_class << "current-month" if start_date.month == current_calendar_date.month
20
+ td_class << "wday-#{current_calendar_date.wday.to_s}"
21
+ td_class << "has-events" if events_for_date(current_calendar_date).any?
22
+
23
+ { class: td_class.join(" ") }
24
+ }
25
+ end
26
+ alias_method_chain :default_td_classes, :timezone
27
+ end
@@ -0,0 +1,6 @@
1
+ Tod::Shift.class_eval do
2
+ def slide(seconds)
3
+ self.class.new(beginning + seconds, ending + seconds, exclude_end?)
4
+ end
5
+ end
6
+
@@ -0,0 +1,6 @@
1
+ Appt::Engine.config.to_prepare do
2
+ if Appt.user_class
3
+ Appt.user_class.class_eval do
4
+ end
5
+ end
6
+ end
@@ -0,0 +1,8 @@
1
+ Workhours::Period.class_eval do
2
+ def initialize_with_exclude_end(wday, beginning, ending)
3
+ initialize_without_exclude_end(wday, beginning, ending)
4
+
5
+ @shift = Tod::Shift.new(@shift.beginning, @shift.ending, true)
6
+ end
7
+ alias_method_chain :initialize, :exclude_end
8
+ end
@@ -1,2 +1,7 @@
1
1
  Appt::Engine.routes.draw do
2
+ resources :calendars do
3
+ resources :appointments
4
+ resources :blocks
5
+ end
6
+ root to: 'home#index'
2
7
  end
@@ -0,0 +1,9 @@
1
+ class CreateApptCalendars < ActiveRecord::Migration
2
+ def change
3
+ create_table :appt_calendars do |t|
4
+ t.string :name
5
+
6
+ t.timestamps null: false
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,8 @@
1
+ class CreateApptBlocks < ActiveRecord::Migration
2
+ def change
3
+ create_table :appt_blocks do |t|
4
+
5
+ t.timestamps null: false
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,8 @@
1
+ class CreateApptAppointments < ActiveRecord::Migration
2
+ def change
3
+ create_table :appt_appointments do |t|
4
+
5
+ t.timestamps null: false
6
+ end
7
+ end
8
+ end
@@ -1,4 +1,23 @@
1
+ require "activemodel/associations"
2
+ require "bootstrap_form"
3
+ require "bootstrap-sass"
4
+ require "haml-rails"
5
+ require "icalendar"
6
+ require "jquery-rails"
7
+ require "kaminari"
8
+ require "phony"
9
+ require "phony_rails"
10
+ require "rails_bootstrap_navbar"
11
+ require "simple_calendar"
12
+ require "tod"
13
+ require "workhours"
14
+
15
+ require "bootstrap_month_calendar"
16
+ require "workhours_serializer"
17
+
1
18
  require "appt/engine"
19
+ require "appt/configuration"
2
20
 
3
21
  module Appt
22
+ extend Configuration
4
23
  end
@@ -0,0 +1,54 @@
1
+ module Appt
2
+ # Defines constants and methods related to configuration
3
+ module Configuration
4
+ VALID_OPTIONS_KEYS = [
5
+ ].freeze
6
+
7
+ UNKNOWN_CLASSES = {
8
+ parent_mailer: -> { ActionMailer::Base },
9
+ parent_controller: -> { ::ApplicationController },
10
+ user_class: -> { nil },
11
+ }
12
+
13
+ attr_accessor *VALID_OPTIONS_KEYS
14
+
15
+ # When this module is extended, set all configuration options to their default values
16
+ def self.extended(base)
17
+ base.reset
18
+ end
19
+
20
+ # Convenience method to allow configuration options to be set in a block
21
+ def configure
22
+ yield self
23
+ end
24
+
25
+ # Reset all configuration options to defaults
26
+ def reset
27
+ self
28
+ end
29
+
30
+ UNKNOWN_CLASSES.each do |key, default|
31
+ attr_accessor key.to_sym
32
+ end
33
+
34
+ UNKNOWN_CLASSES.each do |key, default|
35
+ define_method(key) do
36
+ value = instance_variable_get("@#{key}") || UNKNOWN_CLASSES[key.to_sym]
37
+ value = value.call if value.respond_to?(:call)
38
+ c = force_to_constant(value)
39
+ c
40
+ end
41
+ end
42
+
43
+ private
44
+ def force_to_constant(value)
45
+ if value.is_a?(Class)
46
+ value = value.name
47
+ elsif value.is_a?(Symbol)
48
+ value = value.to_s
49
+ end
50
+
51
+ value.try(:constantize)
52
+ end
53
+ end
54
+ end
@@ -1,3 +1,3 @@
1
1
  module Appt
2
- VERSION = "0.0.1.beta.1"
2
+ VERSION = "0.0.1.beta.2"
3
3
  end
@@ -0,0 +1,37 @@
1
+ class BootstrapMonthCalendar < SimpleCalendar::MonthCalendar
2
+ def initialize_with_bootstrap(view_context, opts={})
3
+ opts.reverse_merge!(
4
+ table: { class: 'table calendar' },
5
+ header: { class: 'pagination' },
6
+ previous_link: bootstrap_previous_link,
7
+ next_link: bootstrap_next_link,
8
+ )
9
+
10
+ initialize_without_bootstrap(view_context, opts)
11
+ end
12
+ alias_method_chain :initialize, :bootstrap
13
+
14
+ def default_title_with_bootstrap
15
+ ->(start_date) { content_tag(:li, content_tag(:span, month_name(start_date)), class: 'disabled') }
16
+ end
17
+ alias_method_chain :default_title, :bootstrap
18
+
19
+ def render_header_with_bootstrap
20
+ capture do
21
+ content_tag :ul, { class: 'pagination' }.merge(get_option(:header)) do
22
+ concat get_option(:previous_link, param_name, date_range)
23
+ concat get_option(:title, start_date)
24
+ concat get_option(:next_link, param_name, date_range)
25
+ end
26
+ end
27
+ end
28
+ alias_method_chain :render_header, :bootstrap
29
+
30
+ def bootstrap_previous_link
31
+ ->(param, date_range) { content_tag :li, link_to(raw("&laquo;"), param => date_range.first - 1.day) }
32
+ end
33
+
34
+ def bootstrap_next_link
35
+ ->(param, date_range) { content_tag :li, link_to(raw("&raquo;"), param => date_range.last + 1.day) }
36
+ end
37
+ end