2 Commits
v0.2 ... v0.3

Author SHA1 Message Date
Jack Case
bf6c96a3b1 report successful login and update pageaction icon on report 2025-10-26 14:41:03 -04:00
Jack Case
5a4896b5b4 much more stable link attribute setting 2025-10-26 10:41:19 -04:00
4 changed files with 22 additions and 8 deletions

View File

@@ -1,7 +1,7 @@
{
"manifest_version": 2,
"name": "Slop Farmer",
"version": "0.1",
"version": "0.3",
"author": "Jack Case",
"description": "Crowd-source AI slop pages and domains",

View File

@@ -8,7 +8,6 @@
<title>Slop Farmer</title>
</head>
<body>
<h1>Hello, world!</h1>
<form id="login-form">
<label for="email" id="username">user:</label>
<input type="text" name="username" required />
@@ -16,4 +15,5 @@
<input type="password" name="password" required />
<button id="login-button">login</button>
</form>
<h2 style="visibility: collapse;" id="login-status">You're logged in.</h2>
</body>

View File

@@ -69,13 +69,20 @@ function check_links(search_links) {
async function message_listener(message) {
// handle slop reports returned from the background script
if(message.type === "check_result") {
console.log(message.url, message.result)
const link = page_links.get(message.url)
if ( message.result.slop_domain ) {
if (message.domain) {
const paths = page_links.getDomain(message.domain)
paths.forEach((search_link) => {
search_link.node.setAttribute("style", "color: red;")
search_link.result = message.result
})
} else if (message.url) {
const link = page_links.getUrl(message.url)
link.node.setAttribute("style", "color: red;")
}
link.result = message.result
}
}
}
function get_initial_links() {

View File

@@ -3,6 +3,10 @@ let access_token
const login_form = document.getElementById("login-form")
if(login_form) {
const login_status = document.getElementById("login-status")
if (localStorage.getItem("accessToken")) {
login_status.setAttribute("style", "visibility: visible;")
}
login_form.addEventListener("submit", (event) => {event.preventDefault(); submit_login_form()})
}
@@ -148,7 +152,8 @@ async function on_button_clicked_handler(tab) {
const domain = tab_url.hostname
const path = tab_url.pathname
insert_slop(domain, path)
await insert_slop(domain, path)
update_page_action_icon({frameId: 0, tabId: tab.id, url: tab.url})
}
async function update_page_action_icon(details) {
@@ -198,7 +203,7 @@ async function message_listener(message, sender) {
let remote_slop = await check_remote_slop(not_found_local)
remote_slop.forEach((result) => {
browser.tabs.sendMessage(tabid, { type: "check_result", url: result.url, result: result })
browser.tabs.sendMessage(tabid, { type: "check_result", domain: result.domain_name, result: result })
})
}
}
@@ -227,6 +232,8 @@ async function submit_login_form() {
const body = await response.json()
const token = body.access_token
localStorage.setItem("accessToken", token)
const status_el = document.getElementById("login-status")
status_el.setAttribute("style", "visibility: visible;")
}
}