jekyll-theme-hydejack 6.6.1 → 7.0.0.pre.beta.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (175) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.md +617 -17
  3. data/README.md +18 -11
  4. data/_includes/about.html +3 -2
  5. data/_includes/author.html +18 -11
  6. data/_includes/avatar-tag.html +4 -0
  7. data/_includes/body.html +21 -31
  8. data/_includes/body/menu.html +11 -0
  9. data/_includes/body/scripts.html +18 -0
  10. data/_includes/comments.html +6 -4
  11. data/_includes/footer.html +3 -5
  12. data/_includes/head.html +4 -142
  13. data/_includes/head/links.html +25 -0
  14. data/_includes/head/meta.html +30 -0
  15. data/_includes/head/scripts.html +44 -0
  16. data/_includes/head/seo-fallback.html +13 -0
  17. data/_includes/head/seo-tag.html +4 -0
  18. data/_includes/head/styles.html +24 -0
  19. data/_includes/header.txt +1 -1
  20. data/_includes/link.html +9 -2
  21. data/_includes/message.html +12 -7
  22. data/_includes/my-scripts.html +14 -5
  23. data/_includes/nav.html +20 -13
  24. data/_includes/page-style.html +33 -3
  25. data/_includes/pagination.html +8 -12
  26. data/_includes/post-list-item.html +4 -6
  27. data/_includes/post.html +20 -13
  28. data/_includes/related-posts.html +23 -0
  29. data/_includes/scripts/load-disqus.js +1 -2
  30. data/_includes/scripts/load-disqus.min.js +1 -1
  31. data/_includes/scripts/load-js-deferred.js +47 -43
  32. data/_includes/scripts/load-js-deferred.min.js +1 -1
  33. data/_includes/sidebar.html +25 -14
  34. data/_includes/social-list-item.html +1 -1
  35. data/_includes/social.html +16 -10
  36. data/_includes/srcset-img.html +5 -5
  37. data/_includes/styles/inline.scss +31 -33
  38. data/_includes/styles/style.scss +69 -55
  39. data/_includes/tag-list.html +1 -1
  40. data/_includes/templates.html +32 -0
  41. data/_layouts/about.html +10 -3
  42. data/_layouts/base.html +17 -10
  43. data/_layouts/compress.html +3 -11
  44. data/_layouts/default.html +7 -5
  45. data/_layouts/home.html +7 -5
  46. data/_layouts/list.html +10 -4
  47. data/_layouts/not-found.html +14 -5
  48. data/_layouts/page.html +1 -1
  49. data/_layouts/post.html +12 -2
  50. data/_layouts/redirect.html +1 -1
  51. data/_sass/_mixins.scss +9 -3
  52. data/_sass/_reboot-mod.scss +286 -0
  53. data/_sass/_spinner.scss +23 -80
  54. data/_sass/_syntax.scss +1 -1
  55. data/_sass/_variables.scss +9 -11
  56. data/_sass/hydejack/__inline/_avatar.scss +27 -0
  57. data/_sass/hydejack/__inline/_base.scss +99 -0
  58. data/_sass/hydejack/__inline/_break-layout.scss +12 -0
  59. data/_sass/hydejack/__inline/_content.scss +43 -0
  60. data/_sass/hydejack/__inline/_footer.scss +12 -0
  61. data/_sass/hydejack/__inline/_katex.scss +12 -0
  62. data/_sass/hydejack/__inline/_mark-external.scss +36 -0
  63. data/_sass/hydejack/__inline/_menu.scss +50 -0
  64. data/_sass/hydejack/__inline/_sidebar.scss +129 -0
  65. data/_sass/hydejack/__inline/_social.scss +42 -0
  66. data/_sass/hydejack/__link/_avatar.scss +17 -0
  67. data/_sass/hydejack/__link/_base.scss +93 -0
  68. data/_sass/hydejack/__link/_break-layout.scss +69 -0
  69. data/_sass/hydejack/__link/_content.scss +12 -0
  70. data/_sass/hydejack/__link/_footer.scss +26 -0
  71. data/_sass/hydejack/__link/_katex.scss +45 -0
  72. data/_sass/hydejack/__link/_mark-external.scss +36 -0
  73. data/_sass/hydejack/__link/_menu.scss +37 -0
  74. data/_sass/hydejack/__link/_sidebar.scss +156 -0
  75. data/_sass/hydejack/__link/_social.scss +12 -0
  76. data/_sass/hydejack/_avatar.pre.scss +18 -0
  77. data/_sass/hydejack/_base.pre.scss +133 -0
  78. data/_sass/hydejack/_break-layout.pre.scss +58 -0
  79. data/_sass/hydejack/{_content-inline.scss → _content.pre.scss} +5 -5
  80. data/_sass/hydejack/{_footer-inline.scss → _footer.pre.scss} +2 -5
  81. data/_sass/hydejack/{_katex.scss → _katex.pre.scss} +6 -3
  82. data/_sass/hydejack/_mark-external.pre.scss +25 -0
  83. data/_sass/hydejack/_menu.pre.scss +53 -0
  84. data/_sass/hydejack/_sidebar.pre.scss +188 -0
  85. data/_sass/hydejack/{_social-inline.scss → _social.pre.scss} +6 -11
  86. data/_sass/pooleparty/{_base-inline.scss → __inline/_base.scss} +15 -17
  87. data/_sass/pooleparty/__inline/_code.scss +17 -0
  88. data/_sass/pooleparty/__inline/_footer.scss +12 -0
  89. data/_sass/pooleparty/__inline/_footnotes.scss +16 -0
  90. data/_sass/pooleparty/__inline/_message.scss +26 -0
  91. data/_sass/pooleparty/__inline/_pagination.scss +17 -0
  92. data/_sass/pooleparty/__inline/_posts.scss +41 -0
  93. data/_sass/pooleparty/__inline/_related.scss +25 -0
  94. data/_sass/pooleparty/__inline/_table.scss +39 -0
  95. data/_sass/pooleparty/__inline/_type.scss +83 -0
  96. data/_sass/pooleparty/__link/_base.scss +26 -0
  97. data/_sass/pooleparty/__link/_code.scss +54 -0
  98. data/_sass/pooleparty/__link/_footer.scss +12 -0
  99. data/_sass/pooleparty/__link/_footnotes.scss +57 -0
  100. data/_sass/pooleparty/__link/_message.scss +17 -0
  101. data/_sass/pooleparty/__link/_pagination.scss +78 -0
  102. data/_sass/pooleparty/__link/_posts.scss +30 -0
  103. data/_sass/pooleparty/__link/_related.scss +14 -0
  104. data/_sass/pooleparty/{_table.scss → __link/_table.scss} +71 -46
  105. data/_sass/pooleparty/__link/_type.scss +144 -0
  106. data/_sass/pooleparty/_base.pre.scss +54 -0
  107. data/_sass/pooleparty/_code.pre.scss +43 -0
  108. data/_sass/pooleparty/_footer.pre.scss +1 -0
  109. data/_sass/pooleparty/{_footnotes.scss → _footnotes.pre.scss} +17 -4
  110. data/_sass/pooleparty/{_message-inline.scss → _message.pre.scss} +2 -0
  111. data/_sass/pooleparty/{_pagination.scss → _pagination.pre.scss} +7 -6
  112. data/_sass/pooleparty/{_posts-inline.scss → _posts.pre.scss} +16 -15
  113. data/_sass/pooleparty/{_related-inline.scss → _related.pre.scss} +5 -6
  114. data/_sass/pooleparty/_table.pre.scss +161 -0
  115. data/_sass/pooleparty/_type.pre.scss +198 -0
  116. data/assets/icomoon/fonts/icomoon.eot +0 -0
  117. data/assets/icomoon/fonts/icomoon.svg +9 -3
  118. data/assets/icomoon/fonts/icomoon.ttf +0 -0
  119. data/assets/icomoon/fonts/icomoon.woff +0 -0
  120. data/assets/icomoon/selection.json +250 -76
  121. data/assets/icomoon/style.css +26 -8
  122. data/assets/icons/apple-touch-icon.png +0 -0
  123. data/assets/icons/favicon.ico +0 -0
  124. data/assets/icons/icon.png +0 -0
  125. data/assets/icons/icon@0,25x.png +0 -0
  126. data/assets/icons/icon@0,5x.png +0 -0
  127. data/assets/icons/icon@0,75x.png +0 -0
  128. data/assets/icons/icon@2x.png +0 -0
  129. data/assets/icons/icon@3x.png +0 -0
  130. data/assets/icons/tile-large.png +0 -0
  131. data/assets/icons/tile-medium.png +0 -0
  132. data/assets/icons/tile-small.png +0 -0
  133. data/assets/icons/tile-wide.png +0 -0
  134. data/assets/ieconfig.xml +15 -0
  135. data/assets/img/sidebar-bg.jpg +0 -0
  136. data/assets/js/hydejack.js +2 -2
  137. data/assets/manifest.json +45 -0
  138. data/assets/version.json +1 -1
  139. data/licenses/Apache-2.0.md +55 -47
  140. data/licenses/GPL-3.0.md +623 -0
  141. data/licenses/MIT.md +1 -0
  142. data/licenses/PRO.md +142 -0
  143. metadata +103 -99
  144. data/_includes/related.html +0 -41
  145. data/_includes/scripts.html +0 -17
  146. data/_sass/hydejack/_base-inline.scss +0 -143
  147. data/_sass/hydejack/_base.scss +0 -143
  148. data/_sass/hydejack/_drawer-inline.scss +0 -19
  149. data/_sass/hydejack/_drawer.scss +0 -19
  150. data/_sass/hydejack/_me-inline.scss +0 -24
  151. data/_sass/hydejack/_menu-inline.scss +0 -56
  152. data/_sass/hydejack/_menu.scss +0 -56
  153. data/_sass/hydejack/_sidebar-inline.scss +0 -118
  154. data/_sass/hydejack/_sidebar.scss +0 -115
  155. data/_sass/hydejack/_social.scss +0 -36
  156. data/_sass/hydejack/_toc.scss +0 -2
  157. data/_sass/pooleparty/_base.scss +0 -60
  158. data/_sass/pooleparty/_code.scss +0 -82
  159. data/_sass/pooleparty/_footer-inline.scss +0 -3
  160. data/_sass/pooleparty/_posts.scss +0 -41
  161. data/_sass/pooleparty/_table-inline.scss +0 -130
  162. data/_sass/pooleparty/_type-inline.scss +0 -124
  163. data/_sass/pooleparty/_type.scss +0 -124
  164. data/assets/icomoon/Read Me.txt +0 -7
  165. data/assets/icomoon/demo-files/demo.css +0 -152
  166. data/assets/icomoon/demo-files/demo.js +0 -30
  167. data/assets/icomoon/demo.html +0 -1206
  168. data/assets/img/nap.jpg +0 -0
  169. data/assets/img/projects/hyde-v1.jpg +0 -0
  170. data/assets/img/projects/hyde-v1@0,25x.jpg +0 -0
  171. data/assets/img/projects/hyde-v1@0,5x.jpg +0 -0
  172. data/assets/img/projects/hyde-v2.jpg +0 -0
  173. data/assets/img/projects/hyde-v2@0,25x.jpg +0 -0
  174. data/assets/img/projects/hyde-v2@0,5x.jpg +0 -0
  175. data/licenses/PRO-license.md +0 -147
