forked from alexch/codelikethis
-
Notifications
You must be signed in to change notification settings - Fork 3
/
bootcamp.rb
113 lines (101 loc) · 3.51 KB
/
bootcamp.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
require 'erector'
require 'views'
require 'util'
require 'track'
require 'tracks_table'
require 'site'
require 'nav_bar'
class Bootcamp < Site
# base site has all tracks
def hostname
["bootcamp.burlingtoncodeacademy.com", "bootcamp", "localhost"]
end
def google_calendar_id
'YnVybGluZ3RvbmNvZGVhY2FkZW15LmNvbV9hazFxMDRvNzBwYXBqODJkb2ZsYXVnMGM1c0Bncm91cC5jYWxlbmRhci5nb29nbGUuY29t'
end
def tracks
[
::Track::Javascript,
::Track::Www,
::Track::ResponsiveLayout,
::Track::ClientSideCoding,
::Track::ServerSideJavascript,
::Track::Oo,
::Track::Db,
::Track::React,
::Track::Separator,
::Track::Agile,
::Track::Git,
::Track::TricksOfTheTrade, # or "trade secrets" ?
]
end
def view
View.new(site: self)
end
class View < Erector::Widget
def content
div.row {
div(class: 'col-sm') {
div.card {
div(class: 'card-body') {
p(class: 'card-text') {
b "Burlington Code Academy"
text " offers in-person coding classes in Burlington, Vermont."
}
p(class: 'card-text') {
text "This site contains the curriculum for our "
a "Spring 2020 JavaScript Software Development Bootcamp",
href: "https://www.burlingtoncodeacademy.com/software-development-bootcamp/"
text "."
}
p(class: 'card-text') {
text "Common answers and explanations are in the "
a "References section",
href: "https://bootcamp.burlingtoncodeacademy.com/references/"
text "."
}
p(class: 'card-text') {
text "The course projects are in the "
a "Project Section",
href: "https://bootcamp.burlingtoncodeacademy.com/projects/"
text "."
}
}
}
br
div.card {
iframe(
src: "https://calendar.google.com/calendar/embed?height=600&wkst=1&bgcolor=%23ffffff&ctz=America%2FNew_York&src=YnVybGluZ3RvbmNvZGVhY2FkZW15LmNvbV9hazFxMDRvNzBwYXBqODJkb2ZsYXVnMGM1c0Bncm91cC5jYWxlbmRhci5nb29nbGUuY29t&src=M2w3Mmc5YWV0cXJsdWgycDhqc2lsY2NoZDBAZ3JvdXAuY2FsZW5kYXIuZ29vZ2xlLmNvbQ&color=%23009688&color=%23F09300&showTabs=1&showCalendars=1&mode=WEEK&title=Spring%202020%20Software%20Development%20Bootcamp",
style: 'border-width:0',
width: '800',
height: '600',
frameborder: '0',
scrolling: 'no'
)
}
}
}
end
end
class NavBar < ::NavBar
def logo klass: nil, style: nil
a(href: '/',
class: 'navbar-brand') {
img.logo(src: '/images/burlingtoncodeacademy-logo.png',
width: 265, height: 36,
alt: "Burlington Code Academy",
class: ['logo', klass].compact,
style: [style].compact)
}
end
def nav_items
nav_item name: 'Home', href: 'https://www.burlingtoncodeacademy.com/'
nav_item name: 'Bootcamp', href: 'https://www.burlingtoncodeacademy.com/software-development-bootcamp/'
nav_item name: 'Events', href: 'http://www.burlingtoncodeacademy.com/events/'
nav_item name: 'Blog', href: 'http://www.burlingtoncodeacademy.com/blog/'
nav_item name: 'Apply',
href: 'http://www.burlingtoncodeacademy.com/apply/',
button: true
end
end
end