lesli_calendar 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +5 -0
  3. data/app/assets/config/lesli_calendar_manifest.js +40 -0
  4. data/app/assets/images/lesli_calendar/calendar-logo.svg +101 -0
  5. data/app/assets/javascripts/lesli_calendar/application.js +4658 -0
  6. data/app/assets/stylesheets/lesli_calendar/application.css +604 -0
  7. data/app/controllers/lesli_calendar/application_controller.rb +4 -0
  8. data/app/controllers/lesli_calendar/calendars_controller.rb +71 -0
  9. data/app/controllers/lesli_calendar/dashboards_controller.rb +60 -0
  10. data/app/controllers/lesli_calendar/events_controller.rb +60 -0
  11. data/app/helpers/lesli_calendar/application_helper.rb +4 -0
  12. data/app/helpers/lesli_calendar/calendars_helper.rb +4 -0
  13. data/app/helpers/lesli_calendar/dashboards_helper.rb +4 -0
  14. data/app/helpers/lesli_calendar/events_helper.rb +4 -0
  15. data/app/jobs/lesli_calendar/application_job.rb +4 -0
  16. data/app/mailers/lesli_calendar/application_mailer.rb +6 -0
  17. data/app/models/lesli_calendar/account.rb +45 -0
  18. data/app/models/lesli_calendar/application_record.rb +5 -0
  19. data/app/models/lesli_calendar/calendar.rb +5 -0
  20. data/app/models/lesli_calendar/dashboard.rb +4 -0
  21. data/app/models/lesli_calendar/event.rb +4 -0
  22. data/app/services/lesli_calendar/calendar_service.rb +56 -0
  23. data/app/views/lesli_calendar/calendars/_calendar.html.erb +2 -0
  24. data/app/views/lesli_calendar/calendars/_form.html.erb +17 -0
  25. data/app/views/lesli_calendar/calendars/edit.html.erb +10 -0
  26. data/app/views/lesli_calendar/calendars/index.html.erb +14 -0
  27. data/app/views/lesli_calendar/calendars/new.html.erb +9 -0
  28. data/app/views/lesli_calendar/calendars/show.html.erb +1 -0
  29. data/app/views/lesli_calendar/dashboards/_dashboard.html.erb +2 -0
  30. data/app/views/lesli_calendar/dashboards/_form.html.erb +17 -0
  31. data/app/views/lesli_calendar/dashboards/edit.html.erb +10 -0
  32. data/app/views/lesli_calendar/dashboards/index.html.erb +14 -0
  33. data/app/views/lesli_calendar/dashboards/new.html.erb +9 -0
  34. data/app/views/lesli_calendar/dashboards/show.html.erb +1 -0
  35. data/app/views/lesli_calendar/events/_event.html.erb +2 -0
  36. data/app/views/lesli_calendar/events/_form.html.erb +17 -0
  37. data/app/views/lesli_calendar/events/edit.html.erb +10 -0
  38. data/app/views/lesli_calendar/events/index.html.erb +1 -0
  39. data/app/views/lesli_calendar/events/new.html.erb +9 -0
  40. data/app/views/lesli_calendar/events/show.html.erb +10 -0
  41. data/app/views/lesli_calendar/partials/_engine-navigation.html.erb +37 -0
  42. data/config/locales/translations.en.yml +21 -0
  43. data/config/locales/translations.es.yml +21 -0
  44. data/config/locales/translations.fr.yml +21 -0
  45. data/config/locales/translations.it.yml +21 -0
  46. data/config/locales/translations.pt.yml +21 -0
  47. data/config/routes.rb +41 -0
  48. data/db/migrate/v1.0/0301000110_create_lesli_calendar_accounts.rb +40 -0
  49. data/db/migrate/v1.0/0301100110_create_lesli_calendar_calendars.rb +46 -0
  50. data/db/migrate/v1.0/0301110110_create_lesli_calendar_events.rb +57 -0
  51. data/db/seed/development.rb +17 -0
  52. data/db/seed/production.rb +17 -0
  53. data/db/seed/test.rb +17 -0
  54. data/db/seeds.rb +28 -0
  55. data/db/tables/0301010210_create_lesli_driver_catalog_event_types.rb +14 -0
  56. data/db/tables/0301110310_create_lesli_driver_event_actions.rb +16 -0
  57. data/db/tables/0301110410_create_lesli_driver_event_activities.rb +15 -0
  58. data/db/tables/0301110510_create_lesli_driver_event_discussions.rb +17 -0
  59. data/db/tables/0301110610_create_lesli_driver_event_files.rb +16 -0
  60. data/db/tables/0301110710_create_lesli_driver_event_subscribers.rb +16 -0
  61. data/db/tables/0301111010_create_lesli_driver_event_attendants.rb +13 -0
  62. data/lib/lesli_calendar/engine.rb +50 -0
  63. data/lib/lesli_calendar/version.rb +4 -0
  64. data/lib/lesli_calendar.rb +6 -0
  65. data/lib/scss/application.scss +34 -0
  66. data/lib/scss/calendar.scss +181 -0
  67. data/lib/tasks/lesli_calendar_tasks.rake +4 -0
  68. data/lib/vue/application.js +59 -0
  69. data/lib/vue/apps/calendars/show.vue +87 -0
  70. data/lib/vue/apps/events/index.vue +48 -0
  71. data/lib/vue/components/agenda.vue +137 -0
  72. data/lib/vue/components/calendar.vue +137 -0
  73. data/lib/vue/components/event.vue +47 -0
  74. data/lib/vue/components/form.vue +143 -0
  75. data/lib/vue/components/guests.vue +148 -0
  76. data/lib/vue/stores/calendar.js +215 -0
  77. data/lib/vue/stores/events.js +53 -0
  78. data/lib/vue/stores/guests.js +213 -0
  79. data/lib/vue/stores/translations.json +152 -0
  80. data/license +674 -0
  81. data/readme.md +71 -0
  82. metadata +154 -0