@@ -0,0 +1,13 @@
1
+ {% assign strings = site.data.strings %}
2
+ {% capture title %}
3
+ {% if page.url == "/" %}
4
+ {{ site.title }}{% if site.tagline %} {{ strings.separator }} {{ site.tagline }}{% endif %}
5
+ {% elsif page.title.size > 0 %}
6
+ {{ page.title }} {{ strings.separator }} {{ site.title }}
7
+ {% else %}
8
+ {{ site.title }}
9
+ {% endif %}
10
+ {% endcapture %}
11
+ <title>{{ title | strip }}</title>
12
+ <meta name="description" content="{{ page.description | default:page.excerpt | default:site.description | markdownify | strip_html }}">
13
+ <link rel="canonical" href="{{ page.url | absolute_url }}">
@@ -0,0 +1,4 @@
1
+ {% comment %}<!--
2
+ Including `seo` in a partial prevents a parse error when `jekyll-seo-tag` is not included
3
+ -->{% endcomment %}
4
+ {% seo %}
@@ -0,0 +1,24 @@
1
+ <!--[if gt IE 8]><!---->
2
+ {% capture style_url %}{% link assets/css/hydejack.css %}?v=7.0.0-beta.0{% endcapture %}
3
+
4
+ {% if site.hydejack.no_inline_css or jekyll.environment == 'development' %}
5
+ <link rel="stylesheet" href="{{ style_url | relative_url }}">
6
+ {% else %}
7
+ <style>
8
+ {% capture include_to_scssify %}{% include styles/inline.scss %}{% endcapture %}
9
+ {{ include_to_scssify | scssify }}
10
+ {% if page.layout == "projects" or page.layout == "project" or page.layout == "welcome" %}
11
+ {% capture include_to_scssify %}{% include styles/pro/projects.scss %}{% endcapture %}
12
+ {{ include_to_scssify | scssify }}
13
+ {% elsif page.layout == "resume" %}
14
+ {% capture include_to_scssify %}{% include styles/pro/resume.scss %}{% endcapture %}
15
+ {{ include_to_scssify | scssify }}
16
+ {% endif %}
17
+ </style>
18
+ <link id="_stylePreload" rel="preload" as="style" href="{{ style_url | relative_url }}">
19
+ <script>window.setRelStylesheet('_stylePreload');</script>
20
+ <noscript><link rel="stylesheet" href="{{ style_url | relative_url }}"></noscript>
21
+ {% endif %}
22
+
23
+ {% include page-style.html %}
24
+ <!--<![endif]-->
@@ -9,5 +9,5 @@
9
9
  * /\___/ \ \____/
