swiftfire-jekyll-theme 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE.txt +23 -0
- data/README.md +107 -0
- data/_data/cblocks.yml +31 -0
- data/_data/setup.yml +135 -0
- data/_data/text-for.yml +53 -0
- data/_includes/account-menus.html +82 -0
- data/_includes/banner-area.html +57 -0
- data/_includes/banner-icon.html +23 -0
- data/_includes/banner-title-area.html +30 -0
- data/_includes/cblock-row.html +18 -0
- data/_includes/cblock.html +20 -0
- data/_includes/disqus-comments.html +39 -0
- data/_includes/footer.html +16 -0
- data/_includes/google-analytics.html +21 -0
- data/_includes/head.html +74 -0
- data/_includes/menubar-icon.html +23 -0
- data/_includes/menubar.html +487 -0
- data/_includes/secondary-column.html +37 -0
- data/_includes/tertiary-column.html +8 -0
- data/_includes/vertical-menu.html +378 -0
- data/_includes/widgets/browser-info.html +16 -0
- data/_includes/widgets/categories.html +32 -0
- data/_includes/widgets/cookie-consent.html +21 -0
- data/_includes/widgets/older-posts.html +71 -0
- data/_includes/widgets/recent-posts.html +24 -0
- data/_includes/widgets/social-media-res/icon-github.html +7 -0
- data/_includes/widgets/social-media-res/icon-github.svg +1 -0
- data/_includes/widgets/social-media-res/icon-twitter.html +7 -0
- data/_includes/widgets/social-media-res/icon-twitter.svg +1 -0
- data/_includes/widgets/social-media.html +29 -0
- data/_includes/widgets/subscribe.html +18 -0
- data/_includes/widgets/youtube-player.html +38 -0
- data/_layouts/banner-layout.html +1 -0
- data/_layouts/category-page.html +51 -0
- data/_layouts/content-blocks.html +6 -0
- data/_layouts/default.html +152 -0
- data/_layouts/home.html +22 -0
- data/_layouts/page.html +30 -0
- data/_layouts/post.html +20 -0
- data/_sass/classic-jekyll-theme.scss +1178 -0
- data/_sass/classic/_banner-area.scss +552 -0
- data/_sass/classic/_body.scss +15 -0
- data/_sass/classic/_columns.scss +122 -0
- data/_sass/classic/_custom.scss +138 -0
- data/_sass/classic/_footer.scss +31 -0
- data/_sass/classic/_menubar.scss +530 -0
- data/_sass/classic/_normalize-override.scss +22 -0
- data/_sass/classic/_normalize.scss +447 -0
- data/_sass/classic/_page.scss +12 -0
- data/_sass/classic/_post.scss +10 -0
- data/_sass/classic/_swiftfire.scss +54 -0
- data/_sass/classic/_syntax-highlighting.scss +71 -0
- data/_sass/classic/_theme-internal.scss +37 -0
- data/_sass/classic/_theme-library.scss +85 -0
- data/_sass/classic/_vertical-menu.scss +252 -0
- data/_sass/classic/_widgets.scss +88 -0
- data/assets/img/banner-area-layout.png +0 -0
- data/assets/img/cog-wheels-120x68.png +0 -0
- data/assets/img/cog-wheels-240x135.png +0 -0
- data/assets/img/cog-wheels-30x17.png +0 -0
- data/assets/img/cog-wheels-60x43.png +0 -0
- data/assets/img/column-panel-layout.png +0 -0
- data/assets/img/test-pattern-110x83.png +0 -0
- data/assets/img/test-pattern-1280x800.png +0 -0
- data/assets/img/test-pattern-220x165.png +0 -0
- data/assets/img/test-pattern-55x42.png +0 -0
- data/assets/img/test-pattern-640x400.png +0 -0
- data/assets/img/top-level-layout.png +0 -0
- data/assets/js/cookieconsent.min.js +1 -0
- data/assets/main.scss +9 -0
- data/assets/templates/comment-section.sf.html +137 -0
- data/assets/templates/email-verification-text.sf.html +6 -0
- data/assets/templates/request-new-password-text.sf.txt +7 -0
- data/icons/android-chrome-192x192.png +0 -0
- data/icons/apple-touch-icon.png +0 -0
- data/icons/browserconfig.xml +9 -0
- data/icons/favicon-16x16.png +0 -0
- data/icons/favicon-32x32.png +0 -0
- data/icons/favicon.ico +0 -0
- data/icons/manifest.json +13 -0
- data/icons/mstile-150x150.png +0 -0
- data/icons/safari-pinned-tab.svg +14 -0
- data/pages/about/about.md +15 -0
- data/pages/account/comment-edit.sf.md +60 -0
- data/pages/account/comment-review.sf.md +80 -0
- data/pages/account/email-verification-failed.sf.md +11 -0
- data/pages/account/email-verification-success.sf.md +7 -0
- data/pages/account/error.sf.md +13 -0
- data/pages/account/forgot-password-continue.sf.md +9 -0
- data/pages/account/forgot-password.sf.md +25 -0
- data/pages/account/login.sf.md +19 -0
- data/pages/account/not-allowed.sf.md +7 -0
- data/pages/account/register-continue.sf.md +11 -0
- data/pages/account/register.sf.md +30 -0
- data/pages/account/request-new-password-failed.sf.md +13 -0
- data/pages/account/set-new-password-success.sf.md +7 -0
- data/pages/account/set-new-password.sf.md +25 -0
- data/pages/categories/classic.md +10 -0
- data/pages/categories/example.md +10 -0
- data/pages/categories/jekyll.md +10 -0
- data/pages/categories/update.md +10 -0
- data/pages/classic/01-features.md +36 -0
- data/pages/classic/02-setup.md +113 -0
- data/pages/classic/03-pages-and-posts.md +25 -0
- data/pages/classic/04-posts.md +18 -0
- data/pages/classic/05-menus.md +118 -0
- data/pages/classic/06-categories.md +38 -0
- data/pages/classic/07-terminology.md +35 -0
- data/pages/classic/08-versioning.md +23 -0
- data/pages/classic/09-problems.md +25 -0
- data/pages/contact/contact.md +18 -0
- data/pages/cookie-consent/cookie-consent.md +7 -0
- data/pages/download/download.md +10 -0
- data/pages/jekyll/01-jekyll.md +42 -0
- data/pages/jekyll/02-speed.md +88 -0
- data/pages/jekyll/03-ruby.md +19 -0
- data/pages/jekyll/04-cron-job.md +163 -0
- data/pages/layouts/banner-main.md +36 -0
- data/pages/layouts/blocks.md +11 -0
- data/pages/layouts/landing-page.md +21 -0
- data/pages/layouts/no-sec-no-ter.md +28 -0
- data/pages/layouts/sec-left-no-ter.md +28 -0
- data/pages/layouts/sec-left-ter-right.md +28 -0
- data/pages/layouts/sec-right-no-ter.md +28 -0
- data/pages/layouts/sec-right-ter-left.md +28 -0
- data/pages/menus/external-url.md +28 -0
- data/pages/menus/landing-page.md +8 -0
- data/pages/menus/submenu-subsections.md +72 -0
- data/pages/menus/submenu1.md +22 -0
- data/pages/menus/submenu2.md +21 -0
- data/pages/menus/submenu3.md +47 -0
- data/pages/menus/submenu4.md +36 -0
- data/pages/menus/subsubmenu3-1.md +21 -0
- data/pages/menus/subsubmenu3-2.md +21 -0
- data/pages/menus/subsubmenu4-1.md +31 -0
- data/pages/menus/subsubmenu4-2.md +31 -0
- metadata +269 -0
@@ -0,0 +1,37 @@
|
|
1
|
+
|
2
|
+
<!-- include secondary-column.html -->
|
3
|
+
{%- comment -%}<!-- This widget separator will only show up in the narrow layout -->{%- endcomment %}
|
4
|
+
<div class="secondary-widget-separator"></div>
|
5
|
+
|
6
|
+
{%- if site.data.setup.drop-down-menu -%}{%- else %}
|
7
|
+
<div class="widget-separator"></div>
|
8
|
+
{%- endif %}
|
9
|
+
|
10
|
+
<div class="widget">
|
11
|
+
{% include widgets/recent-posts.html %}
|
12
|
+
</div>
|
13
|
+
|
14
|
+
<div class="widget-separator"></div>
|
15
|
+
|
16
|
+
<div class="widget">
|
17
|
+
{% include widgets/social-media.html %}
|
18
|
+
</div>
|
19
|
+
|
20
|
+
<div class="widget-separator"></div>
|
21
|
+
|
22
|
+
<div class="widget">
|
23
|
+
{% include widgets/subscribe.html %}
|
24
|
+
</div>
|
25
|
+
|
26
|
+
<div class="widget-separator"></div>
|
27
|
+
|
28
|
+
<div class="widget">
|
29
|
+
{% include widgets/older-posts.html %}
|
30
|
+
</div>
|
31
|
+
|
32
|
+
<div class="widget-separator"></div>
|
33
|
+
|
34
|
+
<div class="widget">
|
35
|
+
{% include widgets/categories.html label-modifier=include.label-modifier %}
|
36
|
+
</div>
|
37
|
+
<!-- end of include secondary-column.html -->
|
@@ -0,0 +1,8 @@
|
|
1
|
+
|
2
|
+
<!-- include tertiary-column.html -->
|
3
|
+
{%- comment -%}<!-- This widget separator will only show up when the tertiary column content is merged into the secondary column-->{%- endcomment %}
|
4
|
+
<div class="tertiary-widget-separator"></div>
|
5
|
+
<div class="widget">
|
6
|
+
{% include widgets/browser-info.html %}
|
7
|
+
</div>
|
8
|
+
<!-- end of include tertiary-column.html -->
|
@@ -0,0 +1,378 @@
|
|
1
|
+
|
2
|
+
<!-- include vertical-menu.html -->
|
3
|
+
{%- if jekyll.environment != 'production' and site.data.setup.fast-content-build -%}{%- else -%}
|
4
|
+
|
5
|
+
{%- comment -%}<!-- Get the top menu item for which to create the menu -->{%- endcomment -%}
|
6
|
+
{%- if page.menuTopTitle -%}
|
7
|
+
{%- assign topTitle = page.menuTopTitle -%}
|
8
|
+
{%- else -%}
|
9
|
+
{%- comment -%}<!-- Fix for missing top title for the home page -->{%- endcomment -%}
|
10
|
+
{%- assign home = 'Home' -%}
|
11
|
+
{%- if site.data.text-for.tHome -%}{%- assign home = site.data.text-for.tHome -%}{%- endif -%}
|
12
|
+
{%- assign topTitle = home -%}
|
13
|
+
{%- endif %}
|
14
|
+
|
15
|
+
<nav class="vmenu-container">
|
16
|
+
<div class="topTitle"><h1>{{ topTitle }}</h1></div>
|
17
|
+
<div class="vmenu">
|
18
|
+
|
19
|
+
{%- comment -%}<!-- Find all entries that belong to the menuTopTitle of this document -->{%- endcomment -%}
|
20
|
+
|
21
|
+
{%- assign buildTimeInSecondsSinceEpoch = site.time | date: "%s" | plus: 0 -%}
|
22
|
+
|
23
|
+
{%- assign pagesForPublishing = "" | split: "" -%}
|
24
|
+
|
25
|
+
{%- if site.data.setup.exclude-pages-from-menus -%}{%- else -%}
|
26
|
+
{%- for ape in site.pages -%}
|
27
|
+
{%- assign pageInSecondsSindsEpoch = ape.date | date:"%s" | plus: 0 -%}
|
28
|
+
{%- if pageInSecondsSindsEpoch < buildTimeInSecondsSinceEpoch -%}
|
29
|
+
{%- assign pagesForPublishing = pagesForPublishing | push: ape -%}
|
30
|
+
{%- endif -%}
|
31
|
+
{%- endfor -%}
|
32
|
+
{%- endif -%}
|
33
|
+
|
34
|
+
{%- if site.data.setup.include-posts-in-menus -%}
|
35
|
+
{%- assign pagesForPublishing = pagesForPublishing | concat: site.posts -%}
|
36
|
+
{%- endif -%}
|
37
|
+
|
38
|
+
|
39
|
+
{%- assign topTitlePages = pagesForPublishing | where:'menuInclude', true | where:'menuTopTitle', topTitle -%}
|
40
|
+
|
41
|
+
{%- comment -%}<!-- note: these html comment tags are for editor coloring support
|
42
|
+
|
43
|
+
Due to the poor support for variables in Liquid we have to resort to some fairly laborious code.
|
44
|
+
|
45
|
+
First determine all pages that contain sub menu information for the running top menu item. These are collected in "topTitlePages"
|
46
|
+
|
47
|
+
Then create four lists containing the sub menu title, index, url and link respectively. These lists are all in the same sequence such that entry [n] is applicable to the same sub menu in all lists. (I.e. they are synchronous)
|
48
|
+
|
49
|
+
Then sort the lists into four new lists. Again these lists must be kept synchronous.
|
50
|
+
|
51
|
+
Lastly, step through the lists to create the actual sub menu's
|
52
|
+
|
53
|
+
-->{%- endcomment -%}
|
54
|
+
|
55
|
+
{%- comment -%}<!-- Find all sub menu entries on the topTitlePages -->{%- endcomment -%}
|
56
|
+
|
57
|
+
{%- assign subMenuTitles = "" | split: "" -%}
|
58
|
+
{%- assign subMenuIndexes = "" | split: "" -%}
|
59
|
+
{%- assign subMenuUrls = "" | split: "" -%}
|
60
|
+
{%- assign subMenuLinks = "" | split: "" -%}
|
61
|
+
|
62
|
+
{%- for ape in topTitlePages -%}
|
63
|
+
{%- if ape.menuSubTitle != nil -%}
|
64
|
+
{%- assign subMenuTitles = subMenuTitles | push: ape.menuSubTitle -%}
|
65
|
+
{%- if ape.menuSubIndex != nil -%}
|
66
|
+
{%- assign subMenuIndexes = subMenuIndexes | push: ape.menuSubIndex -%}
|
67
|
+
{%- else -%}
|
68
|
+
{%- assign subMenuIndexes = subMenuIndexes | push: -1 -%}
|
69
|
+
{%- endif -%}
|
70
|
+
{%- assign subMenuUrls = subMenuUrls | push: ape.url -%}
|
71
|
+
{%- if ape.menuLink != nil -%}
|
72
|
+
{%- assign subMenuLinks = subMenuLinks | push: ape.menuLink -%}
|
73
|
+
{%- else -%}
|
74
|
+
{%- assign subMenuLinks = subMenuLinks | push: true -%}
|
75
|
+
{%- endif -%}
|
76
|
+
{%- endif -%}
|
77
|
+
{%- if ape.menuSubs != nil -%}
|
78
|
+
{%- for sub in ape.menuSubs -%}
|
79
|
+
{%- assign subMenuTitles = subMenuTitles | push: sub.title -%}
|
80
|
+
{%- if sub.index != nil -%}
|
81
|
+
{%- assign subMenuIndexes = subMenuIndexes | push: sub.index -%}
|
82
|
+
{%- else -%}
|
83
|
+
{%- assign subMenuIndexes = subMenuIndexes | push: -1 -%}
|
84
|
+
{%- endif -%}
|
85
|
+
{%- if sub.url != nil -%}
|
86
|
+
{%- if sub.anchorId != nil -%}
|
87
|
+
{%- assign urlWithAnchorId = sub.url | append: '#' | append: sub.anchorId -%}
|
88
|
+
{%- else -%}
|
89
|
+
{%- assign urlWithAnchorId = sub.url -%}
|
90
|
+
{%- endif -%}
|
91
|
+
{%- else -%}
|
92
|
+
{%- if sub.anchorId != nil -%}
|
93
|
+
{%- assign urlWithAnchorId = ape.url | append: '#' | append: sub.anchorId -%}
|
94
|
+
{%- else -%}
|
95
|
+
{%- assign urlWithAnchorId = ape.url -%}
|
96
|
+
{%- endif -%}
|
97
|
+
{%- endif -%}
|
98
|
+
{%- assign subMenuUrls = subMenuUrls | push: urlWithAnchorId -%}
|
99
|
+
{%- if sub.link != nil -%}
|
100
|
+
{%- assign subMenuLinks = subMenuLinks | push: sub.link -%}
|
101
|
+
{%- else -%}
|
102
|
+
{%- assign subMenuLinks = subMenuLinks | push: true -%}
|
103
|
+
{%- endif -%}
|
104
|
+
{%- endfor -%}
|
105
|
+
{%- endif -%}
|
106
|
+
{%- endfor -%}
|
107
|
+
|
108
|
+
{%- comment -%}<!-- Sort all 4 the lists based on the index of the subMenu that was read -->{%- endcomment -%}
|
109
|
+
|
110
|
+
{%- assign sortedSubMenuTitles = "" | split: "" -%}
|
111
|
+
{%- assign sortedSubMenuIndexes = subMenuIndexes | sort -%}
|
112
|
+
{%- assign sortedSubMenuUrls = "" | split: "" -%}
|
113
|
+
{%- assign sortedSubMenuLinks = "" | split: "" -%}
|
114
|
+
|
115
|
+
{%- for menuIndex in sortedSubMenuIndexes -%}
|
116
|
+
{%- if menuIndex != -1 -%}
|
117
|
+
{%- for aMenuIndex in subMenuIndexes -%}
|
118
|
+
{%- if aMenuIndex == menuIndex -%}
|
119
|
+
{%- assign sortedSubMenuTitles = sortedSubMenuTitles | push: subMenuTitles[forloop.index0] -%}
|
120
|
+
{%- assign sortedSubMenuUrls = sortedSubMenuUrls | push: subMenuUrls[forloop.index0] -%}
|
121
|
+
{%- assign sortedSubMenuLinks = sortedSubMenuLinks | push: subMenuLinks[forloop.index0] -%}
|
122
|
+
{%- continue -%}
|
123
|
+
{%- endif -%}
|
124
|
+
{%- endfor -%}
|
125
|
+
{%- endif -%}
|
126
|
+
{%- endfor -%}
|
127
|
+
{%- for aMenuIndex in subMenuIndexes -%}
|
128
|
+
{%- if aMenuIndex == -1 -%}
|
129
|
+
{%- assign sortedSubMenuTitles = sortedSubMenuTitles | push: subMenuTitles[forloop.index0] -%}
|
130
|
+
{%- assign sortedSubMenuUrls = sortedSubMenuUrls | push: subMenuUrls[forloop.index0] -%}
|
131
|
+
{%- assign sortedSubMenuLinks = sortedSubMenuLinks | push: subMenuLinks[forloop.index0] -%}
|
132
|
+
{%- continue -%}
|
133
|
+
{%- endif -%}
|
134
|
+
{%- endfor -%}
|
135
|
+
|
136
|
+
|
137
|
+
{%- assign processedSubMenuTitles = "" | split: "" -%}
|
138
|
+
|
139
|
+
{%- for subMenuTitle in sortedSubMenuTitles -%}
|
140
|
+
|
141
|
+
{%- comment -%}<!-- Do not build the same sub menu item twice -->{%- endcomment -%}
|
142
|
+
|
143
|
+
{%- assign subMenuTitleProcessed = false -%}
|
144
|
+
{%- for smt in processedSubMenuTitles -%}
|
145
|
+
{%- if smt == subMenuTitle -%}{% assign subMenuTitleProcessed = true -%}{%- endif -%}
|
146
|
+
{%- endfor -%}
|
147
|
+
{%- if subMenuTitleProcessed -%}
|
148
|
+
{%- continue -%}
|
149
|
+
{%- else -%}
|
150
|
+
{%- assign processedSubMenuTitles = processedSubMenuTitles | push: subMenuTitle -%}
|
151
|
+
{%- endif -%}
|
152
|
+
|
153
|
+
{%- comment -%}<!-- Repeat the above, for the submenu title, building the subsub menu -->{%- endcomment -%}
|
154
|
+
|
155
|
+
{%- assign subsubMenuTitles = "" | split: "" -%}
|
156
|
+
{%- assign subsubMenuIndexes = "" | split: "" -%}
|
157
|
+
{%- assign subsubMenuUrls = "" | split: "" -%}
|
158
|
+
{%- assign subsubMenuLinks = "" | split: "" -%}
|
159
|
+
|
160
|
+
{%- for ape in topTitlePages -%}
|
161
|
+
{%- if ape.menuSubs != nil -%}
|
162
|
+
{%- for sub in ape.menuSubs -%}
|
163
|
+
{%- if sub.title == subMenuTitle -%}
|
164
|
+
{%- if sub.sub != nil -%}
|
165
|
+
{%- for subsub in sub.sub -%}
|
166
|
+
{%- assign subsubMenuTitles = subsubMenuTitles | push: subsub.title -%}
|
167
|
+
{%- if subsub.index != nil -%}
|
168
|
+
{%- assign subsubMenuIndexes = subsubMenuIndexes | push: subsub.index -%}
|
169
|
+
{%- else -%}
|
170
|
+
{%- assign subsubMenuIndexes = subsubMenuIndexes | push: -1 -%}
|
171
|
+
{%- endif -%}
|
172
|
+
{%- if subsub.url != nil -%}
|
173
|
+
{%- if subsub.anchorId != nil -%}
|
174
|
+
{%- assign urlWithAnchorId = subsub.url | append: '#' | append: subsub.anchorId -%}
|
175
|
+
{%- else -%}
|
176
|
+
{%- assign urlWithAnchorId = subsub.url -%}
|
177
|
+
{%- endif -%}
|
178
|
+
{%- else -%}
|
179
|
+
{%- if subsub.anchorId != nil -%}
|
180
|
+
{%- assign urlWithAnchorId = ape.url | append: '#' | append: subsub.anchorId -%}
|
181
|
+
{%- else -%}
|
182
|
+
{%- assign urlWithAnchorId = ape.url -%}
|
183
|
+
{%- endif -%}
|
184
|
+
{%- endif -%}
|
185
|
+
{%- assign subsubMenuUrls = subsubMenuUrls | push: urlWithAnchorId -%}
|
186
|
+
{%- if subsub.link != nil -%}
|
187
|
+
{%- assign subsubMenuLinks = subsubMenuLinks | push: subsub.link -%}
|
188
|
+
{%- else -%}
|
189
|
+
{%- assign subsubMenuLinks = subsubMenuLinks | push: true -%}
|
190
|
+
{%- endif -%}
|
191
|
+
{%- endfor -%}
|
192
|
+
{%- endif -%}
|
193
|
+
{%- endif -%}
|
194
|
+
{%- endfor -%}
|
195
|
+
{%- endif -%}
|
196
|
+
{%- endfor -%}
|
197
|
+
|
198
|
+
{%- comment -%}<!-- Sort all 4 the lists based on the index of the subMenu that was read -->{%- endcomment -%}
|
199
|
+
|
200
|
+
{%- assign sortedSubsubMenuTitles = "" | split: "" -%}
|
201
|
+
{%- assign sortedSubsubMenuIndexes = subsubMenuIndexes | sort -%}
|
202
|
+
{%- assign sortedSubsubMenuUrls = "" | split: "" -%}
|
203
|
+
{%- assign sortedSubsubMenuLinks = "" | split: "" -%}
|
204
|
+
|
205
|
+
{%- for menuIndex in sortedSubsubMenuIndexes -%}
|
206
|
+
{%- if menuIndex != -1 -%}
|
207
|
+
{%- for aMenuIndex in subsubMenuIndexes -%}
|
208
|
+
{%- if aMenuIndex == menuIndex -%}
|
209
|
+
{%- assign sortedSubsubMenuTitles = sortedSubsubMenuTitles | push: subsubMenuTitles[forloop.index0] -%}
|
210
|
+
{%- assign sortedSubsubMenuUrls = sortedSubsubMenuUrls | push: subsubMenuUrls[forloop.index0] -%}
|
211
|
+
{%- assign sortedSubsubMenuLinks = sortedSubsubMenuLinks | push: subsubMenuLinks[forloop.index0] -%}
|
212
|
+
{%- continue -%}
|
213
|
+
{%- endif -%}
|
214
|
+
{%- endfor -%}
|
215
|
+
{%- endif -%}
|
216
|
+
{%- endfor -%}
|
217
|
+
{%- for aMenuIndex in subsubMenuIndexes -%}
|
218
|
+
{%- if aMenuIndex == -1 -%}
|
219
|
+
{%- assign sortedSubsubMenuTitles = sortedSubsubMenuTitles | push: subsubMenuTitles[forloop.index0] -%}
|
220
|
+
{%- assign sortedSubsubMenuUrls = sortedSubsubMenuUrls | push: subsubMenuUrls[forloop.index0] -%}
|
221
|
+
{%- assign sortedSubsubMenuLinks = sortedSubsubMenuLinks | push: subsubMenuLinks[forloop.index0] -%}
|
222
|
+
{%- continue -%}
|
223
|
+
{%- endif -%}
|
224
|
+
{%- endfor %}
|
225
|
+
<div class="subitem">
|
226
|
+
|
227
|
+
{%- comment -%}<!-- Sub menu item -->{%- endcomment -%}
|
228
|
+
|
229
|
+
{%- if sortedSubsubMenuTitles.size == 0 -%}
|
230
|
+
{%- if sortedSubMenuLinks[forloop.index0] != false -%}
|
231
|
+
{%- if sortedSubMenuUrls[forloop.index0] == page.url %}
|
232
|
+
<div class="sub-isActivePage">
|
233
|
+
<div class="disclosure"><p></p></div>
|
234
|
+
<div class="title">
|
235
|
+
{%- if sortedSubMenuUrls[forloop.index0] contains "http" -%}
|
236
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] }}"><p>{{ subMenuTitle }}</p></a>
|
237
|
+
{%- else -%}
|
238
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] | relative_url }}"><p>{{ subMenuTitle }}</p></a>
|
239
|
+
{%- endif -%}
|
240
|
+
</div>
|
241
|
+
</div>
|
242
|
+
{%- else %}
|
243
|
+
{%- assign urlFound = false -%}
|
244
|
+
{%- for url in sortedSubsubMenuUrls -%}
|
245
|
+
{%- if url == page.url -%}{%- assign urlFound = true -%}{%- endif -%}
|
246
|
+
{%- endfor -%}
|
247
|
+
{%- if urlFound %}
|
248
|
+
<div class="sub-isActivePage">
|
249
|
+
<div class="disclosure"><p></p></div>
|
250
|
+
<div class="title">
|
251
|
+
{%- if sortedSubMenuUrls[forloop.index0] contains "http" -%}
|
252
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] }}"><p>{{ subMenuTitle }}</p></a>
|
253
|
+
{%- else -%}
|
254
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] | relative_url }}"><p>{{ subMenuTitle }}</p></a>
|
255
|
+
{%- endif -%}
|
256
|
+
</div>
|
257
|
+
</div>
|
258
|
+
{%- else %}
|
259
|
+
<div class="sub-hasLink">
|
260
|
+
<div class="disclosure"><p></p></div>
|
261
|
+
<div class="title">
|
262
|
+
{%- if sortedSubMenuUrls[forloop.index0] contains "http" -%}
|
263
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] }}"><p>{{ subMenuTitle }}</p></a>
|
264
|
+
{%- else -%}
|
265
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] | relative_url }}"><p>{{ subMenuTitle }}</p></a>
|
266
|
+
{%- endif -%}
|
267
|
+
</div>
|
268
|
+
</div>
|
269
|
+
{%- endif -%}
|
270
|
+
{%- endif -%}
|
271
|
+
{%- else %}
|
272
|
+
<div class="sub">
|
273
|
+
<div class="disclosure"><p></p></div>
|
274
|
+
<div class="title"><p>{{ subMenuTitle }}</p></div>
|
275
|
+
</div>
|
276
|
+
{%- endif -%}
|
277
|
+
{%- else %}
|
278
|
+
{%- if sortedSubMenuLinks[forloop.index0] != false -%}
|
279
|
+
{%- if sortedSubMenuUrls[forloop.index0] == page.url %}
|
280
|
+
<input type="checkbox" id="{{ subMenuTitle | replace:' ','-' | append:'-vmenu-' | append: include.label-modifier }}">
|
281
|
+
<div class="sub-isActivePage">
|
282
|
+
<label class="disclosure show-hover" for="{{ subMenuTitle | replace:' ','-' | append:'-vmenu-' | append: include.label-modifier }}">
|
283
|
+
<p class="symbol"><!-- will be filled by disclosure indicator --></p>
|
284
|
+
</label>
|
285
|
+
<div class="title">
|
286
|
+
{%- if sortedSubMenuUrls[forloop.index0] contains "http" -%}
|
287
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] }}"><p>{{ subMenuTitle }}</p></a>
|
288
|
+
{%- else -%}
|
289
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] | relative_url }}"><p>{{ subMenuTitle }}</p></a>
|
290
|
+
{%- endif -%}
|
291
|
+
</div>
|
292
|
+
</div>
|
293
|
+
{%- else %}
|
294
|
+
{%- assign urlFound = false -%}
|
295
|
+
{%- for url in sortedSubsubMenuUrls -%}
|
296
|
+
{%- if url == page.url -%}{%- assign urlFound = true -%}{%- endif -%}
|
297
|
+
{%- endfor -%}
|
298
|
+
{%- if urlFound %}
|
299
|
+
<input type="checkbox" id="{{ subMenuTitle | replace:' ','-' | append:'-vmenu-' | append: include.label-modifier }}" checked>
|
300
|
+
<div class="sub-isActivePage">
|
301
|
+
<label class="disclosure show-hover" for="{{ subMenuTitle | replace:' ','-' | append:'-vmenu-' | append: include.label-modifier }}">
|
302
|
+
<p class="symbol"><!-- will be filled by disclosure indicator --></p>
|
303
|
+
</label>
|
304
|
+
<div class="title">
|
305
|
+
{%- if sortedSubMenuUrls[forloop.index0] contains "http" -%}
|
306
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] }}"><p>{{ subMenuTitle }}</p></a>
|
307
|
+
{%- else -%}
|
308
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] | relative_url }}"><p>{{ subMenuTitle }}</p></a>
|
309
|
+
{%- endif -%}
|
310
|
+
</div>
|
311
|
+
</div>
|
312
|
+
{%- else %}
|
313
|
+
<input type="checkbox" id="{{ subMenuTitle | replace:' ','-' | append:'-vmenu-' | append: include.label-modifier }}">
|
314
|
+
<div class="sub-hasLink">
|
315
|
+
<label class="disclosure show-hover" for="{{ subMenuTitle | replace:' ','-' | append:'-vmenu-' | append: include.label-modifier }}">
|
316
|
+
<p class="symbol"><!-- will be filled by disclosure indicator --></p>
|
317
|
+
</label>
|
318
|
+
<div class="title">
|
319
|
+
{%- if sortedSubMenuUrls[forloop.index0] contains "http" -%}
|
320
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] }}"><p>{{ subMenuTitle }}</p></a>
|
321
|
+
{%- else -%}
|
322
|
+
<a href="{{ sortedSubMenuUrls[forloop.index0] | relative_url }}"><p>{{ subMenuTitle }}</p></a>
|
323
|
+
{%- endif -%}
|
324
|
+
</div>
|
325
|
+
</div>
|
326
|
+
{%- endif -%}
|
327
|
+
{%- endif -%}
|
328
|
+
{%- else %}
|
329
|
+
<input type="checkbox" id="{{ subMenuTitle | replace:' ','-' | append:'-vmenu-' | append: include.label-modifier }}">
|
330
|
+
<div class="sub">
|
331
|
+
<label class="disclosure show-hover" for="{{ subMenuTitle | replace:' ','-' | append:'-vmenu-' | append: include.label-modifier }}">
|
332
|
+
<p class="symbol"><!-- will be filled by disclosure indicator --></p>
|
333
|
+
</label>
|
334
|
+
<div class="title"><p>{{ subMenuTitle }}</p></div>
|
335
|
+
</div>
|
336
|
+
{%- endif -%}
|
337
|
+
|
338
|
+
{%- comment -%}<!-- Sub sub menu items -->{%- endcomment -%}
|
339
|
+
|
340
|
+
{%- for subsubTitle in sortedSubsubMenuTitles -%}
|
341
|
+
{%- if sortedSubsubMenuLinks[forloop.index0] != false -%}
|
342
|
+
{%- if sortedSubsubMenuUrls[forloop.index0] == page.url %}
|
343
|
+
<div class="subsub-isActivePage">
|
344
|
+
<div class="disclosure"><p></p></div>
|
345
|
+
<div class="title">
|
346
|
+
{%- if sortedSubsubMenuUrls[forloop.index0] contains "http" -%}
|
347
|
+
<a href="{{ sortedSubsubMenuUrls[forloop.index0] }}"><p>{{ subsubTitle }}</p></a>
|
348
|
+
{%- else -%}
|
349
|
+
<a href="{{ sortedSubsubMenuUrls[forloop.index0] | relative_url }}"><p>{{ subsubTitle }}</p></a>
|
350
|
+
{%- endif -%}
|
351
|
+
</div>
|
352
|
+
</div>
|
353
|
+
{%- else %}
|
354
|
+
<div class="subsub-hasLink">
|
355
|
+
<div class="disclosure"><p></p></div>
|
356
|
+
<div class="title">
|
357
|
+
{%- if sortedSubsubMenuUrls[forloop.index0] contains "http" -%}
|
358
|
+
<a href="{{ sortedSubsubMenuUrls[forloop.index0] }}"><p>{{ subsubTitle }}</p></a>
|
359
|
+
{%- else -%}
|
360
|
+
<a href="{{ sortedSubsubMenuUrls[forloop.index0] | relative_url }}"><p>{{ subsubTitle }}</p></a>
|
361
|
+
{%- endif -%}
|
362
|
+
</div>
|
363
|
+
</div>
|
364
|
+
{% endif -%}
|
365
|
+
{%- else %}
|
366
|
+
<div class="subsub">
|
367
|
+
<div class="disclosure"><p></p></div>
|
368
|
+
<div class="title"><p>{{ subsubTitle }}</p></div>
|
369
|
+
</div>
|
370
|
+
{%- endif -%}
|
371
|
+
{%- endfor -%}
|
372
|
+
{%- endif %}
|
373
|
+
</div>
|
374
|
+
{%- endfor %}
|
375
|
+
</div>
|
376
|
+
</nav>
|
377
|
+
{%- endif %}
|
378
|
+
<!-- end of include vertical-menu.html -->
|
@@ -0,0 +1,16 @@
|
|
1
|
+
|
2
|
+
<!-- include browser-info.html -->
|
3
|
+
<div class="browser-info">
|
4
|
+
<h1>Browser information:</h1>
|
5
|
+
<p>This website uses CSS3 & HTML5. It is recommended to use a modern browser with at least the following version number:</p>
|
6
|
+
<ul>
|
7
|
+
<li>Chrome 29.0</li>
|
8
|
+
<li>Edge 12.0</li>
|
9
|
+
<li>Explorer 11.0</li>
|
10
|
+
<li>Firefox 28.0</li>
|
11
|
+
<li>Safari 9.0</li>
|
12
|
+
<li>Opera 17.0</li>
|
13
|
+
</ul>
|
14
|
+
<p>Problems? please <a href="{{ "/pages/contact/contact.html" | relative_url }}">contact</a> me.</p>
|
15
|
+
</div>
|
16
|
+
<!-- end of include browser-info.html -->
|
@@ -0,0 +1,32 @@
|
|
1
|
+
|
2
|
+
<!-- include categories.html -->
|
3
|
+
{%- if jekyll.environment != 'production' and site.data.setup.fast-content-build -%}{%- else %}
|
4
|
+
|
5
|
+
{%- assign buildTimeInSecondsSinceEpoch = site.time | date: "%s" | plus: 0 -%}
|
6
|
+
|
7
|
+
{%- assign pagesForPublishing = "" | split: "" -%}
|
8
|
+
{%- for ape in site.pages -%}
|
9
|
+
{%- assign pageInSecondsSindsEpoch = ape.date | date:"%s" | plus: 0 -%}
|
10
|
+
{%- if pageInSecondsSindsEpoch < buildTimeInSecondsSinceEpoch -%}
|
11
|
+
{%- assign pagesForPublishing = pagesForPublishing | push: ape -%}
|
12
|
+
{%- endif -%}
|
13
|
+
{%- endfor -%}
|
14
|
+
|
15
|
+
<div class="categories">
|
16
|
+
{%- assign categories = 'Categories' -%}
|
17
|
+
{%- if site.data.text-for.tCategories -%}{%- assign categories = site.data.text-for.tCategories -%}{%- endif %}
|
18
|
+
<input type="checkbox" id={{ "category-checkbox" | append: include.label-modifier }}>
|
19
|
+
<label for={{ "category-checkbox" | append: include.label-modifier }}><h1>{{ categories }}</h1></label>
|
20
|
+
{%- assign cats = pagesForPublishing | where:'layout', 'category-page' | sort:'title' -%}
|
21
|
+
{%- if cats.size > 0 -%}
|
22
|
+
{%- for cat in cats %}
|
23
|
+
<div class="text"><a href="{{ cat.url | relative_url }}"><p>{{ cat.title | capitalize }}</p></a></div>
|
24
|
+
{%- endfor -%}
|
25
|
+
{%- else -%}
|
26
|
+
{%- assign no-categories = 'None' -%}
|
27
|
+
{%- if site.data.text-for.tNoCategories -%}{%- assign no-categories = site.data.text-for.tNoCategories -%}{%- endif %}
|
28
|
+
<div class="text"><p>{{ no-categories | capitalize }}</p></div>
|
29
|
+
{%- endif %}
|
30
|
+
</div>
|
31
|
+
{%- endif %}
|
32
|
+
<!-- end of include categories.html -->
|