30 Commits

Author SHA1 Message Date
3c703d7425 Merge branch 'main' of https://git.wbell.dev/TussockyJoker/Aula-Extension 2026-02-26 20:52:49 +00:00
91b692593f Added separate manifests for chrome and ff 2026-02-26 20:52:18 +00:00
c7b4955291 Update keywords.txt 2026-02-26 17:51:18 +00:00
2706812496 Update keywords.txt 2026-02-26 17:45:12 +00:00
a6bd5a5d5c Update keywords.txt 2026-02-26 17:43:57 +00:00
bc0f77bfd4 Update keywords.txt 2026-02-26 11:54:20 +00:00
c48c5c45ba Updated .xpi for Firefox 2026-02-25 15:56:09 +00:00
b4a86d0e2d Merge branch 'main' of https://git.wbell.dev/TussockyJoker/Aula-Fixer 2026-02-25 15:25:29 +00:00
5578b22148 Updated .crx for chrome 2026-02-25 15:25:25 +00:00
12ceca7bea Delete Aula-Extension.crx 2026-02-25 15:24:41 +00:00
2c2c5dc3d4 Update README.md 2026-02-25 15:22:45 +00:00
498999d12a Update README.md 2026-02-25 15:22:25 +00:00
c0d206a957 Update README.md 2026-02-25 15:22:07 +00:00
36c004b802 Now gets keywords.txt from repo on git.wbell.dev 2026-02-25 15:13:52 +00:00
8390c0a43e Update README.md 2026-02-25 14:19:43 +00:00
293f5142e6 Update manifest.json 2026-02-25 14:14:06 +00:00
11830f9e20 Update manifest.json 2026-02-25 14:04:16 +00:00
8bacbb301e Update manifest.json 2026-02-25 14:02:54 +00:00
0e71f8ba63 Update manifest.json 2026-02-25 14:01:40 +00:00
0b10f5f993 Update content.js 2026-02-25 09:13:06 +00:00
366117a93c Update README.md 2026-02-25 09:12:29 +00:00
10fc5f88bc added crx for chrome 2026-02-24 20:33:17 +00:00
e1bd9ad31e Merge branch 'main' of https://git.wbell.dev/TussockyJoker/Aula-Extension 2026-02-24 20:29:32 +00:00
f76a8db079 updated keywords.txt 2026-02-24 20:28:36 +00:00
aaeae49517 Update keywords.txt 2026-02-24 14:21:27 +00:00
100bcb4c2c Update README.md 2026-02-23 22:41:02 +00:00
5900482d93 Update Aula-Fixer.xpi 2026-02-23 20:14:37 +00:00
a9c257dc99 Update README.md 2026-02-23 19:58:49 +00:00
6f2198a268 Delete 6fd68f08d4504eb297b6-1.1.xpi 2026-02-23 19:55:20 +00:00
f9103ba332 Changed to Aula Fixer 2026-02-23 19:54:46 +00:00
11 changed files with 196 additions and 31 deletions

5
.gitignore vendored
View File

@@ -1,3 +1,8 @@
.DS_Store .DS_Store
Archive.zip Archive.zip
.amo-upload-uuid .amo-upload-uuid
dev-resources
content copy.js
aula-fixer_v1-2.zip
.env
build_scripts

Binary file not shown.

BIN
Aula-Fixer.crx Normal file

Binary file not shown.

View File

