PageSourceSearch

https://yasoob.me/js/main.js

js yasoob.me collected 2026-10-03 21:37:31 UTC 2,744 bytes, 85 lines download raw bytes

1function changeValue(elementName, newValue) {
2  document.getElementsByName(elementName)[0].value = newValue;
3  window.location.hash = "#comment-form";
4};
5
6function nav_display() {
7  var element = document.getElementById("nav");
8  element.classList.toggle("hide-nav");
9}
10
11function getCookie(cname) {
12  var name = cname + "=";
13  var decodedCookie = decodeURIComponent(document.cookie);
14  var ca = decodedCookie.split(';');
15  for (var i = 0; i < ca.length; i++) {
16    var c = ca[i];
17    while (c.charAt(0) == ' ') {
18      c = c.substring(1);
19    }
20    if (c.indexOf(name) == 0) {
21      return c.substring(name.length, c.length);
22    }
23  }
24  return "";
25}
26
27function enableDarkmode() {
28  document.getElementById("dark").rel = "stylesheet";
29  document.getElementById("light").rel = "alternate stylesheet";
30  console.log("setting darkmode");
31}
32
33function disableDarkmode() {
34  document.getElementById("light").rel = "stylesheet";
35  document.getElementById("dark").rel = "alternate stylesheet";
36  console.log("removing darkmode");
37}
38
39document.addEventListener('DOMContentLoaded', (event) => {
40  //the event occurred
41  hljs.initHighlightingOnLoad();
42  var ModeToggler = document.getElementById('darkModeToggle');
43
44  ModeToggler.addEventListener("click", function () {
45    var date = new Date();
46    var days = 10;
47    date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
48    var element = document.body;
49    element.classList.toggle("darkmode");
50    console.log(getCookie("darkmode") == "true");
51    if (getCookie("darkmode") != "true") {
52      enableDarkmode();
53      // Updating cookies will help prevent this from showing up again soon
54      // http://www.quirksmode.org/js/cookies.html
55      document.cookie = "darkmode=true; expires=" + date.toGMTString() + "; path=/";
56    }
57    else {
58      // Updating CSS on the fly
59      // https://stackoverflow.com/questions/19844545/replacing-css-file-on-the-fly-and-apply-the-new-style-to-the-page
60      disableDarkmode();
61      document.cookie = "darkmode=false; expires=" + date.toGMTString() + "; path=/";
62    }
63  });
64
65  if (getCookie("darkmode") == "true") {
66    var element = document.body;
67    element.classList.toggle("darkmode");
68    enableDarkmode();
69  }
70
71  var closeNewsletterBtn = document.getElementById('close-btn');
72  closeNewsletterBtn.addEventListener("click", function () {
73    document.getElementById('mc_embed_signup').style.display = 'none';
74
75    var date = new Date();
76    var days = 10;
77    date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
78    document.cookie =
79      "hidesubscribe=true; expires=" + date.toGMTString() + "; path=/";
80  });
81
82  if (getCookie("hidesubscribe") == "true") {
83    document.getElementById('mc_embed_signup').style.display = 'none';
84  }
85});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.