adherent 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.rdoc +65 -0
  4. data/Rakefile +40 -0
  5. data/app/assets/images/adherent/cal.gif +0 -0
  6. data/app/assets/images/adherent/icones/afficher.png +0 -0
  7. data/app/assets/images/adherent/icones/detail.png +0 -0
  8. data/app/assets/images/adherent/icones/modifier.png +0 -0
  9. data/app/assets/images/adherent/icones/money-plus.png +0 -0
  10. data/app/assets/images/adherent/icones/navigation90.png +0 -0
  11. data/app/assets/images/adherent/icones/nouveau.png +0 -0
  12. data/app/assets/images/adherent/icones/payment.png +0 -0
  13. data/app/assets/images/adherent/icones/retour.png +0 -0
  14. data/app/assets/images/adherent/icones/supprimer.png +0 -0
  15. data/app/assets/javascripts/adherent/adhesion.js +2 -0
  16. data/app/assets/javascripts/adherent/application.js +16 -0
  17. data/app/assets/javascripts/adherent/bootstrap.js +2038 -0
  18. data/app/assets/javascripts/adherent/coords.js +2 -0
  19. data/app/assets/javascripts/adherent/date_picker.js +47 -0
  20. data/app/assets/javascripts/adherent/members.js +2 -0
  21. data/app/assets/javascripts/adherent/payments.js +2 -0
  22. data/app/assets/javascripts/adherent/reglements.js +2 -0
  23. data/app/assets/stylesheets/adherent/adhesion.css +4 -0
  24. data/app/assets/stylesheets/adherent/application.css +14 -0
  25. data/app/assets/stylesheets/adherent/bootstrap.css +5695 -0
  26. data/app/assets/stylesheets/adherent/coords.css +4 -0
  27. data/app/assets/stylesheets/adherent/date_picker.css +24 -0
  28. data/app/assets/stylesheets/adherent/jc_application.css.scss +121 -0
  29. data/app/assets/stylesheets/adherent/jcmenu.css +43 -0
  30. data/app/assets/stylesheets/adherent/layouts.css.scss +79 -0
  31. data/app/assets/stylesheets/adherent/members.css +7 -0
  32. data/app/assets/stylesheets/adherent/old_bootstrap.css +125 -0
  33. data/app/assets/stylesheets/adherent/payments.css +4 -0
  34. data/app/assets/stylesheets/adherent/reglements.css +4 -0
  35. data/app/assets/stylesheets/scaffold.css +56 -0
  36. data/app/controllers/adherent/adhesions_controller.rb +84 -0
  37. data/app/controllers/adherent/application_controller.rb +6 -0
  38. data/app/controllers/adherent/coords_controller.rb +100 -0
  39. data/app/controllers/adherent/members_controller.rb +89 -0
  40. data/app/controllers/adherent/payments_controller.rb +55 -0
  41. data/app/controllers/adherent/reglements_controller.rb +26 -0
  42. data/app/helpers/adherent/adhesion_helper.rb +4 -0
  43. data/app/helpers/adherent/application_helper.rb +21 -0
  44. data/app/helpers/adherent/coords_helper.rb +4 -0
  45. data/app/helpers/adherent/members_helper.rb +4 -0
  46. data/app/helpers/adherent/payments_helper.rb +14 -0
  47. data/app/helpers/adherent/reglements_helper.rb +4 -0
  48. data/app/models/adherent/adhesion.rb +75 -0
  49. data/app/models/adherent/coord.rb +7 -0
  50. data/app/models/adherent/member.rb +36 -0
  51. data/app/models/adherent/payment.rb +60 -0
  52. data/app/models/adherent/reglement.rb +7 -0
  53. data/app/views/adherent/adhesions/_form.html.haml +13 -0
  54. data/app/views/adherent/adhesions/edit.html.erb +12 -0
  55. data/app/views/adherent/adhesions/index.html.haml +27 -0
  56. data/app/views/adherent/adhesions/new.html.erb +13 -0
  57. data/app/views/adherent/adhesions/show.html.erb +2 -0
  58. data/app/views/adherent/coords/_form.html.erb +22 -0
  59. data/app/views/adherent/coords/edit.html.erb +16 -0
  60. data/app/views/adherent/coords/index.html.erb +55 -0
  61. data/app/views/adherent/coords/new.html.erb +12 -0
  62. data/app/views/adherent/coords/show.html.erb +50 -0
  63. data/app/views/adherent/members/_form.html.erb +20 -0
  64. data/app/views/adherent/members/edit.html.erb +16 -0
  65. data/app/views/adherent/members/index.html.erb +52 -0
  66. data/app/views/adherent/members/new.html.erb +12 -0
  67. data/app/views/adherent/members/show.html.erb +36 -0
  68. data/app/views/adherent/payments/_form.html.haml +12 -0
  69. data/app/views/adherent/payments/edit.html.erb +2 -0
  70. data/app/views/adherent/payments/index.html.haml +30 -0
  71. data/app/views/adherent/payments/new.html.erb +13 -0
  72. data/app/views/adherent/payments/show.html.erb +2 -0
  73. data/app/views/adherent/reglements/_form.html.haml +12 -0
  74. data/app/views/adherent/reglements/index.html.erb +2 -0
  75. data/app/views/adherent/reglements/new.html.erb +13 -0
  76. data/app/views/adherent/reglements/show.html.erb +2 -0
  77. data/app/views/layouts/adherent/_flash_partial.html.haml +9 -0
  78. data/app/views/layouts/adherent/application.html.erb +42 -0
  79. data/config/initializers/constants.rb +6 -0
  80. data/config/initializers/date_picker_input.rb +39 -0
  81. data/config/initializers/pick_date_extension.rb +63 -0
  82. data/config/initializers/simple_form.rb +180 -0
  83. data/config/locales/fr.yml +222 -0
  84. data/config/locales/simple_form.fr.yml +59 -0
  85. data/config/locales/traduc.yml +9 -0
  86. data/config/routes.rb +22 -0
  87. data/db/migrate/20130805145522_create_adherent_members.rb +12 -0
  88. data/db/migrate/20130805152911_create_adherent_coords.rb +16 -0
  89. data/db/migrate/20130806053936_create_adherent_adhesions.rb +14 -0
  90. data/db/migrate/20130808054023_create_adherent_payments.rb +17 -0
  91. data/db/migrate/20130809052125_create_adherent_reglements.rb +13 -0
  92. data/db/migrate/20130810073908_add_organism_id_to_adherent_members.rb +5 -0
  93. data/lib/adherent/engine.rb +10 -0
  94. data/lib/adherent/version.rb +3 -0
  95. data/lib/adherent.rb +15 -0
  96. data/lib/tasks/adherent_tasks.rake +4 -0
  97. data/lib/templates/erb/scaffold/_form.html.erb +17 -0
  98. data/lib/templates/erb/scaffold/edit.html.erb +16 -0
  99. data/lib/templates/erb/scaffold/index.html.erb +36 -0
  100. data/lib/templates/erb/scaffold/new.html.erb +12 -0
  101. data/lib/templates/erb/scaffold/show.html.erb +22 -0
  102. data/test/adherent_test.rb +7 -0
  103. data/test/dummy/README.rdoc +261 -0
  104. data/test/dummy/Rakefile +7 -0
  105. data/test/dummy/app/assets/javascripts/application.js +16 -0
  106. data/test/dummy/app/assets/javascripts/organisms.js +2 -0
  107. data/test/dummy/app/assets/stylesheets/application.css +14 -0
  108. data/test/dummy/app/assets/stylesheets/organisms.css +4 -0
  109. data/test/dummy/app/assets/stylesheets/scaffold.css +56 -0
  110. data/test/dummy/app/controllers/application_controller.rb +16 -0
  111. data/test/dummy/app/controllers/organisms_controller.rb +86 -0
  112. data/test/dummy/app/helpers/application_helper.rb +2 -0
  113. data/test/dummy/app/helpers/organisms_helper.rb +2 -0
  114. data/test/dummy/app/models/organism.rb +5 -0
  115. data/test/dummy/app/views/layouts/application.html.erb +16 -0
  116. data/test/dummy/app/views/organisms/_form.html.haml +16 -0
  117. data/test/dummy/app/views/organisms/edit.html.haml +7 -0
  118. data/test/dummy/app/views/organisms/index.html.haml +21 -0
  119. data/test/dummy/app/views/organisms/new.html.haml +5 -0
  120. data/test/dummy/app/views/organisms/show.html.haml +14 -0
  121. data/test/dummy/config/application.rb +59 -0
  122. data/test/dummy/config/boot.rb +10 -0
  123. data/test/dummy/config/database.yml +55 -0
  124. data/test/dummy/config/environment.rb +5 -0
  125. data/test/dummy/config/environments/development.rb +37 -0
  126. data/test/dummy/config/environments/production.rb +67 -0
  127. data/test/dummy/config/environments/test.rb +37 -0
  128. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  129. data/test/dummy/config/initializers/inflections.rb +15 -0
  130. data/test/dummy/config/initializers/mime_types.rb +5 -0
  131. data/test/dummy/config/initializers/secret_token.rb +7 -0
  132. data/test/dummy/config/initializers/session_store.rb +8 -0
  133. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  134. data/test/dummy/config/locales/en.yml +5 -0
  135. data/test/dummy/config/locales/fr.yml +221 -0
  136. data/test/dummy/config/locales/simple_form.en.yml +26 -0
  137. data/test/dummy/config/routes.rb +9 -0
  138. data/test/dummy/config.ru +4 -0
  139. data/test/dummy/db/migrate/20130810074112_create_organisms.rb +10 -0
  140. data/test/dummy/db/migrate/20130810081835_create_adherent_members.adherent.rb +13 -0
  141. data/test/dummy/db/migrate/20130810081836_create_adherent_coords.adherent.rb +17 -0
  142. data/test/dummy/db/migrate/20130810081837_create_adherent_adhesions.adherent.rb +15 -0
  143. data/test/dummy/db/migrate/20130810081838_create_adherent_payments.adherent.rb +18 -0
  144. data/test/dummy/db/migrate/20130810081839_create_adherent_reglements.adherent.rb +14 -0
  145. data/test/dummy/db/migrate/20130810081840_add_organism_id_to_adherent_members.adherent.rb +6 -0
  146. data/test/dummy/db/schema.rb +79 -0
  147. data/test/dummy/log/development.log +90832 -0
  148. data/test/dummy/log/test.log +4951 -0
  149. data/test/dummy/public/404.html +26 -0
  150. data/test/dummy/public/422.html +26 -0
  151. data/test/dummy/public/500.html +25 -0
  152. data/test/dummy/public/favicon.ico +0 -0
  153. data/test/dummy/script/rails +6 -0
  154. data/test/dummy/test/fixtures/organisms.yml +9 -0
  155. data/test/dummy/test/functional/organisms_controller_test.rb +49 -0
  156. data/test/dummy/test/unit/helpers/organisms_helper_test.rb +4 -0
  157. data/test/dummy/test/unit/organism_test.rb +7 -0
  158. data/test/dummy/tmp/cache/assets/C44/670/sprockets%2Fe128312dd259094d00196a3f02f41819 +0 -0
  159. data/test/dummy/tmp/cache/assets/C4D/C10/sprockets%2Fe52bf847776498593423b635698c989c +0 -0
  160. data/test/dummy/tmp/cache/assets/C53/BA0/sprockets%2F0701319e027b68d87b4d5727aa571973 +0 -0
  161. data/test/dummy/tmp/cache/assets/C72/FD0/sprockets%2F211ada252149520831dc97669a2e3d70 +0 -0
  162. data/test/dummy/tmp/cache/assets/C8B/B50/sprockets%2F1bf0946089435ce76a87bd41668373c2 +0 -0
  163. data/test/dummy/tmp/cache/assets/C8C/B80/sprockets%2F371bf96e99717688ed7313a0c53f4212 +0 -0
  164. data/test/dummy/tmp/cache/assets/C8D/BD0/sprockets%2F947d70d3406792779a12f1f6d39d1b91 +0 -0
  165. data/test/dummy/tmp/cache/assets/C90/510/sprockets%2Ff5920073f4480657faac32986b1f8587 +0 -0
  166. data/test/dummy/tmp/cache/assets/C91/5E0/sprockets%2F28a1436ca683918e98c79266d19d430e +0 -0
  167. data/test/dummy/tmp/cache/assets/CA0/DB0/sprockets%2F0333b2531e81b27b06c6f2829c6ab652 +0 -0
  168. data/test/dummy/tmp/cache/assets/CA2/E80/sprockets%2F332a13206d3e2013aaed55e54759f872 +0 -0
  169. data/test/dummy/tmp/cache/assets/CA4/930/sprockets%2F72a29d61339a55b21d1ac7ec59153244 +0 -0
  170. data/test/dummy/tmp/cache/assets/CA6/0A0/sprockets%2F63a72244bdf73521f399e501b341d16d +0 -0
  171. data/test/dummy/tmp/cache/assets/CA7/320/sprockets%2Ff20811f6c383aaf0958051fb829b3602 +0 -0
  172. data/test/dummy/tmp/cache/assets/CA9/F70/sprockets%2Fc82873599ca5d451407d1a58340ada23 +0 -0
  173. data/test/dummy/tmp/cache/assets/CAB/880/sprockets%2F3b58d34232750b28494eca3b6d7339a3 +0 -0
  174. data/test/dummy/tmp/cache/assets/CAD/BF0/sprockets%2Fd27d4e6bd84d0108fc54a21959181335 +0 -0
  175. data/test/dummy/tmp/cache/assets/CB1/900/sprockets%2F98768e5681d06ecae10153b850f22a64 +0 -0
  176. data/test/dummy/tmp/cache/assets/CC3/320/sprockets%2F6a1d777559c0368a3f41c28e9c358e58 +0 -0
  177. data/test/dummy/tmp/cache/assets/CC6/700/sprockets%2Fda996593aa3789391cab3d7762f13687 +0 -0
  178. data/test/dummy/tmp/cache/assets/CCB/400/sprockets%2Fb211324ce679335840009b6a2aa45cfc +0 -0
  179. data/test/dummy/tmp/cache/assets/CCC/450/sprockets%2F731d1832138b08d76d54530d0ea53abb +0 -0
  180. data/test/dummy/tmp/cache/assets/CD6/8A0/sprockets%2Fcb476833cd1a806e251da407a58d9520 +0 -0
  181. data/test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
  182. data/test/dummy/tmp/cache/assets/CD9/5A0/sprockets%2Fda84ff5dc1009f2b281035256a7812d9 +0 -0
  183. data/test/dummy/tmp/cache/assets/CDC/0B0/sprockets%2Ffef07c3c165353f861564ede180350a4 +0 -0
  184. data/test/dummy/tmp/cache/assets/CDD/EB0/sprockets%2F0e17703d917f6560e5c3b46ae85c09a2 +0 -0
  185. data/test/dummy/tmp/cache/assets/CE0/B90/sprockets%2F7baa8d092b9d409d47643521a8b55e62 +0 -0
  186. data/test/dummy/tmp/cache/assets/CE1/EB0/sprockets%2Fe2d34e55c19309ae4d1b8628d38514c6 +0 -0
  187. data/test/dummy/tmp/cache/assets/CE2/7C0/sprockets%2F1e3db2275be13ee98084d607564816bd +0 -0
  188. data/test/dummy/tmp/cache/assets/CE4/B80/sprockets%2Fdc146f8d1ff283ff045000f8349e3942 +0 -0
  189. data/test/dummy/tmp/cache/assets/CF0/1D0/sprockets%2F6fc757c2c8329244ca95d6909865bbc2 +0 -0
  190. data/test/dummy/tmp/cache/assets/CFA/700/sprockets%2Ff51725f304c66b6ed8ab01120cb1a593 +0 -0
  191. data/test/dummy/tmp/cache/assets/D0B/520/sprockets%2Fa659c61ab2078241e32ebaf671f87e41 +0 -0
  192. data/test/dummy/tmp/cache/assets/D0D/CC0/sprockets%2F90fc5652fe6161075680fcd4cd0c45d2 +0 -0
  193. data/test/dummy/tmp/cache/assets/D13/D30/sprockets%2Ff9d616cf2293e4f2ffe53f181410e523 +0 -0
  194. data/test/dummy/tmp/cache/assets/D14/210/sprockets%2Fb5db5427cdef8d152ae598d461178026 +0 -0
  195. data/test/dummy/tmp/cache/assets/D15/960/sprockets%2F557c56f5b8b86ba772e07281f1f3a0c7 +0 -0
  196. data/test/dummy/tmp/cache/assets/D16/870/sprockets%2F3f2a439772fcd9cd0f434f723837ae51 +0 -0
  197. data/test/dummy/tmp/cache/assets/D16/D00/sprockets%2F52e940c5c1d8089bcdf984d4d27c5520 +0 -0
  198. data/test/dummy/tmp/cache/assets/D17/680/sprockets%2Fa71f8f0bb597e3648d18d972aad62604 +0 -0
  199. data/test/dummy/tmp/cache/assets/D1A/390/sprockets%2F1d08a6978a059fa2494e078ec1ac7e93 +0 -0
  200. data/test/dummy/tmp/cache/assets/D1A/820/sprockets%2F20a218b05c2726d14bd025c36ba31ddd +0 -0
  201. data/test/dummy/tmp/cache/assets/D1A/D90/sprockets%2F6c459fd8844374d4aa166c64f544fae0 +0 -0
  202. data/test/dummy/tmp/cache/assets/D20/590/sprockets%2F22948c5cb4a59a4c252888f75cdf387a +0 -0
  203. data/test/dummy/tmp/cache/assets/D25/100/sprockets%2F4b9f1fdc6f9b86cc0624a7951766d926 +0 -0
  204. data/test/dummy/tmp/cache/assets/D25/C20/sprockets%2F1371c7975696fb3bbb964454c1ddff97 +0 -0
  205. data/test/dummy/tmp/cache/assets/D27/980/sprockets%2F65718e7a65fd89199b02b7cd38b90be9 +0 -0
  206. data/test/dummy/tmp/cache/assets/D2A/220/sprockets%2Fb0d6ff4608e402650ca685bc013d5d0a +0 -0
  207. data/test/dummy/tmp/cache/assets/D2B/FA0/sprockets%2F32aa9ce8b2315cc01f8a2c27374215ce +0 -0
  208. data/test/dummy/tmp/cache/assets/D32/5D0/sprockets%2F3acc8697202c55974ff0122bcf20fa2b +0 -0
  209. data/test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  210. data/test/dummy/tmp/cache/assets/D37/CF0/sprockets%2Fb1fa058e880dd6bc8dc0704b26a44096 +0 -0
  211. data/test/dummy/tmp/cache/assets/D3E/7A0/sprockets%2Ff9a1dbe464c536a11de32284fbc89192 +0 -0
  212. data/test/dummy/tmp/cache/assets/D3F/640/sprockets%2F9b448668c4c3a12d6aaa017b94e69ed2 +0 -0
  213. data/test/dummy/tmp/cache/assets/D42/040/sprockets%2F3def97f4406db752008fa340f74a6e3f +0 -0
  214. data/test/dummy/tmp/cache/assets/D44/860/sprockets%2F9157a652853bd3cea861bd767fed0b08 +0 -0
  215. data/test/dummy/tmp/cache/assets/D44/BF0/sprockets%2Fcf34626c45538b36718fd50fa9bcb2e6 +0 -0
  216. data/test/dummy/tmp/cache/assets/D45/2A0/sprockets%2F9c55f3eca763e68ded31023b7f66543a +0 -0
  217. data/test/dummy/tmp/cache/assets/D48/B20/sprockets%2F5768e2da329c68c958acde5d26124de0 +0 -0
  218. data/test/dummy/tmp/cache/assets/D48/FD0/sprockets%2F4403ce85c7fe84fe60d426553aa99b1f +0 -0
  219. data/test/dummy/tmp/cache/assets/D4B/710/sprockets%2F41e4ac5488184198d7e33e18b7aece4f +0 -0
  220. data/test/dummy/tmp/cache/assets/D4B/C40/sprockets%2F2428f6c76bb4a5efb583e158681fb73d +0 -0
  221. data/test/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655 +0 -0
  222. data/test/dummy/tmp/cache/assets/D50/4F0/sprockets%2F06489ea52ac1bf5ebb888f5b8c719268 +0 -0
  223. data/test/dummy/tmp/cache/assets/D51/560/sprockets%2Ff6c8347aff37a4784ea82069ba176f5f +0 -0
  224. data/test/dummy/tmp/cache/assets/D56/090/sprockets%2F4af17d268e2ffe72af8a78b78811f666 +0 -0
  225. data/test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
  226. data/test/dummy/tmp/cache/assets/D5F/600/sprockets%2F9c4623e57da4d15adb71bd1b04188b1d +0 -0
  227. data/test/dummy/tmp/cache/assets/D5F/950/sprockets%2F083e58aaae13ddb213d627c950dc2d09 +0 -0
  228. data/test/dummy/tmp/cache/assets/D63/7A0/sprockets%2Fa0d549181d4ba25b5ed57b841efc2d14 +0 -0
  229. data/test/dummy/tmp/cache/assets/D68/100/sprockets%2F7d7522df5cd3ba1f22c81c653dd5d651 +0 -0
  230. data/test/dummy/tmp/cache/assets/D6A/5C0/sprockets%2F9b410af44867a4979d1aea0ab84ed24b +0 -0
  231. data/test/dummy/tmp/cache/assets/D6B/970/sprockets%2F214e29a7345faee9672bca1756e4aaf1 +0 -0
  232. data/test/dummy/tmp/cache/assets/D6B/D20/sprockets%2Fee6531726dfe6592fa84b42a420b6acd +0 -0
  233. data/test/dummy/tmp/cache/assets/D70/650/sprockets%2Fe9a55b9e2e492638448a622c2fc0bfab +0 -0
  234. data/test/dummy/tmp/cache/assets/D71/AF0/sprockets%2Fb289e7b3562dcfd42bd0957f27a2f52a +0 -0
  235. data/test/dummy/tmp/cache/assets/D73/0F0/sprockets%2F5ba6d2f108d33e64b84fc4dd91960d6e +0 -0
  236. data/test/dummy/tmp/cache/assets/D73/8B0/sprockets%2Fac0e6a1f5b87c2966f07864c89c0acc3 +0 -0
  237. data/test/dummy/tmp/cache/assets/D79/640/sprockets%2F7443c25f3c67c8dae8e5ee1b1df18853 +0 -0
  238. data/test/dummy/tmp/cache/assets/D7B/800/sprockets%2F850d92cf676cc2c2c662ee8dc328f82c +0 -0
  239. data/test/dummy/tmp/cache/assets/D7D/950/sprockets%2F8259f3fc885403b4eea8dd12964c2ffc +0 -0
  240. data/test/dummy/tmp/cache/assets/D80/5F0/sprockets%2F375f5ed76dd35537dbe20d7f597ed06c +0 -0
  241. data/test/dummy/tmp/cache/assets/D92/430/sprockets%2Fc55e2bbc3d3c5566893be021ec1c4ab7 +0 -0
  242. data/test/dummy/tmp/cache/assets/D98/DB0/sprockets%2F85d986b72de37b417ec3a1a8e0da5aa1 +0 -0
  243. data/test/dummy/tmp/cache/assets/D9A/810/sprockets%2F53a9bd5325fcfa4148c273e3deb2d19d +0 -0
  244. data/test/dummy/tmp/cache/assets/D9D/BA0/sprockets%2Fa3a3f78f8e854339e32a5ab0638abbbf +0 -0
  245. data/test/dummy/tmp/cache/assets/DA7/930/sprockets%2F06db55d1b7d0c96a4ff1657e169e6ece +0 -0
  246. data/test/dummy/tmp/cache/assets/DA8/0D0/sprockets%2F74dcf71bbdf4ad56a3b4338b93d9866c +0 -0
  247. data/test/dummy/tmp/cache/assets/DAD/860/sprockets%2F11e875f5b7f7f5efbad0f6b5f880e244 +0 -0
  248. data/test/dummy/tmp/cache/assets/DAD/8E0/sprockets%2F498547cbaefbf040cfff05e9c6e53386 +0 -0
  249. data/test/dummy/tmp/cache/assets/DB0/A80/sprockets%2F9fdb8e951f975dae3836c2ccf0f65a34 +0 -0
  250. data/test/dummy/tmp/cache/assets/DC1/9E0/sprockets%2F4fdc113ba37308cc3d7d2dbbe1e9d625 +0 -0
  251. data/test/dummy/tmp/cache/assets/DCC/170/sprockets%2Fa2b9a6a717a82fc483c94abbe71aa95f +0 -0
  252. data/test/dummy/tmp/cache/assets/DCD/870/sprockets%2F26f53f256948ecabba69abf1e1dea282 +0 -0
  253. data/test/dummy/tmp/cache/assets/DD4/350/sprockets%2Fdb9283bc185ba79f4e69ffcf1214d3ac +0 -0
  254. data/test/dummy/tmp/cache/assets/DD4/980/sprockets%2Fed1289bfd5270a38bd9adfcb8d0627c8 +0 -0
  255. data/test/dummy/tmp/cache/assets/DD7/110/sprockets%2Fa7626606dec6ffd4a8a4b76abb7f6a94 +0 -0
  256. data/test/dummy/tmp/cache/assets/DD7/2D0/sprockets%2F9f68c831ccc33f95a6b0a5d7aaf76d8a +0 -0
  257. data/test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994 +0 -0
  258. data/test/dummy/tmp/cache/assets/DE5/930/sprockets%2Fdf7e1e4d508705c77a96e8deb9d8cf4a +0 -0
  259. data/test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
  260. data/test/dummy/tmp/cache/assets/E06/3E0/sprockets%2Fea82cc4edce5d77b1a6919e2ce267c5e +0 -0
  261. data/test/dummy/tmp/cache/assets/E09/D50/sprockets%2Ff4ddcae783285dd8fc1d36e118c8cb7d +0 -0
  262. data/test/dummy/tmp/cache/assets/E12/820/sprockets%2Ff8ced48d293d9ae81be776bac3d3de86 +0 -0
  263. data/test/dummy/tmp/cache/assets/E5A/2A0/sprockets%2Fed33dc2e47cddca2a7f3b9d850f01fef +0 -0
  264. data/test/dummy/tmp/cache/assets/E5A/610/sprockets%2Fca00ee89118a5de9af36a4df9a2eddda +0 -0
  265. data/test/dummy/tmp/cache/assets/E8E/C80/sprockets%2Fbcfe97b68b37db0b902decd4ea5ae8ea +0 -0
  266. data/test/fixtures/adherent/adhesions.yml +11 -0
  267. data/test/fixtures/adherent/coords.yml +21 -0
  268. data/test/fixtures/adherent/members.yml +13 -0
  269. data/test/fixtures/adherent/payments.yml +22 -0
  270. data/test/fixtures/adherent/reglements.yml +11 -0
  271. data/test/functional/adherent/adhesion_controller_test.rb +26 -0
  272. data/test/functional/adherent/coords_controller_test.rb +53 -0
  273. data/test/functional/adherent/members_controller_test.rb +54 -0
  274. data/test/functional/adherent/payments_controller_test.rb +26 -0
  275. data/test/functional/adherent/reglements_controller_test.rb +21 -0
  276. data/test/integration/navigation_test.rb +10 -0
  277. data/test/test_helper.rb +27 -0
  278. data/test/unit/adherent/adhesion_test.rb +35 -0
  279. data/test/unit/adherent/coord_test.rb +9 -0
  280. data/test/unit/adherent/member_test.rb +17 -0
  281. data/test/unit/adherent/payment_test.rb +24 -0
  282. data/test/unit/adherent/reglement_test.rb +9 -0
  283. data/test/unit/helpers/adherent/adhesion_helper_test.rb +6 -0
  284. data/test/unit/helpers/adherent/coords_helper_test.rb +6 -0
  285. data/test/unit/helpers/adherent/members_helper_test.rb +6 -0
  286. data/test/unit/helpers/adherent/payments_helper_test.rb +6 -0
  287. data/test/unit/helpers/adherent/reglements_helper_test.rb +6 -0
  288. metadata +627 -0