10
10
  * \/__/ \/___/
11
11
  *
12
- * Powered by Hydejack v6.6.1 <https://qwtel.com/hydejack/>
12
+ * Powered by Hydejack v7.0.0-beta.0 <https://qwtel.com/hydejack/>
13
13
  */
@@ -1,5 +1,12 @@
1
1
  {% if include.href.size > 0 %}
2
- <a href="{{ include.href }}">{{ include.title }}</a>
2
+ <a
3
+ class="{{ include.class }} {{ include.a_class }}"
4
+ href="{{ include.href }}"
5
+ {% if include.rel %}rel="{{ include.rel }}"{% endif %}
6
+ {% if include.property %}property="{{ include.property }}"{% endif %}
7
+ >
8
+ {{ include.title }}
9
+ </a>
3
10
  {% else %}
4
- <span>{{ include.title }}</span>
11
+ <span class="{{ include.class }} {{ include.span_class }}">{{ include.title }}</span>
5
12
  {% endif %}
@@ -1,9 +1,14 @@
1
- {% if include.text %}
2
- {% capture desc %}
3
- {{ include.text | strip_newlines }}
4
- {:.message}
5
- {% endcapture %}
6
- {{ desc | markdownify }}
1
+ {% assign alt = include.alt %}
2
+ {% unless alt %}{% capture alt %}<div class="hr pb0"></div>{% endcapture %}{% endunless %}
3
+
4
+ {% if include.text.size > 0 %}
5
+ {% unless include.hide %}
6
+ <p class="message" {% if include.property %}property="{{ include.property }}"{% endif %}>
7
+ {{ include.text | markdownify | replace:"<p>","" | replace:"</p>","" }}
8
+ </p>
9
+ {% else %}
10
+ {{ alt }}
11
+ {% endunless %}
7
12
  {% else %}
