Skip to content

Instantly share code, notes, and snippets.

@AndersMoberg
AndersMoberg / patreonemail.user.js
Last active March 22, 2024 19:38
Userscript, which adds the ability to mass-disable all email notifications on Patreon.
// ==UserScript==
// @name Patreon mass email-settings toggle
// @name Adds button to mass-change mail notifications on Patreon
// @version 1
// @author Anders O.H Moberg
// @homepageURL https://a-moberg.com/
// @grant none
// @match https://www.patreon.com/settings/email
// @updateURL https://gist.github.com/AndersMoberg/cd7ed41d10381a16718d3e9fcc714001/raw/patreonemail.user.js
// @downloadURL https://gist.github.com/AndersMoberg/cd7ed41d10381a16718d3e9fcc714001/raw/patreonemail.user.js
@AndersMoberg
AndersMoberg / youtubewatchlaterclear.user.js
Last active May 7, 2023 14:19
Userscript, which adds the ability to clear the users Watch Later queue on Youtube. Swedish interface only for now!
// ==UserScript==
// @name Clear Youtube Watch Later
// @name:sv Rensa Youtube "Watch Later"
// @description Adds the ability to clear the users Watch Later queue on Youtube
// @description:sv Lägger till förmogan att rensa "Watch Later" listan på Youtube
// @version 0.1
// @author Anders O.H Moberg
// @homepageURL https://a-moberg.com/
// @grant none
// @match https://www.youtube.com/playlist?list=WL*
@AndersMoberg
AndersMoberg / script.js
Last active August 7, 2022 13:31
Uncheck all "notification" boxes in Patreon settings page (run in browser dev tools - https://www.patreon.com/settings/email)
result = document.querySelectorAll("button[aria-checked=true]")
const mouseClickEvents = ['mousedown', 'click', 'mouseup'];
function simulateMouseClick(element){
element.scrollIntoView();
mouseClickEvents.forEach(mouseEventType =>
element.dispatchEvent(
new MouseEvent(mouseEventType, {
view: window,
bubbles: true,
@AndersMoberg
AndersMoberg / script.js
Last active March 5, 2022 14:28
Steam Account history export (run in browser dev tools - https://store.steampowered.com/account/history/)
rows = document.querySelectorAll("tr")
final = []
console.log(rows.length)
rows.forEach(element => {
onclick = element.attributes["onclick"];
if (onclick == null) { return; }
onclick_value = onclick.nodeValue;
startId = onclick_value.indexOf("transid=")
if (startId == -1) { return; }
transid = onclick_value.substr(startId + "transid=".length)
@AndersMoberg
AndersMoberg / script.js
Last active March 5, 2022 14:30
Humble Bundle Purchases (run in browser dev tools - https://www.humblebundle.com/home/purchases)
var result = [];
//
var humbleQuery = document.querySelectorAll("html body div.page-wrap div.base-main-wrapper div.inner-main-wrapper div.js-purchase-holder.js-holder div.results.js-results div.body div.row.js-row");
for (let i = 0; i < humbleQuery.length; i++) {
let single = humbleQuery[i];
let productname = humbleQuery[i].children[0].innerText;
let ordertime = humbleQuery[i].children[1].innerText;
let cost = humbleQuery[i].children[2].innerText;