// Blocks docReady(function() { var boxesNames = { "seealso": "See also", "definition": "Definition", "exampl": "Example", "exercice": "Exercice", "question": "Question", "summary": "Summary", "note": "Note", "answer": "Answer", "hint": "Hint", "important": "Important", "caution": "Caution", "warning": "Warning" }; for (var className in boxesNames) { let boxes = document.querySelectorAll('div.' + className); for (let box of boxes) { let boxTitle = document.createElement('p'); boxTitle.className = "admonition-title " + className; boxTitle.textContent = boxesNames[className]; box.parentNode.insertBefore(boxTitle, box); } } }); // Copy Source Block docReady(function() { let srcContainers = document.querySelectorAll('pre.src'); function copyClickFunction() { let boxCopy = this; // Create a clone the node to not affect the original one let nodeClone = boxCopy.parentNode.cloneNode(true); // Remove Line Numbers and Copy Button let linenumNodes = nodeClone.querySelectorAll('.linenr,.src-copy'); for (var i = linenumNodes.length - 1 ; i >= 0 ; --i) { nodeClone.removeChild(linenumNodes[i]); } // Copy the filetered content to the clipboard let srcText = nodeClone.textContent; navigator.clipboard.writeText(srcText).then(function() { boxCopy.textContent = "Copied"; boxCopy.classList.add("src-copied"); setTimeout(function() { boxCopy.textContent = "Copy"; boxCopy.classList.remove("src-copied"); }, 2000); }); } for (let srcContrainer of srcContainers) { let boxCopy = document.createElement('div'); boxCopy.className = "src-copy"; boxCopy.textContent = "Copy"; boxCopy.onclick = copyClickFunction; srcContrainer.prepend(boxCopy); } }); // Wrap Images and Tables docReady(function() { let wrap_elements = document.querySelectorAll('[float=wrap-right]'); for (let wrap_el of wrap_elements) { wrap_el.closest('.figure').classList.add('wrap-right'); } wrap_elements = document.querySelectorAll('[float=wrap-left]'); for (let wrap_el of wrap_elements) { wrap_el.closest('.figure').classList.add('wrap-left'); } }); // Equivalent of Jquery $.ready function docReady(fn) { // see if DOM is already available if (document.readyState === "complete" || document.readyState === "interactive") { // call on next available tick setTimeout(fn, 1); } else { document.addEventListener("DOMContentLoaded", fn); } } // Load Jquery var scr = document.createElement('script'), head = document.head || document.getElementsByTagName('head')[0]; scr.src = 'https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js'; scr.async = false; // optionally head.insertBefore(scr, head.firstChild); // Load Bootstrap.js var scr = document.createElement('script'), head = document.head || document.getElementsByTagName('head')[0]; scr.src = 'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js'; scr.async = false; // optionally head.insertBefore(scr, head.firstChild); // After it is loaded scr.addEventListener('load', () => { $(document).ready(function() { $('#text-table-of-contents ul').first().addClass('nav'); // ScrollSpy also requires that we use // a Bootstrap nav component. $('body').scrollspy({target: '#text-table-of-contents'}); // set the height of tableOfContents var $postamble = $('#postamble'); var $tableOfContents = $('#table-of-contents'); $tableOfContents.css({paddingBottom: $postamble.outerHeight()}); // add TOC button var toggleSidebar = $('
'); $('#content').prepend(toggleSidebar); // add close button when sidebar showed in mobile screen var closeBtn = $('Close'); var tocTitle = $('#table-of-contents').find('h2'); tocTitle.append(closeBtn); }); }); // function collapse_toc_elements_on_click (nav_li_a){ // /* // When an `a' element in the TOC is clicked, its parent // `li' element's active attribute is toggled. This causes // the element to toggle between minimized and maximized // states. The active attribute is documented in bootstrap. // https://getbootstrap.com/docs/4.0/components/navbar/#nav // */ // $(nav_li_a).parent().toggleClass("active"); // } // $( document ).ready(function() { // // When the document is loaded and ready, bind the // // function `collapse_toc_elements_on_click' to the // // `a' elements in the table of contents. // $("#text-table-of-contents a").click(function() { // collapse_toc_elements_on_click(this); // }); // }); // $( document ).ready(function() { // // Shift nav in mobile when clicking the menu. // $(document).on('click', "[data-toggle='wy-nav-top']", function() { // $("[data-toggle='wy-nav-shift']").toggleClass("shift"); // $("[data-toggle='rst-versions']").toggleClass("shift"); // }); // // Close menu when you click a link. // $(document).on('click', ".wy-menu-vertical .current ul li a", function() { // $("[data-toggle='wy-nav-shift']").removeClass("shift"); // $("[data-toggle='rst-versions']").toggleClass("shift"); // }); // $(document).on('click', "[data-toggle='rst-current-version']", function() { // $("[data-toggle='rst-versions']").toggleClass("shift-up"); // }); // // Make tables responsive // $("table.docutils:not(.field-list)").wrap(""); // }); // $( document ).ready(function() { // $('#text-table-of-contents ul').first().addClass('nav'); // // ScrollSpy also requires that we use // // a Bootstrap nav component. // $('body').scrollspy({target: '#text-table-of-contents'}); // // set the height of tableOfContents // var $postamble = $('#postamble'); // var $tableOfContents = $('#table-of-contents'); // $tableOfContents.css({paddingBottom: $postamble.outerHeight()}); // // add TOC button // var toggleSidebar = $(' '); // $('#content').prepend(toggleSidebar); // // add close button when sidebar showed in mobile screen // var closeBtn = $('Close'); // var tocTitle = $('#table-of-contents').find('h2'); // tocTitle.append(closeBtn); // }); // window.SphinxRtdTheme = (function (jquery) { // var stickyNav = (function () { // var navBar, // win, // stickyNavCssClass = 'stickynav', // applyStickNav = function () { // if (navBar.height() <= win.height()) { // navBar.addClass(stickyNavCssClass); // } else { // navBar.removeClass(stickyNavCssClass); // } // }, // enable = function () { // applyStickNav(); // win.on('resize', applyStickNav); // }, // init = function () { // navBar = jquery('nav.wy-nav-side:first'); // win = jquery(window); // }; // jquery(init); // return { // enable : enable // }; // }()); // return { // StickyNav : stickyNav // }; // }($));