summaryrefslogtreecommitdiffstats
path: root/docs/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js
diff options
context:
space:
mode:
Diffstat (limited to 'docs/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js')
-rw-r--r--docs/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js43
1 files changed, 43 insertions, 0 deletions
diff --git a/docs/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js b/docs/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js
new file mode 100644
index 000000000..a689d474e
--- /dev/null
+++ b/docs/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js
@@ -0,0 +1,43 @@
+/**
+ * Scripts which manages Code Toggle tabs.
+ */
+var i;
+// store tabs variable
+var allTabs = document.querySelectorAll("[data-toggle-tab]");
+var allPanes = document.querySelectorAll("[data-pane]");
+
+function toggleTabs(event) {
+
+ if(event.target){
+ event.preventDefault();
+ var clickedTab = event.currentTarget;
+ var targetKey = clickedTab.getAttribute("data-toggle-tab")
+ }else {
+ var targetKey = event
+ }
+ // We store the config language selected in users' localStorage
+ if(window.localStorage){
+ window.localStorage.setItem("configLangPref", targetKey)
+ }
+ var selectedTabs = document.querySelectorAll("[data-toggle-tab='" + targetKey + "']");
+ var selectedPanes = document.querySelectorAll("[data-pane='" + targetKey + "']");
+
+ for (var i = 0; i < allTabs.length; i++) {
+ allTabs[i].classList.remove("active");
+ allPanes[i].classList.remove("active");
+ }
+
+ for (var i = 0; i < selectedTabs.length; i++) {
+ selectedTabs[i].classList.add("active");
+ selectedPanes[i].classList.add("active");
+ }
+
+}
+
+for (i = 0; i < allTabs.length; i++) {
+ allTabs[i].addEventListener("click", toggleTabs)
+}
+// Upon page load, if user has a preferred language in its localStorage, tabs are set to it.
+if(window.localStorage.getItem('configLangPref')) {
+ toggleTabs(window.localStorage.getItem('configLangPref'))
+}