8
- <div class="hr" style="padding-bottom:0"></div>
13
+ {{ alt }}
9
14
  {% endif %}
@@ -1,7 +1,16 @@
1
- {% comment %}
2
1
  <script>
3
- document.getElementById('_yPushState').addEventListener('y-push-state-load', function() {
4
- // <your init code>
5
- });
2
+ function detectCFScript() {
3
+ var cfScript = Array.prototype.find.call(document.scripts, function(s) {
4
+ return s !== document.currentScript && s.textContent.indexOf('__cf_email__') > -1;
5
+ });
6
+
7
+ if (cfScript)
8
+ this.addEventListener('hy-push-state-load', new Function(cfScript.textContent));
9
+
10
+ this.removeEventListener('hy-push-state-init', detectCFScript);
11
+ }
12
+
13
+ document
14
+ .getElementsByTagName('hy-push-state')[0]
15
+ .addEventListener('hy-push-state-init', detectCFScript);
6
16
  </script>
7
- {% endcomment %}
@@ -1,16 +1,23 @@
1
- <span class="sr-only">Navigation:</span>
1
+ <span class="sr-only">{{ site.data.strings.navigation | default:"Navigation" }}{{ site.data.strings.colon }}</span>
2
2
  <ul>
3
- {% assign pages = site.pages %}
4
-
5
- {% for document in site.documents %}
6
- {% assign pages = pages | push: document %}
7
- {% endfor %}
8
-
9
- {% assign pages = pages | where: "menu", true | sort: "order" %}
10
-
11
- {% for node in pages %}
12
- <li>
13
- <a class="sidebar-nav-item{% if page.url == node.url %} active{% endif %}" href="{{ node.url | relative_url }}">{{ node.title }}</a>
14
- </li>
3
+ {% assign pages = site.pages | where: "menu", true %}
4
+ {% assign documents = site.documents | where: "menu", true %}
5
+ {% assign nodes = pages | concat: documents | sort: "order" %}
6
+ {% for node in nodes %}
7
+ {% unless node.redirect_to %}
8
+ <li>
9
+ <a
10
+ href="{{ node.url | relative_url }}"
11
+ class="sidebar-nav-item{% if page.url contains node.url %} active{% endif %}"
12
+ {% if path.rel %}rel="{{ node.rel }}"{% endif %}
13
+ >
14
+ {{ node.title }}
15
+ </a>
16
+ </li>
17
+ {% else %}
18
+ <li>
19
+ <a href="{{ node.redirect_to }}" class="sidebar-nav-item" >{{ node.title }}</a>
20
+ </li>
21
+ {% endunless %}
15
22
  {% endfor %}
16
23
  </ul>
