rails_event 0.0.1

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 (291) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +20 -0
  3. data/README.md +36 -0
  4. data/Rakefile +32 -0
  5. data/app/controllers/eventual/admin/base_controller.rb +4 -0
  6. data/app/controllers/eventual/admin/bookings_controller.rb +43 -0
  7. data/app/controllers/eventual/admin/crowd_members_controller.rb +43 -0
  8. data/app/controllers/eventual/admin/crowds_controller.rb +58 -0
  9. data/app/controllers/eventual/admin/event_crowds_controller.rb +71 -0
  10. data/app/controllers/eventual/admin/event_items_controller.rb +58 -0
  11. data/app/controllers/eventual/admin/event_participants_controller.rb +101 -0
  12. data/app/controllers/eventual/admin/event_taxons_controller.rb +55 -0
  13. data/app/controllers/eventual/admin/events_controller.rb +91 -0
  14. data/app/controllers/eventual/admin/place_taxons_controller.rb +57 -0
  15. data/app/controllers/eventual/admin/places_controller.rb +59 -0
  16. data/app/controllers/eventual/admin/plan_attenders_controller.rb +65 -0
  17. data/app/controllers/eventual/admin/plan_items_controller.rb +84 -0
  18. data/app/controllers/eventual/admin/plans_controller.rb +127 -0
  19. data/app/controllers/eventual/admin/seats_controller.rb +58 -0
  20. data/app/controllers/eventual/admin/time_items_controller.rb +82 -0
  21. data/app/controllers/eventual/admin/time_lists_controller.rb +72 -0
  22. data/app/controllers/eventual/base_controller.rb +4 -0
  23. data/app/controllers/eventual/me/base_controller.rb +4 -0
  24. data/app/controllers/eventual/me/plan_items_controller.rb +58 -0
  25. data/app/controllers/eventual/my/base_controller.rb +4 -0
  26. data/app/controllers/eventual/my/plan_items_controller.rb +55 -0
  27. data/app/controllers/eventual/places_controller.rb +27 -0
  28. data/app/controllers/eventual/time_controller.rb +14 -0
  29. data/app/models/eventual/application_record.rb +5 -0
  30. data/app/models/eventual/booking.rb +5 -0
  31. data/app/models/eventual/crowd.rb +5 -0
  32. data/app/models/eventual/crowd_member.rb +5 -0
  33. data/app/models/eventual/event.rb +6 -0
  34. data/app/models/eventual/event_crowd.rb +5 -0
  35. data/app/models/eventual/event_grant.rb +5 -0
  36. data/app/models/eventual/event_item.rb +5 -0
  37. data/app/models/eventual/event_participant.rb +6 -0
  38. data/app/models/eventual/event_taxon.rb +5 -0
  39. data/app/models/eventual/ext/recurrence.rb +86 -0
  40. data/app/models/eventual/model/agency.rb +18 -0
  41. data/app/models/eventual/model/booked.rb +10 -0
  42. data/app/models/eventual/model/booker.rb +15 -0
  43. data/app/models/eventual/model/booking.rb +37 -0
  44. data/app/models/eventual/model/crowd.rb +21 -0
  45. data/app/models/eventual/model/crowd_member.rb +20 -0
  46. data/app/models/eventual/model/event.rb +48 -0
  47. data/app/models/eventual/model/event_crowd.rb +54 -0
  48. data/app/models/eventual/model/event_grant.rb +14 -0
  49. data/app/models/eventual/model/event_item.rb +30 -0
  50. data/app/models/eventual/model/event_participant.rb +63 -0
  51. data/app/models/eventual/model/event_taxon.rb +13 -0
  52. data/app/models/eventual/model/member.rb +18 -0
  53. data/app/models/eventual/model/occurrence.rb +62 -0
  54. data/app/models/eventual/model/place.rb +25 -0
  55. data/app/models/eventual/model/place_taxon.rb +18 -0
  56. data/app/models/eventual/model/plan.rb +147 -0
  57. data/app/models/eventual/model/plan_attender.rb +31 -0
  58. data/app/models/eventual/model/plan_item.rb +84 -0
  59. data/app/models/eventual/model/plan_participant/crowd_participant.rb +17 -0
  60. data/app/models/eventual/model/plan_participant/normal_participant.rb +9 -0
  61. data/app/models/eventual/model/plan_participant.rb +30 -0
  62. data/app/models/eventual/model/planned.rb +11 -0
  63. data/app/models/eventual/model/planning.rb +44 -0
  64. data/app/models/eventual/model/recurrence.rb +64 -0
  65. data/app/models/eventual/model/seat.rb +17 -0
  66. data/app/models/eventual/model/time_item.rb +46 -0
  67. data/app/models/eventual/model/time_list.rb +57 -0
  68. data/app/models/eventual/place.rb +5 -0
  69. data/app/models/eventual/place_taxon.rb +6 -0
  70. data/app/models/eventual/plan.rb +7 -0
  71. data/app/models/eventual/plan_attender.rb +5 -0
  72. data/app/models/eventual/plan_item.rb +6 -0
  73. data/app/models/eventual/plan_participant.rb +5 -0
  74. data/app/models/eventual/seat.rb +5 -0
  75. data/app/models/eventual/time_item.rb +5 -0
  76. data/app/models/eventual/time_list.rb +5 -0
  77. data/app/models/eventual.rb +11 -0
  78. data/app/models/plan_participant/eventual/crowd_participant.rb +5 -0
  79. data/app/models/plan_participant/eventual/normal_participant.rb +5 -0
  80. data/app/views/admin/_event_nav.html.erb +14 -0
  81. data/app/views/admin/_nav_event.html.erb +9 -0
  82. data/app/views/eventual/admin/base/_nav.html.erb +3 -0
  83. data/app/views/eventual/admin/bookings/_booking.json.jbuilder +12 -0
  84. data/app/views/eventual/admin/bookings/_filter.html.erb +6 -0
  85. data/app/views/eventual/admin/bookings/_form.html.erb +8 -0
  86. data/app/views/eventual/admin/bookings/_show.json.jbuilder +1 -0
  87. data/app/views/eventual/admin/bookings/_show_table.html.erb +28 -0
  88. data/app/views/eventual/admin/bookings/index.html.erb +43 -0
  89. data/app/views/eventual/admin/bookings/index.json.jbuilder +1 -0
  90. data/app/views/eventual/admin/crowd_members/_filter_form.html.erb +7 -0
  91. data/app/views/eventual/admin/crowd_members/_form.html.erb +4 -0
  92. data/app/views/eventual/admin/crowd_members/index.html.erb +34 -0
  93. data/app/views/eventual/admin/crowds/_crowd.json.jbuilder +8 -0
  94. data/app/views/eventual/admin/crowds/_edit_form.html.erb +4 -0
  95. data/app/views/eventual/admin/crowds/_filter_form.html.erb +10 -0
  96. data/app/views/eventual/admin/crowds/_form.html.erb +4 -0
  97. data/app/views/eventual/admin/crowds/_index_tbody.html.erb +5 -0
  98. data/app/views/eventual/admin/crowds/_index_thead.html.erb +3 -0
  99. data/app/views/eventual/admin/crowds/_new_form.html.erb +4 -0
  100. data/app/views/eventual/admin/crowds/_show.json.jbuilder +1 -0
  101. data/app/views/eventual/admin/crowds/_show_table.html.erb +20 -0
  102. data/app/views/eventual/admin/crowds/index.html.erb +5 -0
  103. data/app/views/eventual/admin/crowds/index.json.jbuilder +1 -0
  104. data/app/views/eventual/admin/event_crowds/_breadcrumb.html.erb +7 -0
  105. data/app/views/eventual/admin/event_crowds/_crowd_student.html.erb +18 -0
  106. data/app/views/eventual/admin/event_crowds/_edit_form.html.erb +15 -0
  107. data/app/views/eventual/admin/event_crowds/_index_tbody.html.erb +19 -0
  108. data/app/views/eventual/admin/event_crowds/_index_thead.html.erb +10 -0
  109. data/app/views/eventual/admin/event_crowds/_new_form.html.erb +6 -0
  110. data/app/views/eventual/admin/event_crowds/_show_table.html.erb +12 -0
  111. data/app/views/eventual/admin/event_crowds/index.html.erb +2 -0
  112. data/app/views/eventual/admin/event_items/_breadcrumb.html.erb +7 -0
  113. data/app/views/eventual/admin/event_items/_edit_form.html.erb +4 -0
  114. data/app/views/eventual/admin/event_items/_event_item.json.jbuilder +12 -0
  115. data/app/views/eventual/admin/event_items/_filter_form.html.erb +9 -0
  116. data/app/views/eventual/admin/event_items/_form.html.erb +12 -0
  117. data/app/views/eventual/admin/event_items/_index_tbody.html.erb +8 -0
  118. data/app/views/eventual/admin/event_items/_index_thead.html.erb +5 -0
  119. data/app/views/eventual/admin/event_items/_new_form.html.erb +4 -0
  120. data/app/views/eventual/admin/event_items/_show.json.jbuilder +1 -0
  121. data/app/views/eventual/admin/event_items/_show_table.html.erb +12 -0
  122. data/app/views/eventual/admin/event_items/index.html.erb +1 -0
  123. data/app/views/eventual/admin/event_items/index.json.jbuilder +1 -0
  124. data/app/views/eventual/admin/event_participants/_breadcrumb.html.erb +7 -0
  125. data/app/views/eventual/admin/event_participants/_button.html.erb +3 -0
  126. data/app/views/eventual/admin/event_participants/_filter_form.html.erb +9 -0
  127. data/app/views/eventual/admin/event_participants/_filter_table.html.erb +11 -0
  128. data/app/views/eventual/admin/event_participants/_form.html.erb +4 -0
  129. data/app/views/eventual/admin/event_participants/_index_tbody.html.erb +15 -0
  130. data/app/views/eventual/admin/event_participants/_index_thead.html.erb +5 -0
  131. data/app/views/eventual/admin/event_participants/index.html.erb +1 -0
  132. data/app/views/eventual/admin/event_taxons/_breadcrumb.html.erb +6 -0
  133. data/app/views/eventual/admin/event_taxons/_edit_form.html.erb +4 -0
  134. data/app/views/eventual/admin/event_taxons/_event_taxon.json.jbuilder +5 -0
  135. data/app/views/eventual/admin/event_taxons/_filter_form.html.erb +10 -0
  136. data/app/views/eventual/admin/event_taxons/_form.html.erb +2 -0
  137. data/app/views/eventual/admin/event_taxons/_index_tbody.html.erb +1 -0
  138. data/app/views/eventual/admin/event_taxons/_index_thead.html.erb +2 -0
  139. data/app/views/eventual/admin/event_taxons/_new_form.html.erb +4 -0
  140. data/app/views/eventual/admin/event_taxons/_show.json.jbuilder +1 -0
  141. data/app/views/eventual/admin/event_taxons/index.html.erb +5 -0
  142. data/app/views/eventual/admin/event_taxons/index.json.jbuilder +1 -0
  143. data/app/views/eventual/admin/events/_edit_form.html.erb +4 -0
  144. data/app/views/eventual/admin/events/_event.json.jbuilder +17 -0
  145. data/app/views/eventual/admin/events/_filter_form.html.erb +9 -0
  146. data/app/views/eventual/admin/events/_filter_table.html.erb +15 -0
  147. data/app/views/eventual/admin/events/_form.html.erb +11 -0
  148. data/app/views/eventual/admin/events/_index_tbody.html.erb +11 -0
  149. data/app/views/eventual/admin/events/_index_thead.html.erb +10 -0
  150. data/app/views/eventual/admin/events/_new_form.html.erb +4 -0
  151. data/app/views/eventual/admin/events/_show/_breadcrumb.html.erb +7 -0
  152. data/app/views/eventual/admin/events/_show.json.jbuilder +1 -0
  153. data/app/views/eventual/admin/events/create.json.jbuilder +1 -0
  154. data/app/views/eventual/admin/events/index.html.erb +5 -0
  155. data/app/views/eventual/admin/events/index.json.jbuilder +1 -0
  156. data/app/views/eventual/admin/events/repeat_form.js.erb +14 -0
  157. data/app/views/eventual/admin/events/show.html.erb +16 -0
  158. data/app/views/eventual/admin/place_taxons/_breadcrumb.html.erb +6 -0
  159. data/app/views/eventual/admin/place_taxons/_edit_form.html.erb +4 -0
  160. data/app/views/eventual/admin/place_taxons/_filter_form.html.erb +9 -0
  161. data/app/views/eventual/admin/place_taxons/_form.html.erb +6 -0
  162. data/app/views/eventual/admin/place_taxons/_index_tbody.html.erb +17 -0
  163. data/app/views/eventual/admin/place_taxons/_index_thead.html.erb +4 -0
  164. data/app/views/eventual/admin/place_taxons/_new_form.html.erb +4 -0
  165. data/app/views/eventual/admin/place_taxons/_show_table.html.erb +12 -0
  166. data/app/views/eventual/admin/place_taxons/index.html.erb +5 -0
  167. data/app/views/eventual/admin/places/_breadcrumb.html.erb +5 -0
  168. data/app/views/eventual/admin/places/_edit_form.html.erb +4 -0
  169. data/app/views/eventual/admin/places/_filter_form.html.erb +10 -0
  170. data/app/views/eventual/admin/places/_form.html.erb +4 -0
  171. data/app/views/eventual/admin/places/_index_tbody.html.erb +6 -0
  172. data/app/views/eventual/admin/places/_index_thead.html.erb +10 -0
  173. data/app/views/eventual/admin/places/_index_tr.html.erb +19 -0
  174. data/app/views/eventual/admin/places/_new_form.html.erb +4 -0
  175. data/app/views/eventual/admin/places/_place.json.jbuilder +6 -0
  176. data/app/views/eventual/admin/places/_show.json.jbuilder +1 -0
  177. data/app/views/eventual/admin/places/_show_table.html.erb +8 -0
  178. data/app/views/eventual/admin/places/index.html.erb +5 -0
  179. data/app/views/eventual/admin/places/index.json.jbuilder +1 -0
  180. data/app/views/eventual/admin/plan_attenders/_breadcrumb.html.erb +9 -0
  181. data/app/views/eventual/admin/plan_attenders/_course_student.json.jbuilder +11 -0
  182. data/app/views/eventual/admin/plan_attenders/_edit_form.html.erb +4 -0
  183. data/app/views/eventual/admin/plan_attenders/_filter.html.erb +6 -0
  184. data/app/views/eventual/admin/plan_attenders/_form.html.erb +5 -0
  185. data/app/views/eventual/admin/plan_attenders/_new_form.html.erb +4 -0
  186. data/app/views/eventual/admin/plan_attenders/_plan_attender.json.jbuilder +9 -0
  187. data/app/views/eventual/admin/plan_attenders/_show.json.jbuilder +1 -0
  188. data/app/views/eventual/admin/plan_attenders/_show_table.html.erb +16 -0
  189. data/app/views/eventual/admin/plan_attenders/absent.json.jbuilder +0 -0
  190. data/app/views/eventual/admin/plan_attenders/attend.json.jbuilder +0 -0
  191. data/app/views/eventual/admin/plan_attenders/index.html.erb +51 -0
  192. data/app/views/eventual/admin/plan_attenders/index.json.jbuilder +2 -0
  193. data/app/views/eventual/admin/plan_attenders/indexs.json.jbuilder +6 -0
  194. data/app/views/eventual/admin/plan_items/_breadcrumb.html.erb +8 -0
  195. data/app/views/eventual/admin/plan_items/_edit.html.erb +23 -0
  196. data/app/views/eventual/admin/plan_items/_filter.html.erb +11 -0
  197. data/app/views/eventual/admin/plan_items/_menu.html.erb +4 -0
  198. data/app/views/eventual/admin/plan_items/_plan.html.erb +6 -0
  199. data/app/views/eventual/admin/plan_items/_plan_item.json.jbuilder +12 -0
  200. data/app/views/eventual/admin/plan_items/_plan_items.json.jbuilder +13 -0
  201. data/app/views/eventual/admin/plan_items/_show.json.jbuilder +1 -0
  202. data/app/views/eventual/admin/plan_items/_show_table.html.erb +20 -0
  203. data/app/views/eventual/admin/plan_items/index.html.erb +72 -0
  204. data/app/views/eventual/admin/plan_items/index.json.jbuilder +3 -0
  205. data/app/views/eventual/admin/plan_items/qrcode.js.erb +1 -0
  206. data/app/views/eventual/admin/plans/_edit_item.html.erb +24 -0
  207. data/app/views/eventual/admin/plans/_filter.html.erb +8 -0
  208. data/app/views/eventual/admin/plans/_index.html.erb +31 -0
  209. data/app/views/eventual/admin/plans/_plan.json.jbuilder +12 -0
  210. data/app/views/eventual/admin/plans/_select_table.html.erb +30 -0
  211. data/app/views/eventual/admin/plans/_show.json.jbuilder +1 -0
  212. data/app/views/eventual/admin/plans/_show_item.html.erb +22 -0
  213. data/app/views/eventual/admin/plans/_show_table.html.erb +20 -0
  214. data/app/views/eventual/admin/plans/_table.html.erb +34 -0
  215. data/app/views/eventual/admin/plans/calendar.js.erb +12 -0
  216. data/app/views/eventual/admin/plans/index.html.erb +3 -0
  217. data/app/views/eventual/admin/plans/index.js.erb +42 -0
  218. data/app/views/eventual/admin/plans/index.json.jbuilder +1 -0
  219. data/app/views/eventual/admin/plans/show.html.erb +3 -0
  220. data/app/views/eventual/admin/seats/_breadcrumb.html.erb +0 -0
  221. data/app/views/eventual/admin/seats/_edit_form.html.erb +4 -0
  222. data/app/views/eventual/admin/seats/_filter_form.html.erb +9 -0
  223. data/app/views/eventual/admin/seats/_form.html.erb +4 -0
  224. data/app/views/eventual/admin/seats/_index_tbody.html.erb +3 -0
  225. data/app/views/eventual/admin/seats/_index_thead.html.erb +4 -0
  226. data/app/views/eventual/admin/seats/_new_form.html.erb +4 -0
  227. data/app/views/eventual/admin/seats/_show_table.html.erb +12 -0
  228. data/app/views/eventual/admin/seats/index.html.erb +5 -0
  229. data/app/views/eventual/admin/time_items/_edit_form.html.erb +4 -0
  230. data/app/views/eventual/admin/time_items/_form.html.erb +3 -0
  231. data/app/views/eventual/admin/time_items/_new_form.html.erb +4 -0
  232. data/app/views/eventual/admin/time_items/_show.json.jbuilder +1 -0
  233. data/app/views/eventual/admin/time_items/_show_table.html.erb +12 -0
  234. data/app/views/eventual/admin/time_items/_time_item.json.jbuilder +3 -0
  235. data/app/views/eventual/admin/time_items/_time_items_options.html.erb +1 -0
  236. data/app/views/eventual/admin/time_items/default.json.jbuilder +1 -0
  237. data/app/views/eventual/admin/time_items/index.json.jbuilder +1 -0
  238. data/app/views/eventual/admin/time_items/select.js.erb +3 -0
  239. data/app/views/eventual/admin/time_lists/_edit_form.html.erb +4 -0
  240. data/app/views/eventual/admin/time_lists/_filter.html.erb +8 -0
  241. data/app/views/eventual/admin/time_lists/_form.html.erb +4 -0
  242. data/app/views/eventual/admin/time_lists/_index_tbody.html.erb +14 -0
  243. data/app/views/eventual/admin/time_lists/_index_thead.html.erb +8 -0
  244. data/app/views/eventual/admin/time_lists/_index_tr.html.erb +13 -0
  245. data/app/views/eventual/admin/time_lists/_new_form.html.erb +4 -0
  246. data/app/views/eventual/admin/time_lists/_show.json.jbuilder +1 -0
  247. data/app/views/eventual/admin/time_lists/_show_table.html.erb +8 -0
  248. data/app/views/eventual/admin/time_lists/_time_items.html.erb +27 -0
  249. data/app/views/eventual/admin/time_lists/_time_list.json.jbuilder +10 -0
  250. data/app/views/eventual/admin/time_lists/index.html.erb +5 -0
  251. data/app/views/eventual/admin/time_lists/index.json.jbuilder +1 -0
  252. data/app/views/eventual/me/plan_items/_plan_item.json.jbuilder +14 -0
  253. data/app/views/eventual/me/plan_items/index.json.jbuilder +3 -0
  254. data/app/views/eventual/my/plans/_show_table.html.erb +32 -0
  255. data/app/views/eventual/my/plans/_table.html.erb +34 -0
  256. data/app/views/eventual/my/plans/_time_plan.json.jbuilder +8 -0
  257. data/app/views/eventual/my/plans/calendar.js.erb +12 -0
  258. data/app/views/eventual/my/plans/edit.html.erb +9 -0
  259. data/app/views/eventual/my/plans/edit.js.erb +3 -0
  260. data/app/views/eventual/my/plans/index-ready.js +11 -0
  261. data/app/views/eventual/my/plans/index.html.erb +26 -0
  262. data/app/views/eventual/my/plans/index.js +35 -0
  263. data/app/views/eventual/my/plans/index.json.jbuilder +1 -0
  264. data/app/views/eventual/my/plans/new.html.erb +9 -0
  265. data/app/views/eventual/my/plans/show.html.erb +7 -0
  266. data/app/views/eventual/my/plans/show.js.erb +12 -0
  267. data/app/views/eventual/my/plans/show.json.jbuilder +1 -0
  268. data/app/views/eventual/places/_filter_table.html.erb +11 -0
  269. data/app/views/eventual/places/index.html.erb +35 -0
  270. data/app/views/eventual/places/show.html.erb +0 -0
  271. data/app/views/eventual/time/_finish_at.html.erb +1 -0
  272. data/app/views/eventual/time/_finish_at_once.html.erb +1 -0
  273. data/app/views/eventual/time/_form.html.erb +15 -0
  274. data/app/views/eventual/time/_monthly_checkboxes.html.erb +1 -0
  275. data/app/views/eventual/time/_once_date.html.erb +1 -0
  276. data/app/views/eventual/time/_start_at.html.erb +1 -0
  277. data/app/views/eventual/time/_start_at_once.html.erb +1 -0
  278. data/app/views/eventual/time/_weekly_checkboxes.html.erb +1 -0
  279. data/app/views/eventual/time/index.css +5 -0
  280. data/app/views/eventual/time/repeat_form.js.erb +14 -0
  281. data/app/views/eventual/time/show.css +3 -0
  282. data/config/locales/en.enum.yml +8 -0
  283. data/config/locales/zh.attributes.yml +50 -0
  284. data/config/locales/zh.controller.yml +59 -0
  285. data/config/locales/zh.enum.yml +12 -0
  286. data/config/routes.rb +98 -0
  287. data/lib/rails_event/config.rb +13 -0
  288. data/lib/rails_event/engine.rb +29 -0
  289. data/lib/rails_event/version.rb +5 -0
  290. data/lib/rails_event.rb +4 -0
  291. metadata +346 -0
