This repository has been archived on 2026-01-04. You can view files and clone it, but cannot push or open issues or pull requests.
polyplus/js/account/transactions.js
Index 3d6b265de0 Importing Utility Module!!!!!!!!!
- Repetitive code is now way easier to edit as it is now stored in the utility module rather than the same code in several different files

- Changed "Theme Creator" Copy JSON button to have the text "Copy" rather than rely on an icon due to me forgetting to import fontawesome

- Hopefully fixed the store page randomly not working by not showing IRL prices or not showing the owned tags (may rewrite the entire code for that file since it is pretty old like Early Summer 2023)

- Fixed clicking on "Poly+" in the sidebar on the settings page sending you to an invalid page (due to browser security stuff) which wasn't happening to me before public beta

- Disabled importing theme data JSON for now to ensure security
2024-02-10 10:25:28 -06:00

81 lines
No EOL
2.9 KiB
JavaScript
Executable file

setTimeout(function () {}, 100)
/*
let Currencies;
LoadFile(chrome.runtime.getURL('js/resources/currencies.json'), function(text){
Currencies = JSON.parse(text)
console.log(new Date(Currencies.Date).toLocaleDateString("en-US", {day:"numeric",month:"long",year:"numeric"}), Currencies)
})
*/
let Utilities;
(async () => {
Utilities = await import(chrome.runtime.getURL('/js/resources/utils.js'));
Utilities = Utilities.default
})();
let Nav = document.querySelector('.nav-pills')
let DIV = document.createElement('div')
DIV.innerHTML = `
<input id="polyplus-brickconverter-input" type="number" class="form-control bg-dark mb-2" placeholder="How many Bricks?">
<input id="polyplus-brickconverter-output" type="text" class="form-control bg-dark mb-2" placeholder="Result" disabled>
<select id="polyplus-brickconverter-type" class="form-select bg-dark mb-2">
<option value="USD" selected>United States Dollar (USD)</option>
<option value="EUR">Euro (EUR)</option>
<option value="CAD">Canadian Dollar (CAD)</option>
<option value="GBP">Great British Pound (GBP)</option>
<option value="MXN">Mexican Peso (MXN)</option>
<option value="AUD">Australian Dollar (AUD)</option>
<option value="TRY">Turkish Lira (TRY)</option>
</select>
<!--
<select id="polyplus-brickconverter-package" class="form-select bg-dark">
<option value="0" selected>$0.99 USD</option>
<option value="1">$4.99 USD</option>
<option value="2">a</option>
<option value="3">b</option>
<option value="4">c</option>
<option value="5">d</option>
</select>
-->
`
Nav.appendChild(document.createElement('hr'))
Nav.appendChild(DIV)
let Input = document.getElementById('polyplus-brickconverter-input')
let Output = document.getElementById('polyplus-brickconverter-output')
let Type = document.getElementById('polyplus-brickconverter-type')
chrome.storage.sync.get(['PolyPlus_Settings'], function(result){
Type.selectedIndex = result.PolyPlus_Settings.IRLPriceWithCurrencyCurrency || 0
});
//let Package = document.getElementById('polyplus-brickconverter-package')
Input.addEventListener('input', function(){
Update()
});
Type.addEventListener('change', function(){
Update()
});
/*
Package.addEventListener('change', function(){
Update()
});
*/
async function Update(){
//let DISPLAY = Type.options[Type.selectedIndex].value
//let IRL = (parseInt(Input.value.replace(/,/g, '')) * Currencies.Data[Package.selectedIndex][DISPLAY]).toFixed(2)
const Result = await Utilities.CalculateIRL(Input.value, Type.selectedIndex)
console.log(Input.value, Type.options[Type.selectedIndex].value, Result)
Output.value = "$" + Result.bricks + " " + Result.display
}
function LoadFile(path, callback) {
var xhr = new XMLHttpRequest();
xhr.onload = function () { return callback(this.responseText); }
xhr.open("GET", path, true);
xhr.send();
}