@@ -1,12 +1,14 @@
1
- <!-- NOTE: These styles interact with JavsScript, so they MUST NOT be changed -->
1
+ {% comment %}<!--
2
+ These styles interact with JavsScript. Their ordering MUST NOT be changed. See `_js/cross-fader.js`.
3
+ -->{% endcomment %}
2
4
  <style id="_pageStyle">
3
5
  {% capture page_style %}
4
- .content a {
6
+ .content a:not(.btn) {
5
7
  color: {{ color }};
6
8
  border-color: fade-out({{ color }}, 0.8);
7
9
  }
8
10
 
9
- .content a:hover {
11
+ .content a:not(.btn):hover {
10
12
  border-color: {{ color }};
11
13
  }
12
14
 
@@ -14,6 +16,34 @@
14
16
  outline-color: {{ color }};
15
17
  }
16
18
 
19
+ .btn-primary {
20
+ color: #fff;
21
+ background-color: {{ color }};
22
+ border-color: {{ color }};
23
+ }
24
+
25
+ .btn-primary:focus, .btn-primary.focus {
26
+ box-shadow: 0 0 0 3px rgba({{ color }}, .5);
27
+ }
28
+
29
+ .btn-primary:hover, .btn-primary.hover {
30
+ color: #fff;
31
+ background-color: darken({{ color }}, 7.5%);
32
+ border-color: darken({{ color }}, 7.5%);
33
+ }
34
+
35
+ .btn-primary:disabled, .btn-primary.disabled {
36
+ color: #fff;
37
+ background-color: {{ color }};
38
+ border-color: {{ color }};
39
+ }
40
+
41
+ .btn-primary:active, .btn-primary.active {
42
+ color: #fff;
43
+ background-color: darken({{ color }}, 7.5%);
44
+ border-color: darken({{ color }}, 7.5%);
45
+ }
46
+
17
47
  ::selection {
18
48
  color: #fff;
19
49
  background: {{ color }};
@@ -1,19 +1,15 @@
1
- <h2 class="sr-only">Pagination</h2>
2
- <nav class="pagination heading" role="navigation">
1
+ <h2 class="sr-only">{{ site.data.strings.pagination | default:"Pagination" }}</h2>
2
+ <nav class="pagination heading clearfix" role="navigation">
3
3
  <ul>
4
4
  <li class="pagination-item older" >
5
- {% if paginator.next_page %}
6
- <a rel="next" href="{{ paginator.next_page_path | relative_url }}">Older</a>
7
- {% else %}
8
- <span>Older</span>
9
- {% endif %}
5
+ {% assign next_title = site.data.strings.older | default:"Older" %}
6
+ {% assign next_href = paginator.next_page_path | relative_url %}
7
+ {% include link.html rel="next" title=next_title href=next_href %}
10
8
  </li>
11
9
  <li class="pagination-item newer" >
12
- {% if paginator.previous_page %}
13
- <a rel="prev" href="{{ paginator.previous_page_path | relative_url }}">Newer</a>
14
- {% else %}
15
- <span>Newer</span>
16
- {% endif %}
10
+ {% assign prev_title = site.data.strings.newer | default:"Newer" %}
11
+ {% assign prev_href = paginator.previous_page_path | relative_url %}
12
+ {% include link.html rel="prev" title=prev_title href=prev_href %}
17
13
  </li>
18
14
  </ul>
19
15
  </nav>
@@ -1,11 +1,9 @@
1
1
  {% assign post = include.post %}
2
- {% assign format = include.format | default:"%d %b %Y" %}
2
+ {% assign format = include.format | default:site.data.strings.date_formats.related_post | default:"%d %b %Y" %}
3
3
 
4
- <li class="h4">
5
- <a href="{{ post.url | relative_url }}" data-flip="title">
4
+ <li>
5
+ <a href="{{ post.url | relative_url }}" class="h4 flip-title">
6
6
  <span>{{ post.title }}</span>
7
7
  </a>
8
- <small><time datetime="{{ post.date | date_to_xmlschema }}">
9
- {{ post.date | date:format }}
10
- </time></small>
8
+ <time class="heading faded fine" datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date:format }}</time>
11
9
  </li>
@@ -1,31 +1,38 @@
1
1
  {% assign post = include.post %}
2
+ {% assign link_title = include.link_title %}
2
3
 
3
- <article id="post-{{ post.id | slice: 1,9999 }}" class="post{% if include.link_title %} mb6{% endif %}" role="article">
4
+ <article id="post{{ post.id | replace:'/','-' }}" class="page post{% if link_title %} mb6{% endif %}" role="article">
4
5
  <header>
5
6
  <h1 class="post-title">
6
- {% if include.link_title %}<a href="{{ post.url | relative_url }}" data-flip="title">{% endif %}
7
+ {% if link_title %}<a href="{{ post.url | relative_url }}" class="flip-title">{% endif %}
7
8
  {{ post.title }}
