window.onload = () => { const menu = document.querySelector("menu"); switch(window.location.pathname.split(/\//)[1]) { case "v": menu.querySelector("li:nth-child(2)").classList.add("active"); break; case "u": menu.querySelector("li:nth-child(4)").classList.add("active"); menu.querySelector("li:nth-child(4) > ul").classList.remove("hidden"); break; case "a": menu.querySelector("li:nth-child(6)").classList.add("active"); menu.querySelector("li:nth-child(6) > ul").classList.remove("hidden"); break; default: menu.querySelector("li:nth-child(1)").classList.add("active"); break; } // timeago const epochs = [ ["year", 31536000], ["month", 2592000], ["day", 86400], ["hour", 3600], ["minute", 60], ["second", 1] ]; const getDuration = timeAgoInSeconds => { for (let [name, seconds] of epochs) { const interval = ~~(timeAgoInSeconds / seconds); if (interval >= 1) { return { interval: interval, epoch: name }; } } }; const timeAgo = date => { const timeAgoInSeconds = ~~((new Date() - new Date(date)) / 1000); const {interval, epoch} = getDuration(timeAgoInSeconds); const suffix = interval === 1 ? "" : "s"; return `${interval} ${epoch}${suffix} ago`; }; document.querySelectorAll("time").forEach(e => e.innerHTML = timeAgo(e.title)); };