if (!localStorage.getItem("xcode_theme")) {
localStorage.setItem("xcode_theme", "light");
}
var light_theme = document.querySelector("#light_theme");
var dark_theme = document.querySelector("#dark_theme");
light_theme.disabled = true;
dark_theme.disabled = true;
document.addEventListener("DOMContentLoaded", function() {
var blocks = document.querySelectorAll("pre.line-numbers");
var wrapper, div, input, label;
for (var i = 0; i < blocks.length; i++) {
wrapper = document.createElement("div");
wrapper.setAttribute("class", "xcode_container");
div = document.createElement("div");
div.setAttribute("class", "input-container");
div.setAttribute("title", "Toggle Color Theme");
input = document.createElement("input");
input.setAttribute("id", "darkTheme");
input.setAttribute("class", "xcode_switch");
input.setAttribute("type", "checkbox");
input.addEventListener("change", themeSwitch, false);
label = document.createElement("label");
label.setAttribute("class", "xcode_switch");
label.setAttribute("for", "darkTheme");
blocks[i].parentNode.insertBefore(wrapper, blocks[i]);
div.appendChild(input);
div.appendChild(label);
wrapper.appendChild(blocks[i]);
wrapper.appendChild(div);
}
if (localStorage.getItem("xcode_theme") == "dark") {
toggleSwitch(true);
toggleTheme("dark");
} else if (localStorage.getItem("xcode_theme") == "light") {
toggleSwitch(false);
toggleTheme("light");
}
function themeSwitch() {
if (this.checked) {
toggleSwitch(true);
toggleTheme("dark");
localStorage.setItem("xcode_theme", "dark");
} else {
toggleSwitch(false);
toggleTheme("light");
localStorage.setItem("xcode_theme", "light");
}
}
function toggleTheme(theme) {
if (theme == "light") {
light_theme.disabled = false;
dark_theme.disabled = true;
}
if (theme == "dark") {
dark_theme.disabled = false;
light_theme.disabled = true;
}
}
function toggleSwitch(value) {
var inputs = document.querySelectorAll("input.xcode_switch");
for (var i = 0; i < inputs.length; i++) {
inputs[i].checked = value;
}
}
});