8
- {% if include.link_title %}</a>{% endif %}
9
+ {% if link_title %}</a>{% endif %}
9
10
  </h1>
10
11
 
11
12
  <p class="post-date heading">
12
- <time datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date: "%d %b %Y" }}</time>
13
- {% include tag-list.html tags=post.categories meta=site.featured_categories start_with="in " separator=" / " %}
14
- {% include tag-list.html tags=post.tags meta=site.featured_tags start_with="on " separator=", " %}
13
+ {% assign post_format = site.data.strings.date_formats.post | default:"%d %b %Y" %}
14
+ <time datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date:post_format }}</time>
15
+ {% assign category_start = site.data.strings.category_start | default:"in " %}
16
+ {% assign tag_start = site.data.strings.tag_start | default:"on " %}
17
+ {% assign category_separator = site.data.strings.category_separator | default:" / " %}
18
+ {% assign tag_separator = site.data.strings.tag_separator | default:", " %}
19
+ {% include tag-list.html tags=post.categories meta=site.featured_categories start_with=category_start separator=category_separator %}
20
+ {% include tag-list.html tags=post.tags meta=site.featured_tags start_with=tag_start separator=tag_separator %}
15
21
  </p>
16
22
 
17
- {% include message.html text=post.description %}
23
+ {% include message.html text=post.description hide=page.no_description %}
18
24
  </header>
19
25
 
20
26
  {% unless include.excerpt %}
21
27
  {{ post.content }}
22
28
  {% else %}
23
29
  {{ post.excerpt }}
24
- <p class="read-more">Continue reading <a class="heading" href="{{ post.url | relative_url }}" data-flip="title">{{ post.title }}</a></p>
30
+ {% capture post_title %}<a class="heading flip-title" href="{{ post.url | relative_url }}">{{ post.title }}</a>{% endcapture %}
31
+ {% assign text = site.data.strings.continue_reading | default:"Continue reading <!--post_title-->" %}
32
+ <footer>
33
+ <p class="read-more">
34
+ {{ text | replace:"<!--post_title-->", post_title }}
35
+ </p>
36
+ </footer>
25
37
  {% endunless %}
26
-
27
38
  </article>
