schoolbox web extension :)
1import { definePlugin } from "@/utils/plugin"; 2 3export default function init() { 4 definePlugin( 5 "tabTitle", 6 async (settings) => { 7 const path = window.location.pathname; 8 const titleMap: { [key: string]: string } = { 9 "/": "Homepage", 10 "/calendar": "Calendar", 11 "/news": "News", 12 "/learning/classes": "Classes", 13 "/resources": "Resources", 14 "/groups": "Groups", 15 "/settings/notifications": "Notifications Settings", 16 "/mail/create": "Compose Email", 17 "/feedback": "Support and Feedback", 18 "/policy": "Guidelines of Use and Privacy Policy", 19 }; 20 21 if (titleMap[path]) { 22 document.title = titleMap[path]; 23 } else if (path.includes("/timetable")) { 24 document.title = "Timetable"; 25 } else if (path.includes("/calendar")) { 26 document.title = "Calendar"; 27 } else if (path.includes("/grades/")) { 28 document.title = "Grades"; 29 } else if (path.includes("/news/")) { 30 document.title = `News (${document.getElementsByTagName("h1")[0].innerText})`; 31 } else if (path.includes("/assessments/")) { 32 document.title = `Assessments - ${document.getElementsByTagName("h1")[0].innerText})`; 33 } else if (path.includes("/mail/create")) { 34 document.title = "Compose Email"; 35 } else if (path.includes("/search/user")) { 36 document.title = `Profile - ${document.getElementsByTagName("h1")[0].innerText}`; 37 } else if (path.includes("/learning/due/")) { 38 document.title = "Due Work"; 39 } else if (path.includes("/homepage/")) { 40 if (settings?.toggle.showSubjectPrefix === false) { 41 document.title = document.getElementsByTagName("h1")[0].innerText.replace(/^.*- /, ""); 42 } else { 43 document.title = document.getElementsByTagName("h1")[0].innerText; 44 } 45 } 46 }, 47 ["h1"], 48 ); 49}