Skip to content

Instantly share code, notes, and snippets.

@withinboredom
Created December 12, 2021 12:04
Show Gist options
  • Save withinboredom/d74a4681d87d4389d8dd5b4be6e41a6f to your computer and use it in GitHub Desktop.
Save withinboredom/d74a4681d87d4389d8dd5b4be6e41a6f to your computer and use it in GitHub Desktop.
// ==UserScript==
// @name Purchaser
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @match https://www.mediamarkt.nl/*
// @match https://www.computop-paygate.com/*
// @icon https://www.google.com/s2/favicons?domain=mediamarkt.nl
// @grant GM_setValue
// @grant GM_getValue
// ==/UserScript==
function sendMessage(settings, message) {
fetch("https://stupid-bot.bottled.codes?to=" + settings.phone + "&m=" + message);
}
function start_purchase_flow(settings) {
var price_button = document.getElementsByClassName("price-button");
console.log(price_button);
if(price_button.length > 0) {
console.log("begin purchase flow")
GM_setValue("purchasing", true);
sendMessage(settings, "available")
} else {
return false;
}
price_button.item(0).click();
setTimeout(() => {
document.getElementsByClassName("accept").item(0).getElementsByTagName("a").item(1).click();
}, 4000);
return true;
}
function funnel_start(settings) {
console.log("here we go!");
// todo: send text message
setTimeout(() => {
var next_button = document.getElementsByClassName("cobutton-next")
var cc = document.getElementsByClassName("creditcard__xpay");
var ccDetails = document.getElementsByName("creditCardHolder");
var finalButton = document.getElementsByClassName("submit-button");
if(cc.length) {
cc.item(0).click();
}
if(ccDetails.length > 0) {
document.getElementsByName("creditCardHolder").item(0).value = settings.name;
document.getElementsByName("KKNr").item(0).value = settings.cardNumber;
document.getElementsByName("KKName").item(settings.cardType).click();
document.getElementsByName("KKMonth").item(0).value = settings.cardExpMonth;
document.getElementsByName("KKYear").item(0).value = settings.cardExpYear;
document.getElementsByName("CCCVC").item(0).value = settings.cardCvv;
finalButton.item(0).click();
sendMessage(settings, "doit")
}
if(next_button.length === 0) return false;
next_button.item(next_button.length - 1).click();
console.log("clicked next")
funnel_start(settings);
}, 2000);
}
(function() {
'use strict';
var reset = true;
if(reset) {
if(GM_getValue("reset", true)) {
GM_setValue("purchasing", false);
GM_setValue("reset", false);
}
} else {
GM_setValue("reset", true);
}
var settings = {
product: "_hama-clip-on-microfoon-1547951.html",
name: "NAME",
cardNumber: "CARD",
cardType: 1,
cardExpMonth: "12",
cardExpYear: "2025",
cardCvv: "CVV",
phone: "PHONE"
};
if(settings.product === null) {
console.log("nothing to do!");
return;
}
var reloadTO = setTimeout(() => {
console.log("going to product page");
if(GM_getValue("purchasing", false)) return;
if(location.href !== "https://www.mediamarkt.nl/nl/product/" + settings.product) {
location.href = "https://www.mediamarkt.nl/nl/product/" + settings.product;
return;
}
location.reload();
}, 30000);
if(start_purchase_flow(settings)) return;
if(funnel_start(settings)) return;
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment