您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
A theme for the shirley portal.
当前为
// ==UserScript== // @name Shirley Theme Overhaul // @namespace http://tampermonkey.net/ // @version 0.2 // @description A theme for the shirley portal. // @author You // @match https://shirley.instructure.com/* // @icon https://www.google.com/s2/favicons?sz=64&domain=instructure.com // @license MIT // @grant none // @grant GM_addStyle // ==/UserScript== function getFirstClass(className) { return document.getElementsByClassName(className)[0]; } (function() { 'use strict'; var cssAppend = document.createElement('link'); cssAppend.setAttribute("rel", "stylesheet"); cssAppend.setAttribute("href", "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css"); cssAppend.setAttribute("integrity", "sha512-Fo3rlrZj/k7ujTnHg4CGR2D7kSs0v4LLanw2qksYuRlEzO+tcaEPQogQ0KaoGN26/zrn20ImR1DfuLWnOo7aBA=="); cssAppend.setAttribute("crossorigin", "anonymous"); cssAppend.setAttribute("referrerpolicy", "no-referrer"); document.head.appendChild(cssAppend); onLoad(); function onLoad() { var overhaulPanel = document.createElement('div'); overhaulPanel.innerHTML = ` <div id="overhaulPanelWrapper"> <div id="overhaulPanelCover"> <span id="overhaulPanelBackgroundCoverGradient"></span> <h1>Thank you for installing S-Overhaul.</h1> <h3>Designed by Nico Cook</h3> <br /> <button class="overhaulButton" onmousedown='document.getElementById("overhaulPanelWrapper").style.transform = "translateX(-100vw)"'>Go Back</button> <br /> <select id="overhaulThemePicker" class="dropdownMenu overhaulThemePicker" name="theme"> <option value="default">Default Theme</option> <option value="1020-day">1020 Day</option> <option value="1020-night">1020 Night</option> <option value="open-era">Open Era</option> <option value="asa-square">Asa Square</option> <option value="shades-of-dim">Shades of Dim</option> <option value="default-overhaul">Default Overhaul</option> </select> <p class="tooltipOverhaul">Overhaul Theme Picker</p> <div id="githubLinkInOverhaulPanel"> <a class="aButton" id="checkGithubOnPanel" href="https://github.com/nebula-developer">Check out my GitHub <i class="fa fa-arrow-down paddingLeftFromCheckGithub"></i></a> </div> <div id="footerInOverhaulPanel" style="cursor: pointer !important;" onmouseup="location.href = 'https://github.com/nebula-developer'"> <img style="width: 30px; margin-right: 10px; height: 30px" src="https://avatars.githubusercontent.com/u/96085977"> <p id="footerInPanelText">Made by Nico Cook</p> </div> </div> </div> <style> :root { --main-button-color: rgb(40, 40, 40); } .paddingLeftFromCheckGithub { padding-left: 2px; } #checkGithubOnPanel { margin-top: 10px; text-align: center; transform: translateY(18px); color: lightgrey; text-decoration: none; } #githubLinkInOverhaulPanel { display: flex; text-align: center; justify-content: center; margin-top: 30px; } #footerInOverhaulPanel { width: 100%; justify-content: center; display: flex; margin-top: 30px; } #footerInPanelText { transform: translateY(-10px); pointer-events: none; } .overhaulThemePicker { margin-top: 30px; background-color: rgba(235, 235, 255, 1); border: none; outline: none; border-radius: 100px; text-align: center; transition: background-color 0.3s; } .overhaulThemePicker:hover { background-color: rgba(215, 215, 215, 1); } .#tooltipOverhaul { margin-top: -5px; } .overhaulThemePicker:focus { border: none; outline: none; background-color: rgba(215, 215, 235, 1); } .overhaulButton { outline: none; border: none; min-width: 150px; min-height: 40px; color: white; font-size: 20px; border-radius: 100px; background-color: darkcyan; transition: background-color 0.3s; } .overhaulButton:hover { background-color: rgb(140, 140, 140); } .overhaulSmallCircleButton { text-align: center; display: block; outline: none; border: none; background-color: transparent; width: 50px; height: 50px; border-radius: 40px; } .overhaulButtonWrapper { width: 100%; height: 40px; display: flex; justify-content: center; align-items: center; text-align: center; transition: background-color 0.5s; cursor: pointer; } .overhaulButtonWrapper:hover { background-color: rgba(0,0,0,.2); } #overhaulPanelWrapper { transform: translateY(-24px); color: white; display: none; overflow: hidden; width: 100vw; height: 100vh; max-height: 100vh; max-width: 100vw; z-index: 1000 !important; top: 0; text-align: center; display: flex; padding-top: 40px; justify-content: center; align-items: center; transition: transform 0.5s ease; transform: translateX(-100vw); position: fixed; background: radial-gradient(rgb(57,5,88), rgb(7,75,88)); font-weight: 500 !important; animation: animatePanelBG 5s; animation-iteration-count: infinite; } #overhaulPanelCover { } .overhaulBarsSidebar { font-size: 25px; } #overhaulPanelBackgroundCoverGradient { transform: translateY(-24px); color: white; width: 100vw; height: 100vh; max-height: 100vh; max-width: 100vw; z-index: 1000 !important; top: 25px; left: 0; text-align: center; display: flex; align-items: center; justify-content: center; position: fixed; overflow-y: hidden !important; background: radial-gradient(transparent, rgb(170 62 205 / 81%)); pointer-events: none; } @keyframes animatePanelBG { 0% { background: rgb(7,75,88); } 50% { background: rgb(57,5,88); } 100% { background: rgb(7,75,88); } } </style> ` document.body.insertBefore(overhaulPanel, document.body.firstChild); var sidebarButtonWrapper = document.createElement('div'); sidebarButtonWrapper.innerHTML = ` <button class="overhaulSmallCircleButton"><i style="color: white" class="fa fa-bars overhaulBarsSidebar" aria-hidden="true"></i></button> `; sidebarButtonWrapper.setAttribute("title", "Open the Overhaul Menu"); sidebarButtonWrapper.classList.add("overhaulButtonWrapper"); sidebarButtonWrapper.setAttribute("onmousedown", "document.getElementById(\"overhaulPanelWrapper\").style.transform = \"translateX(0)\""); document.getElementsByClassName("ic-app-header__main-navigation")[0].appendChild(sidebarButtonWrapper); var menuButtonWrapper = document.createElement('a'); menuButtonWrapper.setAttribute("style", "cursor:pointer"); menuButtonWrapper.innerText = "Overhaul Menu"; menuButtonWrapper.setAttribute("mousedown", "document.getElementById(\"overhaulPanelWrapper\").style.transform = \"translateX(0)\""); try { document.getElementById("footer-links").insertBefore(menuButtonWrapper, document.getElementById("footer-links").firstChild); } catch (error) { } var panelWrapper = document.getElementById("overhaulPanelWrapper"); var bgColorPicker = document.getElementById("overhaulThemePicker"); var globalRootDefining = document.createElement('style'); globalRootDefining.id = "globalOverhaulRootTheme"; document.onload = loadTheme(); document.getElementById("overhaulThemePicker").value = localStorage.getItem("overhaulTheme") function day_1020() { globalRootDefining.innerHTML = ` :root { --ic-link-color: #8b93b2; --ic-brand-primary: #b081ac; --ic-brand-global-nav-bgd: #7092aa; --eHiXd-linkColor: #737149; } .ic-Dashboard-header__layout { border-radius: 10px; } .ic-DashboardCard { box-shadow: 0 2px 5px rgb(0 26 255 / 30%); } .hidden-phone { margin-left: 10px; color: #bed599; } #dashboard { border-radius: 10px; background-color: #e3e3ff; overflow: hidden; padding: 20px; margin-top: -3px; } .ic-app-footer__links a { color: #6ea9d3; } .Button--icon-action-rev { color: #45d3ff; filter: drop-shadow(0 0 5px black); } #right-side-wrapper { border-radius: 20px; background-color: #ffe8cc; margin: 20px; } .ic-app-header__logomark-container { display: none; } .button-sidebar-wide { background: #dfc7a0; border-radius: 7px; color: white; border: none; transition: 0.2s; z-index: 5 !important; } .ic-DashboardCard { border-radius: 10px; padding: 20px; transition: transform 0.5s ease, padding 0.5s ease; } .ic-DashboardCard:hover .ic-DashboardCard__header_hero { border-radius: 40px; } .ic-DashboardCard:hover .ic-DashboardCard__header_image { border-radius: 40px; } .ic-DashboardCard:hover { padding: 30px; overflow: hidden; } .ic-DashboardCard__header_content { height: 100px; } .ic-DashboardCard__header_hero { border-radius: 30px; overflow: hidden; background: transparent; filter: none; background: radial-gradient(transparent, #7c8ecd) !important; opacity: 0.4; transition: border-radius 0.5s ease; } .ic-DashboardCard__header-title { color: grey !important; } .ic-DashboardCard__header_image { border-radius: 30px; overflow: hidden; filter: none; transition: border-radius 0.5s ease; } .button-sidebar-wide:hover { background-color: #ffc797; } ` document.body.appendChild(globalRootDefining); } function night_1020() { globalRootDefining.innerHTML = ` :root { --ic-link-color: #4a3f6b; --ic-brand-primary: #6b8ec4; --ic-brand-global-nav-bgd: #404040; --eHiXd-linkColor: #ffffff; } .ic-Dashboard-header__layout { border-radius: 10px; } .ic-DashboardCard { background-color: #f1e6ff; box-shadow: 0 2px 5px rgb(0 26 255 / 30%); } .ic-DashboardCard__header_content { background-color: transparent; } .hidden-phone { margin-left: 10px; color: #7a557a; } #courseMenuToggle { color: rgba(0, 0, 0, 0.4); margin-bottom: 5px; } .ellipsible { color: rgba(0, 0, 0, 0.4); } #dashboard { border-radius: 10px; background-color: #6a6a7c; overflow: hidden; padding: 20px; margin-top: -3px; } .ic-app-footer__links a { color: #6ea9d3; } .Button--icon-action-rev { color: #ffffff; filter: drop-shadow(0 0 5px black); } #right-side-wrapper { border-radius: 20px; background-color: #b4c8cd; margin: 20px; } .ic-app-header__logomark-container { display: none; } #menu { background-color: #46475e; } .button-sidebar-wide { background: #687476; border-radius: 7px; color: white; border: none; transition: 0.2s; z-index: 5 !important; } img { color: grey; } .ic-DashboardCard { border-radius: 10px; padding: 20px; transition: transform 0.5s ease, padding 0.5s ease; } .ic-DashboardCard:hover .ic-DashboardCard__header_hero { border-radius: 40px; } .ic-DashboardCard:hover .ic-DashboardCard__header_image { border-radius: 40px; } .ic-DashboardCard:hover { padding: 30px; overflow: hidden; } .ic-DashboardCard__header_content { height: 100px; } .ic-DashboardCard__header_hero { border-radius: 30px; overflow: hidden; background: transparent; filter: none; background: radial-gradient(transparent, #7c8ecd) !important; opacity: 0.4; transition: border-radius 0.5s ease; } .ic-DashboardCard__header_image { border-radius: 30px; overflow: hidden; filter: none; transition: border-radius 0.5s ease; } .button-sidebar-wide:hover { background-color: #7f7e9d; } ` document.body.appendChild(globalRootDefining); } function open_era() { globalRootDefining.innerHTML = ` :root { --ic-link-color: #000000; --ic-brand-primary: #d1d1d1; --ic-brand-global-nav-bgd: #5e6f81; --eHiXd-linkColor: #ffffff; } .ic-Dashboard-header__layout { border-radius: 10px; } .ic-DashboardCard { box-shadow: 0 2px 5px rgb(0 0 0 / 30%); } .hidden-phone { margin-left: 10px; color: #bed599; } #dashboard { border-radius: 35px; background-color: #9f9f9f1c; overflow: hidden; padding: 50px; margin-top: -3px; } .ic-app-footer__links a { color: #6ea9d3; } .Button--icon-action-rev { color: #45d3ff; } #right-side-wrapper { border-radius: 61px; background-color: #b3b4cb0d; margin: 17px; } .ic-app-header__logomark-container { display: none; } .button-sidebar-wide { background: #8e93b1; border-radius: 7px; color: white; border: none; transition: 0.2s; z-index: 5 !important; } .ic-DashboardCard { border-radius: 10px; padding: 10px; transition: transform 0.5s ease, padding 0.5s ease; } .ic-DashboardCard:hover .ic-DashboardCard__header_hero { border-radius: 5px; } .ic-DashboardCard:hover .ic-DashboardCard__header_image { border-radius: 5px; } .ic-DashboardCard:hover { padding: 20px; overflow: hidden; } .ic-DashboardCard__header_hero { border-radius: 0px; overflow: hidden; background: transparent; filter: none; background: radial-gradient(transparent, #7c8ecd) !important; opacity: 0.4; transition: border-radius 0.5s ease; } .ic-DashboardCard__header_image { border-radius: 0px; overflow: hidden; filter: none; transition: border-radius 0.5s ease; } .button-sidebar-wide:hover { background-color: #aaa9d1; } li { color: grey !important; } span { color: grey !important; } h2 { color: grey !important; } small { color: grey !important; } ` document.body.appendChild(globalRootDefining); } function asa_square() { globalRootDefining.innerHTML = ` :root { --ic-link-color: #000000; --ic-brand-primary: #d1d1d1; --ic-brand-global-nav-bgd: #b2b2b2; --eHiXd-linkColor: #ffffff; } .ic-Dashboard-header__layout { } .ic-DashboardCard { box-shadow: 0 2px 5px rgb(0 0 0 / 30%); } .hidden-phone { margin-left: 10px; color: #bed599; } #dashboard { background-color: #72a3974d; overflow: hidden; padding: 50px; margin-top: -3px; } .ic-app-footer__links a { color: #6ea9d3; } .Button--icon-action-rev { color: #45d3ff; } #right-side-wrapper { background-color: #b3b4cb2e; margin: 17px; } .ic-app-header__logomark-container { display: none; } .button-sidebar-wide { background: #8e93b1; color: white; border: none; transition: 0.2s; z-index: 5 !important; } .ic-DashboardCard { padding: 10px; transition: transform 0.5s ease, padding 0.5s ease; } .ic-DashboardCard:hover .ic-DashboardCard__header_hero { } .ic-DashboardCard:hover .ic-DashboardCard__header_image { } .ic-DashboardCard__header_hero { overflow: hidden; background: transparent; filter: none; background: radial-gradient(transparent, #7c8ecd) !important; opacity: 0.4; transition: border-radius 0.5s ease; } .ic-DashboardCard__header_image { overflow: hidden; filter: none; } .button-sidebar-wide:hover { background-color: #aaa9d1; } li { color: black !important; } span { color: black !important; } h2 { color: black !important; } small { color: darkgrey !important; } body * { box-shadow: none !important; text-shadow: none !important; border: none !important; outline: none !important; } ` document.body.appendChild(globalRootDefining); } function shades_of_dim() { globalRootDefining.innerHTML = ` :root { --ic-link-color: #474747; --ic-brand-primary: #444444; --ic-brand-global-nav-bgd: #6a6a6a; --eHiXd-linkColor: #3d3d3d; } .ic-Dashboard-header__layout { border-radius: 10px; } .ic-DashboardCard { box-shadow: 0 2px 5px rgb(0 26 255 / 30%); } .ic-DashboardCard__header-subtitle { text-decoration: none !important; } .ic-DashboardCard__header-subtitle::after { display: none !important; } .ic-DashboardCard__header-title span { color: #525252 !important; } .hidden-phone { margin-left: 10px; color: white; } .ic-notification__content { background: #cdcdcd !important; } #DashboardOptionsMenu_Container span button { color: white; } #dashboard { border-radius: 10px; background-color: #9d9d9d; overflow: hidden; padding: 20px; margin-top: -3px; } .ic-app-footer__links a { color: #6ea9d3; } .Button--icon-action-rev { color: #d1d1d1; filter: drop-shadow(0 0 5px lightgrey); } #right-side-wrapper { border-radius: 5px; background-color: #cfcfcf; margin: 20px; } .ic-app-header__logomark-container { display: none; } .button-sidebar-wide { background: #8f8f8f; border-radius: 7px; color: white; border: none; transition: 0.2s; z-index: 5 !important; } #footer-links a { color: grey !important; } .button-sidebar-wide:hover { background-color: #b9b9b9; } .ic-DashboardCard { border-radius: 5px; padding: 20px; background: #dbdbdb; box-shadow: 0 2px 5px rgb(66 66 66 / 30%); transition: transform 0.5s ease, padding 0.5s ease; } .ic-DashboardCard:hover .ic-DashboardCard__header_hero { border-radius: 5px; } .ic-DashboardCard:hover .ic-DashboardCard__header_image { border-radius: 5px; } .ic-DashboardCard__header_content { height: 100px; background: transparent; } .ic-Dashboard-header__layout { background: rgb(187 187 187 / 95%); border-bottom: none !important; } .ic-DashboardCard__header_hero { border-radius: 5px; overflow: hidden; background: transparent; filter: none; background: radial-gradient(transparent, #7c8ecd) !important; opacity: 0.4; transition: border-radius 0.5s ease; } .ic-DashboardCard__header-title { color: grey !important; } .Button--primary { background: #303030 !important; } .ic-DashboardCard__header_image { border-radius: 5px; overflow: hidden; filter: none; transition: border-radius 0.5s ease; } ` document.body.appendChild(globalRootDefining); } function default_overhaul() { globalRootDefining.innerHTML = ` .ic-Dashboard-header__layout { border-radius: 10px; } .ic-DashboardCard__header-subtitle { text-decoration: none !important; } .ic-DashboardCard__header-subtitle::after { display: none !important; } .hidden-phone { margin-left: 10px; } #dashboard { overflow: hidden; padding: 5px; margin-top: -3px; } #right-side-wrapper { margin: 20px; } .ic-app-header__logomark-container { display: none; } .button-sidebar-wide { border-radius: 7px; border: none; transition: 0.2s; z-index: 5 !important; } .ic-DashboardCard { border-radius: 5px; padding: 7px; transition: transform 0.5s ease, padding 0.5s ease; } .ic-DashboardCard:hover .ic-DashboardCard__header_hero { border-radius: 5px; } .ic-DashboardCard:hover .ic-DashboardCard__header_image { border-radius: 5px; } .ic-DashboardCard__header_content { height: 100px; } .ic-DashboardCard__header_hero { border-radius: 5px; overflow: hidden; filter: none; transition: border-radius 0.5s ease; } .ic-DashboardCard__header_image { border-radius: 5px; overflow: hidden; filter: none; transition: border-radius 0.5s ease; } ` document.body.appendChild(globalRootDefining); } function loadTheme() { switch (localStorage.getItem("overhaulTheme")) { case "1020-day": day_1020(); break; case "1020-night": night_1020(); break; case "open-era": open_era(); break; case "asa-square": asa_square(); break; case "shades-of-dim": shades_of_dim(); break; case "default-overhaul": default_overhaul(); break; default: var rem = document.getElementById("globalOverhaulRootTheme"); if (!rem) { break; } rem.parentNode.removeChild(rem); break; } } document.getElementById('overhaulThemePicker').onchange = (() => {localStorage.setItem('overhaulTheme', document.getElementById('overhaulThemePicker').value); document.getElementById("overhaulPanelWrapper").style.transform = "translateX(-100vw)"; loadTheme()}); var removeDefaultFooter = document.createElement("style"); removeDefaultFooter.innerHTML =` .footer-logo { display: none !important; opacity: 0 !important; }` document.body.insertBefore(removeDefaultFooter, document.body.firstChild); var logoNebulaDev = document.createElement("div"); logoNebulaDev.setAttribute("style", "cursor: pointer; display: flex; height: 50px; align-items: center;") logoNebulaDev.onmousedown = (() => {location.href = "https://github.com/nebula-developer";}) logoNebulaDev.innerHTML = ` <img style="width: 30px; margin-right: 10px; height: 30px" src="https://avatars.githubusercontent.com/u/96085977"> <p>Made by Nico Cook</p> ` try { document.getElementById("footer").insertBefore(logoNebulaDev, document.getElementById("footer").firstChild); } catch (error) { } } })();