jekyll-theme-woforo 0.1.3 → 0.2.0

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 (179) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +690 -0
  3. data/{LICENSE → LICENSE.txt} +5 -5
  4. data/README.md +128 -19
  5. data/_includes/analytics-providers/custom.html +3 -0
  6. data/_includes/analytics-providers/google-universal.html +9 -0
  7. data/_includes/analytics-providers/google.html +11 -0
  8. data/_includes/analytics.html +12 -0
  9. data/_includes/archive-single.html +38 -0
  10. data/_includes/author-profile-custom-links.html +7 -0
  11. data/_includes/author-profile.html +241 -0
  12. data/_includes/base_path +5 -0
  13. data/_includes/breadcrumbs.html +39 -0
  14. data/_includes/browser-upgrade.html +3 -0
  15. data/_includes/category-list.html +26 -0
  16. data/_includes/comment.html +22 -0
  17. data/_includes/comments-providers/custom.html +3 -0
  18. data/_includes/comments-providers/discourse.html +13 -0
  19. data/_includes/comments-providers/disqus.html +22 -0
  20. data/_includes/comments-providers/facebook.html +8 -0
  21. data/_includes/comments-providers/google-plus.html +2 -0
  22. data/_includes/comments-providers/scripts.html +18 -0
  23. data/_includes/comments-providers/staticman.html +42 -0
  24. data/_includes/comments.html +80 -0
  25. data/_includes/feature_row +50 -0
  26. data/_includes/figure +12 -0
  27. data/_includes/footer.html +22 -0
  28. data/_includes/footer/custom.html +3 -0
  29. data/_includes/gallery +47 -0
  30. data/_includes/group-by-array +47 -0
  31. data/_includes/head.html +19 -9
  32. data/_includes/head/custom.html +5 -0
  33. data/_includes/masthead.html +21 -0
  34. data/_includes/nav_list +47 -0
  35. data/_includes/page__hero.html +53 -0
  36. data/_includes/page__taxonomy.html +7 -0
  37. data/_includes/paginator.html +68 -0
  38. data/_includes/post_pagination.html +14 -0
  39. data/_includes/read-time.html +15 -0
  40. data/_includes/scripts.html +4 -0
  41. data/_includes/seo.html +145 -0
  42. data/_includes/sidebar.html +23 -0
  43. data/_includes/social-share.html +13 -0
  44. data/_includes/tag-list.html +26 -0
  45. data/_includes/toc +7 -0
  46. data/_layouts/archive-taxonomy.html +15 -0
  47. data/_layouts/archive.html +24 -0
  48. data/_layouts/compress.html +10 -0
  49. data/_layouts/default.html +25 -5
  50. data/_layouts/home.html +11 -0
  51. data/_layouts/single.html +74 -0
  52. data/_layouts/splash.html +20 -0
  53. data/_sass/_animations.scss +21 -0
  54. data/_sass/_archive.scss +238 -0
  55. data/_sass/_base.scss +315 -0
  56. data/_sass/_buttons.scss +153 -0
  57. data/_sass/_footer.scss +80 -0
  58. data/_sass/_forms.scss +391 -0
  59. data/_sass/_masthead.scss +53 -0
  60. data/_sass/_mixins.scss +53 -0
  61. data/_sass/_navigation.scss +544 -0
  62. data/_sass/_notices.scss +99 -0
  63. data/_sass/_page.scss +401 -0
  64. data/_sass/_print.scss +18 -0
  65. data/_sass/_reset.scss +187 -0
  66. data/_sass/_sidebar.scss +231 -0
  67. data/_sass/_syntax.scss +146 -0
  68. data/_sass/_tables.scss +38 -0
  69. data/_sass/_utilities.scss +470 -0
  70. data/_sass/_variables.scss +128 -0
  71. data/_sass/vendor/breakpoint/_breakpoint.scss +114 -0
  72. data/_sass/vendor/breakpoint/_context.scss +95 -0
  73. data/_sass/vendor/breakpoint/_helpers.scss +151 -0
  74. data/_sass/vendor/breakpoint/_legacy-settings.scss +50 -0
  75. data/_sass/vendor/breakpoint/_no-query.scss +15 -0
  76. data/_sass/vendor/breakpoint/_parsers.scss +215 -0
  77. data/_sass/vendor/breakpoint/_respond-to.scss +82 -0
  78. data/_sass/vendor/breakpoint/_settings.scss +71 -0
  79. data/_sass/vendor/breakpoint/parsers/_double.scss +33 -0
  80. data/_sass/vendor/breakpoint/parsers/_query.scss +82 -0
  81. data/_sass/vendor/breakpoint/parsers/_resolution.scss +31 -0
  82. data/_sass/vendor/breakpoint/parsers/_single.scss +26 -0
  83. data/_sass/vendor/breakpoint/parsers/_triple.scss +36 -0
  84. data/_sass/vendor/breakpoint/parsers/double/_default-pair.scss +21 -0
  85. data/_sass/vendor/breakpoint/parsers/double/_default.scss +22 -0
  86. data/_sass/vendor/breakpoint/parsers/double/_double-string.scss +22 -0
  87. data/_sass/vendor/breakpoint/parsers/resolution/_resolution.scss +60 -0
  88. data/_sass/vendor/breakpoint/parsers/single/_default.scss +13 -0
  89. data/_sass/vendor/breakpoint/parsers/triple/_default.scss +18 -0
  90. data/_sass/vendor/font-awesome/_animated.scss +34 -0
  91. data/_sass/vendor/font-awesome/_bordered-pulled.scss +25 -0
  92. data/_sass/vendor/font-awesome/_core.scss +12 -0
  93. data/_sass/vendor/font-awesome/_fixed-width.scss +6 -0
  94. data/_sass/vendor/font-awesome/_font-awesome.scss +18 -0
  95. data/_sass/vendor/font-awesome/_icons.scss +789 -0
  96. data/_sass/vendor/font-awesome/_larger.scss +13 -0
  97. data/_sass/vendor/font-awesome/_list.scss +19 -0
  98. data/_sass/vendor/font-awesome/_mixins.scss +60 -0
  99. data/_sass/vendor/font-awesome/_path.scss +15 -0
  100. data/_sass/vendor/font-awesome/_rotated-flipped.scss +20 -0
  101. data/_sass/vendor/font-awesome/_screen-reader.scss +5 -0
  102. data/_sass/vendor/font-awesome/_stacked.scss +20 -0
  103. data/_sass/vendor/font-awesome/_variables.scss +800 -0
  104. data/_sass/vendor/magnific-popup/_magnific-popup.scss +649 -0
  105. data/_sass/vendor/magnific-popup/_settings.scss +46 -0
  106. data/_sass/vendor/susy/_su.scss +4 -0
  107. data/_sass/vendor/susy/_susy.scss +4 -0
  108. data/_sass/vendor/susy/_susyone.scss +4 -0
  109. data/_sass/vendor/susy/susy/_su.scss +7 -0
  110. data/_sass/vendor/susy/susy/language/_susy.scss +24 -0
  111. data/_sass/vendor/susy/susy/language/_susyone.scss +13 -0
  112. data/_sass/vendor/susy/susy/language/susy/_background.scss +385 -0
  113. data/_sass/vendor/susy/susy/language/susy/_bleed.scss +200 -0
  114. data/_sass/vendor/susy/susy/language/susy/_box-sizing.scss +47 -0
  115. data/_sass/vendor/susy/susy/language/susy/_breakpoint-plugin.scss +185 -0
  116. data/_sass/vendor/susy/susy/language/susy/_container.scss +81 -0
  117. data/_sass/vendor/susy/susy/language/susy/_context.scss +36 -0
  118. data/_sass/vendor/susy/susy/language/susy/_gallery.scss +94 -0
  119. data/_sass/vendor/susy/susy/language/susy/_grids.scss +64 -0
  120. data/_sass/vendor/susy/susy/language/susy/_gutters.scss +154 -0
  121. data/_sass/vendor/susy/susy/language/susy/_isolate.scss +77 -0
  122. data/_sass/vendor/susy/susy/language/susy/_margins.scss +94 -0
  123. data/_sass/vendor/susy/susy/language/susy/_padding.scss +74 -0
  124. data/_sass/vendor/susy/susy/language/susy/_rows.scss +138 -0
  125. data/_sass/vendor/susy/susy/language/susy/_settings.scss +216 -0
  126. data/_sass/vendor/susy/susy/language/susy/_span.scss +163 -0
  127. data/_sass/vendor/susy/susy/language/susy/_validation.scss +16 -0
  128. data/_sass/vendor/susy/susy/language/susyone/_background.scss +18 -0
  129. data/_sass/vendor/susy/susy/language/susyone/_functions.scss +377 -0
  130. data/_sass/vendor/susy/susy/language/susyone/_grid.scss +312 -0
  131. data/_sass/vendor/susy/susy/language/susyone/_isolation.scss +51 -0
  132. data/_sass/vendor/susy/susy/language/susyone/_margin.scss +93 -0
  133. data/_sass/vendor/susy/susy/language/susyone/_media.scss +105 -0
  134. data/_sass/vendor/susy/susy/language/susyone/_padding.scss +92 -0
  135. data/_sass/vendor/susy/susy/language/susyone/_settings.scss +60 -0
  136. data/_sass/vendor/susy/susy/output/_float.scss +9 -0
  137. data/_sass/vendor/susy/susy/output/_shared.scss +15 -0
  138. data/_sass/vendor/susy/susy/output/_support.scss +9 -0
  139. data/_sass/vendor/susy/susy/output/float/_container.scss +16 -0
  140. data/_sass/vendor/susy/susy/output/float/_end.scss +40 -0
  141. data/_sass/vendor/susy/susy/output/float/_isolate.scss +22 -0
  142. data/_sass/vendor/susy/susy/output/float/_span.scss +35 -0
  143. data/_sass/vendor/susy/susy/output/shared/_background.scss +26 -0
  144. data/_sass/vendor/susy/susy/output/shared/_container.scss +21 -0
  145. data/_sass/vendor/susy/susy/output/shared/_direction.scss +42 -0
  146. data/_sass/vendor/susy/susy/output/shared/_inspect.scss +25 -0
  147. data/_sass/vendor/susy/susy/output/shared/_margins.scss +23 -0
  148. data/_sass/vendor/susy/susy/output/shared/_output.scss +14 -0
  149. data/_sass/vendor/susy/susy/output/shared/_padding.scss +23 -0
  150. data/_sass/vendor/susy/susy/output/support/_background.scss +58 -0
  151. data/_sass/vendor/susy/susy/output/support/_box-sizing.scss +19 -0
  152. data/_sass/vendor/susy/susy/output/support/_clearfix.scss +18 -0
  153. data/_sass/vendor/susy/susy/output/support/_prefix.scss +19 -0
  154. data/_sass/vendor/susy/susy/output/support/_rem.scss +22 -0
  155. data/_sass/vendor/susy/susy/output/support/_support.scss +85 -0
  156. data/_sass/vendor/susy/susy/su/_grid.scss +103 -0
  157. data/_sass/vendor/susy/susy/su/_settings.scss +73 -0
  158. data/_sass/vendor/susy/susy/su/_utilities.scss +111 -0
  159. data/_sass/vendor/susy/susy/su/_validation.scss +57 -0
  160. data/assets/css/main.scss +79 -0
  161. data/assets/fonts/FontAwesome.otf +0 -0
  162. data/assets/fonts/fontawesome-webfont.eot +0 -0
  163. data/assets/fonts/fontawesome-webfont.svg +2671 -0
  164. data/assets/fonts/fontawesome-webfont.ttf +0 -0
  165. data/assets/fonts/fontawesome-webfont.woff +0 -0
  166. data/assets/fonts/fontawesome-webfont.woff2 +0 -0
  167. data/assets/js/_main.js +100 -0
  168. data/assets/js/main.min.js +5 -0
  169. data/assets/js/plugins/jquery.fitvids.js +82 -0
  170. data/assets/js/plugins/jquery.greedy-navigation.js +72 -0
  171. data/assets/js/plugins/jquery.magnific-popup.js +2049 -0
  172. data/assets/js/plugins/jquery.smooth-scroll.min.js +8 -0
  173. data/assets/js/plugins/stickyfill.min.js +8 -0
  174. data/assets/js/vendor/jquery/jquery-1.12.4.min.js +5 -0
  175. metadata +243 -16
  176. data/_includes/header.html +0 -0
  177. data/_layouts/page.html +0 -5
  178. data/_layouts/post.html +0 -9
  179. data/_sass/woforo.scss +0 -24