@@ -0,0 +1,4 @@
1
+ /*
2
+ Place all the styles related to the matching controller here.
3
+ They will automatically be included in application.css.
4
+ */
@@ -0,0 +1,24 @@
1
+ /*
2
+ Document : date_picker
3
+ Created on : 4 août 2013, 07:36:41
4
+ Author : jcl
5
+ Description:
6
+ Purpose of the stylesheet follows.
7
+ */
8
+
9
+ input.input_date_picker {
10
+ background-image: url('cal.gif');
11
+ background-repeat:no-repeat;
12
+ background-position:97% 50%;
13
+
14
+ }
15
+
16
+ .picker_date img {
17
+ float: left;
18
+ padding-top: 4px;
19
+ }
20
+
21
+ img.ui-datepicker-trigger {
22
+ margin-left: -20px;
23
+ margin-right: 4px;
24
+ }
@@ -0,0 +1,121 @@
1
+ /*
2
+ Document : jc_application
3
+ Created on : 17 mars 2012, 09:09:07
4
+ Author : jcl
5
+ Description:
6
+ Purpose of the stylesheet follows.
7
+ */
8
+
9
+
10
+
11
+ .inner-champ {
12
+ padding-top: 8px;
13
+ padding-bottom: 8px;
14
+ background: #dbffdb;
15
+ border-radius: 0px 0px 4px 4px;
16
+ }
17
+
18
+ .champ h3 {
19
+ color: #fff;
20
+ background: #346aa4;
21
+ padding-left: 20px;
22
+ border-radius: 4px 4px 0px 0px;
23
+ font-size: 20px;
24
+
25
+ /* font-family: sans-serif;*/
26
+ }
27
+
28
+
29
+ /* stylesheets/application.css */
30
+ /*.simple_form label {
31
+ padding-right: 10px;
32
+ text-align: right;
33
+ font-weight: bold;
34
+ }
35
+
36
+ .simple_form div.input {
37
+ margin-bottom: 10px;
38
+ }
39
+
40
+ .inputs_inline label{
41
+ float: none;
42
+ }
43
+
44
+
45
+ .simple_form div.boolean {
46
+ margin-left: 40px;
47
+ }
48
+
49
+ .simple_form div.boolean label, .simple_form label.collection_radio {
50
+ float: none;
51
+ margin: 0;
52
+ }
53
+
54
+ .simple_form label.collection_radio {
55
+ margin-right: 10px;
56
+ margin-left: 2px;
57
+ }
58
+
59
+ .simple_form .hint {
60
+ clear: left;
61
+ margin-left: 140px;
62
+ font-size: 12px;
63
+ color: #555;
64
+ display: block;
65
+ font-style: italic;
66
+ }
67
+
68
+ .simple_form abbr {
69
+ color: red;
70
+ }*/
71
+
72
+ .picker_date img {
73
+ float: left;
74
+ padding-top: 4px;
75
+ }
76
+
77
+ img.ui-datepicker-trigger {
78
+ margin-left: -20px;
79
+ margin-right: 4px;
80
+ }
81
+
82
+ /*form {
83
+ padding-top: 8px;
84
+ }*/
85
+
86
+ /* permet d'avoir une mise en page de formulaire fluide */
87
+ /*.row-fluid form input, .row-fluid form select { float: left; }*/
88
+
89
+ /*.controls {position: relative;}
90
+ form ul {
91
+ list-style: none;
92
+ li label { padding-right: 0px;}
93
+ }
94
+ span.error{
95
+ margin-bottom: 0;
96
+ }
97
+ .control-group {
98
+ margin-bottom: 0;
99
+ margin-top: 6px;
100
+ }
101
+
102
+
103
+ .help-inline {
104
+ float: right;
105
+ font-size: 83%;
106
+ font-style: italic;
107
+ margin-top: -10px;
108
+ padding-right: 10px;
109
+ }
110
+
111
+ .form-inline span.help-inline {
112
+ float: none;
113
+ margin-top: 0px;
114
+ }
115
+
116
+ td p {
117
+ margin-left: 0px; Pour éviter que simple format de bank_account address laisse une marge à gauche
118
+ }
119
+ .input-prepend textarea {
120
+ margin-bottom: 4px;
121
+ }*/
@@ -0,0 +1,43 @@
1
+
2
+ #menu a.icon_menu, #submenu a.icon_menu {
3
+ float: right;
4
+ margin: 0px;
5
+ padding: 0px;
6
+ padding-right: 9px;
7
+ border-style: none;
8
+ border-width: 0px;
9
+ color:white;
10
+ text-decoration: none;
11
+ height: 18px;
12
+
13
+ }
14
+
15
+ #menu a.icon_menu img {
16
+ height: 16px;
17
+ width: 16px;
18
+ padding-top: 1px;
19
+ padding-bottom: 1px;
20
+ }
21
+
22
+ .nav .icon_menu {
23
+ float: left;
24
+ }
25
+
26
+ /* Utile pour que les nav-header tels que le numéro de compte ne soient pas cliquable*/
27
+ .dropdown-menu li.no-link > a:hover {
28
+ background-color: #FFF;
29
+ color: #333 !important;
30
+ text-decoration: none;
31
+ }
32
+
33
+ li.dropdown > a:hover {
34
+ color: #333 !important;
35
+
36
+ }
37
+
38
+ li.dropdown span.no-link {
39
+ padding: 3px 20px;
40
+ color: #888;
41
+ }
42
+
43
+
@@ -0,0 +1,79 @@
1
+ /*
2
+ Document : layouts
3
+ Created on : 30 août 2012, 09:25:47
4
+ Author : jcl
5
+ Description:
6
+ Purpose of the stylesheet follows.
7
+ */
8
+
9
+ /*
10
+ TODO customize this sample style
11
+ Syntax recommendation http://sass-lang.com/docs/yardoc/file.SASS_REFERENCE.html
12
+ */
13
+ html, body {
14
+ padding: 0px;
15
+ margin: 0px;
16
+ height:100%;
17
+ }
18
+
19
+
20
+
21
+
22
+ .brand {
23
+ background-image: image-url("sigma.png");
24
+ background-repeat: no-repeat;
25
+ background-position: 3px 3px;
26
+ a {color: #bbb}
27
+ a:hover { text-decoration: none;}
28
+ a:visited {
29
+ color: #bbbbbb;
30
+ }
31
+ }
32
+
33
+ .container-fluid {
34
+ min-height: 100%;
35
+ height: auto !important;
36
+ height: 100%;
37
+ margin: 0 auto -1.5em; /* the bottom margin is the negative value of the footer's height */
38
+
39
+ // position:relative;
40
+ }
41
+
42
+ .push {
43
+ clear: both;
44
+ height: 1.5em;
45
+ }
46
+
47
+ #bottom_page {
48
+ height: 1.5em;
49
+ }
50
+
51
+
52
+ .total_width {
53
+
54
+ text-align: center;
55
+ width: 100%;
56
+
57
+ background-color: #CBEECB;
58
+ border-top: 1px solid #1b431b;
59
+
60
+
61
+ ul {
62
+ margin: 0;
63
+ list-style: none;
64
+ display: inline;
65
+
66
+ }
67
+
68
+ li { display: inline;
69
+ list-style: none;
70
+ font-size: 80%;
71
+ a { color: #1b431b; }
72
+ a:visited { color: #1b431b;}
73
+ a:hover {color: #fff;}
74
+
75
+
76
+ }
77
+
78
+
79
+ }
@@ -0,0 +1,7 @@
1
+ /*
2
+ Place all the styles related to the matching controller here.
3
+ They will automatically be included in application.css.
4
+ */
5
+ .impaye {
6
+ color: red;
7
+ }
@@ -0,0 +1,125 @@
1
+
2
+ p {margin-left: 20px;}
3
+ table a img
4
+ {
5
+ margin-left: 4px;
6
+ margin-right: 4px;
7
+ }
8
+
9
+ .alert {
10
+ background-color: #ece8d3;
11
+ color: #d25;
12
+ margin-bottom: 4px;
13
+ }
14
+
15
+ .notice {
16
+ color: #271;
17
+ }
18
+
19
+ .nav {margin-bottom: 4px;}
20
+
21
+ .nav > li > a:hover {
22
+ background-color: #CBEECB;
23
+ }
24
+
25
+ /* rajouté pour avoir link_to_if et link_to_unless qui affichent le lien en grisé */
26
+ .dropdown-menu span.disable {
27
+ clear: both;
28
+ color: #888888;
29
+ display: block;
30
+ font-weight: normal;
31
+ line-height: 18px;
32
+ padding: 3px 20px;
33
+ white-space: nowrap;
34
+ }
35
+
36
+
37
+ .table-striped tbody tr:nth-child(2n+1) td, .table-striped tbody tr:nth-child(2n+1) th {
38
+ background-color: #EFEFEF;
39
+ }
40
+
41
+ .table tbody tr:hover td, .table tbody tr:hover th {
42
+ background-color: #CBEECB;
43
+ }
44
+
45
+ .table thead th {vertical-align: top; }
46
+
47
+ table thead th ul {
48
+ margin-left: 0px;
49
+ margin-bottom: 0px;
50
+ list-style: none inside none;
51
+ }
52
+
53
+ .numeric , td.numeric, th.numeric, input.numeric{
54
+ text-align: right;
55
+ }
56
+
57
+ .form-horizontal .form-actions, .form-inline .form-actions {
58
+ background-color: #dbffdb;
59
+ margin-top: 9px;
60
+ padding-top: 0px;
61
+ border-top: none;
62
+ }
63
+
64
+ .form-horizontal .control-group {
65
+ margin-top: 9px;
66
+
67
+ }
68
+
69
+ .form-inline label {
70
+ padding-left: 8px;
71
+ }
72
+
73
+ select[class*="span"] {
74
+ background-color: #fff;
75
+
76
+ }
77
+
78
+ .row-fluid select[class*="span"] {
79
+ display: inline;
80
+ }
81
+
82
+ .form-horizontal .help-block {
83
+ font-style: italic;
84
+ margin-top: 6px;
85
+ margin-left: 6px;
86
+ font-weight: smaller;
87
+ color: gray;
88
+
89
+ }
90
+
91
+ select[disabled] {
92
+ background-color: #dbffdb;
93
+ }
94
+
95
+ abbr[title] {
96
+ border-bottom: none;
97
+ color: red;
98
+ }
99
+
100
+ input.input_date_picker {
101
+ background-image: url('cal.gif');
102
+ background-repeat:no-repeat;
103
+ background-position:97% 50%;
104
+
105
+ }
106
+
107
+ .help-inline {
108
+ font-style: italic;
109
+ font-size: smaller
110
+ }
111
+
112
+
113
+ /* inséré pour avoir la même couleur dans les liens visités des menus */
114
+ li.dropdown a:visited {
115
+ color: #333 !important;
116
+ }
117
+
118
+ li.dropdown a:hover {
119
+ color: #FFF !important;
120
+ }
121
+
122
+
123
+
124
+
125
+
@@ -0,0 +1,4 @@
1
+ /*
2
+ Place all the styles related to the matching controller here.
3
+ They will automatically be included in application.css.
4
+ */
@@ -0,0 +1,4 @@
1
+ /*
2
+ Place all the styles related to the matching controller here.
3
+ They will automatically be included in application.css.
4
+ */
@@ -0,0 +1,56 @@
1
+ body { background-color: #fff; color: #333; }
2
+
3
+ body, p, ol, ul, td {
4
+ font-family: verdana, arial, helvetica, sans-serif;
5
+ font-size: 13px;
6
+ line-height: 18px;
7
+ }
8
+
9
+ pre {
10
+ background-color: #eee;
11
+ padding: 10px;
12
+ font-size: 11px;
13
+ }
14
+
15
+ a { color: #000; }
16
+ a:visited { color: #666; }
17
+ a:hover { color: #fff; background-color:#000; }
18
+
19
+ div.field, div.actions {
20
+ margin-bottom: 10px;
21
+ }
22
+
23
+ #notice {
24
+ color: green;
25
+ }
26
+
27
+ .field_with_errors {
28
+ padding: 2px;
29
+ background-color: red;
30
+ display: table;
31
+ }
32
+
33
+ #error_explanation {
34
+ width: 450px;
35
+ border: 2px solid red;
36
+ padding: 7px;
37
+ padding-bottom: 0;
38
+ margin-bottom: 20px;
39
+ background-color: #f0f0f0;
40
+ }
41
+
42
+ #error_explanation h2 {
43
+ text-align: left;
44
+ font-weight: bold;
45
+ padding: 5px 5px 5px 15px;
46
+ font-size: 12px;
47
+ margin: -7px;
48
+ margin-bottom: 0px;
49
+ background-color: #c00;
50
+ color: #fff;
51
+ }
52
+
53
+ #error_explanation ul li {
54
+ font-size: 12px;
55
+ list-style: square;
56
+ }
@@ -0,0 +1,84 @@
1
+ # coding utf-8
2
+
3
+ require_dependency "adherent/application_controller"
4
+
5
+ module Adherent
6
+ class AdhesionsController < ApplicationController
7
+ before_filter :find_member
8
+
9
+ def index
10
+ @adhesions = @member.adhesions
11
+ if @adhesions.empty?
12
+ flash[:notice] = 'Pas encore d\'adhésion pour ce membre ; redirigé vers la création d\'une adhésion'
13
+ redirect_to new_member_adhesion_url(@member)
14
+ end
15
+ end
16
+
17
+ def edit
18
+ @adhesion= @member.adhesions.find(params[:id])
19
+ end
20
+
21
+ # PUT /adhesions/1
22
+ # PUT /adhesions/1.json
23
+ def update
24
+ @adhesion = Adhesion.find(params[:id])
25
+
26
+ respond_to do |format|
27
+ if @adhesion.update_attributes(params[:adhesion])
28
+ format.html { redirect_to member_adhesions_path(@member), notice: 'Adhésion mise à jour.' }
29
+ format.json { head :no_content }
30
+ else
31
+ format.html { render action: "edit" }
32
+
33
+ end
34
+ end
35
+ end
36
+
37
+ def new
38
+ @adhesion = @member.next_adhesion
39
+ end
40
+
41
+ # POST /adhesions
42
+ # POST /adhesions.json
43
+ def create
44
+ @adhesion = @member.adhesions.new(params[:adhesion])
45
+ unless @adhesion.valid?
46
+
47
+ flash[:notice] = @adhesion.errors.messages
48
+ end
49
+ respond_to do |format|
50
+ if @adhesion.save
51
+ format.html { redirect_to member_adhesions_url(@member), notice: 'Adhésion créée' }
52
+ format.json { render json: @adhesion, status: :created, location: @adhesion }
53
+ else
54
+ format.html { render action: "new" }
55
+ format.json { render json: @adhesion.errors, status: :unprocessable_entity }
56
+ end
57
+ end
58
+ end
59
+
60
+ def show
61
+
62
+ @adhesion= @member.adhesions.find(params[:id])
63
+
64
+ end
65
+
66
+ # DELETE /adhesion/1
67
+ # DELETE /coords/1.json
68
+ def destroy
69
+ @adhesion = @member.adhesions.find(params[:id])
70
+ @adhesion.destroy
71
+
72
+ respond_to do |format|
73
+ format.html { redirect_to member_adhesions_url(@member) }
74
+
75
+ end
76
+ end
77
+
78
+ protected
79
+
80
+ def find_member
81
+ @member = Member.find(params[:member_id])
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,6 @@
1
+
2
+ # pour avoir les méthodes d'authenfication proposées par l'ApplicationController
3
+ # ainsi que la gestion des sessions et notamment la méthode find_organism
4
+ class Adherent::ApplicationController < ApplicationController
5
+ end
6
+
@@ -0,0 +1,100 @@
1
+ # coding utf-8
2
+
3
+ require_dependency "adherent/application_controller"
4
+
5
+ module Adherent
6
+ class CoordsController < ApplicationController
7
+
8
+ before_filter :find_member, :except=>[:index]
9
+ # GET /coords
10
+ # GET /coords.json
11
+ def index
12
+ @coords = @organism.members.collect {|m| m.coord }
13
+
14
+ respond_to do |format|
15
+ format.html # index.html.erb
16
+ format.json { render json: @coords }
17
+ end
18
+ end
19
+
20
+ # GET /coords/1
21
+ # GET /coords/1.json
22
+ def show
23
+ @coord = @member.coord
24
+ unless @coord
25
+ flash[:alert] = "Pas encore de coordonnées pour #{@member.to_s}"
26
+ redirect_to new_member_coord_url(@member) and return
27
+ end
28
+ respond_to do |format|
29
+ format.html # show.html.erb
30
+ format.json { render json: @coord }
31
+ end
32
+ end
33
+
34
+ # GET /coords/new
35
+ # GET /coords/new.json
36
+ def new
37
+ @coord = @member.build_coord
38
+
39
+ respond_to do |format|
40
+ format.html # new.html.erb
41
+ format.json { render json: @coord }
42
+ end
43
+ end
44
+
45
+ # GET /coords/1/edit
46
+ def edit
47
+ @coord = @member.coord
48
+ end
49
+
50
+ # POST /coords
51
+ # POST /coords.json
52
+ def create
53
+ @coord = @member.build_coord(params[:coord])
54
+
55
+ respond_to do |format|
56
+ if @coord.save
57
+ format.html { redirect_to new_member_adhesion_url(@member), notice: 'Coordonnées enregistrées' }
58
+ format.json { render json: @coord, status: :created, location: @coord }
59
+ else
60
+ format.html { render action: "new" }
61
+ format.json { render json: @coord.errors, status: :unprocessable_entity }
62
+ end
63
+ end
64
+ end
65
+
66
+ # PUT /coords/1
67
+ # PUT /coords/1.json
68
+ def update
69
+ @coord = @member.coord
70
+
71
+ respond_to do |format|
72
+ if @coord.update_attributes(params[:coord])
73
+ format.html { redirect_to member_coord_path(@member), notice: 'Coordonnées mises à jour' }
74
+ format.json { head :no_content }
75
+ else
76
+ format.html { render action: "edit" }
77
+ format.json { render json: @coord.errors, status: :unprocessable_entity }
78
+ end
79
+ end
80
+ end
81
+
82
+ # DELETE /coords/1
83
+ # DELETE /coords/1.json
84
+ def destroy
85
+ @coord = Coord.find(params[:id])
86
+ @coord.destroy
87
+
88
+ respond_to do |format|
89
+ format.html { redirect_to coords_url }
90
+ format.json { head :no_content }
91
+ end
92
+ end
93
+
94
+ protected
95
+
96
+ def find_member
97
+ @member = Member.find(params[:member_id])
98
+ end
99
+ end
100
+ end