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,58 @@
1
+ module Eventual
2
+ class Admin::SeatsController < Admin::BaseController
3
+ before_action :set_place
4
+ before_action :set_seat, only: [:show, :edit, :update, :destroy]
5
+
6
+ def index
7
+ @seats = @place.seats.page(params[:page])
8
+ end
9
+
10
+ def new
11
+ @seat = @place.seats.build
12
+ end
13
+
14
+ def create
15
+ @seat = @place.seats.build(seat_params)
16
+
17
+ unless @seat.save
18
+ render :new, locals: { model: @seat }, status: :unprocessable_entity
19
+ end
20
+ end
21
+
22
+ def show
23
+ end
24
+
25
+ def edit
26
+ end
27
+
28
+ def update
29
+ @seat.assign_attributes(seat_params)
30
+
31
+ unless @seat.save
32
+ render :edit, locals: { model: @seat }, status: :unprocessable_entity
33
+ end
34
+ end
35
+
36
+ def destroy
37
+ @seat.destroy
38
+ end
39
+
40
+ private
41
+ def set_place
42
+ @place = Place.find params[:place_id]
43
+ end
44
+
45
+ def set_seat
46
+ @seat = Seat.find(params[:id])
47
+ end
48
+
49
+ def seat_params
50
+ params.fetch(:seat, {}).permit(
51
+ :name,
52
+ :max_members,
53
+ :min_members
54
+ )
55
+ end
56
+
57
+ end
58
+ end
@@ -0,0 +1,82 @@
1
+ module Eventual
2
+ class Admin::TimeItemsController < Admin::BaseController
3
+ before_action :set_time_list, except: [:default]
4
+ before_action :set_time_item, only: [:show, :edit, :update, :destroy]
5
+
6
+ def index
7
+ @time_items = @time_list.time_items.page(params[:page])
8
+ end
9
+
10
+ def default
11
+ q_params = {}
12
+ q_params.merge! default_params
13
+ time_list = TimeList.default_where(q_params).default
14
+ if time_list
15
+ @time_items = time_list.time_items
16
+ else
17
+ @time_items = TimeItem.none
18
+ end
19
+ end
20
+
21
+ def select
22
+ @time_items = @time_list.time_items
23
+
24
+ if @time_items
25
+ @results = @time_items.map { |x| { value: x.id, text: x.name, name: x.name } }
26
+ end
27
+
28
+ respond_to do |format|
29
+ format.js
30
+ format.json { render json: { values: @results } }
31
+ end
32
+ end
33
+
34
+ def new
35
+ @time_item = @time_list.time_items.build
36
+ end
37
+
38
+ def create
39
+ @time_item = @time_list.time_items.build(time_item_params)
40
+
41
+ unless @time_item.save
42
+ render :new, locals: { model: @time_item }, status: :unprocessable_entity
43
+ end
44
+ end
45
+
46
+ def show
47
+ end
48
+
49
+ def edit
50
+ end
51
+
52
+ def update
53
+ @time_item.assign_attributes(time_item_params)
54
+
55
+ unless @time_item.save
56
+ render :edit, locals: { model: @time_item }, status: :unprocessable_entity
57
+ end
58
+ end
59
+
60
+ def destroy
61
+ @time_item.destroy
62
+ end
63
+
64
+ private
65
+ def set_time_list
66
+ @time_list = TimeList.find params[:time_list_id]
67
+ end
68
+
69
+ def set_time_item
70
+ @time_item = TimeItem.find(params[:id])
71
+ end
72
+
73
+ def time_item_params
74
+ params.fetch(:time_item, {}).permit(
75
+ :start_at,
76
+ :finish_at,
77
+ :position
78
+ )
79
+ end
80
+
81
+ end
82
+ end
@@ -0,0 +1,72 @@
1
+ module Eventual
2
+ class Admin::TimeListsController < Admin::BaseController
3
+ before_action :set_time_list, only: [:show, :edit, :update, :destroy]
4
+
5
+ def index
6
+ q_params = {}
7
+ q_params.merge! default_params
8
+ unless TimeList.default_where(q_params).exists?
9
+ p_params = {
10
+ default: true
11
+ }
12
+ p_params.merge! default_form_params
13
+ TimeList.create(p_params)
14
+ end
15
+
16
+ @time_lists = TimeList.default_where(q_params).order(id: :asc).page(params[:page])
17
+ end
18
+
19
+ def new
20
+ @time_list = TimeList.new
21
+ end
22
+
23
+ def create
24
+ @time_list = TimeList.new(time_list_params)
25
+
26
+ unless @time_list.save
27
+ render :new, locals: { model: @time_list }, status: :unprocessable_entity
28
+ end
29
+ end
30
+
31
+ def show
32
+ end
33
+
34
+ def edit
35
+ end
36
+
37
+ def update
38
+ @time_list.assign_attributes(time_list_params)
39
+
40
+ unless @time_list.save
41
+ render :edit, locals: { model: @time_list }, status: :unprocessable_entity
42
+ end
43
+ end
44
+
45
+ def destroy
46
+ @time_list.destroy
47
+ end
48
+
49
+ private
50
+ def set_time_list
51
+ @time_list = TimeList.find(params[:id])
52
+ end
53
+
54
+ def time_list_params
55
+ p = params.fetch(:time_list, {}).permit(
56
+ :name,
57
+ :code,
58
+ :interval_minutes,
59
+ :item_minutes,
60
+ :default,
61
+ time_items_attributes: [
62
+ :id,
63
+ :start_at,
64
+ :finish_at,
65
+ :_destroy
66
+ ]
67
+ )
68
+ p.merge! default_form_params
69
+ end
70
+
71
+ end
72
+ end
@@ -0,0 +1,4 @@
1
+ module Eventual
2
+ class BaseController < BaseController
3
+ end
4
+ end
@@ -0,0 +1,4 @@
1
+ module Eventual
2
+ class Me::BaseController < MeController
3
+ end
4
+ end
@@ -0,0 +1,58 @@
1
+ module Eventual
2
+ class Me::PlanItemsController < Me::BaseController
3
+ before_action :set_plan_item, only: [:show, :edit, :update, :destroy]
4
+
5
+ def index
6
+ q_params = {
7
+ 'plan_on-gte': Date.today,
8
+ 'plan_participants.participant_id': current_member.id
9
+ }
10
+ q_params.merge! 'plan_on-gte': params[:start_date] if params[:start_date]
11
+ q_params.merge! 'plan_on-lte': params[:end_date] if params[:end_date]
12
+ q_params.merge! params.permit(:place_id)
13
+
14
+ @plan_items = PlanItem.includes(:place, :time_item).default_where(q_params).order(plan_on: :asc).page(params[:page]).per(params[:per])
15
+ end
16
+
17
+ def plan
18
+ set_time_lists
19
+ q_params = {}
20
+ q_params.merge! params.permit(:place_id)
21
+ @time_plans = @event_crowd.time_plans.default_where(q_params)
22
+
23
+ @plan = @event_crowd.time_plans.find_or_initialize_by(q_params.slice(:place_id))
24
+ @plan.time_list ||= TimeList.default
25
+ end
26
+
27
+ def show
28
+ end
29
+
30
+ def edit
31
+ end
32
+
33
+ def update
34
+ @plan_item.assign_attributes(plan_item_params)
35
+
36
+ unless @plan_item.save
37
+ render :edit, locals: { model: @plan_item }, status: :unprocessable_entity
38
+ end
39
+ end
40
+
41
+ def destroy
42
+ @plan_item.destroy
43
+ end
44
+
45
+ private
46
+ def set_plan_item
47
+ @plan_item = PlanItem.find(params[:id])
48
+ end
49
+
50
+ def plan_item_params
51
+ params.fetch(:plan_item, {}).permit(
52
+ :event_item_id,
53
+ :place_id
54
+ )
55
+ end
56
+
57
+ end
58
+ end
@@ -0,0 +1,4 @@
1
+ module Eventual
2
+ class My::BaseController < MyController
3
+ end
4
+ end
@@ -0,0 +1,55 @@
1
+ module Eventual
2
+ class My::PlanItemsController < My::BaseController
3
+ before_action :set_time_lists
4
+ before_action :set_time_plan, only: [:show]
5
+
6
+ def index
7
+ q_params = {}
8
+ q_params.merge! params.permit(:place_id)
9
+
10
+ @time_plans = TimePlan.default_where(q_params)
11
+ @events = @time_plans.map do |plan|
12
+ plan
13
+ end.flatten
14
+ end
15
+
16
+ def calendar
17
+ @time_list = TimeList.find params[:time_list_id]
18
+ @events = @time_list.events(@settings[:defaultDate], @settings[:dayCount])
19
+ end
20
+
21
+ def show
22
+ q_params = {}
23
+ q_params.merge! params.permit(:plan_type, :plan_id)
24
+ @time_plans = TimePlan.default_where(q_params)
25
+
26
+ respond_to do |format|
27
+ format.html { render :index }
28
+ format.js { render :index }
29
+ end
30
+ end
31
+
32
+ private
33
+ def set_time_plan
34
+ @plan = TimePlan.find(params[:id])
35
+ end
36
+
37
+ def set_time_lists
38
+ #return super if super
39
+ @places = Place.none
40
+ @time_lists = TimeList.none
41
+ end
42
+
43
+ def set_settings
44
+ @settings = {
45
+ defaultDate: Date.today.to_s,
46
+ dayCount: 7,
47
+ minTime: '07:30:00',
48
+ maxTime: '18:30:00',
49
+ slotDuration: '00:10',
50
+ slotLabelInterval: '1:00'
51
+ }
52
+ end
53
+
54
+ end
55
+ end
@@ -0,0 +1,27 @@
1
+ module Eventual
2
+ class PlacesController < BaseController
3
+ before_action :set_place, only: [:show]
4
+
5
+ def index
6
+ q_params = {}
7
+ q_params.merge! default_params
8
+ q_params.merge! params.permit(:place_taxon_id)
9
+
10
+ @place_taxons = PlaceTaxon.default_where(default_params)
11
+ @places = Place.default_where(q_params).page(params[:page])
12
+ end
13
+
14
+ def show
15
+ end
16
+
17
+ private
18
+ def set_place
19
+ @place = Place.find(params[:id])
20
+ end
21
+
22
+ def place_params
23
+ params.fetch(:place, {})
24
+ end
25
+
26
+ end
27
+ end
@@ -0,0 +1,14 @@
1
+ module Eventual
2
+ class TimeController < BaseController
3
+ skip_before_action :verify_authenticity_token, only: [:repeat_form]
4
+
5
+ def repeat_form
6
+ @booking = params[:booking_type].classify.constantize.new
7
+ @booking.repeat_type = params[:repeat_type]
8
+ if @booking.repeat_type_changed?
9
+ @booking.repeat_days = []
10
+ end
11
+ end
12
+
13
+ end
14
+ end
@@ -0,0 +1,5 @@
1
+ module Eventual
2
+ class ApplicationRecord < ApplicationRecord
3
+ self.abstract_class = true
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module Eventual
2
+ class Booking < ApplicationRecord
3
+ include Model::Booking
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module Eventual
2
+ class Crowd < ApplicationRecord
3
+ include Model::Crowd
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module Eventual
2
+ class CrowdMember < ApplicationRecord
3
+ include Model::CrowdMember
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ module Eventual
2
+ class Event < ApplicationRecord
3
+ include Model::Event
4
+ include Model::Planned
5
+ end
6
+ end
@@ -0,0 +1,5 @@
1
+ module Eventual
2
+ class EventCrowd < ApplicationRecord
3
+ include Model::EventCrowd
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module Eventual
2
+ class EventGrant < ApplicationRecord
3
+ include Model::EventGrant
4
+ end
5
+ end