Unverified Commit 9057aef1 authored by Maxim Belkin's avatar Maxim Belkin
Browse files

_extras/figures.md: sync up with upstream



Signed-off-by: default avatarMaxim Belkin <maxim.belkin@gmail.com>
parent a9bb67d6
--- ---
title: Figures title: Figures
--- ---
{% include base_path.html %}
<script> <script>
window.onload = function() { window.onload = function() {
var lesson_episodes = [ var lesson_episodes = [
{% for episode in site.episodes %} {% for episode in site.episodes %}
"{{ episode.url}}"{% unless forloop.last %},{% endunless %} "{{ episode.url }}"{% unless forloop.last %},{% endunless %}
{% endfor %} {% endfor %}
]; ];
var xmlHttp = []; /* Required since we are going to query every episode. */ var xmlHttp = []; /* Required since we are going to query every episode. */
for (i=0; i < lesson_episodes.length; i++) { for (i=0; i < lesson_episodes.length; i++) {
xmlHttp[i] = new XMLHttpRequest(); xmlHttp[i] = new XMLHttpRequest();
xmlHttp[i].episode = lesson_episodes[i]; /* To enable use this later. */ xmlHttp[i].episode = lesson_episodes[i]; /* To enable use this later. */
xmlHttp[i].onreadystatechange = function() { xmlHttp[i].onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) { if (this.readyState == 4 && this.status == 200) {
var article_here = document.getElementById(this.episode);
var parser = new DOMParser(); var parser = new DOMParser();
var htmlDoc = parser.parseFromString(this.responseText,"text/html"); var htmlDoc = parser.parseFromString(this.responseText,"text/html");
var htmlDocArticle = htmlDoc.getElementsByTagName("article")[0]; var htmlDocArticle = htmlDoc.getElementsByTagName("article")[0];
article_here.appendChild(htmlDocArticle.getElementsByTagName("h1")[0]);
for (let image of htmlDocArticle.getElementsByTagName("img")) { var article_here = document.getElementById(this.episode);
article_here.appendChild(image); var images = htmlDocArticle.getElementsByTagName("img");
if (images.length > 0) {
var h1text = htmlDocArticle.getElementsByTagName("h1")[0].innerHTML;
var htitle = document.createElement('h2');
htitle.innerHTML = h1text;
article_here.appendChild(htitle);
var image_num = 0;
for (let image of images) {
image_num++;
var title = document.createElement('p');
title.innerHTML = "<strong>Figure " + image_num + ".</strong> " + image.alt;
article_here.appendChild(title);
article_here.appendChild(image.cloneNode(false));
if (image_num < images.length) {
var hr = document.createElement('hr');
article_here.appendChild(hr);
}
}
} }
} }
} }
episode_url = "{{ page.root }}" + lesson_episodes[i]; episode_url = "{{ relative_root_path }}" + lesson_episodes[i];
xmlHttp[i].open("GET", episode_url); xmlHttp[i].open("GET", episode_url);
xmlHttp[i].send(null); xmlHttp[i].send(null);
} }
...@@ -34,5 +62,7 @@ title: Figures ...@@ -34,5 +62,7 @@ title: Figures
Create anchor for each one of the episodes. Create anchor for each one of the episodes.
{% endcomment %} {% endcomment %}
{% for episode in site.episodes %} {% for episode in site.episodes %}
<article id="{{ episode.url }}"></article> <article id="{{ episode.url }}" class="figures"></article>
{% endfor %} {% endfor %}
{% include links.md %}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment