Update Compass QoL Enhancer to 1.14.0
- Automatically add the currently open learning task's ID to the URL - Derive tab IDs from their titles if they have an autogenerated one
This commit is contained in:
parent
2e251efbdf
commit
b3558d6fc6
|
@ -2,7 +2,7 @@
|
||||||
// @name Compass QoL Enhancer
|
// @name Compass QoL Enhancer
|
||||||
// @namespace blankie-scripts
|
// @namespace blankie-scripts
|
||||||
// @match http*://*.compass.education/*
|
// @match http*://*.compass.education/*
|
||||||
// @version 1.13.2
|
// @version 1.14.0
|
||||||
// @author blankie
|
// @author blankie
|
||||||
// @description A userscript that adds small but useful features for Compass, such as the ability to close windows by clicking on the background
|
// @description A userscript that adds small but useful features for Compass, such as the ability to close windows by clicking on the background
|
||||||
// @inject-into page
|
// @inject-into page
|
||||||
|
@ -97,6 +97,27 @@ if (LearningTasksDetailsWidgetNew) {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Automatically add (and remove) the currently open learning task to the URL
|
||||||
|
function handleLearningTaskOpen(window) {
|
||||||
|
let search = getHashSearch();
|
||||||
|
search.set("qol_learning_task", window.learningTask.data.id);
|
||||||
|
history.pushState("", "", `#${search.laxToString()}`);
|
||||||
|
}
|
||||||
|
function handleLearningTaskClose() {
|
||||||
|
let search = getHashSearch();
|
||||||
|
search.delete("qol_learning_task");
|
||||||
|
history.pushState("", "", `#${search.laxToString()}`);
|
||||||
|
}
|
||||||
|
let LearningTasksSubmissionWidget = getExtClass("Compass.widgets.LearningTasksSubmissionWidget");
|
||||||
|
if (LearningTasksSubmissionWidget) {
|
||||||
|
let original = LearningTasksSubmissionWidget.prototype.initComponent;
|
||||||
|
LearningTasksSubmissionWidget.prototype.initComponent = function() {
|
||||||
|
original.apply(this, arguments);
|
||||||
|
handleLearningTaskOpen(this);
|
||||||
|
this.on("close", handleLearningTaskClose);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function updateInstanceButton(instanceDetails, instanceButton, offset) {
|
function updateInstanceButton(instanceDetails, instanceButton, offset) {
|
||||||
// Make previous/next session buttons links
|
// Make previous/next session buttons links
|
||||||
let index = instanceDetails.instanceStore.indexOfId(instanceDetails.m_instanceId);
|
let index = instanceDetails.instanceStore.indexOfId(instanceDetails.m_instanceId);
|
||||||
|
@ -222,6 +243,10 @@ function handleNewCalendarEvent(element, calendar) {
|
||||||
|
|
||||||
function handlePanelItem(panel, panelItem, isDefault, tabToOpen) {
|
function handlePanelItem(panel, panelItem, isDefault, tabToOpen) {
|
||||||
let panelId = panelItem.itemId || panelItem.id;
|
let panelId = panelItem.itemId || panelItem.id;
|
||||||
|
// example of panel-<id>: /Organise/Subjects/Subject.aspx
|
||||||
|
if (panelId.startsWith("panel-")) {
|
||||||
|
panelId = panelItem.title.toLowerCase().replaceAll(" ", "-");
|
||||||
|
}
|
||||||
let panelItemHash = getPanelItemHash(panelId, isDefault);
|
let panelItemHash = getPanelItemHash(panelId, isDefault);
|
||||||
|
|
||||||
// Automatically open tab specified in fragment
|
// Automatically open tab specified in fragment
|
||||||
|
|
|
@ -30,7 +30,7 @@ A userscript that adds small but useful features for Compass. Features include:
|
||||||
- Calendar events now show their end time without having to being hovered
|
- Calendar events now show their end time without having to being hovered
|
||||||
- Tabs are now links (you can refresh pages and the tab will automatically
|
- Tabs are now links (you can refresh pages and the tab will automatically
|
||||||
open. you can also ctrl+click on them)
|
open. you can also ctrl+click on them)
|
||||||
- Files and folders in Resources is now marked clickable ([Link Hints] can now
|
- Files and folders in Resources are now marked clickable ([Link Hints] can now
|
||||||
open them!)
|
open them!)
|
||||||
- File upload buttons now work with [Link Hints]
|
- File upload buttons now work with [Link Hints]
|
||||||
- Links inside lesson plans now open in the parent tab by default instead of
|
- Links inside lesson plans now open in the parent tab by default instead of
|
||||||
|
@ -38,9 +38,11 @@ A userscript that adds small but useful features for Compass. Features include:
|
||||||
- Ctrl-clicking an activity in a user's learning tasks tab no longer collapses
|
- Ctrl-clicking an activity in a user's learning tasks tab no longer collapses
|
||||||
everything else
|
everything else
|
||||||
- Learning tasks now being links (you can ctrl-click them)
|
- Learning tasks now being links (you can ctrl-click them)
|
||||||
|
- Opening a learning task will automatically add its ID to the URL
|
||||||
- The previous/next buttons and sessions dropdown are now links (you can now
|
- The previous/next buttons and sessions dropdown are now links (you can now
|
||||||
use [Link Hints] and ctrl-click to open them)
|
use [Link Hints] and ctrl-click to open them)
|
||||||
- News feed items can now be opened by simply clicking on their background
|
- Class and news feed items can now be opened by simply clicking on their
|
||||||
|
background
|
||||||
- The context menu that only says "Copy" is now suppressed
|
- The context menu that only says "Copy" is now suppressed
|
||||||
- The option to remember logins is unchecked by default
|
- The option to remember logins is unchecked by default
|
||||||
- The dashboard tab in a user's profile no longer points you to #dsb
|
- The dashboard tab in a user's profile no longer points you to #dsb
|
||||||
|
|
Loading…
Reference in New Issue