conschedule 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +154 -0
  4. data/Rakefile +37 -0
  5. data/app/assets/config/conschedule_manifest.js +2 -0
  6. data/app/assets/fonts/icomoon.eot +0 -0
  7. data/app/assets/fonts/proxima_nova_100.eot +0 -0
  8. data/app/assets/fonts/proxima_nova_400.eot +0 -0
  9. data/app/assets/fonts/proxima_nova_700.eot +0 -0
  10. data/app/assets/images/conschedule/chosen-sprite-small.png +0 -0
  11. data/app/assets/images/conschedule/chosen-sprite.png +0 -0
  12. data/app/assets/images/conschedule/close.png +0 -0
  13. data/app/assets/images/conschedule/spinner-small.gif +0 -0
  14. data/app/assets/images/conschedule/spinner.gif +0 -0
  15. data/app/assets/javascripts/conschedule/application.js +22 -0
  16. data/app/assets/javascripts/conschedule/calendar.js +467 -0
  17. data/app/assets/javascripts/conschedule/date.js +104 -0
  18. data/app/assets/javascripts/conschedule/form.js +53 -0
  19. data/app/assets/javascripts/conschedule/home.js +149 -0
  20. data/app/assets/javascripts/conschedule/jquery-ui-datepicker.min.js +1674 -0
  21. data/app/assets/javascripts/conschedule/jquery.easing.min.js +44 -0
  22. data/app/assets/javascripts/conschedule/jquery.validate.js +1532 -0
  23. data/app/assets/javascripts/conschedule/js_time_zone.js +1433 -0
  24. data/app/assets/javascripts/conschedule/moment-timezone.js +1209 -0
  25. data/app/assets/javascripts/conschedule/moment.js +4195 -0
  26. data/app/assets/javascripts/conschedule/schedules.js +22 -0
  27. data/app/assets/javascripts/conschedule/time_zones_drop_down.js +609 -0
  28. data/app/assets/stylesheets/conschedule/application.css +4 -0
  29. data/app/assets/stylesheets/conschedule/common.css +816 -0
  30. data/app/assets/stylesheets/conschedule/home.css +2441 -0
  31. data/app/assets/stylesheets/conschedule/main.css +884 -0
  32. data/app/assets/stylesheets/conschedule/schedules.css +4 -0
  33. data/app/controllers/conschedule/application_controller.rb +49 -0
  34. data/app/controllers/conschedule/schedules_controller.rb +125 -0
  35. data/app/helpers/conschedule/application_helper.rb +15 -0
  36. data/app/helpers/conschedule/schedules_helper.rb +43 -0
  37. data/app/jobs/conschedule/application_job.rb +4 -0
  38. data/app/mailers/conschedule/schedules_mailer.rb +46 -0
  39. data/app/models/conschedule/application_record.rb +5 -0
  40. data/app/models/conschedule/schedule.rb +63 -0
  41. data/app/views/conschedule/schedules/_confirmation.html.erb +38 -0
  42. data/app/views/conschedule/schedules/_page_one.html.erb +75 -0
  43. data/app/views/conschedule/schedules/_page_three.html.erb +94 -0
  44. data/app/views/conschedule/schedules/_page_two.html.erb +22 -0
  45. data/app/views/conschedule/schedules/_schedules.html.erb +122 -0
  46. data/app/views/conschedule/schedules/create.js.erb +11 -0
  47. data/app/views/conschedule/schedules/index.html.erb +123 -0
  48. data/app/views/conschedule/schedules/index.js.erb +3 -0
  49. data/app/views/conschedule/schedules/new.html.erb +11 -0
  50. data/app/views/conschedule/schedules_mailer/send_cancel_email_owner.html.erb +61 -0
  51. data/app/views/conschedule/schedules_mailer/send_cancel_email_user.html.erb +29 -0
  52. data/app/views/conschedule/schedules_mailer/send_confirmation_email_owner.html.erb +77 -0
  53. data/app/views/conschedule/schedules_mailer/send_confirmation_email_user.html.erb +30 -0
  54. data/app/views/kaminari/custom_theme/_first_page.html.erb +3 -0
  55. data/app/views/kaminari/custom_theme/_gap.html.erb +1 -0
  56. data/app/views/kaminari/custom_theme/_last_page.html.erb +3 -0
  57. data/app/views/kaminari/custom_theme/_next_page.html.erb +1 -0
  58. data/app/views/kaminari/custom_theme/_page.html.erb +5 -0
  59. data/app/views/kaminari/custom_theme/_paginator.html.erb +23 -0
  60. data/app/views/kaminari/custom_theme/_prev_page.html.erb +1 -0
  61. data/app/views/layouts/conschedule/application.html.erb +14 -0
  62. data/app/views/layouts/conschedule/mailer.html.erb +11 -0
  63. data/app/views/layouts/conschedule/schedules.html.erb +14 -0
  64. data/config/initializers/assets.rb +11 -0
  65. data/config/routes.rb +11 -0
  66. data/db/migrate/20160812085505_create_conschedule_schedules.rb +27 -0
  67. data/lib/conschedule.rb +34 -0
  68. data/lib/conschedule/configuration.rb +25 -0
  69. data/lib/conschedule/engine.rb +5 -0
  70. data/lib/conschedule/gem_dependencies.rb +2 -0
  71. data/lib/conschedule/version.rb +3 -0
  72. data/lib/generators/conschedule/install_generator.rb +23 -0
  73. data/lib/generators/conschedule/views_generator.rb +45 -0
  74. data/lib/generators/templates/README +40 -0
  75. data/lib/generators/templates/initializer.rb +25 -0
  76. data/lib/tasks/conschedule_tasks.rake +4 -0
  77. metadata +182 -0