@@ -0,0 +1,55 @@
1
+ module Eventual
2
+ class Admin::EventTaxonsController < Admin::BaseController
3
+ before_action :set_event_taxon, only: [:show, :edit, :update, :destroy]
4
+
5
+ def index
6
+ q_params = {}
7
+ q_params.merge! default_params
8
+
9
+ @event_taxons = EventTaxon.default_where(q_params).order(id: :asc).page(params[:page])
10
+ end
11
+
12
+ def new
13
+ @event_taxon = EventTaxon.new
14
+ end
15
+
16
+ def create
17
+ @event_taxon = EventTaxon.new(event_taxon_params)
18
+
19
+ unless @event_taxon.save
20
+ render :new, locals: { model: @event_taxon }, status: :unprocessable_entity
21
+ end
22
+ end
23
+
24
+ def show
25
+ end
26
+
27
+ def edit
28
+ end
29
+
30
+ def update
31
+ @event_taxon.assign_attributes(event_taxon_params)
32
+
33
+ unless @event_taxon.save
34
+ render :edit, locals: { model: @event_taxon }, status: :unprocessable_entity
35
+ end
36
+ end
37
+
38
+ def destroy
39
+ @event_taxon.destroy
40
+ end
41
+
42
+ private
43
+ def set_event_taxon
44
+ @event_taxon = EventTaxon.find(params[:id])
45
+ end
46
+
47
+ def event_taxon_params
48
+ p = params.fetch(:event_taxon, {}).permit(
49
+ :name
50
+ )
51
+ p.merge! default_form_params
52
+ end
53
+
54
+ end
55
+ end
@@ -0,0 +1,91 @@
1
+ module Eventual
2
+ class Admin::EventsController < Admin::BaseController
3
+ before_action :set_event, only: [:show, :edit, :meet, :update, :destroy]
4
+
5
+ def index
6
+ q_params = {}
7
+ q_params.merge! default_params
8
+ q_params.merge! params.permit(:type, :title, :event_taxon_id, 'id-desc', 'id-asc', 'title-asc')
9
+
10
+ @events = Event.default_where(q_params).order(id: :desc).page(params[:page])
11
+ @event_taxons = EventTaxon.default_where(default_params)
12
+ end
13
+
14
+ def plan
15
+ q_params = {}
16
+ q_params.merge! teacher_id: current_member.id if current_member
17
+ q_params.merge! params.permit(:type, :event_taxon_id, 'id-desc', 'id-asc', 'title-asc')
18
+ @events = Event.default_where(q_params).page(params[:page])
19
+
20
+ render 'index'
21
+ end
22
+
23
+ def new
24
+ @event = Event.new
25
+ @event_taxons = EventTaxon.default_where(default_params)
26
+ end
27
+
28
+ def create
29
+ @event = Event.new(event_params)
30
+
31
+ unless @event.save
32
+ render :new, locals: { model: @event }, status: :unprocessable_entity
33
+ end
34
+ end
35
+
36
+ def show
37
+ end
38
+
39
+ def edit
40
+ @event_taxons = EventTaxon.default_where(default_params)
41
+ end
42
+
43
+ def update
44
+ @event.assign_attributes(event_params)
45
+
46
+ unless @event.save
47
+ render :edit, locals: { model: @event }, status: :unprocessable_entity
48
+ end
49
+ end
50
+
51
+ def meet
52
+
53
+ end
54
+
55
+ def destroy
56
+ @event.destroy
57
+ end
58
+
59
+ private
60
+ def set_event
61
+ @event = Event.find(params[:id])
62
+ end
63
+
64
+ def event_params
65
+ p = params.fetch(:event, {}).permit(
66
+ :event_taxon_id,
67
+ :name,
68
+ :description,
69
+ :position,
70
+ :author_id,
71
+ :teacher_id,
72
+ :price,
73
+ :compulsory,
74
+ event_items_attributes: [
75
+ :id,
76
+ :name,
77
+ :_destroy,
78
+ {
79
+ videos: [],
80
+ documents: [],
81
+ videos_attachments_attributes: [:id, :_destroy],
82
+ documents_attachments_attributes: [:id, :_destroy]
83
+ }
84
+ ]
85
+ )
86
+ p.merge! default_form_params
87
+ p
88
+ end
89
+
90
+ end
91
+ end
@@ -0,0 +1,57 @@
1
+ module Eventual
2
+ class Admin::PlaceTaxonsController < Admin::BaseController
3
+ before_action :set_place_taxon, only: [:show, :edit, :update, :destroy]
4
+
5
+ def index
6
+ q_params = {}
7
+ q_params.merge! default_params
8
+
9
+ @place_taxons = PlaceTaxon.default_where(q_params).page(params[:page])
10
+ end
11
+
12
+ def new
13
+ @place_taxon = PlaceTaxon.new
14
+ end
15
+
16
+ def create
17
+ @place_taxon = PlaceTaxon.new(place_taxon_params)
18
+
19
+ unless @place_taxon.save
20
+ render :new, locals: { model: @place_taxon }, status: :unprocessable_entity
21
+ end
22
+ end
23
+
24
+ def show
25
+ end
26
+
27
+ def edit
28
+ end
29
+
30
+ def update
31
+ @place_taxon.assign_attributes(place_taxon_params)
32
+
33
+ unless @place_taxon.save
34
+ render :edit, locals: { model: @place_taxon }, status: :unprocessable_entity
35
+ end
36
+ end
37
+
38
+ def destroy
39
+ @place_taxon.destroy
40
+ end
41
+
42
+ private
43
+ def set_place_taxon
44
+ @place_taxon = PlaceTaxon.find(params[:id])
45
+ end
46
+
47
+ def place_taxon_params
48
+ p = params.fetch(:place_taxon, {}).permit(
49
+ :name,
50
+ :position,
51
+ :places_count
52
+ )
53
+ p.merge! default_form_params
54
+ end
55
+
56
+ end
57
+ end
@@ -0,0 +1,59 @@
1
+ module Eventual
2
+ class Admin::PlacesController < Admin::BaseController
3
+ before_action :set_place, only: [:show, :edit, :update, :destroy]
4
+
5
+ def index
6
+ q_params = {}
7
+ q_params.merge! default_params
8
+ q_params.merge! params.permit(:name, 'max_members-gte')
9
+ @places = Place.default_where(q_params).page(params[:page])
10
+ end
11
+
12
+ def new
13
+ @place = Place.new
14
+ @place.place_taxon = PlaceTaxon.new(default_params)
15
+ end
16
+
17
+ def create
18
+ @place = Place.new(place_params)
19
+
20
+ unless @place.save
21
+ render :new, locals: { model: @place }, status: :unprocessable_entity
22
+ end
23
+ end
24
+
25
+ def show
26
+ end
27
+
28
+ def edit
29
+ @place.place_taxon ||= PlaceTaxon.new(default_params)
30
+ end
31
+
32
+ def update
33
+ @place.assign_attributes(place_params)
34
+
35
+ unless @place.save
36
+ render :edit, locals: { model: @place }, status: :unprocessable_entity
37
+ end
38
+ end
39
+
40
+ def destroy
41
+ @place.destroy
42
+ end
43
+
44
+ private
45
+ def set_place
46
+ @place = Place.find(params[:id])
47
+ end
48
+
49
+ def place_params
50
+ p = params.fetch(:place, {}).permit(
51
+ :name,
52
+ :color,
53
+ :place_taxon_ancestors
54
+ )
55
+ p.merge! default_form_params
56
+ end
57
+
58
+ end
59
+ end
@@ -0,0 +1,65 @@
1
+ module Eventual
2
+ class Admin::PlanAttendersController < Admin::BaseController
3
+ before_action :set_plan_item
4
+ before_action :set_plan_attender, only: [:edit, :update, :attend, :absent]
5
+
6
+ def index
7
+ @plan_item.plan_participants.each(&:sync)
8
+ @plan_attenders = @plan_item.plan_attenders
9
+ end
10
+
11
+ def create
12
+ @plan_attender = @plan_item.plan_attenders.build(plan_participant_id: params[:plan_participant_id])
13
+ @plan_attender.attended = true
14
+
15
+ unless @plan_attender.save
16
+ render :new, locals: { model: @plan_attender }, status: :unprocessable_entity
17
+ end
18
+ end
19
+
20
+ def edit
21
+ end
22
+
23
+ def attend
24
+ @plan_attender.attended = true
25
+ @plan_attender.save
26
+ end
27
+
28
+ def absent
29
+ @plan_attender.attended = false
30
+ @plan_attender.save
31
+ end
32
+
33
+ def update
34
+ @plan_attender.assign_attributes(plan_attender_params)
35
+
36
+ unless @plan_attender.save
37
+ render :edit, locals: { model: @plan_attender }, status: :unprocessable_entity
38
+ end
39
+ end
40
+
41
+ def destroy
42
+ @plan_attender = @plan_item.plan_attenders.find_by(plan_participant_id: params[:plan_participant_id])
43
+ @plan_attender.destroy
44
+ end
45
+
46
+ private
47
+ def set_plan_item
48
+ @plan_item = PlanItem.find params[:plan_item_id]
49
+ end
50
+
51
+ def set_plan_attender
52
+ @plan_attender = @plan_item.plan_attenders.find(params[:id])
53
+ end
54
+
55
+ def plan_attender_params
56
+ params.fetch(:plan_attender, {}).permit(
57
+ :state,
58
+ :attender_type,
59
+ :attender_id,
60
+ :attended
61
+ )
62
+ end
63
+
64
+ end
65
+ end
@@ -0,0 +1,84 @@
1
+ module Eventual
2
+ class Admin::PlanItemsController < Admin::BaseController
3
+ before_action :set_plan_item, only: [:show, :edit, :update, :qrcode, :destroy]
4
+
5
+ def index
6
+ q_params = {}
7
+ filter_params = {
8
+ start_on: Date.today.beginning_of_week,
9
+ finish_on: Date.today.end_of_week
10
+ }.with_indifferent_access
11
+ filter_params.merge! params.permit(:start_on, :finish_on)
12
+ filter_params.merge! default_params
13
+
14
+ q_params.merge! params.permit(:planned_type, :planned_id, :place_id, 'plan_participants.event_participant_id')
15
+
16
+ @plans = Plan.xxx(**filter_params.symbolize_keys)
17
+ @plans.each { |plan| plan.produce(start_on: filter_params[:start_on], finish_on: filter_params[:finish_on]) }
18
+
19
+ @plan_items = PlanItem.to_events(**filter_params.symbolize_keys)
20
+
21
+ booking_params = {
22
+ booker_type: 'Maintain',
23
+ booker_id: params[:maintain_id],
24
+ 'booking_on-gte': filter_params[:start_on],
25
+ 'booking_on-lte': filter_params[:finish_on]
26
+ }
27
+
28
+ @booked_ids = Booking.default_where(booking_params).pluck(:plan_item_id)
29
+ end
30
+
31
+ def new
32
+ @plan_item = PlanItem.new
33
+ end
34
+
35
+ def create
36
+ @plan_item = PlanItem.new(plan_item_params)
37
+
38
+ unless @plan_item.save
39
+ render :new, locals: { model: @plan_item }, status: :unprocessable_entity
40
+ end
41
+ end
42
+
43
+ def show
44
+ end
45
+
46
+ def edit
47
+ @places = Place.default_where(default_params)
48
+ end
49
+
50
+ def update
51
+ @plan_item.assign_attributes(plan_item_params)
52
+
53
+ unless @plan_item.save
54
+ render :edit, locals: { model: @plan_item }, status: :unprocessable_entity
55
+ end
56
+ end
57
+
58
+ def qrcode
59
+ @plan_item.qrcode
60
+ end
61
+
62
+ def destroy
63
+ @plan_item.destroy
64
+ end
65
+
66
+ private
67
+ def set_plan_item
68
+ @plan_item = PlanItem.find(params[:id])
69
+ end
70
+
71
+ def plan_item_params
72
+ params.fetch(:plan_item, {}).permit(
73
+ :planned_type,
74
+ :planned_id,
75
+ :plan_on,
76
+ :time_item_id,
77
+ :event_item_id,
78
+ :place_id,
79
+ plan_participants_attributes: [:participant_type, :participant_id]
80
+ )
81
+ end
82
+
83
+ end
84
+ end
@@ -0,0 +1,127 @@
1
+ module Eventual
2
+ class Admin::PlansController < Admin::BaseController
3
+ before_action :set_time_lists
4
+ before_action :set_plan, only: [:show, :show_calendar, :edit, :update, :destroy]
5
+
6
+ def index
7
+ q_params = {}
8
+ q_params.merge! params.permit('end_on-gte', 'begin_on-lte', :planned_type, :planned_id, :place_id, 'plan_participants.event_participant_id')
9
+ q_params.merge! default_params
10
+
11
+ @plans = Plan.default_where(q_params)
12
+ @plan_items = PlanItem.default_where(q_params)
13
+ end
14
+
15
+ def calendar
16
+ @time_list = TimeList.find params[:time_list_id]
17
+ set_settings
18
+ @events = @time_list.events(@settings[:defaultDate], @settings[:dayCount])
19
+ end
20
+
21
+ def new
22
+ @plan = Plan.new
23
+ end
24
+
25
+ def create
26
+ @plan = Plan.new
27
+ @plan.time_list ||= @time_lists.default
28
+ @plan.assign_attributes plan_params
29
+
30
+ unless @plan.save
31
+ render :new, locals: { model: @plan }, status: :unprocessable_entity
32
+ end
33
+ end
34
+
35
+ def show
36
+ end
37
+
38
+ def show_calendar
39
+ @time_list = TimeList.find params[:time_list_id]
40
+ set_settings
41
+ @events = @time_list.events(@settings[:defaultDate], @settings[:dayCount])
42
+
43
+ render :calendar
44
+ end
45
+
46
+ def edit
47
+ end
48
+
49
+ def update
50
+ @plan.assign_attributes plan_params
51
+
52
+ unless @plan.save
53
+ render :edit, locals: { model: @plan }, status: :unprocessable_entity
54
+ end
55
+ end
56
+
57
+ def xx
58
+ dt = params[:index].to_s
59
+ if dt
60
+ @plan.toggle(dt, params[:time_item_id].to_i)
61
+ end
62
+ end
63
+
64
+ def destroy
65
+ @plan.destroy
66
+ end
67
+
68
+ private
69
+ def set_plan
70
+ @plan = Plan.find(params[:id])
71
+ end
72
+
73
+ def set_time_lists
74
+ q_params = {}
75
+ q_params.merge! default_params
76
+ @places = Place.default_where(q_params)
77
+ @time_lists = TimeList.default_where(q_params)
78
+ @time_list = @time_lists.default
79
+ end
80
+
81
+ def set_settings
82
+ @time_list ||= @plan.time_list
83
+ if @time_list
84
+ @settings = {
85
+ minTime: @time_list.min_time,
86
+ maxTime: @time_list.max_time,
87
+ slotDuration: @time_list.slot_duration,
88
+ slotLabelInterval: @time_list.slot_label_interval
89
+ }
90
+ else
91
+ @settings = {
92
+ defaultDate: '2000-01-01',
93
+ dayCount: 7,
94
+ minTime: '07:30:00',
95
+ maxTime: '18:30:00',
96
+ slotDuration: '00:10',
97
+ slotLabelInterval: '1:00'
98
+ }
99
+ end
100
+ if @plan
101
+ @settings.merge!(
102
+ defaultDate: @plan.default_date.to_s(:date)
103
+ )
104
+ @settings.merge! repeat_settings
105
+ end
106
+ end
107
+
108
+ def plan_params
109
+ p = params.fetch(:plan, {}).permit(
110
+ :planned_type,
111
+ :planned_id,
112
+ :time_list_id,
113
+ :place_id,
114
+ :begin_on,
115
+ :end_on,
116
+ :repeat_type,
117
+ repeat_days: {},
118
+ plan_participants_attributes: [:participant_type, :participant_id, :event_participant_id]
119
+ )
120
+ unless p[:planned_type] || p[:planned_id]
121
+ p.merge! params.permit(:planned_type, :planned_id)
122
+ end
123
+ p
124
+ end
125
+
126
+ end
127
+ end