@@ -0,0 +1,47 @@
1
+ <!--
2
+ # Jekyll Group-By-Array 0.1.0
3
+ # https://github.com/mushishi78/jekyll-group-by-array
4
+ # © 2015 Max White <mushishi78@gmail.com>
5
+ # MIT License
6
+ -->
7
+
8
+ <!-- Initialize -->
9
+ {% assign __empty_array = '' | split: ',' %}
10
+ {% assign group_names = __empty_array %}
11
+ {% assign group_items = __empty_array %}
12
+
13
+ <!-- Map -->
14
+ {% assign __names = include.collection | map: include.field %}
15
+
16
+ <!-- Flatten -->
17
+ {% assign __names = __names | join: ',' | join: ',' | split: ',' %}
18
+
19
+ <!-- Uniq -->
20
+ {% assign __names = __names | sort %}
21
+ {% for name in __names | sort %}
22
+
23
+ <!-- If not equal to previous then it must be unique as sorted -->
24
+ {% unless name == previous %}
25
+
26
+ <!-- Push to group_names -->
27
+ {% assign group_names = group_names | push: name %}
28
+ {% endunless %}
29
+
30
+ {% assign previous = name %}
31
+ {% endfor %}
32
+
33
+
34
+ <!-- group_items -->
35
+ {% for name in group_names %}
36
+
37
+ <!-- Collect if contains -->
38
+ {% assign __item = __empty_array %}
39
+ {% for __element in include.collection %}
40
+ {% if __element[include.field] contains name %}
41
+ {% assign __item = __item | push: __element %}
42
+ {% endif %}
43
+ {% endfor %}
44
+
45
+ <!-- Push to group_items -->
46
+ {% assign group_items = group_items | push: __item %}
47
+ {% endfor %}
@@ -1,9 +1,19 @@
1
- <head>
2
- <meta charset="UTF-8">
3
- <title>{{ site.title }}</title>
4
- <meta name="viewport" content="width=device-width, initial-scale=1">
5
- <meta name="theme-color" content="#157878">
6
- <link rel="stylesheet" href="{{ site.baseurl }}/css/syntax.css">
7
- <link rel="stylesheet" href="{{ site.baseurl }}/css/syntax-extra.css">
8
- <link rel="stylesheet" href="{{ site.baseurl }}/css/main.css">
9
- </head>
1
+ <meta charset="utf-8">
2
+
3
+ {% include seo.html %}
4
+
5
+ <link href="{% if site.atom_feed.path %}{{ site.atom_feed.path }}{% else %}{{ '/feed.xml' | absolute_url }}{% endif %}" type="application/atom+xml" rel="alternate" title="{{ site.title }} Feed">
6
+
7
+ <!-- http://t.co/dKP3o1e -->
8
+ <meta name="HandheldFriendly" content="True">
9
+ <meta name="MobileOptimized" content="320">
10
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
11
+
12
+ <script>
13
+ document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
14
+ </script>
15
+
16
+ <!-- For all browsers -->
17
+ <link rel="stylesheet" href="{{ '/assets/css/main.css' | absolute_url }}">
18
+
19
+ <meta http-equiv="cleartype" content="on">
@@ -0,0 +1,5 @@
1
+ <!-- start custom head snippets -->
2
+
3
+ <!-- insert favicons. use http://realfavicongenerator.net/ -->
4
+
5
+ <!-- end custom head snippets -->
@@ -0,0 +1,21 @@
1
+ <div class="masthead">
2
+ <div class="masthead__inner-wrap">
3
+ <div class="masthead__menu">
4
+ <nav id="site-nav" class="greedy-nav">
5
+ <button><div class="navicon"></div></button>
6
+ <ul class="visible-links">
7
+ <li class="masthead__menu-item masthead__menu-item--lg"><a href="{{ '/' | absolute_url }}">{{ site.title }}</a></li>
8
+ {% for link in site.data.navigation.main %}
9
+ {% if link.url contains 'http' %}
10
+ {% assign domain = '' %}
11
+ {% else %}
12
+ {% assign domain = site.url | append: site.baseurl %}
13
+ {% endif %}
14
+ <li class="masthead__menu-item"><a href="{{ domain }}{{ link.url }}">{{ link.title }}</a></li>
15
+ {% endfor %}
16
+ </ul>
17
+ <ul class="hidden-links hidden"></ul>
18
+ </nav>
19
+ </div>
20
+ </div>
21
+ </div>
@@ -0,0 +1,47 @@
1
+ {% assign navigation = site.data.navigation[include.nav] %}
2
+
3
+ <nav class="nav__list">
4
+ {% if page.sidebar.title %}<h3 class="nav__title" style="padding-left: 0;">{{ page.sidebar.title }}</h3>{% endif %}
5
+ <input id="ac-toc" name="accordion-toc" type="checkbox" />
6
+ <label for="ac-toc">{{ site.data.ui-text[site.locale].menu_label | default: "Toggle Menu" }}</label>
7
+ <ul class="nav__items">
8
+ {% for nav in navigation %}
9
+ <li>
10
+ {% if nav.url %}
11
+ {% comment %} internal/external URL check {% endcomment %}
12
+ {% if nav.url contains "://" %}
13
+ {% assign domain = "" %}
14
+ {% else %}
15
+ {% assign domain = site.url | append: site.baseurl %}
16
+ {% endif %}
17
+
18
+ <a href="{{ domain }}{{ nav.url }}"><span class="nav__sub-title">{{ nav.title }}</span></a>
19
+ {% else %}
20
+ <span class="nav__sub-title">{{ nav.title }}</span>
21
+ {% endif %}
22
+
23
+ {% if nav.children != null %}
24
+ <ul>
25
+ {% for child in nav.children %}
26
+ {% comment %} internal/external URL check {% endcomment %}
27
+ {% if child.url contains "://" %}
28
+ {% assign domain = "" %}
29
+ {% else %}
30
+ {% assign domain = site.url | append: site.baseurl %}
31
+ {% endif %}
32
+
33
+ {% comment %} set "active" class on current page {% endcomment %}
34
+ {% if child.url == page.url %}
35
+ {% assign active = "active" %}
36
+ {% else %}
37
+ {% assign active = "" %}
38
+ {% endif %}
39
+
40
+ <li><a href="{{ domain }}{{ child.url }}" class="{{ active }}">{{ child.title }}</a></li>
41
+ {% endfor %}
42
+ </ul>
43
+ {% endif %}
44
+ </li>
45
+ {% endfor %}
46
+ </ul>
47
+ </nav>
@@ -0,0 +1,53 @@
1
+ {% if page.header.image contains "://" %}
2
+ {% capture img_path %}{{ page.header.image }}{% endcapture %}
3
+ {% else %}
4
+ {% capture img_path %}{{ page.header.image | absolute_url }}{% endcapture %}
5
+ {% endif %}
6
+
7
+ {% if page.header.cta_url contains "://" %}
8
+ {% capture cta_path %}{{ page.header.cta_url }}{% endcapture %}
9
+ {% else %}
10
+ {% capture cta_path %}{{ page.header.cta_url | absolute_url }}{% endcapture %}
11
+ {% endif %}
12
+
13
+ {% if page.header.overlay_image contains "://" %}
14
+ {% capture overlay_img_path %}{{ page.header.overlay_image }}{% endcapture %}
15
+ {% elsif page.header.overlay_image %}
16
+ {% capture overlay_img_path %}{{ page.header.overlay_image | absolute_url }}{% endcapture %}
17
+ {% endif %}
18
+
19
+ {% if page.header.overlay_filter contains "rgba" %}
20
+ {% capture overlay_filter %}{{ page.header.overlay_filter }}{% endcapture %}
21
+ {% elsif page.header.overlay_filter %}
22
+ {% capture overlay_filter %}rgba(0, 0, 0, {{ page.header.overlay_filter }}){% endcapture %}
23
+ {% endif %}
24
+
25
+ <div class="page__hero{% if page.header.overlay_color or page.header.overlay_image %}--overlay{% endif %}"
26
+ style="{% if page.header.overlay_color %}background-color: {{ page.header.overlay_color | default: 'transparent' }};{% endif %} {% if overlay_img_path %}background-image: {% if overlay_filter %}linear-gradient({{ overlay_filter }}, {{ overlay_filter }}), {% endif %}url('{{ overlay_img_path }}');{% endif %}"
27
+ >
28
+ {% if page.header.overlay_color or page.header.overlay_image %}
29
+ <div class="wrapper">
30
+ <h1 class="page__title" itemprop="headline">
31
+ {% if paginator %}
32
+ {{ site.title }}{% unless paginator.page == 1 %} {{ site.data.ui-text[site.locale].page | default: "Page" }} {{ paginator.page }}{% endunless %}
33
+ {% else %}
34
+ {{ page.title | default: site.title | markdownify | remove: "<p>" | remove: "</p>" }}
35
+ {% endif %}
36
+ </h1>
37
+ {% if page.excerpt %}
38
+ <p class="page__lead">{{ page.excerpt | markdownify | remove: "<p>" | remove: "</p>" }}</p>
39
+ {% endif %}
40
+ {% if site.read_time and page.read_time %}
41
+ <p class="page__meta"><i class="fa fa-clock-o" aria-hidden="true"></i> {% include read-time.html %}</p>
42
+ {% endif %}
43
+ {% if page.header.cta_url %}
44
+ <p><a href="{{ cta_path }}" class="btn btn--light-outline btn--large">{{ page.header.cta_label | default: site.data.ui-text[site.locale].more_label | default: "Learn More" }}</a></p>
45
+ {% endif %}
46
+ </div>
47
+ {% else %}
48
+ <img src="{{ img_path }}" alt="{{ page.title }}" class="page__hero-image">
49
+ {% endif %}
50
+ {% if page.header.caption %}
51
+ <span class="page__hero-caption">{{ page.header.caption | markdownify | remove: "<p>" | remove: "</p>" }}</span>
52
+ {% endif %}
53
+ </div>
@@ -0,0 +1,7 @@
1
+ {% if site.tag_archive.type and page.tags[0] %}
2
+ {% include tag-list.html %}
3
+ {% endif %}
4
+
5
+ {% if site.category_archive.type and page.categories[0] %}
6
+ {% include category-list.html %}
7
+ {% endif %}
@@ -0,0 +1,68 @@
1
+ {% if paginator.total_pages > 1 %}
2
+ <nav class="pagination">
3
+ <ul>
4
+ {% comment %} Link for previous page {% endcomment %}
5
+ {% if paginator.previous_page %}
6
+ {% if paginator.previous_page == 1 %}
7
+ <li><a href="{{ '/' | absolute_url }}">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</a></li>
8
+ {% else %}
9
+ <li><a href="{{ '/page' | absolute_url }}{{ paginator.previous_page | append: '/' }}">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</a></li>
10
+ {% endif %}
11
+ {% else %}
12
+ <li><a href="#" class="disabled"><span aria-hidden="true">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</span></a></li>
13
+ {% endif %}
14
+
15
+ {% comment %} First page {% endcomment %}
16
+ {% if paginator.page == 1 %}
17
+ <li><a href="#" class="disabled current">1</a></li>
18
+ {% else %}
19
+ <li><a href="{{ '/' | absolute_url }}">1</a></li>
20
+ {% endif %}
21
+
22
+ {% assign page_start = 2 %}
23
+ {% if paginator.page > 4 %}
24
+ {% assign page_start = paginator.page | minus: 2 %}
25
+ {% comment %} Ellipsis for truncated links {% endcomment %}
26
+ <li><a href="#" class="disabled">&hellip;</a></li>
27
+ {% endif %}
28
+
29
+ {% assign page_end = paginator.total_pages | minus: 1 %}
30
+ {% assign pages_to_end = paginator.total_pages | minus: paginator.page %}
31
+ {% if pages_to_end > 4 %}
32
+ {% assign page_end = paginator.page | plus: 2 %}
33
+ {% endif %}
34
+
35
+ {% for index in (page_start..page_end) %}
36
+ {% if index == paginator.page %}
37
+ <li><a href="{{ '/page' | absolute_url }}{{ index | append: '/' }}" class="disabled current">{{ index }}</a></li>
38
+ {% else %}
39
+ {% comment %} Distance from current page and this link {% endcomment %}
40
+ {% assign dist = paginator.page | minus: index %}
41
+ {% if dist < 0 %}
42
+ {% comment %} Distance must be a positive value {% endcomment %}
43
+ {% assign dist = 0 | minus: dist %}
44
+ {% endif %}
45
+ <li><a href="{{ '/page' | absolute_url }}{{ index | append: '/' }}">{{ index }}</a></li>
46
+ {% endif %}
47
+ {% endfor %}
48
+
49
+ {% comment %} Ellipsis for truncated links {% endcomment %}
50
+ {% if pages_to_end > 3 %}
51
+ <li><a href="#" class="disabled">&hellip;</a></li>
52
+ {% endif %}
53
+
54
+ {% if paginator.page == paginator.total_pages %}
55
+ <li><a href="#" class="disabled current">{{ paginator.page }}</a></li>
56
+ {% else %}
57
+ <li><a href="{{ '/page' | absolute_url }}{{ paginator.total_pages }}/">{{ paginator.total_pages }}</a></li>
58
+ {% endif %}
59
+
60
+ {% comment %} Link next page {% endcomment %}
61
+ {% if paginator.next_page %}
62
+ <li><a href="{{ '/page' | absolute_url }}{{ paginator.next_page }}/">{{ site.data.ui-text[site.locale].pagination_next | default: "Next" }}</a></li>
63
+ {% else %}
64
+ <li><a href="#" class="disabled"><span aria-hidden="true">{{ site.data.ui-text[site.locale].pagination_next | default: "Next" }}</span></a></li>
65
+ {% endif %}
66
+ </ul>
67
+ </nav>
68
+ {% endif %}
@@ -0,0 +1,14 @@
1
+ {% if page.previous or page.next %}
2
+ <nav class="pagination">
3
+ {% if page.previous %}
4
+ <a href="{{ page.previous.url | absolute_url }}" class="pagination--pager" title="{{ page.previous.title | markdownify | strip_html }}">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</a>
5
+ {% else %}
6
+ <a href="#" class="pagination--pager disabled">{{ site.data.ui-text[site.locale].pagination_previous | default: "Previous" }}</a>
7
+ {% endif %}
8
+ {% if page.next %}
9
+ <a href="{{ page.next.url | absolute_url }}" class="pagination--pager" title="{{ page.next.title | markdownify | strip_html }}">{{ site.data.ui-text[site.locale].pagination_next | default: "Next" }}</a>
10
+ {% else %}
11
+ <a href="#" class="pagination--pager disabled">{{ site.data.ui-text[site.locale].pagination_next | default: "Next" }}</a>
12
+ {% endif %}
13
+ </nav>
14
+ {% endif %}
@@ -0,0 +1,15 @@
1
+ {% assign words_per_minute = site.words_per_minute | default: 200 %}
2
+
3
+ {% if post.read_time %}
4
+ {% assign words = post.content | strip_html | number_of_words %}
5
+ {% elsif page.read_time %}
6
+ {% assign words = page.content | strip_html | number_of_words %}
7
+ {% endif %}
8
+
9
+ {% if words < words_per_minute %}
10
+ {{ site.data.ui-text[site.locale].less_than | default: "less than" }} 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
11
+ {% elsif words == words_per_minute %}
12
+ 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
13
+ {% else %}
14
+ {{ words | divided_by:words_per_minute }} {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }}
15
+ {% endif %}
@@ -0,0 +1,4 @@
1
+ <script src="{{ '/assets/js/main.min.js' | absolute_url }}"></script>
2
+
3
+ {% include analytics.html %}
4
+ {% include /comments-providers/scripts.html %}
@@ -0,0 +1,145 @@
1
+ <!-- begin SEO -->
2
+ {% if site.url %}
3
+ {% assign seo_url = site.url | append: site.baseurl %}
4
+ {% endif %}
5
+ {% assign seo_url = seo_url | default: site.github.url %}
6
+
7
+ {% if page.title %}
8
+ {% assign seo_title = page.title | append: " " | append: site.title_separator | append: " " | append: site.title %}
9
+ {% endif %}
10
+
11
+ {% if seo_title %}
12
+ {% assign seo_title = seo_title | markdownify | strip_html | strip_newlines | escape_once %}
13
+ {% endif %}
14
+
15
+ {% if site.url %}
16
+ {% assign canonical_url = page.url | replace: "index.html", "" | prepend: site.url %}
17
+ {% endif %}
18
+
19
+ <title>{{ seo_title | default: site.title }}{% if paginator %}{% unless paginator.page == 1 %} {{ site.title_separator }} {{ site.data.ui-text[site.locale].page | default: "Page" }} {{ paginator.page }}{% endunless %}{% endif %}</title>
20
+
21
+ {% assign seo_description = page.description | default: page.excerpt | default: site.description %}
22
+ {% if seo_description %}
23
+ {% assign seo_description = seo_description | markdownify | strip_html | strip_newlines | escape_once %}
24
+ {% endif %}
25
+
26
+ <meta name="description" content="{{ seo_description }}">
27
+
28
+ {% assign seo_author = page.author | default: page.author[0] | default: site.author[0] %}
29
+ {% if seo_author %}
30
+ {% if seo_author.twitter %}
31
+ {% assign seo_author_twitter = seo_author.twitter %}
32
+ {% else %}
33
+ {% if site.data.authors and site.data.authors[seo_author] %}
34
+ {% assign seo_author_twitter = site.data.authors[seo_author].twitter %}
35
+ {% else %}
36
+ {% assign seo_author_twitter = seo_author %}
37
+ {% endif %}
38
+ {% endif %}
39
+ {% assign seo_author_twitter = seo_author_twitter | replace: "@", "" %}
40
+ {% endif %}
41
+
42
+ <meta property="og:locale" content="{{ site.locale | replace: "-", "_" | default: "en" }}">
43
+ <meta property="og:site_name" content="{{ site.title }}">
44
+ <meta property="og:title" content="{{ page.title | default: site.title | markdownify | strip_html | strip_newlines | escape_once }}">
45
+
46
+ {% if seo_url %}
47
+ <link rel="canonical" href="{{ page.url | prepend: seo_url | replace: "/index.html", "/" }}">
48
+ <meta property="og:url" content="{{ page.url | prepend: seo_url | replace: "/index.html", "/" }}">
49
+ {% endif %}
50
+
51
+ {% if page.excerpt %}
52
+ <meta property="og:description" content="{{ seo_description }}">
53
+ {% endif %}
54
+
55
+ {% if site.twitter.username %}
56
+ <meta name="twitter:site" content="@{{ site.twitter.username | replace: "@", "" }}">
57
+ <meta name="twitter:title" content="{{ page.title | default: site.title | markdownify | strip_html | strip_newlines | escape_once }}">
58
+ <meta name="twitter:description" content="{{ seo_description }}">
59
+ <meta name="twitter:url" content="{{ canonical_url }}">
60
+
61
+ {% if page.header.image %}
62
+ <meta name="twitter:card" content="summary_large_image">
63
+ <meta name="twitter:image" content="{% if page.header.image contains "://" %}{{ page.header.image }}{% else %}{{ page.header.image | absolute_url }}{% endif %}">
64
+ {% else %}
65
+ <meta name="twitter:card" content="summary">
66
+ {% if page.header.teaser %}
67
+ <meta name="twitter:image" content="{% if page.header.teaser contains "://" %}{{ page.header.teaser }}{% else %}{{ page.header.teaser | absolute_url }}{% endif %}">
68
+ {% elsif site.og_image %}
69
+ <meta name="twitter:image" content="{{ site.og_image | absolute_url }}">
70
+ {% endif %}
71
+ {% endif %}
72
+
73
+ {% if seo_author_twitter %}
74
+ <meta name="twitter:creator" content="@{{ seo_author_twitter }}">
75
+ {% endif %}
76
+ {% endif %}
77
+
78
+ {% if site.facebook %}
79
+ {% if site.facebook.publisher %}
80
+ <meta property="article:publisher" content="{{ site.facebook.publisher }}">
81
+ {% endif %}
82
+
83
+ {% if site.facebook.app_id %}
84
+ <meta property="fb:app_id" content="{{ site.facebook.app_id }}">
85
+ {% endif %}
86
+ {% endif %}
87
+
88
+ {% if page.header.image %}
89
+ <meta property="og:image" content="{% if page.header.image contains "://" %}{{ page.header.image }}{% else %}{{ page.header.image | absolute_url }}{% endif %}">
90
+ {% elsif page.header.overlay_image %}
91
+ <meta property="og:image" content="{% if page.header.overlay_image contains "://" %}{{ page.header.overlay_image }}{% else %}{{ page.header.overlay_image | absolute_url }}{% endif %}">
92
+ {% elsif page.header.teaser %}
93
+ <meta property="og:image" content="{% if page.header.teaser contains "://" %}{{ page.header.teaser }}{% else %}{{ page.header.teaser | absolute_url }}{% endif %}">
94
+ {% elsif site.og_image %}
95
+ <meta property="og:image" content="{% if site.og_image contains "://" %}{{ site.og_image }}{% else %}{{ site.og_image | absolute_url }}{% endif %}">
96
+ {% endif %}
97
+
98
+ {% if page.date %}
99
+ <meta property="og:type" content="article">
100
+ <meta property="article:published_time" content="{{ page.date | date_to_xmlschema }}">
101
+ {% endif %}
102
+
103
+ {% if paginator.previous_page %}
104
+ <link rel="prev" href="{{ paginator.previous_page_path | prepend: seo_url }}">
105
+ {% endif %}
106
+ {% if paginator.next_page %}
107
+ <link rel="next" href="{{ paginator.next_page_path | prepend: seo_url }}">
108
+ {% endif %}
109
+
110
+ {% if site.og_image %}
111
+ <script type="application/ld+json">
112
+ {
113
+ "@context": "http://schema.org",
114
+ "@type": "Organization",
115
+ "url": {{ seo_url | jsonify }},
116
+ "logo": {{ site.og_image | absolute_url | jsonify }}
117
+ }
118
+ </script>
119
+ {% endif %}
120
+
121
+ {% if site.social %}
122
+ <script type="application/ld+json">
123
+ {
124
+ "@context" : "http://schema.org",
125
+ "@type" : "{% if site.social.type %}{{ site.social.type }}{% else %}Person{% endif %}",
126
+ "name" : "{{ site.social.name | default: site.name }}",
127
+ "url" : {{ seo_url | jsonify }},
128
+ "sameAs" : {{ site.social.links | jsonify }}
129
+ }
130
+ </script>
131
+ {% endif %}
132
+
133
+ {% if site.google_site_verification %}
134
+ <meta name="google-site-verification" content="{{ site.google_site_verification }}" />
135
+ {% endif %}
136
+ {% if site.bing_site_verification %}
137
+ <meta name="msvalidate.01" content="{{ site.bing_site_verification }}">
138
+ {% endif %}
139
+ {% if site.alexa_site_verification %}
140
+ <meta name="alexaVerifyID" content="{{ site.alexa_site_verification }}">
141
+ {% endif %}
142
+ {% if site.yandex_site_verification %}
143
+ <meta name="yandex-verification" content="{{ site.yandex_site_verification }}">
144
+ {% endif %}
145
+ <!-- end SEO -->