28
-
29
- {% unless include.link_title %}
30
- <hr class="dingbat" />
31
- {% endunless %}
@@ -0,0 +1,23 @@
1
+ {% assign post = include.post %}
2
+
3
+ {% if site.hydejack.use_lsi or site.use_lsi %}
4
+ {% assign related_posts = site.related_posts %}
5
+ {% elsif post.categories.first %}
6
+ {% assign related_posts = site.categories[post.categories.first] | where_exp:"post", "post.url != page.url" %}
7
+ {% elsif post.tags.first %}
8
+ {% assign related_posts = site.tags[post.tags.first] | where_exp:"post", "post.url != page.url" %}
9
+ {% else %}
10
+ {% assign related_posts = site.related_posts %}
11
+ {% endif %}
12
+
13
+ {% if related_posts.size > 0 %}
14
+ <aside class="related mb4" role="complementary">
15
+ <h2 class="hr">{{ site.data.strings.related_posts | default:"Related Posts" }}</h2>
16
+
17
+ <ul class="related-posts">
18
+ {% for post in related_posts limit:3 %}
19
+ {% include post-list-item.html post=post %}
20
+ {% endfor %}
21
+ </ul>
22
+ </aside>
23
+ {% endif %}
@@ -30,11 +30,10 @@
30
30
  if (!w._disqusLoading) {
31
31
  w._disqusLoading = true;
32
32
 
33
- loadJSDeferred('//{{ site.disqus_shortname }}.disqus.com/embed.js');
33
+ loadJSDeferred('//{{ include.disqus }}.disqus.com/embed.js');
34
34
 
35
35
  // add event listener
36
36
  if (w.addEventListener) w.addEventListener('scroll', loadDQ, { passive: true });
37
- else if (w.attachEvent) w.attachEvent('onscroll', loadDQ);
38
37
  else w.onscroll = loadDQ;
39
38
  } else {
40
39
  w._disqusFirst = false;
@@ -1 +1 @@
1
- !function(s,i){function e(e){var t=s.pageYOffset||i.body.scrollTop;s.DISQUS&&!s._disqusThis&&!s._disqusFirst&&t+s.innerHeight>=s._disqusThreadOffsetTop&&(s._disqusThis=!0,s.DISQUS.reset({reload:!0,config:d}))}var d=function(){this.page.title="{{ page.title }}",this.page.identifier="{{ page.id }}",this.page.url="{{ page.url | absolute_url }}"};s._disqusFirst=void 0===s._disqusFirst||s._disqusFirst,s._disqusLoading=void 0!==s._disqusLoading&&s._disqusLoading,s._disqusThis=!1,s._disqusThreadOffsetTop=i.getElementById("disqus_thread").offsetTop,s._disqusLoading?s._disqusFirst=!1:(s._disqusLoading=!0,loadJSDeferred("//{{ site.disqus_shortname }}.disqus.com/embed.js"),s.addEventListener?s.addEventListener("scroll",e,{passive:!0}):s.attachEvent?s.attachEvent("onscroll",e):s.onscroll=e)}(window,document);
1
+ !function(s,i){function d(d){var t=s.pageYOffset||i.body.scrollTop;s.DISQUS&&!s._disqusThis&&!s._disqusFirst&&t+s.innerHeight>=s._disqusThreadOffsetTop&&(s._disqusThis=!0,s.DISQUS.reset({reload:!0,config:e}))}var e=function(){this.page.title="{{ page.title }}",this.page.identifier="{{ page.id }}",this.page.url="{{ page.url | absolute_url }}"};s._disqusFirst=void 0===s._disqusFirst||s._disqusFirst,s._disqusLoading=void 0!==s._disqusLoading&&s._disqusLoading,s._disqusThis=!1,s._disqusThreadOffsetTop=i.getElementById("disqus_thread").offsetTop,s._disqusLoading?s._disqusFirst=!1:(s._disqusLoading=!0,loadJSDeferred("//{{ include.disqus }}.disqus.com/embed.js"),s.addEventListener?s.addEventListener("scroll",d,{passive:!0}):s.onscroll=d)}(window,document);
@@ -1,49 +1,53 @@
1
1
  // Compress via uglify:
2
2
  // uglifyjs load-js-deferred.js -c -m > load-js-deferred.min.js
3
- (function(w, d) {
4
- function stdOnEnd(script, cb) {
5
- script.onload = function () {
6
- this.onerror = this.onload = null;
7
- cb(null, script);
8
- };
9
-
10
- script.onerror = function () {
11
- this.onerror = this.onload = null;
12
- cb(new Error('Failed to load ' + this.src), script);
13
- };
14
- }
15
-
16
- function ieOnEnd(script, cb) {
17
- script.onreadystatechange = function () {
18
- if (this.readyState != 'complete' && this.readyState != 'loaded') return;
19
- this.onreadystatechange = null;
20
- cb(null, script);
21
- };
22
- }
23
-
24
- w._loaded = false;
25
- w.loadJSDeferred = function(src, cb) {
26
- function loadJS() {
27
- w._loaded = true;
28
-
29
- var script = d.createElement('script');
30
- script.src = src;
31
-
32
- if (cb) {
33
- ('onload' in script ? stdOnEnd : ieOnEnd)(script, cb);
34
-
35
- if (!script.onload) {
36
- stdOnEnd(script, cb);
37
- }
3
+ function stdOnEnd(script, cb) {
4
+ script.onload = function () {
5
+ this.onerror = this.onload = null;
6
+ cb(null, script);
7
+ };
8
+
9
+ script.onerror = function () {
10
+ this.onerror = this.onload = null;
11
+ cb(new Error('Failed to load ' + this.src), script);
12
+ };
13
+ }
14
+
15
+ function ieOnEnd(script, cb) {
16
+ script.onreadystatechange = function () {
17
+ if (this.readyState != 'complete' && this.readyState != 'loaded') return;
18
+ this.onreadystatechange = null;
19
+ cb(null, script);
20
+ };
21
+ }
22
+
23
+ window.setRelStylesheet = function (id) {
24
+ var link = document.getElementById(id);
25
+ function set() { this.rel = 'stylesheet'; }
26
+ if (link.addEventListener) link.addEventListener('load', set, false);
27
+ else link.onload = set;
28
+ };
29
+
30
+ window._loaded = false;
31
+ window.loadJSDeferred = function(src, cb) {
32
+ function loadJS() {
33
+ window._loaded = true;
34
+
35
+ var script = document.createElement('script');
36
+ script.src = src;
37
+
38
+ if (cb) {
39
+ ('onload' in script ? stdOnEnd : ieOnEnd)(script, cb);
40
+
41
+ if (!script.onload) {
42
+ stdOnEnd(script, cb);
38
43
  }
39
-
40
- var ref = d.getElementsByTagName('script')[0];
41
- ref.parentNode.insertBefore(script, ref);
42
44
  }
43
45
 
44
- if (w._loaded) loadJS();
45
- else if (w.addEventListener) w.addEventListener('load', loadJS, false);
46
- else if (w.attachEvent) w.attachEvent('onload', loadJS);
47
- else w.onload = loadJS;
46
+ var ref = document.scripts[0];
47
+ ref.parentNode.insertBefore(script, ref);
48
48
  }
49
- }(window, document));
49
+
50
+ if (window._loaded) loadJS();
51
+ else if (window.addEventListener) window.addEventListener('load', loadJS, false);
52
+ else window.onload = loadJS;
53
+ };
@@ -1 +1 @@
1
- !function(n,e){function t(n,e){n.onload=function(){this.onerror=this.onload=null,e(null,n)},n.onerror=function(){this.onerror=this.onload=null,e(new Error("Failed to load "+this.src),n)}}function o(n,e){n.onreadystatechange=function(){"complete"!=this.readyState&&"loaded"!=this.readyState||(this.onreadystatechange=null,e(null,n))}}n._loaded=!1,n.loadJSDeferred=function(a,d){function r(){n._loaded=!0;var r=e.createElement("script");r.src=a,d&&(("onload"in r?t:o)(r,d),r.onload||t(r,d));var l=e.getElementsByTagName("script")[0];l.parentNode.insertBefore(r,l)}n._loaded?r():n.addEventListener?n.addEventListener("load",r,!1):n.attachEvent?n.attachEvent("onload",r):n.onload=r}}(window,document);
1
+ function stdOnEnd(n,e){n.onload=function(){this.onerror=this.onload=null,e(null,n)},n.onerror=function(){this.onerror=this.onload=null,e(new Error("Failed to load "+this.src),n)}}function ieOnEnd(n,e){n.onreadystatechange=function(){"complete"!=this.readyState&&"loaded"!=this.readyState||(this.onreadystatechange=null,e(null,n))}}window.setRelStylesheet=function(n){function e(){this.rel="stylesheet"}var o=document.getElementById(n);o.addEventListener?o.addEventListener("load",e,!1):o.onload=e},window._loaded=!1,window.loadJSDeferred=function(n,e){function o(){window._loaded=!0;var o=document.createElement("script");o.src=n,e&&(("onload"in o?stdOnEnd:ieOnEnd)(o,e),o.onload||stdOnEnd(o,e));var t=document.scripts[0];t.parentNode.insertBefore(o,t)}window._loaded?o():window.addEventListener?window.addEventListener("load",o,!1):window.onload=o};
@@ -1,10 +1,23 @@
1
- <div id="_yDrawer">
2
- <div id="_sidebar" class="sidebar">
3
- <div class="sidebar-bg" style="background-color:{{ color }};background-image:url({{ image }})"></div>
4
- <header class="sidebar-sticky" role="banner">
1
+ <hy-drawer>
2
+ <header id="_sidebar" class="sidebar" role="banner">
3
+ {% if image.background %}
4
+ {% capture bg_style %}background:{{ image.background }}{% endcapture %}
5
+ {% capture bg_class %}sidebar-bg {% if image.overlay %}sidebar-overlay{% endif %}{% endcapture %}
6
+ {% else %}
7
+ {% capture bg_style %}background-color:{{ color }};{% if image != 'none' %}background-image:url({{ image }}){% endif %}{% endcapture %}
8
+ {% capture bg_class %}sidebar-bg {% if image != 'none' %}sidebar-overlay{% endif %}{% endcapture %}
9
+ {% endif %}
10
+ <div class="{{ bg_class }}" style="{{ bg_style }}"></div>
11
+
12
+ <div class="sidebar-sticky">
5
13
  <div class="sidebar-about">
6
- <h1><a id="_title" href="{{ '/' | relative_url }}">{{ site.title }}</a></h1>
7
- {{ site.description | truncatewords:50 | markdownify }}
14
+ <h2 class="h1"><a id="_title" href="{{ '/' | relative_url }}">{{ site.title }}</a></h2>
15
+ {% assign text = site.tagline | default:site.description %}
16
+ {% if text %}
17
+ <p class="{% if text.size > 100 %}fine{% endif %}">
18
+ {{ text | markdownify | replace:'<p>','' | replace:'</p>','' }}
19
+ </p>
20
+ {% endif %}
8
21
  </div>
9
22
 
10
23
  <nav class="sidebar-nav heading" role="navigation">
@@ -13,11 +26,9 @@
13
26
 
14
27
  {% assign author = site.data.authors.first[1] | default:site.author %}
15
28
 
16
- {% if author.social or site.github_username or site.twitter_username %}
17
- <div class="sidebar-social">
18
- {% include social.html social=author.social %}
19
- </div>
20
- {% endif %}
21
- </header>
22
- </div>
23
- </div>
29
+ <div class="sidebar-social">
30
+ {% include social.html author=author %}
31
+ </div>
32
+ </div>
33
+ </header>
34
+ </hy-drawer>