@@ -1,13 +1,18 @@
# Aula-Extension # Aula-Fixer
Browser extension that removes all the notifications about rooms for rent and shit Browser extension that removes all the notifications about rooms for rent and tenancy takeovers from Aula and changes the styling of the pages to stop wasting so much space.
Will remove any notifications containing the any of the ~keywords~ keyphrases in keywords.txt so you can make it hide other stuff too if you wanted. Will remove any notifications containing the any of the ~keywords~ keyphrases in the keywords.txt file stored in this repo, it can also fall back on a local keywords.txt if the server cannot be reached.
I've only tested with Chrome, Brave and Firefox. The easiest way to install this on chromium or similar is to turn on dev mode in chrome://extensions (or equivalent), click on 'Load unpacked' and select the Aula-Extension folder. I've only tested with Chrome, Brave and Firefox. The easiest way to install this on chromium or similar is to use the prepackaged .crx. You can also install it by cloning this repo to a folder on your computer, turning on dev mode in chrome://extensions (or equivalent), clicking on 'Load unpacked' and selecting the Aula-Extension folder, if you update/customize the extension, reload it to apply any changes.
For firefox I've built an xpi which is signed (surprisingly difficult), just open a new firefox tab and drag it into the window. For firefox I've built an xpi which is signed (surprisingly difficult), just open a new firefox tab and drag it into the window.
I'm working on getting the extension published on the chrome and firefox stores. I'm working on getting the extension published on the chrome and firefox stores.
The keyphrases cannot be edited if you're using the prepacked .xpi file. Possibly an oversight and I may fix this at some point https://addons.mozilla.org/en-GB/firefox/addon/aula-ad-filter/
https://chromewebstore.google.com/detail/aula-ad-filter/ooghijbicaoiccbkjplnellggncbcgbl?authuser=0&hl=en-GB
If you just want the 'ad-blocker' function, I've kept a separate branch in this repo.
If you want to use a custom keywords.txt, you can break the url in background.js and it will then fall back on the local keywords.txt file. This only works if you are NOT using the prepackaged extensions or extensions from the chrome/firefox stores, these will only pull from the file in this repo. If you think a word or phrase should be added to keywords.txt, either submit a pull request or raise an issue.

34
background.js Normal file
View File

@@ -0,0 +1,34 @@
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
if (request.type === "GET_KEYWORDS") {
const remoteUrl = "https://git.wbell.dev/TussockyJoker/Aula-Fixer/raw/branch/main/keywords.txt";
const localUrl = chrome.runtime.getURL("keywords.txt");
// remote
fetch(remoteUrl)
.then(response => {
if (!response.ok) throw new Error("Remote fetch failed");
return response.text();
})
.then(text => {
console.log("Loaded remote keywords");
sendResponse({ success: true, data: text });
})
.catch(() => {
console.warn("Remote failed, loading local fallback");
// local
fetch(localUrl)
.then(response => response.text())
.then(text => {
console.log("Loaded local fallback keywords");
sendResponse({ success: true, data: text });
})
.catch(error => {
sendResponse({ success: false, error: error.toString() });
});
});
return true;
}
});

View File

