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/settings.html
Index 46efc889e7 Items in Wishlist get Removed upon Purchase
- Items that are in your "Item Wishlist" will now be automatically removed when purchased. You can now also no longer add items to your "Item Wishlist" if you already own the item.

- Fixed issue with forgetting to remove simplified-profile.js from manifest.json after deleting the file

- Added all experimental settings to the settings page ("Game Profiles", "Inline Editing", "Forum Unix Timestamps")

- Removed commented out settings on the settings page

- Removed the "Handle" part of all function names (eg. "HandlePinnedGames()" -> "PinnedGames()")

- Moved profile/profile.js to account/profile.js

- You can now quickly copy a message to share your or somebody else's 3D avatar URL on profile pages.
2024-02-11 11:30:59 -06:00

538 lines
23 KiB
HTML
Executable file

<html>
<head>
<!-- META TAGS -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- TITLE -->
<title>Poly+ | Settings</title>
<!-- CSS -->
<link rel="stylesheet" href="https://c0.ptacdn.com/static/app.64aa42f6.css">
</head>
<body data-bs-theme="dark">
<style>
html, body, #page {
background: #202020;
color: #fff;
}
#page {
margin-top: 7.5rem;
width: 50%;
margin-right: auto;
margin-left: auto;
margin-bottom: 3.5rem;
}
h1 {
font-size: 4.6rem;
color: rgb(48, 48, 48);
}
h1 span.indent {
border-left: 10px solid rgb(48, 48, 48);
margin-right: 15px;
}
h1 span.highlight {
color: red;
}
h2 {
color: rgb(48, 48, 48);
}
h2 span.indent {
border-left: 7.5px solid rgb(48, 48, 48);
margin-right: 15px;
}
p span:first-child {
font-size: 1.4rem;
}
span.desc {
color: rgb(120, 120, 120);
}
.goback {
color: rgb(120, 120, 120);
text-decoration: none;
}
dialog {
background-color: #080808;
color: #c4c4c4;
border: 1px solid #3bafff;
border-radius: 10px;
}
.input-group-text {
background-color: #000;
border-color: #000;
color: #fff;
}
label {
font-size: 0.8rem;
margin-bottom: 2.75px;
}
dialog::backdrop {
background-color: rgba(0, 0, 0, 0.73);
}
dialog .modal-header p {
margin-bottom: 0px;
color: #fff;
}
dialog .modal-body p:first-child {
font-size: 0.9rem;
}
/*
p span span.status {
font-size: 0.16rem !important;
color: #cee;
}
*/
/*
button {
border: none;
padding: 5px;
color: #fff;
border-radius: 5px;
}
button.btn-primary {
background: #007bff;
}
button.btn-warning {
background: orange;
}
*/
</style>
<dialog class="w-50" id="ResetDefaults-Modal">
<div class="modal-header">
<p>Are you Sure?</p>
</div>
<div class="modal-body">
<p>Are you sure you'd like to reset all settings to their respective defaults? (this action is irreversible)</p>
<button id="ResetDefaults-Modal-Yes" class="btn btn-danger">Yes</button>
<button id="ResetDefaults-Modal-No" class="btn btn-primary">No</button>
</div>
</dialog>
<dialog class="w-50" id="ThemeCreator-Modal" data-setting="ThemeCreator">
<div class="modal-header">
<p>Theme Creator</p>
</div>
<div class="modal-body">
<p>Unleash your creativity and customize the Polytoria website to your liking! (this feature is still in development)</p>
<hr class="mt-2 mb-3">
<label>Save Theme to JSON</label>
<div class="row">
<div class="col">
<input id="SaveThemeToJSONInput" type="text" class="form-control bg-dark mb-2" placeholder="JSON..." data-ignore="true" disabled>
</div>
<div class="col-auto">
<button id="CopyThemeJSONBtn" class="btn btn-warning"><!--<i class="fa-duotone fa-clipboard"></i>--> Copy</button>
</div>
</div>
<label>Load Theme from JSON</label>
<input type="text" class="form-control bg-dark mb-2" placeholder="JSON..." data-ignore="true">
<button id="LoadThemeFromJSONBtn" class="btn btn-primary mb-2" data-ignore="true" data-onclick="LoadThemeJSON(this.previousElementSibling.value)">Load</button>
<hr class="mt-2 mb-3">
<div class="card mb-2">
<div class="card-header">Navigation</div>
<div class="card-body">
<label>Navbar Background Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="NavBGColor">
<label>Navbar Border Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="NavBorderColor">
<label>Sidebar Background Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="SideBGColor">
<label>Sidebar Border Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="SideBorderColor">
<hr class="navbar-divider">
<label>Navbar Item Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="NavItemColor">
<label>Sidebar Item Background Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="SideItemBGColor">
<label>Sidebar Item Border Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="SideItemBorderColor">
<label>Sidebar Item Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="SideItemColor">
<label>Sidebar Item Label Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="SideItemLabelColor">
</div>
</div>
<div class="card mb-2">
<div class="card-header">Background</div>
<div class="card-body">
<label>Background Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="BGColor">
<label>Background Image (URL)</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="BGImage">
<label>Background Image Size (if there is a background image)</label>
<select class="form-select bg-dark mb-2" data-setting="BGImageSize">
<option value="fit" selected>Fit (default)</option>
<option value="cover">Cover</option>
<option value="contain">Contain</option>
</select>
</div>
</div>
<div class="card mb-2">
<div class="card-header">Text</div>
<div class="card-body">
<label>Primary Text Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="PrimaryTextColor">
<label>Secondary Text Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="SecondaryTextColor">
<div class="row">
<div class="col">
<label>Link (state: default) Text Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="LinkTextColor">
</div>
<div class="col">
<label>Link (state: hovered) Text Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="LinkHoveredTextColor">
</div>
<div class="col">
<label>Link (state: focused) Text Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="LinkFocusedTextColor">
</div>
<!--
<div class="col">
<label>Link (state: visited) Text Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="LinkVisitedTextColor">
</div>
-->
</div>
</div>
</div>
<div class="card mb-2">
<div class="card-header">Cards</div>
<div class="card-body">
<label>Card (Header) Background Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="CardHeadBGColor">
<label>Card (Body) Background Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="CardBodyBGColor">
<label>Card Border Color</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="CardBorderColor">
</div>
</div>
<div class="card mb-2">
<div class="card-header">Branding</div>
<div class="card-body">
<label>Website Logo (URL)</label>
<input class="form-control bg-dark mb-2" placeholder="..." data-setting="WebsiteLogo">
</div>
</div>
<button class="btn btn-success" data-setting="[save]">Save</button>
<button class="btn btn-secondary" data-setting="[cancel]">Cancel</button>
</div>
</dialog>
<dialog class="w-50" id="ModifyNav-Modal" data-setting="ModifyNav">
<div class="modal-header">
<p>Modify Navbar</p>
</div>
<div class="modal-body">
<p>Customize the navbar to your liking!</p>
<hr class="mt-2 mb-3">
<div class="card mb-2">
<div class="card-header">#1 Navbar Item</div>
<div class="card-body">
<label>Label</label>
<input id="ModifyNav-Modal-1Label" class="form-control bg-dark mb-2" placeholder="Play" data-parent="0" data-setting="Label">
<label>Link</label>
<input id="ModifyNav-Modal-1Link" class="form-control bg-dark mb-2" placeholder="https://polytoria.com/places/" data-parent="0" data-setting="Link">
</div>
</div>
<div class="card mb-2">
<div class="card-header">#2 Navbar Item</div>
<div class="card-body">
<label>Label</label>
<input id="ModifyNav-Modal-2Label" class="form-control bg-dark mb-2" placeholder="Store" data-parent="1" data-setting="Label">
<label>Link</label>
<input id="ModifyNav-Modal-2Link" class="form-control bg-dark mb-2" placeholder="https://polytoria.com/store/" data-parent="1" data-setting="Link">
</div>
</div>
<div class="card mb-2">
<div class="card-header">#3 Navbar Item</div>
<div class="card-body">
<label>Label</label>
<input id="ModifyNav-Modal-3Label" class="form-control bg-dark mb-2" placeholder="Guilds" data-parent="2" data-setting="Label">
<label>Link</label>
<input id="ModifyNav-Modal-3Link" class="form-control bg-dark mb-2" placeholder="https://polytoria.com/guilds/" data-parent="2" data-setting="Link">
</div>
</div>
<div class="card mb-2">
<div class="card-header">#4 Navbar Item</div>
<div class="card-body">
<label>Label</label>
<input id="ModifyNav-Modal-4Label" class="form-control bg-dark mb-2" placeholder="People" data-parent="3" data-setting="Label">
<label>Link</label>
<input id="ModifyNav-Modal-4Link" class="form-control bg-dark mb-2" placeholder="https://polytoria.com/users/" data-parent="3" data-setting="Link">
</div>
</div>
<div class="card mb-2">
<div class="card-header">#5 Navbar Item</div>
<div class="card-body">
<label>Label</label>
<input id="ModifyNav-Modal-5Label" class="form-control bg-dark mb-2" placeholder="Forum" data-parent="4" data-setting="Label">
<label>Link</label>
<input id="ModifyNav-Modal-5Link" class="form-control bg-dark mb-2" placeholder="https://polytoria.com/forum" data-parent="4" data-setting="Link">
</div>
</div>
<button id="ModifyNav-Modal-Save" class="btn btn-success" data-setting="[save]">Save</button>
<button id="ModifyNav-Modal-Save" class="btn btn-secondary" data-setting="[cancel]">Cancel</button>
</div>
</dialog>
<div id="page">
<p class="setting-container" id="PinnedGames">
<span>
Pinned Games (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="PinnedGamesOn">Toggle</button>
</span>
<br>
<span class="desc">Pin your favorite games to the top of the homepage!</span>
</p>
<p class="setting-container" id="ForumMentions">
<span>
Forum Mentions (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="ForumMentsOn">Toggle</button>
</span>
<br>
<span class="desc">Get a quick link to the popular person everyone is talking about's profile!</span>
</p>
<p class="setting-container" id="BestFriends">
<span>
Best Friends (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="BestFriendsOn">Toggle</button>
</span>
<br>
<span class="desc">Prioritize the bestest of friends on applicable friend lists!</span>
</p>
<p class="setting-container" id="ImprovedFriendLists">
<span>
Improved Friend Lists (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="ImprovedFrListsOn">Toggle</button>
</span>
<br>
<span class="desc">
Accept or decline all friend requests with the click of a button or multi-remove existing friends!
<br>
<span style="font-size: 0.8rem; color: orange;">* You can only remove up to 25 friends at once.</span>
</span>
</p>
<p class="setting-container" id="IRLPriceWithCurrency">
<span>
Show IRL price with Brick Count (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="IRLPriceWithCurrencyOn">Toggle</button>
</span>
<br>
<span class="desc mb-4">
See the real life currency value along with Bricks across the site!
<br>
<span style="font-size: 0.8rem; color: orange;">* Currencies were calculated on [DATE].</span>
<br>
<span style="font-size: 0.8rem; color: orange;">* Currencies other than USD are purely approximations.</span>
</span>
<div role="group" class="input-group">
<select id="IRLPriceWithCurrencyCurrency" class="form-select form-select-sm mb-2" style="width:350px;" data-setting="IRLPriceWithCurrencyCurrency">
<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>
<option value="BRL">Brazilian Real (BRL)</option>
</select>
<select id="IRLPriceWithCurrencyPackage" class="form-select form-select-sm mb-2" style="width:350px;" data-setting="IRLPriceWithCurrencyPackage">
<option value="0" selected>$0.99 Brick Package</option>
<option value="1">$4.99 Brick Package</option>
<option value="2">$9.99 Brick Package</option>
<option value="3">$24.99 Brick Package</option>
<option value="4">$49.99 Brick Package</option>
<option value="5">$99.99 Brick Package</option>
</select>
</div>
</p>
<p class="setting-container" id="HideNotifBadges">
<span>
Hide Notification Badges (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="HideNotifBadgesOn">Toggle</button>
</span>
<br>
<span class="desc">Hide the annoying red circles on the sidebar!</span>
</p>
<p class="setting-container" id="StoreOwnTag">
<span>
Show "OWNED" Tag on Store Main Page (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="StoreOwnTagOn">Toggle</button>
</span>
<br>
<span class="desc">Quickly see if you own the item at a glance with a little tag in the top left corner of item cards on the main store page!</span>
</p>
<p class="setting-container" id="ThemeCreator">
<span>
Theme Creator (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="ThemeCreatorOn">Toggle</button>
<button id="ThemeCreator-Options" class="btn btn-primary btn-sm" data-modal="ThemeCreator">Options</button>
</span>
<br>
<span class="desc">Unleash your creativity and customize the Polytoria website to your liking! (this feature is still in development)</span>
</p>
<p class="setting-container" id="MoreSearchFilters">
<span>
More Search Filters (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="MoreSearchFiltersOn">Toggle</button>
</span>
<br>
<span class="desc">Easily find what you're looking for with more search filters side-wide! (this does not affect the main site search on the navbar)</span>
</p>
<p class="setting-container" id="ApplyMembershipTheme">
<span>
Apply Membership Theme for <b>Free</b> (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="ApplyMembershipThemeOn">Toggle</button>
</span>
<br>
<span class="desc">Ever want the fancy membership themes for completely <b>free</b>? Well now you can get apply them site-wide!</span>
<select id="ApplyMembershipThemeTheme" class="form-select form-select-sm mb-2" style="width:350px;" data-setting="ApplyMembershipThemeTheme">
<option value="Plus" selected>Plus</option>
<option value="PlusDX">Plus Deluxe</option>
</select>
</p>
<p class="setting-container" id="MultiCancelOutTrades">
<span>
Multi-Cancel Outbound Trades (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="MultiCancelOutTradesOns">Toggle</button>
</span>
<br>
<span class="desc">
Quickly cancel several out-bound trades (trades that you have sent) all at once
<br>
<span style="font-size: 0.8rem; color: orange;">* You can only cancel up to 10 trades at once.</span>
</span>
</p>
<p class="setting-container" id="ModifyNav">
<span>
Modify Navbar (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="ModifyNavOn">Toggle</button>
<button id="ModifyNav-Options" class="btn btn-primary btn-sm" data-modal="ModifyNav">Options</button>
</span>
<br>
<span class="desc">
Customize the navbar to your liking!
</span>
</p>
<p class="setting-container" id="ItemWishlist">
<span>
Item Wishlist (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="ItemWishlistOn">Toggle</button>
</span>
<br>
<span class="desc">
Wishlist that item that you REALLY want!
</span>
</p>
<p class="setting-container" id="HideUpgradeBtn">
<span>
Hide Upgrade Button (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="HideUpgradeBtnOn">Toggle</button>
</span>
<br>
<span class="desc">Hide the ugly blue "Upgrade" button on the sidebar!</span>
</p>
<p class="setting-container" id="OutfitCost">
<span>
Show Outfit Cost on Profiles (<span class="status">enabled</span>)
<button class="btn btn-warning btn-sm" data-setting="OutfitCostOn">Toggle</button>
</span>
<br>
<span class="desc">Quickly see how many bricks a user spent on their avatar!</span>
</p>
<div class="card">
<div class="card-body">
<h3>EXPERIMENTAL SETTINGS</h3>
<p>These features are a work in progress.</p>
<hr>
<p class="setting-container" id="GameProfiles">
<span>
Game Profiles (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="GameProfilesOn">Toggle</button>
</span>
<br>
<span class="desc">Traverse a place view page that matches a place's color palette!</span>
<br>
<span style="font-size: 0.8rem; color: orange;">* Place creators must request a game profile for one to be made.</span>
<br>
<span style="font-size: 0.8rem; color: orange;">* This feature will be expanded upon in the future.</span>
</p>
<p class="setting-container" id="InlineEditing">
<span>
Inline Editing (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="InlineEditingOn">Toggle</button>
</span>
<br>
<span class="desc">Quickly edit your asset's details such as name and description on the same page as viewing the asset!</span>
<br>
<span style="font-size: 0.8rem; color: orange;">* This feature currently only supports places.</span>
<br>
<span style="font-size: 0.8rem; color: orange;">* This feature is not finished or polished.</span>
</p>
<p class="setting-container" id="ForumUnixStamps">
<span>
Forum Unix Timestamps (<span class="status">disabled</span>)
<button class="btn btn-warning btn-sm" data-setting="ForumUnixStampsOn">Toggle</button>
</span>
<br>
<span class="desc">See a date and time that is adjusted to everyone (who is using Poly+)'s local time</span>
<br>
<span style="font-size: 0.8rem; color: orange;">* The styling for this feature is not yet done.</span>
</p>
</div>
</div>
<hr>
<button id="Save" class="btn btn-primary" disabled="true">Save</button>
<button id="ResetDefaults" class="btn btn-warning">Reset to Default Settings</button>
<p class="text-muted mt-2" style="font-size: 0.8rem;">made by Index</p>
</div>
<script src="settings.js"></script>
</body>
</html>