@@ -0,0 +1,604 @@
1
+ /*!************************************************************************************************************************************************************!*\
2
+ !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-23.use[1]!./node_modules/sass-loader/dist/cjs.js!../LesliCalendar/lib/scss/application.scss ***!
3
+ \************************************************************************************************************************************************************/
4
+ @charset "UTF-8";
5
+ /*
6
+ Lesli
7
+
8
+ Copyright (c) 2023, Lesli Technologies, S. A.
9
+
10
+ This program is free software: you can redistribute it and/or modify
11
+ it under the terms of the GNU General Public License as published by
12
+ the Free Software Foundation, either version 3 of the License, or
13
+ (at your option) any later version.
14
+
15
+ This program is distributed in the hope that it will be useful,
16
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
17
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
+ GNU General Public License for more details.
19
+
20
+ You should have received a copy of the GNU General Public License
21
+ along with this program. If not, see http://www.gnu.org/licenses/.
22
+
23
+ Lesli · Ruby on Rails SaaS Development Framework.
24
+
25
+ Made with ♥ by https://www.lesli.tech
26
+ Building a better future, one line of code at a time.
27
+
28
+ @contact hello@lesli.tech
29
+ @website https://www.lesli.tech
30
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
31
+
32
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
33
+ // ·
34
+ */
35
+ body.lesli-calendar {
36
+ /*
37
+
38
+ Lesli
39
+
40
+ Copyright (c) 2023, Lesli Technologies, S. A.
41
+
42
+ This program is free software: you can redistribute it and/or modify
43
+ it under the terms of the GNU General Public License as published by
44
+ the Free Software Foundation, either version 3 of the License, or
45
+ (at your option) any later version.
46
+
47
+ This program is distributed in the hope that it will be useful,
48
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
49
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
50
+ GNU General Public License for more details.
51
+
52
+ You should have received a copy of the GNU General Public License
53
+ along with this program. If not, see http://www.gnu.org/licenses/.
54
+
55
+ Lesli · Ruby on Rails SaaS Development Framework.
56
+
57
+ Made with ♥ by https://www.lesli.tech
58
+ Building a better future, one line of code at a time.
59
+
60
+ @contact hello@lesli.tech
61
+ @website https://www.lesli.tech
62
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
63
+
64
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
65
+ // ·
66
+ */
67
+ /*
68
+
69
+ Lesli
70
+
71
+ Copyright (c) 2023, Lesli Technologies, S. A.
72
+
73
+ This program is free software: you can redistribute it and/or modify
74
+ it under the terms of the GNU General Public License as published by
75
+ the Free Software Foundation, either version 3 of the License, or
76
+ (at your option) any later version.
77
+
78
+ This program is distributed in the hope that it will be useful,
79
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
80
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
81
+ GNU General Public License for more details.
82
+
83
+ You should have received a copy of the GNU General Public License
84
+ along with this program. If not, see http://www.gnu.org/licenses/.
85
+
86
+ Lesli · Ruby on Rails SaaS Development Framework.
87
+
88
+ Made with ♥ by https://www.lesli.tech
89
+ Building a better future, one line of code at a time.
90
+
91
+ @contact hello@lesli.tech
92
+ @website https://www.lesli.tech
93
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
94
+
95
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
96
+ // ·
97
+ */
98
+ /*
99
+ Lesli
100
+
101
+ Copyright (c) 2022, Lesli Technologies, S. A.
102
+
103
+ This program is free software: you can redistribute it and/or modify
104
+ it under the terms of the GNU General Public License as published by
105
+ the Free Software Foundation, either version 3 of the License, or
106
+ (at your option) any later version.
107
+
108
+ This program is distributed in the hope that it will be useful,
109
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
110
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
111
+ GNU General Public License for more details.
112
+
113
+ You should have received a copy of the GNU General Public License
114
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
115
+
116
+ LesliCSS - SCSS Utilities for websites, apps and web applications
117
+
118
+ Powered by https://www.lesli.tech
119
+ Building a better future, one line of code at a time.
120
+
121
+ @contact <hello@lesli.tech>
122
+ @website <https://lesli.tech>
123
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
124
+
125
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
126
+ // ·
127
+ */
128
+ /*
129
+ Lesli
130
+
131
+ Copyright (c) 2022, Lesli Technologies, S. A.
132
+
133
+ This program is free software: you can redistribute it and/or modify
134
+ it under the terms of the GNU General Public License as published by
135
+ the Free Software Foundation, either version 3 of the License, or
136
+ (at your option) any later version.
137
+
138
+ This program is distributed in the hope that it will be useful,
139
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
140
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
141
+ GNU General Public License for more details.
142
+
143
+ You should have received a copy of the GNU General Public License
144
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
145
+
146
+ LesliCSS - SCSS Utilities for websites, apps and web applications
147
+
148
+ Powered by https://www.lesli.tech
149
+ Building a better future, one line of code at a time.
150
+
151
+ @contact <hello@lesli.tech>
152
+ @website <https://lesli.tech>
153
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
154
+
155
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
156
+ // ·
157
+ */
158
+ /*
159
+ Lesli
160
+
161
+ Copyright (c) 2020, Lesli Technologies, S. A.
162
+
163
+ This program is free software: you can redistribute it and/or modify
164
+ it under the terms of the GNU General Public License as published by
165
+ the Free Software Foundation, either version 3 of the License, or
166
+ (at your option) any later version.
167
+
168
+ This program is distributed in the hope that it will be useful,
169
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
170
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
171
+ GNU General Public License for more details.
172
+
173
+ You should have received a copy of the GNU General Public License
174
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
175
+
176
+ LesliCSS - SCSS Utilities for websites, apps and web applications
177
+
178
+ Powered by https://www.lesli.tech
179
+ Building a better future, one line of code at a time.
180
+
181
+ @contact <hello@lesli.tech>
182
+ @website <https://lesli.tech>
183
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
184
+
185
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
186
+ // ·
187
+ */
188
+ /**
189
+ Lesli
190
+
191
+ Copyright (c) 2022, Lesli Technologies, S. A.
192
+
193
+ This program is free software: you can redistribute it and/or modify
194
+ it under the terms of the GNU General Public License as published by
195
+ the Free Software Foundation, either version 3 of the License, or
196
+ (at your option) any later version.
197
+
198
+ This program is distributed in the hope that it will be useful,
199
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
200
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
201
+ GNU General Public License for more details.
202
+
203
+ You should have received a copy of the GNU General Public License
204
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
205
+
206
+ LesliCSS - SCSS Utilities for websites, apps and web applications
207
+
208
+ Powered by https://www.lesli.tech
209
+ Building a better future, one line of code at a time.
210
+
211
+ @contact <hello@lesli.tech>
212
+ @website <https://lesli.tech>
213
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
214
+
215
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
216
+ // ·
217
+ */
218
+ /**
219
+ Lesli
220
+
221
+ Copyright (c) 2022, Lesli Technologies, S. A.
222
+
223
+ This program is free software: you can redistribute it and/or modify
224
+ it under the terms of the GNU General Public License as published by
225
+ the Free Software Foundation, either version 3 of the License, or
226
+ (at your option) any later version.
227
+
228
+ This program is distributed in the hope that it will be useful,
229
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
230
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
231
+ GNU General Public License for more details.
232
+
233
+ You should have received a copy of the GNU General Public License
234
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
235
+
236
+ LesliCSS - SCSS Utilities for websites, apps and web applications
237
+
238
+ Powered by https://www.lesli.tech
239
+ Building a better future, one line of code at a time.
240
+
241
+ @contact <hello@lesli.tech>
242
+ @website <https://lesli.tech>
243
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
244
+
245
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
246
+ // ·
247
+ */
248
+ /*
249
+ Lesli
250
+
251
+ Copyright (c) 2022, Lesli Technologies, S. A.
252
+
253
+ This program is free software: you can redistribute it and/or modify
254
+ it under the terms of the GNU General Public License as published by
255
+ the Free Software Foundation, either version 3 of the License, or
256
+ (at your option) any later version.
257
+
258
+ This program is distributed in the hope that it will be useful,
259
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
260
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
261
+ GNU General Public License for more details.
262
+
263
+ You should have received a copy of the GNU General Public License
264
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
265
+
266
+ LesliCSS - SCSS Utilities for websites, apps and web applications
267
+
268
+ Powered by https://www.lesli.tech
269
+ Building a better future, one line of code at a time.
270
+
271
+ @contact <hello@lesli.tech>
272
+ @website <https://lesli.tech>
273
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
274
+
275
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
276
+ // ·
277
+ */
278
+ /*
279
+ Lesli
280
+
281
+ Copyright (c) 2022, Lesli Technologies, S. A.
282
+
283
+ This program is free software: you can redistribute it and/or modify
284
+ it under the terms of the GNU General Public License as published by
285
+ the Free Software Foundation, either version 3 of the License, or
286
+ (at your option) any later version.
287
+
288
+ This program is distributed in the hope that it will be useful,
289
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
290
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
291
+ GNU General Public License for more details.
292
+
293
+ You should have received a copy of the GNU General Public License
294
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
295
+
296
+ LesliCSS - SCSS Utilities for websites, apps and web applications
297
+
298
+ Powered by https://www.lesli.tech
299
+ Building a better future, one line of code at a time.
300
+
301
+ @contact <hello@lesli.tech>
302
+ @website <https://lesli.tech>
303
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
304
+
305
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
306
+ // ·
307
+ */
308
+ /*
309
+ Lesli
310
+
311
+ Copyright (c) 2020, Lesli Technologies, S. A.
312
+
313
+ This program is free software: you can redistribute it and/or modify
314
+ it under the terms of the GNU General Public License as published by
315
+ the Free Software Foundation, either version 3 of the License, or
316
+ (at your option) any later version.
317
+
318
+ This program is distributed in the hope that it will be useful,
319
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
320
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
321
+ GNU General Public License for more details.
322
+
323
+ You should have received a copy of the GNU General Public License
324
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
325
+
326
+ LesliCSS - SCSS Utilities for websites, apps and web applications
327
+
328
+ Powered by https://www.lesli.tech
329
+ Building a better future, one line of code at a time.
330
+
331
+ @contact <hello@lesli.tech>
332
+ @website <https://lesli.tech>
333
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
334
+
335
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
336
+ // ·
337
+ */
338
+ /*
339
+ Lesli
340
+
341
+ Copyright (c) 2022, Lesli Technologies, S. A.
342
+
343
+ This program is free software: you can redistribute it and/or modify
344
+ it under the terms of the GNU General Public License as published by
345
+ the Free Software Foundation, either version 3 of the License, or
346
+ (at your option) any later version.
347
+
348
+ This program is distributed in the hope that it will be useful,
349
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
350
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
351
+ GNU General Public License for more details.
352
+
353
+ You should have received a copy of the GNU General Public License
354
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
355
+
356
+ LesliCSS - SCSS Utilities for websites, apps and web applications
357
+
358
+ Powered by https://www.lesli.tech
359
+ Building a better future, one line of code at a time.
360
+
361
+ @contact <hello@lesli.tech>
362
+ @website <https://lesli.tech>
363
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
364
+
365
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
366
+ // ·
367
+ */
368
+ /*
369
+ Lesli
370
+
371
+ Copyright (c) 2020, Lesli Technologies, S. A.
372
+
373
+ This program is free software: you can redistribute it and/or modify
374
+ it under the terms of the GNU General Public License as published by
375
+ the Free Software Foundation, either version 3 of the License, or
376
+ (at your option) any later version.
377
+
378
+ This program is distributed in the hope that it will be useful,
379
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
380
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
381
+ GNU General Public License for more details.
382
+
383
+ You should have received a copy of the GNU General Public License
384
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
385
+
386
+ LesliCSS - SCSS Utilities for websites, apps and web applications
387
+
388
+ Powered by https://www.lesli.tech
389
+ Building a better future, one line of code at a time.
390
+
391
+ @contact <hello@lesli.tech>
392
+ @website <https://lesli.tech>
393
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
394
+
395
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
396
+ // ·
397
+ */
398
+ /**
399
+ Lesli
400
+
401
+ Copyright (c) 2020, Lesli Technologies, S. A.
402
+
403
+ This program is free software: you can redistribute it and/or modify
404
+ it under the terms of the GNU General Public License as published by
405
+ the Free Software Foundation, either version 3 of the License, or
406
+ (at your option) any later version.
407
+
408
+ This program is distributed in the hope that it will be useful,
409
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
410
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
411
+ GNU General Public License for more details.
412
+
413
+ You should have received a copy of the GNU General Public License
414
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
415
+
416
+ LesliCSS - SCSS Utilities for websites, apps and web applications
417
+
418
+ Powered by https://www.lesli.tech
419
+ Building a better future, one line of code at a time.
420
+
421
+ @contact <hello@lesli.tech>
422
+ @website <https://lesli.tech>
423
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
424
+
425
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
426
+ // ·
427
+ */
428
+ /*
429
+ Lesli
430
+
431
+ Copyright (c) 2023, Lesli Technologies, S. A.
432
+
433
+ This program is free software: you can redistribute it and/or modify
434
+ it under the terms of the GNU General Public License as published by
435
+ the Free Software Foundation, either version 3 of the License, or
436
+ (at your option) any later version.
437
+
438
+ This program is distributed in the hope that it will be useful,
439
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
440
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
441
+ GNU General Public License for more details.
442
+
443
+ You should have received a copy of the GNU General Public License
444
+ along with this program. If not, see http://www.gnu.org/licenses/.
445
+
446
+ Lesli · Ruby on Rails SaaS Development Framework.
447
+
448
+ Made with ♥ by https://www.lesli.tech
449
+ Building a better future, one line of code at a time.
450
+
451
+ @contact hello@lesli.tech
452
+ @website https://www.lesli.tech
453
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
454
+
455
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
456
+ // ·
457
+ */
458
+ }
459
+ body.lesli-calendar :root {
460
+ --lesli-color-primary: var(--lesli-theme-color-primary, #193d8d);
461
+ --lesli-color-background: var(--lesli-theme-color-background, #f6f8fb);
462
+ --lesli-header-color: var(--lesli-theme-header-color, white);
463
+ --lesli-header-height: var(--lesli-theme-header-height, 70px);
464
+ --lesli-navbar-color: var(--lesli-theme-header-color, white);
465
+ --lesli-footer-color: var(--lesli-theme-footer-color, white);
466
+ --lesli-footer-height: var(--lesli-theme-footer-height, 84px);
467
+ --lesli-sidebar-color: var(--lesli-theme-sidebar-color, white);
468
+ --lesli-sidebar-width: var(--lesli-theme-sidebar-width, 50px);
469
+ --lesli-logo-color: var(--lesli-theme-logo-color, white);
470
+ --lesli-font-size: var(--lesli-theme-font-size, 16px);
471
+ --lesli-font-color: var(--lesli-theme-font-color, #333333);
472
+ }
473
+ @media only screen and (max-width: 768px) {
474
+ body.lesli-calendar :root {
475
+ --lesli-sidebar-width: 50px;
476
+ }
477
+ }
478
+ @media only screen and (min-width: 769px) {
479
+ body.lesli-calendar :root {
480
+ --lesli-sidebar-width: 100px;
481
+ }
482
+ }
483
+ @media only screen and (min-width: 1024px) {
484
+ body.lesli-calendar :root {
485
+ --lesli-sidebar-width: 200px;
486
+ }
487
+ }
488
+ @media only screen and (min-width: 1216px) {
489
+ body.lesli-calendar :root {
490
+ --lesli-sidebar-width: 225px;
491
+ }
492
+ }
493
+ @media only screen and (min-width: 1408px) {
494
+ body.lesli-calendar :root {
495
+ --lesli-sidebar-width: 328px;
496
+ }
497
+ }
498
+ body.lesli-calendar body.layout-expanded :root {
499
+ --lesli-sidebar-width: 100px;
500
+ }
501
+ body.lesli-calendar aside.lesli-application-sidebar {
502
+ display: none !important;
503
+ }
504
+ body.lesli-calendar .lesli-calendar-agenda h3 {
505
+ color: #555761;
506
+ padding: 14px 0;
507
+ }
508
+ body.lesli-calendar .lesli-calendar-agenda .event {
509
+ border-bottom: 1px solid #d4d4d4;
510
+ min-height: 100px;
511
+ }
512
+ body.lesli-calendar .lesli-calendar-agenda .event .date {
513
+ flex: 0 0 70px;
514
+ text-align: center;
515
+ color: #555761;
516
+ }
517
+ body.lesli-calendar .lesli-calendar-agenda .event .date .day-number {
518
+ font-weight: 700;
519
+ font-size: 1.2rem;
520
+ }
521
+ body.lesli-calendar .lesli-calendar-agenda .event .description {
522
+ line-height: 1.2;
523
+ font-size: 0.9rem;
524
+ padding: 3px 0 3px 18px;
525
+ border-left: 3px solid #abacae;
526
+ }
527
+ body.lesli-calendar .lesli-calendar-agenda .event .description p:first-child {
528
+ margin-bottom: 4px;
529
+ font-weight: 700;
530
+ font-size: 0.9rem;
531
+ }
532
+ body.lesli-calendar .lesli-calendar-agenda .event .description.cloud-driver-events {
533
+ border-left-color: #3689e6;
534
+ }
535
+ body.lesli-calendar .lesli-calendar-agenda .event .description.cloud-focus-tasks {
536
+ border-left-color: #28bca3;
537
+ }
538
+ body.lesli-calendar .lesli-calendar-agenda .event .description.lesli-support {
539
+ border-left-color: #a56de2;
540
+ }
541
+ body.lesli-calendar #lesli-calendar {
542
+ background-color: white;
543
+ box-shadow: rgba(9, 30, 66, 0.25) 0px 4px 8px -2px, rgba(9, 30, 66, 0.08) 0px 0px 0px 1px;
544
+ }
545
+ body.lesli-calendar #lesli-calendar .fc-header-toolbar {
546
+ height: 0px !important;
547
+ margin-bottom: 0;
548
+ }
549
+ body.lesli-calendar #lesli-calendar .fc-header-toolbar h2 {
550
+ color: transparent;
551
+ }
552
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid {
553
+ border: none !important;
554
+ }
555
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-header .fc-col-header-cell {
556
+ padding: 0.8rem 0;
557
+ text-align: center;
558
+ border-left-width: 0;
559
+ border-right-width: 0;
560
+ }
561
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-header .fc-col-header-cell a {
562
+ color: #555761;
563
+ }
564
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-day-top .fc-daygrid-day-number {
565
+ padding: 5px 10px;
566
+ }
567
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day.fc-day-today .fc-daygrid-day-top .fc-daygrid-day-number {
568
+ color: #193d8d;
569
+ font-weight: 800;
570
+ }
571
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event {
572
+ border: none;
573
+ margin: 0 0.25rem 0.2rem;
574
+ border-radius: 3px;
575
+ padding-left: 4px;
576
+ border-left: 5px solid #3689e6;
577
+ background-color: #ebf4fd;
578
+ }
579
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event .event-title {
580
+ flex: 1;
581
+ }
582
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event.lesli-support {
583
+ border-left-color: #a56de2;
584
+ background-color: #f9f5fd;
585
+ }
586
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event.lesli-support .fc-event-time,
587
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event.lesli-support .fc-daygrid-event-dot {
588
+ display: none !important;
589
+ }
590
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event.lesli-support .fc-event-title {
591
+ color: #581e98;
592
+ }
593
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event.cloud-focus-tasks {
594
+ border-left-color: #28bca3;
595
+ background-color: #e0f8f4;
596
+ }
597
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event.cloud-focus-tasks .event-title {
598
+ color: #0d3e36;
599
+ }
600
+ body.lesli-calendar #lesli-calendar .fc-scrollgrid .fc-scrollgrid-section-body .fc-daygrid-day .fc-daygrid-event .fc-event-title {
601
+ text-transform: capitalize;
602
+ color: #0e3f75;
603
+ font-family: "Open Sans", "Helvetica Neue", "Helvetica", "Arial", "sans-serif", sans-serif;
604
+ }
@@ -0,0 +1,4 @@
1
+ module LesliCalendar
2
+ class ApplicationController < Lesli::ApplicationLesliController
3
+ end
4
+ end
@@ -0,0 +1,71 @@
1
+ module LesliCalendar
2
+ class CalendarsController < ApplicationController
3
+ before_action :set_calendar, only: [:show, :edit, :update]
4
+
5
+ # GET /calendars
6
+ def index
7
+ respond_to do |format|
8
+ format.html { }
9
+ format.json do
10
+ respond_with_pagination(LesliCalendar::CalendarService.new(current_user).index(@query))
11
+ end
12
+ end
13
+ end
14
+
15
+ # GET /calendars/1
16
+ def show
17
+ respond_to do |format|
18
+ format.html { }
19
+ format.json { respond_with_successful(@calendar.show()) }
20
+ #format.json { respond_with_successful(@calendar.show(@query)) }
21
+ end
22
+ end
23
+
24
+ # GET /calendars/new
25
+ def new
26
+ end
27
+
28
+ # GET /calendars/1/edit
29
+ def edit
30
+ end
31
+
32
+ # POST /calendars
33
+ def create
34
+ end
35
+
36
+ # PATCH/PUT /calendars/1
37
+ def update
38
+ end
39
+
40
+ # DELETE /calendars/1
41
+ def destroy
42
+ end
43
+
44
+ def options
45
+ respond_with_successful(Calendar.options(current_user, @query))
46
+ end
47
+
48
+ def sync
49
+ respond_with_successful(Calendar.sync(current_user))
50
+ end
51
+
52
+ private
53
+
54
+ # Sets the requested user based on the current_users's account
55
+ def set_calendar
56
+
57
+ if params[:id].blank? || params[:id] == "default"
58
+ @calendar = CalendarService.new(current_user).find_default
59
+ elsif params[:id]
60
+ @calendar = CalendarService.new(current_user).find(params[:id])
61
+ end
62
+
63
+ return respond_with_not_found unless @calendar
64
+ end
65
+
66
+ # Only allow a trusted parameter "white list" through.
67
+ def calendar_params
68
+ params.require(:calendar)
69
+ end
70
+ end
71
+ end