// Blocks docReady(function() { var boxesNames = { "seealso": "See also", "definition": "Definition", "exampl": "Example", "exercice": "Exercice", "question": "Question", "summary": "Summary", "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') for (let srcContrainer of srcContainers) { let boxCopy = document.createElement('div') boxCopy.className = "src-copy" boxCopy.textContent = "Copy" boxCopy.onclick = function() { // Create a clone the node to not affect the original one let nodeClone = this.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); }); } srcContrainer.prepend(boxCopy); } }); // 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 // }; // }($));