- 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
525 lines
No EOL
22 KiB
HTML
Executable file
525 lines
No EOL
22 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>
|
|
<!--
|
|
<div class="mx-auto" style="width: 450px; height: 350px; border: 2.5px solid #fff;">
|
|
<div class="row h-100">
|
|
<div class="col-md-1 h-100" style="padding: 25px; border-right: 2.5px solid #fff; padding-left: 0px !important;"></div>
|
|
<div class="col h-100" style="padding-left: 0px !important;">
|
|
<div style="padding: 10px; width: 100%; border-bottom: 2.5px solid #fff; margin-bottom: 3.5px"></div>
|
|
<h2 class="mb-1">Heading</h2>
|
|
<p>This is a preview!</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
-->
|
|
<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>
|
|
<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>
|
|
</select>
|
|
|
|
<select id="IRLPriceWithCurrencyPackage" class="form-select form-select-sm mb-2" style="width:350px;" data-setting="IRLPriceWithCurrencyPackage">
|
|
<option value="0" selected>$0.99 USD</option>
|
|
<option value="1">$4.99 USD</option>
|
|
<option value="2">$9.99 USD</option>
|
|
<option value="3">$24.99 USD</option>
|
|
<option value="4">$49.99 USD</option>
|
|
<option value="5">$99.99 USD</option>
|
|
</select>
|
|
</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>
|
|
<!--
|
|
No longer a setting
|
|
|
|
<p class="setting-container" id="SimplifiedProfileURLs">
|
|
<span>
|
|
Simplified Profile URLs (<span class="status">enabled</span>)
|
|
<button class="btn btn-warning btn-sm" data-setting="SimplifiedProfileURLsOn">Toggle</button>
|
|
</span>
|
|
<br>
|
|
<span class="desc">Makes all profile URLs simpler by allowing for you to go to "https://polytoria.com/profile/UsernameGoesHere" to redirect to the real profile URL!</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>
|
|
<!--
|
|
Forum markdown has been added officially
|
|
|
|
<p class="setting-container" id="ForumMarkdown">
|
|
<span>
|
|
Forum Markdown (<span class="status">disabled</span>)
|
|
<button class="btn btn-warning btn-sm" data-setting="ForumMarkOn">Toggle</button>
|
|
</span>
|
|
<br>
|
|
<span class="desc">
|
|
Format forum posts to make them look epic!
|
|
</span>
|
|
</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>
|
|
<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> |