Add javascript comments to the dt-ids snippet
[rnaseq-cwl-training.git] / _includes / javascript.html
index ccf0a887a0ebd831b47c86be69e25277ebd33366..93b51527320bef9e2e1acf64913779f88cfb5110 100644 (file)
@@ -1,3 +1,33 @@
-<script src="{{ site.github.url | replace_first: 'http:', 'https:' }}/assets/js/jquery.min.js"></script>
-<script src="{{ site.github.url | replace_first: 'http:', 'https:' }}/assets/js/bootstrap.min.js"></script>
-<script src="{{ site.github.url | replace_first: 'http:', 'https:' }}/assets/js/lesson.js"></script>
+{% comment %}
+  Javascript used in lesson and workshop pages.
+{% endcomment %}
+<script src="{{ page.root }}/assets/js/jquery.min.js"></script>
+<script src="{{ page.root }}/assets/js/bootstrap.min.js"></script>
+<script src="{{ page.root }}/assets/js/lesson.js"></script>
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+  ga('create', 'UA-37305346-2', 'auto');
+  ga('send', 'pageview');
+</script>
+<script>
+  // This snippet fixes a bug caused by Github's pages-gem using kramdown v1.11.1.
+  // In order for anchor links to point to the correct place in the glossary, they must have an id
+  // This snippet ensures every definition term has an id
+  // See https://github.com/swcarpentry/styles/pull/129
+  $('dt').each(function () {
+    if (!this.id) {
+      var id = $(this).text();
+      // If there's a ( in the name (e.g., "comma-separated values (CSV)") - just take everything up to the first (
+      var index = id.indexOf('(');
+      if (index > 0) {
+        id = id.substring(0, index);
+      }
+      // Strip leading and trailing whitespace, convert spaces to dashes and convert everything to lowercase
+      id = id.trim().replace(/ /g, '-').toLowerCase();
+      this.id = id;
+    }
+  });
+</script>