let Username = window.location.pathname.split('/')[2]; const AvatarRow = document.getElementsByClassName('d-flex flex-row flex-nowrap overflow-x-scroll px-3 px-lg-0 mb-2 mb-lg-0')[0]; const AvatarHeading = document.querySelector('.section-title:has(i.fa-user-crown)'); var Settings; var BestFriends; let FavoriteBtn; let CalculateButton; let AvatarIFrame; let Utilities; if (Username) { (async () => { UserID = (await (await fetch('https://api.'+window.location.hostname+'/v1/users/find?username=' + Username )).json()); Utilities = await import(chrome.runtime.getURL('resources/utils.js')); Utilities = Utilities.default; chrome.storage.sync.get(['PolyPlus_Settings'], function (result) { Settings = result.PolyPlus_Settings || {}; const InfoColumns = document.getElementById('user-stats-card'); const UserIDRow = document.createElement('div') UserIDRow.classList = 'mb-1' UserIDRow.innerHTML = ` Player ID ${UserID.id} ` InfoColumns.children[0].insertBefore(UserIDRow, InfoColumns.children[0].children[1]); const CopyButton = UserIDRow.getElementsByTagName('a')[0] CopyButton.addEventListener('click', function(){ navigator.clipboard .writeText(UserID.id) .then(() => { CopyButton.classList.add('text-success') CopyButton.children[0].classList = 'fa-duotone fa-circle-check' CopyButton.children[0].style.marginLeft = '3px' setTimeout(() => { CopyButton.classList.remove('text-success') CopyButton.children[0].classList = 'fad fa-copy' CopyButton.children[0].style.marginLeft = '5px' }, 1500); }) }) if (Settings.IRLPriceWithCurrency && Settings.IRLPriceWithCurrency.Enabled === true) { IRLPrice(); } if (Settings.BestFriendsOn === true) { BestFriends(); } if (Settings.OutfitCostOn === true) { CalculateButton = document.createElement('small'); CalculateButton.classList = 'fw-normal text-success'; CalculateButton.style.letterSpacing = '0px'; CalculateButton.setAttribute('data-bs-toggle', 'tooltip'); CalculateButton.setAttribute('data-bs-title', "Calculate this avatar's cost!"); CalculateButton.setAttribute('data-bs-placement', 'right'); CalculateButton.innerHTML = ` $ calculate `; AvatarHeading.appendChild(CalculateButton); Utilities.InjectResource('registerTooltips'); let Calculating = false; CalculateButton.addEventListener('click', function () { if (Calculating === false) { Calculating = true; CalculateButton.innerText = '$ Calculating...'; OutfitCost(); } }); } AvatarIFrame = document.getElementById('user-avatar-card').getElementsByTagName('iframe')[0] if (Settings.AvatarDimensionToggleOn === true || 1 === 1) { const AvatarCard = document.getElementById('user-avatar-card') const ToggleButton = document.createElement('button') ToggleButton.classList = 'btn btn-primary btn-sm 3dviewtoggler isactive' ToggleButton.style = 'position: absolute; right: 15px; margin-top: 20px;' ToggleButton.innerHTML = '' AvatarCard.getElementsByClassName('position-relative')[0].insertBefore(ToggleButton, AvatarIFrame) ToggleButton.addEventListener('click', async function(){ if (ToggleButton.children[0].classList.contains('fa-image')) { if (document.getElementById('polyplus-2davatar')) { const AvatarImage = document.getElementById('polyplus-2davatar') AvatarImage.width = AvatarIFrame.offsetWidth AvatarImage.height = AvatarIFrame.offsetHeight AvatarImage.style.display = 'block' AvatarIFrame.style.display = 'none' ToggleButton.children[0].classList = 'toggleIcn fad fa-360-degrees' } else { const AvatarImage = document.createElement('img') AvatarImage.id = 'polyplus-2davatar' AvatarImage.width = AvatarIFrame.offsetWidth AvatarImage.height = AvatarIFrame.offsetHeight AvatarImage.style.padding = '20px' const UserDetails = (await (await fetch('https://api.polytoria.com/v1/users/' + UserID.id)).json()) AvatarImage.src = UserDetails.thumbnail.avatar AvatarIFrame.style.display = 'none' const CustomBadge = document.querySelector('#user-avatar-card .badge:has(.pi)') if (CustomBadge === null) { AvatarCard.children[0].insertBefore(AvatarImage, AvatarCard.getElementsByClassName('user-badges')[0]) } else { try { AvatarCard.children[0].insertBefore(AvatarImage, CustomBadge) } catch(error) { AvatarCard.children[0].insertBefore(AvatarImage, CustomBadge.parentElement) } } ToggleButton.children[0].classList = 'toggleIcn fad fa-360-degrees' } } else { document.getElementById('polyplus-2davatar').style.display = 'none' AvatarIFrame.style.display = 'block' ToggleButton.children[0].classList = 'toggleIcn fad fa-image' } }) } }); if (new URLSearchParams(window.location.search).get('anniversary') === '1') { const JoinDateRow = document.querySelector('#user-stats-card .mb-1:has(.fa-calendar)') const BirthdayCard = document.createElement('div') BirthdayCard.classList = 'card card-themed card-player-birthday mb-2' const AnniversaryNumber = (new Date().getFullYear() - new Date(JoinDateRow.children[1].innerText).getFullYear()) BirthdayCard.innerHTML = `