@@ -1,29 +1,29 @@
let keywords = []; let keywords = [];
async function loadKeywords() { function loadKeywords() {
try { chrome.runtime.sendMessage({ type: "GET_KEYWORDS" }, (response) => {
const response = await fetch(chrome.runtime.getURL("keywords.txt")); if (!response || !response.success) {
const text = await response.text(); console.error("Failed to load remote keywords:", response?.error);
return;
}
keywords = text keywords = response.data
.split("\n") .split("\n")
.map(k => k.trim().toLowerCase()) .map(k => k.trim().toLowerCase())
.filter(Boolean); .filter(Boolean);
console.log("Loaded keywords:", keywords); console.log("Loaded keywords:", keywords);
injectStyles();
startFiltering(); startFiltering();
});
} catch (error) {
console.error("Failed to load keywords.txt:", error);
}
} }
function filterNotifications() { function filterNotifications() {
const notifications = document.querySelectorAll('div[role="button"]'); const notifications = document.querySelectorAll('div[role="button"]');
notifications.forEach(notification => { notifications.forEach(notification => {
const text = notification.innerText.toLowerCase(); const text = notification.innerText?.toLowerCase() || "";
const containsKeyword = keywords.some(keyword => const containsKeyword = keywords.some(keyword =>
text.includes(keyword) text.includes(keyword)
@@ -35,6 +35,44 @@ function filterNotifications() {
}); });
} }
function injectStyles() {
// Prevent duplicate injection
if (document.getElementById("aula-fixer-styles")) return;
const style = document.createElement("style");
style.id = "aula-fixer-styles";
style.textContent = `
.css-qbgecn {
max-height: 99% !important;
padding: 0 !important;
}
.css-15ampbt {
overflow: hidden !important;
}
.css-1iji2l6 {
margin: 1px !important;
}
#main-content > div > div > div.css-qbgecn.e1f8gytw1 {
overflow-y: hidden !important;
}
.css-1vz9kb2 {
flex-basis: 85% !important;
padding: 0px 0px 0px 1% !important;
}
.css-nivjaw {
padding: 12px 12px 12px 12px !important;
}
`;
document.head.appendChild(style);
}
function startFiltering() { function startFiltering() {
filterNotifications(); filterNotifications();

View File

@@ -9,3 +9,11 @@ i'm looking for accomodation
fully furnished house fully furnished house
ensuite room available ensuite room available
room available cv13gx queens park house unite student room available cv13gx queens park house unite student
en-suite room available
double studio room is available
need a space for 1 person (girl) to stay
hey everyone looking space for one
room available for girl (shared accommodation)
takeover an en-suite room
i'm currently seeking for someone who can take over an en-suite room
accomodation alert

View File

@@ -1,8 +1,13 @@
{ {
"manifest_version": 3, "manifest_version": 3,
"name": "Aula Ad Filter", "name": "Aula Fixer",
"version": "1.1", "version": "1.3",
"description": "Removes all the notifications about rooms for rent on Aula", "description": "Removes all notifications about rooms for rent etc. on Aula and changes styling so that less screen space is wasted.",
"background": {
"service_worker": "background.js",
"scripts": ["background.js"]
},
"content_scripts": [ "content_scripts": [
{ {
@@ -11,6 +16,10 @@
} }
], ],
"host_permissions": [
"https://git.wbell.dev/*"
],
"web_accessible_resources": [ "web_accessible_resources": [
{ {
"resources": ["keywords.txt"], "resources": ["keywords.txt"],
@@ -20,11 +29,7 @@
"browser_specific_settings": { "browser_specific_settings": {
"gecko": { "gecko": {
"id": "aulaadremoverpublic@tussockyjoker.com", "id": "aula-fixer@tussockyjoker.com"
"data_collection_permissions": {
"required": ["none"],
"optional": []
}
} }
} }
} }

35
manifest_chrome.json Normal file
View File

@@ -0,0 +1,35 @@
{
"manifest_version": 3,
"name": "Aula Fixer",
"version": "1.3",
"description": "Removes all notifications about rooms for rent etc. on Aula and changes styling so that less screen space is wasted.",
"background": {
"service_worker": "background.js",
"scripts": ["background.js"]
},
"content_scripts": [
{
"matches": ["https://coventry.aula.education/*"],
"js": ["content.js"]
}
],
"host_permissions": [
"https://git.wbell.dev/*"
],
"web_accessible_resources": [
{
"resources": ["keywords.txt"],
"matches": ["https://coventry.aula.education/*"]
}
],
"browser_specific_settings": {
"gecko": {
"id": "aula-fixer@tussockyjoker.com"
}
}
}

35
manifest_ff.json Normal file
View File

@@ -0,0 +1,35 @@
{
"manifest_version": 3,
"name": "Aula Fixer",
"version": "1.3",
"description": "Removes all notifications about rooms for rent etc. on Aula and changes styling so that less screen space is wasted.",
"background": {
"service_worker": "background.js",
"scripts": ["background.js"]
},
"content_scripts": [
{
"matches": ["https://coventry.aula.education/*"],
"js": ["content.js"]
}
],
"host_permissions": [
"https://git.wbell.dev/*"
],
"web_accessible_resources": [
{
"resources": ["keywords.txt"],
"matches": ["https://coventry.aula.education/*"]
}
],
"browser_specific_settings": {
"gecko": {
"id": "aula-fixer@tussockyjoker.com"
}
}
}

Binary file not shown.