@@ -0,0 +1,884 @@
1
+ html, body, div, span, applet, object, iframe, h1, h2, h3, h4,
2
+ h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite,
3
+ code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong,
4
+ sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset,
5
+ form, label, legend, caption, article, aside, canvas, details, embed,
6
+ figure, figcaption, footer, header, hgroup, menu, nav, output, ruby,
7
+ section, summary, time, mark, audio, video {
8
+ margin: 0;
9
+ padding: 0;
10
+ border: 0;
11
+ font-size: 100%;
12
+ font: inherit;
13
+ vertical-align: baseline
14
+ }
15
+ table, tbody, tfoot, thead, tr, th, td {
16
+ margin: 0;
17
+ padding: 0;
18
+ border: 0;
19
+ font-size: 100%;
20
+ font: inherit
21
+ }
22
+ article, aside, details, figcaption, figure, footer, header, hgroup,
23
+ menu, nav, section {
24
+ display: block
25
+ }
26
+ ol, ul {
27
+ list-style: none
28
+ }
29
+ blockquote, q {
30
+ quotes: none
31
+ }
32
+ blockquote:before, blockquote:after {
33
+ content: "";
34
+ content: none
35
+ }
36
+ q:before, q:after {
37
+ content: "";
38
+ content: none
39
+ }
40
+ table {
41
+ border-collapse: collapse;
42
+ border-spacing: 0
43
+ }
44
+ img {
45
+ border: none
46
+ }
47
+ .clearfix, .row {
48
+ *zoom: 1
49
+ }
50
+ .clearfix:after, .row:after {
51
+ content: ".";
52
+ display: block;
53
+ height: 0;
54
+ line-height: 0;
55
+ clear: both;
56
+ visibility: hidden
57
+ }
58
+ .last-col {
59
+ display: table-cell;
60
+ float: none;
61
+ width: auto;
62
+ _margin-right: -3px;
63
+ _left: -3px;
64
+ _position: relative;
65
+ *display: block;
66
+ *zoom: 1
67
+ }
68
+ @media only screen and (max-width: 860px) {
69
+ .row.adaptive>[class^="col"] {
70
+ width: 100%;
71
+ float: none;
72
+ padding: 0
73
+ }
74
+ }
75
+ html {
76
+ -webkit-text-size-adjust: none;
77
+ -webkit-tap-highlight-color: transparent
78
+ }
79
+ body {
80
+ overflow-x: hidden;
81
+ background-color: #fff
82
+ }
83
+ .wrapper {
84
+ position: relative;
85
+ margin: 0 auto;
86
+ padding: 0 20px;
87
+ max-width: 860px
88
+ }
89
+ .wrapper.narrower {
90
+ max-width: 450px
91
+ }
92
+ .wrapper.narrow {
93
+ max-width: 380px
94
+ }
95
+ @media only screen and (max-width: 860px) {
96
+ .wrapper {
97
+ width: auto;
98
+ min-width: 0
99
+ }
100
+ }
101
+ hr {
102
+ border-color: #dadada;
103
+ border-top: none
104
+ }
105
+ hr.dotted {
106
+ border-bottom: 1px dotted #dadada
107
+ }
108
+ body, input, textarea, button {
109
+ font-family: "Proxima Nova", sans-serif;
110
+ font-size: 14px;
111
+ line-height: 1.4em;
112
+ color: #666A73;
113
+ word-break: break-word
114
+ }
115
+ h1, h2, h3, h5 {
116
+ font-weight: bold
117
+ }
118
+ h1 {
119
+ font-size: 22px;
120
+ line-height: 1.2em;
121
+ margin-bottom: 10px
122
+ }
123
+ h2 {
124
+ font-size: 18px;
125
+ line-height: 1.3em
126
+ }
127
+ h3, h4 {
128
+ font-size: 16px;
129
+ line-height: 1.3em
130
+ }
131
+ h5 {
132
+ font-size: 14px
133
+ }
134
+ strong, b {
135
+ font-weight: bold
136
+ }
137
+ em, i {
138
+ font-style: italic
139
+ }
140
+ a, a:visited, a:link {
141
+ color: #00A2FF;
142
+ text-decoration: none
143
+ }
144
+ a:hover, a:visited:hover, a:link:hover {
145
+ color: #66c7ff
146
+ }
147
+ .muted {
148
+ color: #A8A8A8
149
+ }
150
+ .emphasis {
151
+ color: #06C29C
152
+ }
153
+ .iconed-text {
154
+ line-height: 20px;
155
+ margin-bottom: 10px
156
+ }
157
+ .iconed-text [class^="icon"] {
158
+ display: block;
159
+ float: left
160
+ }
161
+ .icon-description, .icon-clock, .icon-globe, .icon-location-target, .icon-arrow-right {
162
+ font-size: 20px;
163
+ vertical-align: middle;
164
+ margin-right: 10px;
165
+ color: #dadada
166
+ }
167
+ .emphasis .icon-description,
168
+ .emphasis .icon-clock,
169
+ .emphasis .icon-globe,
170
+ .emphasis .icon-location-target,
171
+ .emphasis .icon-arrow-right {
172
+ color: #06C29C
173
+ }
174
+ a .icon-description,
175
+ a .icon-clock,
176
+ a .icon-globe,
177
+ a .icon-location-target,
178
+ a .icon-arrow-right {
179
+ color: inherit
180
+ }
181
+ .error-notification, .error-message, .error_explanation {
182
+ display: block;
183
+ color: #df5656;
184
+ font-weight: bold;
185
+ white-space: normal;
186
+ background: transparent
187
+ }
188
+ .error_explanation .error-heading {
189
+ font-size: 14px;
190
+ padding-top: 5px;
191
+ }
192
+ .error_explanation .form-errors {
193
+ font-size: 14px;
194
+ padding: 10px 10px 20px 10px;
195
+ }
196
+ .header {
197
+ text-align: center;
198
+ margin: 30px 20px
199
+ }
200
+ .header h4 {
201
+ padding: 0 30px
202
+ }
203
+ @media only screen and (min-width: 861px) {
204
+ .header h4 {
205
+ padding: 30px
206
+ }
207
+ .header .avatar+h4 {
208
+ padding: 0 30px
209
+ }
210
+ }
211
+ .header .avatar {
212
+ width: 60px;
213
+ height: 60px;
214
+ border-radius: 50%
215
+ }
216
+ .header .avatar.clickable {
217
+ cursor: pointer
218
+ }
219
+ .header .muted {
220
+ max-width: 320px;
221
+ margin: 0 auto
222
+ }
223
+ .subheader {
224
+ border-top: 1px solid #DADADA;
225
+ border-bottom: 1px solid #DADADA;
226
+ padding: 14px 0;
227
+ margin-bottom: 15px
228
+ }
229
+ .subheader h3 {
230
+ padding-top: 3px
231
+ }
232
+ @media only screen and (max-width: 860px) {
233
+ .subheader .col1of2 {
234
+ float: none;
235
+ width: 100%
236
+ }
237
+ .subheader .col1of2:first-child {
238
+ margin-bottom: 10px
239
+ }
240
+ }
241
+ .notification {
242
+ border: 3px solid #FFD467;
243
+ border-radius: 4px;
244
+ text-align: center;
245
+ padding: 20px
246
+ }
247
+ .marker {
248
+ float: left;
249
+ width: 20px;
250
+ height: 20px;
251
+ border-radius: 50%;
252
+ margin-right: 10px
253
+ }
254
+ .field label {
255
+ display: block;
256
+ margin-bottom: 5px;
257
+ line-height: 1.4em
258
+ }
259
+ .field input[type="text"],
260
+ .field input[type="email"],
261
+ .field input[type="number"],
262
+ .field input[type="password"],
263
+ .field input[type="tel"],
264
+ .field textarea {
265
+ display: block;
266
+ width: 100%;
267
+ box-sizing: border-box;
268
+ border: 1px solid #DADADA;
269
+ padding: 15px 10px;
270
+ -webkit-appearance: none;
271
+ -moz-appearance: none;
272
+ appearance: none;
273
+ border-radius: 0
274
+ }
275
+ button,
276
+ .button,
277
+ a.button,
278
+ a.button:visited,
279
+ a.button:link {
280
+ display: inline-block;
281
+ box-sizing: border-box;
282
+ cursor: pointer;
283
+ line-height: 18px;
284
+ text-align: center;
285
+ text-decoration: none;
286
+ -webkit-appearance: none;
287
+ -webkit-user-select: none;
288
+ -moz-user-select: none;
289
+ -ms-user-select: none;
290
+ user-select: none
291
+ }
292
+ button,
293
+ .button,
294
+ a.button,
295
+ a.button:visited,
296
+ a.button:link {
297
+ font-size: 16px;
298
+ padding: 13px 15px;
299
+ background-color: #00A2FF;
300
+ border: 1px solid transparent;
301
+ color: #fff
302
+ }
303
+ button .icon-angle-down,
304
+ .button .icon-angle-down,
305
+ a.button .icon-angle-down,
306
+ a.button:visited .icon-angle-down,
307
+ a.button:link .icon-angle-down {
308
+ position: relative;
309
+ top: 5px;
310
+ line-height: 9px;
311
+ padding: 0 4px;
312
+ font-size: 20px
313
+ }
314
+ button.ghost,
315
+ .button.ghost,
316
+ a.button.ghost,
317
+ a.button:visited.ghost,
318
+ a.button:link.ghost {
319
+ color: #00A2FF;
320
+ background: transparent;
321
+ border: 1px solid #00A2FF
322
+ }
323
+ button.disabled,
324
+ button[disabled],
325
+ .button.disabled,
326
+ .button[disabled],
327
+ a.button.disabled,
328
+ a.button[disabled],
329
+ a.button:visited.disabled,
330
+ a.button:visited[disabled],
331
+ a.button:link.disabled,
332
+ a.button:link[disabled] {
333
+ background-color: #dbdbdb;
334
+ color: #aaa
335
+ }
336
+ .step-back {
337
+ font-size: 24px;
338
+ cursor: pointer;
339
+ color: #00A2FF;
340
+ position: absolute;
341
+ left: 20px;
342
+ top: 20px
343
+ }
344
+ .step-back:before {
345
+ position: relative;
346
+ top: -10px
347
+ }
348
+ .timezone-area {
349
+ position: relative;
350
+ float: right
351
+ }
352
+ @media only screen and (max-width: 860px) {
353
+ .timezone-area {
354
+ float: none
355
+ }
356
+ .timezone-area .muted {
357
+ display: block
358
+ }
359
+ }
360
+ .timezone-area .muted {
361
+ position: relative;
362
+ top: 1px;
363
+ margin-right: 3px
364
+ }
365
+ .timezone-area .chzn-disabled {
366
+ opacity: 1 !important
367
+ }
368
+ .timezone-area .chzn-disabled div {
369
+ display: none
370
+ }
371
+ .timezone-area .timezone {
372
+ display: inline-block
373
+ }
374
+ .timezone-area .timezone .chzn-container-single {
375
+ position: static;
376
+ width: 240px !important;
377
+ min-width: 240px !important
378
+ }
379
+ @media only screen and (max-width: 860px) {
380
+ .timezone-area .timezone .chzn-container-single {
381
+ width: 100% !important
382
+ }
383
+ }
384
+ a.chzn-single:focus {
385
+ outline-width: 0px !important;
386
+ }
387
+ .timezone-area .timezone .chzn-container-single .chzn-single {
388
+ border: none;
389
+ box-shadow: none;
390
+ background: transparent;
391
+ padding: 0
392
+ }
393
+ .timezone-area .timezone .chzn-container-single .chzn-single div b {
394
+ position: absolute;
395
+ top: 0px;
396
+ right: 20px;
397
+ font-family: "icomoon";
398
+ font-size: 16px;
399
+ border: none;
400
+ background: none !important
401
+ }
402
+ .timezone-area .timezone .chzn-container-single .chzn-single div b:before {
403
+ color: #00A2FF;
404
+ content: ""
405
+ }
406
+ .timezone-area .timezone .chzn-container-single .chzn-single span {
407
+ display: inline-block;
408
+ max-width: 205px;
409
+ margin-right: 10px;
410
+ color: #00A2FF;
411
+ font-size: 14px
412
+ }
413
+ .timezone-area .timezone .chzn-container-single .chzn-drop {
414
+ position: absolute;
415
+ top: 25px;
416
+ background-color: #f6f6f6;
417
+ border-radius: 2px;
418
+ border: none
419
+ }
420
+ .timezone-area .timezone .chzn-container-single .chzn-drop .chzn-search {
421
+ padding: 20px 20px 0 20px
422
+ }
423
+ .timezone-area .timezone .chzn-container-single .chzn-drop .chzn-search input {
424
+ background: #fff !important;
425
+ border: 1px solid #DADADA;
426
+ padding: 10px
427
+ }
428
+ .timezone-area .timezone .chzn-container-single .chzn-drop .chzn-results {
429
+ margin: 0;
430
+ padding: 0
431
+ }
432
+ .timezone-area .timezone .chzn-container-single .chzn-drop .chzn-results li:hover,
433
+ .timezone-area .timezone .chzn-container-single .chzn-drop .chzn-results li.highlighted {
434
+ background: #e8e8e8;
435
+ color: #666A73
436
+ }
437
+ .timezone-area .timezone .chzn-container-single .chzn-drop .group-result {
438
+ color: #393034;
439
+ text-transform: uppercase;
440
+ padding-left: 25px;
441
+ margin-top: 10px
442
+ }
443
+ .timezone-area .timezone .chzn-container-single .chzn-drop .group-option {
444
+ position: relative;
445
+ line-height: 20px;
446
+ padding: 7px 90px 7px 25px
447
+ }
448
+ .timezone-area .timezone .chzn-container-single .chzn-drop .group-option:after {
449
+ position: absolute;
450
+ top: 7px;
451
+ right: 20px;
452
+ color: #A8A8A8;
453
+ content: attr(data-time)
454
+ }
455
+ @media only screen and (max-width: 860px) {
456
+ .timezone-area .timezone .chzn-container-single .chzn-drop {
457
+ top: 56px
458
+ }
459
+ }
460
+ .period {
461
+ position: relative;
462
+ padding: 0px 30px 20px 30px;
463
+ max-width: 860px;
464
+ box-sizing: border-box
465
+ }
466
+ .period i.icon-arrow-right {
467
+ display: none
468
+ }
469
+ .period .icon-angle-left,
470
+ .period .icon-angle-right {
471
+ position: absolute;
472
+ top: 35px;
473
+ font-size: 44px;
474
+ color: #00A2FF;
475
+ cursor: pointer
476
+ }
477
+ .period .icon-angle-left:before,
478
+ .period .icon-angle-right:before {
479
+ display: block
480
+ }
481
+ .period .icon-angle-left.disabled,
482
+ .period .icon-angle-right.disabled {
483
+ color: #DADADA;
484
+ cursor: default
485
+ }
486
+ .period .icon-angle-left {
487
+ left: 10px
488
+ }
489
+ .period .icon-angle-right {
490
+ right: 10px
491
+ }
492
+ .period .fraction {
493
+ position: relative;
494
+ float: left;
495
+ width: 14.2857%;
496
+ text-align: center;
497
+ box-sizing: border-box;
498
+ padding: 15px
499
+ }
500
+ .period .fraction .full {
501
+ display: none
502
+ }
503
+ .period .fraction.separator {
504
+ border-right: 1px solid #F6F6F6
505
+ }
506
+ .period .fraction .today-mobile {
507
+ display: none
508
+ }
509
+ .period .fraction .today {
510
+ font-weight: bold;
511
+ position: absolute;
512
+ top: -10px;
513
+ left: 21px
514
+ }
515
+ .period .fraction .status {
516
+ display: block;
517
+ padding-top: 8px;
518
+ color: #A8A8A8
519
+ }
520
+ .period .fraction .day {
521
+ display: table-cell;
522
+ vertical-align: middle;
523
+ cursor: pointer;
524
+ width: 75px;
525
+ height: 75px;
526
+ border: 4px solid #00A2FF;
527
+ border-radius: 50%
528
+ }
529
+ .period .fraction.unavailable .day {
530
+ border-color: #a8a8a8;
531
+ color: #a8a8a8;
532
+ cursor: default
533
+ }
534
+ .period .fraction.unavailable.diagnostics .status {
535
+ color: #00A2FF
536
+ }
537
+ @media only screen and (min-width: 900px) {
538
+ .period .fraction.unavailable.diagnostics .day {
539
+ border: 1px dashed #00A2FF;
540
+ padding: 3px;
541
+ cursor: pointer
542
+ }
543
+ }
544
+ @media only screen and (max-width: 900px) {
545
+ .period {
546
+ width: auto;
547
+ padding: 10px 0px 20px 0px
548
+ }
549
+ .period .icon-angle-left,
550
+ .period .icon-angle-right,
551
+ .period .today {
552
+ display: none
553
+ }
554
+ .period .fraction .status {
555
+ position: absolute;
556
+ top: 18px;
557
+ right: 15px
558
+ }
559
+ .period .fraction .today-mobile {
560
+ display: inline
561
+ }
562
+ .period .fraction,
563
+ .period .fraction.separator {
564
+ float: none;
565
+ width: 100%;
566
+ display: block;
567
+ padding: 0;
568
+ border: 1px solid #dadada;
569
+ border-bottom: none
570
+ }
571
+ .period .fraction:last-child,
572
+ .period .fraction.separator:last-child {
573
+ border: 1px solid #dadada
574
+ }
575
+ .period .fraction .shorthand,
576
+ .period .fraction.separator .shorthand {
577
+ display: none
578
+ }
579
+ .period .fraction .full,
580
+ .period .fraction.separator .full {
581
+ display: inline
582
+ }
583
+ .period .fraction .day,
584
+ .period .fraction.separator .day {
585
+ position: relative;
586
+ display: block;
587
+ height: auto;
588
+ width: auto;
589
+ padding: 15px;
590
+ border: none;
591
+ text-align: left
592
+ }
593
+ .period .fraction i.icon-arrow-right,
594
+ .period .fraction.separator i.icon-arrow-right {
595
+ position: absolute;
596
+ display: inline-block;
597
+ top: 13px;
598
+ right: 15px;
599
+ font-size: 20px;
600
+ border: 1px solid #00A2FF;
601
+ padding: 10px;
602
+ border-radius: 50%;
603
+ color: #00A2FF
604
+ }
605
+ .period .fraction.unavailable i.icon-arrow-right,
606
+ .period .fraction.separator.unavailable i.icon-arrow-right {
607
+ display: none
608
+ }
609
+ .period .fraction.unavailable.diagnostics i.icon-arrow-right,
610
+ .period .fraction.separator.unavailable.diagnostics i.icon-arrow-right {
611
+ display: inline-block;
612
+ border: none;
613
+ color: #00A2FF
614
+ }
615
+ .period .fraction.unavailable.diagnostics .status,
616
+ .period .fraction.separator.unavailable.diagnostics .status {
617
+ top: 38px;
618
+ right: 25px
619
+ }
620
+ }
621
+ .scale {
622
+ margin: 0 30px;
623
+ position: relative;
624
+ border-bottom: 1px dashed #DADADA;
625
+ height: 10px
626
+ }
627
+ .scale .division {
628
+ float: left;
629
+ border-left: 2px solid #DADADA;
630
+ border-right: 2px solid #DADADA;
631
+ box-sizing: border-box;
632
+ text-align: center
633
+ }
634
+ .scale .division:first-child {
635
+ border-left: none
636
+ }
637
+ .scale .division:last-child {
638
+ border-right: none
639
+ }
640
+ .scale .division .label {
641
+ text-transform: uppercase;
642
+ font-size: 12px;
643
+ padding: 0 4px;
644
+ color: #DADADA;
645
+ background: #fff
646
+ }
647
+ .scale .division.size1of7 {
648
+ width: 14.2857%
649
+ }
650
+ .scale .division.size2of7 {
651
+ width: 28.5714%
652
+ }
653
+ .scale .division.size3of7 {
654
+ width: 42.85710000000001%
655
+ }
656
+ .scale .division.size4of7 {
657
+ width: 57.1428%
658
+ }
659
+ .scale .division.size5of7 {
660
+ width: 71.4285%
661
+ }
662
+ .scale .division.size6of7 {
663
+ width: 85.7142%
664
+ }
665
+ .scale .division.size7of7 {
666
+ width: 100%
667
+ }
668
+ @media only screen and (max-width: 900px) {
669
+ .scale {
670
+ display: none
671
+ }
672
+ }
673
+ .spots {
674
+ max-width: 380px
675
+ }
676
+ .spots .spot {
677
+ font-size: 0px;
678
+ overflow: hidden;
679
+ white-space: nowrap;
680
+ text-align: center;
681
+ margin-bottom: 10px
682
+ }
683
+ .spots .spot .time-button,
684
+ .spots .spot .confirm-button {
685
+ font-size: 14px;
686
+ line-height: 1.3em;
687
+ display: inline-block;
688
+ box-sizing: border-box;
689
+ padding: 18px 20px;
690
+ border-radius: 5px;
691
+ cursor: pointer
692
+ }
693
+ .spots .spot .time-button:focus,
694
+ .spots .spot .confirm-button:focus {
695
+ outline: none
696
+ }
697
+ .spots .spot .time-button {
698
+ width: 100%;
699
+ border: 1px solid #00A2FF;
700
+ color: #00A2FF;
701
+ background: transparent;
702
+ cursor: pointer;
703
+ -webkit-transition: all 0.3s;
704
+ transition: all 0.3s
705
+ }
706
+ .spots .spot .confirm-button {
707
+ display: none
708
+ }
709
+ .spots .spot .status {
710
+ display: none;
711
+ text-transform: uppercase;
712
+ font-size: 10px;
713
+ color: #00A2FF
714
+ }
715
+ .spots .spot.unavailable {
716
+ position: relative;
717
+ border: 1px dashed #a8a8a8;
718
+ font-size: 14px;
719
+ border-radius: 5px;
720
+ color: #666a73
721
+ }
722
+ .spots .spot.unavailable .toggle {
723
+ position: relative;
724
+ padding: 11px 20px
725
+ }
726
+ .spots .spot.unavailable .toggle:hover {
727
+ cursor: pointer;
728
+ background: #eef6fa
729
+ }
730
+ .spots .spot.unavailable .toggle .arrow {
731
+ position: absolute;
732
+ top: 10px;
733
+ right: 10px;
734
+ line-height: 12px
735
+ }
736
+ .spots .spot.unavailable .toggle .arrow:after {
737
+ position: relative;
738
+ top: 3px;
739
+ font-size: 16px;
740
+ font-family: "icomoon";
741
+ content: ""
742
+ }
743
+ .spots .spot.unavailable .status {
744
+ color: #e41600
745
+ }
746
+ .spots .spot.unavailable .code {
747
+ display: inline-block;
748
+ font-size: 12px;
749
+ line-height: 1em;
750
+ color: #666a73;
751
+ text-transform: uppercase;
752
+ padding: 2px 4px 0px 4px;
753
+ border: 1px solid #979797;
754
+ border-radius: 3px
755
+ }
756
+ .spots .spot.unavailable .details {
757
+ display: none;
758
+ white-space: normal;
759
+ padding: 10px 20px 20px 20px;
760
+ text-align: left
761
+ }
762
+ .spots .spot.unavailable.collapsed .details {
763
+ display: none
764
+ }
765
+ .spots .spot.unavailable.expanded .details {
766
+ display: block
767
+ }
768
+ .spots .spot.unavailable.expanded .toggle .arrow:after {
769
+ content: ""
770
+ }
771
+ .spots .spot.selected .time-button,
772
+ .spots .spot.selected .confirm-button {
773
+ width: 48.5%
774
+ }
775
+ .spots .spot.selected .time-button {
776
+ margin-right: 3%;
777
+ background: #666A73;
778
+ color: #fff;
779
+ border-color: transparent;
780
+ float: left;
781
+ cursor: default
782
+ }
783
+ .spots .spot.selected .time-button .status {
784
+ color: #fff
785
+ }
786
+ .spots .spot.selected .confirm-button {
787
+ display: inline-block
788
+ }
789
+ .meridiem {
790
+ position: relative;
791
+ display: none;
792
+ margin: 27px 0;
793
+ border-bottom: 1px solid #dadada
794
+ }
795
+ .meridiem .text {
796
+ position: absolute;
797
+ top: -7px;
798
+ left: 50%;
799
+ margin-left: -26px;
800
+ padding: 0 9px;
801
+ text-transform: uppercase;
802
+ font-size: 12px;
803
+ color: #a8a8a8;
804
+ background: #fff
805
+ }
806
+ .pagination {
807
+ color: #00A2FF
808
+ }
809
+ .pagination i {
810
+ position: relative;
811
+ top: 3px;
812
+ font-size: 18px
813
+ }
814
+ .pagination strong {
815
+ cursor: pointer
816
+ }
817
+ .pagination strong.disabled {
818
+ display: none
819
+ }
820
+ .label {
821
+ position: relative;
822
+ display: inline-block;
823
+ font-size: 16px;
824
+ line-height: 20px;
825
+ margin-bottom: 10px
826
+ }
827
+ .label i[class^="icon-"] {
828
+ position: relative;
829
+ top: 3px
830
+ }
831
+ .label .popover {
832
+ position: absolute;
833
+ top: 22px;
834
+ left: 50%;
835
+ width: 340px;
836
+ margin-left: -170px;
837
+ z-index: 10
838
+ }
839
+ @media only screen and (max-width: 340px) {
840
+ .label .popover {
841
+ position: fixed;
842
+ top: 0px;
843
+ left: 0;
844
+ margin-left: 0;
845
+ width: 100%;
846
+ height: 100%
847
+ }
848
+ }
849
+ .popover {
850
+ background: #f6f6f6;
851
+ box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.2);
852
+ box-sizing: border-box;
853
+ font-size: 14px;
854
+ padding: 20px;
855
+ max-width: 340px
856
+ }
857
+ .popover ul {
858
+ margin-left: 20px
859
+ }
860
+ .popover ul li {
861
+ list-style: disc;
862
+ margin-bottom: 10px
863
+ }
864
+ .popover i.icon-close {
865
+ position: absolute;
866
+ right: 20px;
867
+ top: 20px;
868
+ width: 24px;
869
+ height: 24px;
870
+ font-size: 24px;
871
+ color: #a8a8a8;
872
+ cursor: pointer
873
+ }
874
+ .popover i.icon-close:hover {
875
+ color: #9b9b9b
876
+ }
877
+ @media only screen and (max-width: 860px) {
878
+ .hidden-phone {
879
+ display: none !important
880
+ }
881
+ }
882
+ .schedule_wizard fieldset:not(:first-of-type) {
883
+ display: none;
884
+ }