- // ==UserScript==
- // @name Theme & Font Changer
- // @namespace https://logs.blackrussia.online/
- // @version 0.4.1.0
- // @description Theme Changer + Font Changer for Black Logs
- // @author Lukky
- // @match https://logs.blackrussia.online/gslogs/*
- // @icon https://freepngimg.com/thumb/eagle/20-eagle-black-siluet-png-image-download-thumb.png
- // @license Lukky
- // ==/UserScript==
- (function() {
- 'use strict';
-
- scriptInit();
-
- const styleButton = createStyleButton('div.container-fluid span.badge.bg-success');
- const styleContainerBg = createStyleContainerBg('main');
-
- function replaceTableHeading() {
- const titleElement = document.querySelector('div.container-fluid span.badge.bg-success');
- const tableHeading = document.querySelector('#log-table-heading');
- if (titleElement && tableHeading) {
- tableHeading.textContent += ' - ' + titleElement.textContent;
- };
- }
-
- function createStyleButton(element) {
-
- const fontStyles = document.createElement('style');
- fontStyles.textContent = `@import url('https://fonts.googleapis.com/css2?family=Bad+Script&family=Comfortaa&family=Fira+Sans&family=Marmelad&family=Montserrat&family=Neucha&family=Play&family=Roboto:ital@1&family=Sofia+Sans&family=Ubuntu&display=swap');`;
- document.head.appendChild(fontStyles);
-
- const styleToggle = document.createElement('button');
- styleToggle.className = 'style-button';
- styleToggle.id = 'style-modal-toggle';
- styleToggle.href = '#!';
- styleToggle.tabIndex = '0';
- styleToggle.dataset.bsToggle = 'modal';
- styleToggle.dataset.bsTarget = '#container-background';
- styleToggle.textContent = 'STYLE';
- styleToggle.style.color = '#ffffff';
- styleToggle.style.background = 'transparent';
- styleToggle.style.border = '3px solid #ffffff';
- styleToggle.style.borderRadius = '10px';
- styleToggle.style.boxShadow = '0px 0px 10px #ffffff';
- styleToggle.style.width = '10%';
-
- const replaceElement = document.querySelector(element);
- replaceElement.replaceWith(styleToggle);
- }
-
- function createStyleContainerBg(element) {
-
- const containerBg = document.createElement('div');
- containerBg.className = 'modal fade';
- containerBg.id = 'container-background';
- containerBg.tabIndex = '-1';
- containerBg.style.dispaly = 'none';
- containerBg.ariaHidden = 'true';
-
- const parentElement = document.querySelector(element);
- parentElement.parentNode.insertBefore(containerBg, parentElement);
-
- const containerContent = document.createElement('div');
- containerContent.className = 'modal-dialog modal-dialog-centered';
- containerContent.id = 'style-container-content';
- containerBg.appendChild(containerContent);
-
- const styleContainer = document.createElement('div');
- styleContainer.className = 'modal-content';
- containerContent.appendChild(styleContainer);
-
- const styleContHead = document.createElement('div');
- const styleContBody = document.createElement('div');
- styleContHead.className = 'modal-header';
- styleContBody.className = 'modal-body';
- styleContBody.style.display = 'flex';
- styleContBody.style.flexDirection = 'column';
- styleContainer.appendChild(styleContHead);
- styleContainer.appendChild(styleContBody);
-
- const styleTitle = document.createElement('h5');
- styleTitle.className = 'style-title';
- styleContHead.appendChild(styleTitle);
-
- const styleTitleText = document.createElement('span');
- styleTitleText.className = 'badge bg-success';
- styleTitleText.textContent = 'STYLE';
- styleTitle.appendChild(styleTitleText);
- styleTitle.insertAdjacentText('beforeend', '-Переключатель Тем-');
-
- const styleClose = document.createElement('button');
- styleClose.type = 'button';
- styleClose.className = 'btn-close';
- styleClose.dataset.bsDismiss = 'modal';
- styleClose.ariaLabel = 'Close';
- styleContHead.appendChild(styleClose);
-
- const switchStyleElement = document.createElement('label');
- switchStyleElement.className = 'switch';
- switchStyleElement.innerHTML = `
- <input type="checkbox" id="styleToggleCheck">
- <span class="slider round" style="padding-right: 20px; box-shadow: 0px 0px 5px #fff"></span>
- <span class="addingText" style="display: block; width: max-content; margin: 5px; padding-left: 50px"> Включить Переливание Текста </span>
- `;
- styleContBody.appendChild(switchStyleElement);
-
- var styleToggleCheck = document.getElementById('styleToggleCheck');
- if (localStorage.getItem('styleThemeEnabled') === 'true') {
- styleToggleCheck.checked = true;
- applyTextGradient();
- }
- styleToggleCheck.addEventListener('change', function() {
- if (styleToggleCheck.checked) {
- applyTextGradient();
- localStorage.setItem('styleThemeEnabled', 'true');
- } else {
- removeTextGradient();
- localStorage.setItem('styleThemeEnabled', 'false');
- }
- });
- function applyTextGradient() {
- const textGradient = document.createElement('style');
- textGradient.id = 'text-gradient';
- textGradient.textContent = `.td-category[data-v-2d76ca92] a[data-v-2d76ca92] {
- background: linear-gradient(45deg, #00ffff, #0045ff, #00ffff);
- background-size: 150% 150%;
- animation: gradientCategory 5s linear infinite;
- color: transparent !important;
- -webkit-background-clip: text;
- font-style: italic;
- font-weight: 700;
- text-decoration: none;
- text-shadow: 0px 0px 10px #08f;
- padding-right: 3px;
- }
- @keyframes gradientCategory {
- 0% {background-position: 0% 100%;}
- 100% {background-position: 1200% 100%;}
- }
- .td-player-name[data-v-2d76ca92] a[data-v-2d76ca92] {
- background: linear-gradient(45deg, #ffff00, #ff4400, #ffff00);
- background-size: 150% 150%;
- animation: gradientCategory 5s linear infinite;
- color: transparent !important;
- -webkit-background-clip: text;
- font-style: italic;
- font-weight: 700;
- text-decoration: none;
- text-shadow: 0px 0px 10px #f80;
- padding-right: 3px;
- }
- .navbar-brand {
- background: linear-gradient(45deg, #00ccff, #ff4400, #00ccff);
- background-size: 150% 150%;
- animation: gradientCategory 5s linear infinite;
- color: transparent !important;
- -webkit-background-clip: text;
- font-style: italic;
- font-weight: 700;
- text-decoration: none;
- text-shadow: 0px 0px 10px #888;
- padding-right: 3px;
- }`;
- document.head.appendChild(textGradient);
- }
- function removeTextGradient() {
- var textGradient = document.querySelector('#text-gradient');
- document.head.removeChild(textGradient);
- }
-
- const fontSelectorBlock = document.createElement('label');
- fontSelectorBlock.className = 'font-selector-block';
- styleContBody.appendChild(fontSelectorBlock);
-
- const fontSelector = document.createElement('select');
- fontSelector.id = 'font-selector';
- fontSelector.style.width = '40%';
- fontSelector.style.borderRadius = '20px';
- fontSelector.style.border = '1px solid #fff';
- fontSelector.style.background = '#222';
- fontSelector.style.color = '#fff';
- fontSelector.style.fontSize = '18px';
- fontSelector.style.textAlign = 'center';
- fontSelector.style.padding = '4px';
- fontSelector.style.marginTop = '25px';
- fontSelector.style.marginRight = '10px';
- fontSelector.style.boxShadow = '0px 0px 5px #fff';
- fontSelector.style.cursor = 'pointer';
- const storedFont = localStorage.getItem('selectedFont') || 'Roboto';
- const fonts = ['Bad Script', 'Comfortaa', 'Fira Sans', 'Marmelad', 'Montserrat', 'Neucha', 'Play', 'Roboto', 'Sofia Sans', 'Ubuntu'];
- fonts.forEach(font => {
- const option = document.createElement('option');
- option.value = font;
- option.textContent = font;
- if (font === storedFont) {
- option.selected = true;
- document.body.style.fontFamily = font;
- }
- fontSelector.appendChild(option);
- });
- fontSelector.addEventListener('change', function() {
- const selectedFont = this.value;
- document.body.style.fontFamily = selectedFont;
- localStorage.setItem('selectedFont', selectedFont);
- });
- fontSelectorBlock.appendChild(fontSelector);
-
- const fontSelectorText = document.createElement('span');
- fontSelectorText.className = 'addingText';
- fontSelectorText.textContent = 'Выбор Шрифта';
- fontSelectorBlock.appendChild(fontSelectorText);
-
- const colorSelectorBlock = document.createElement('label');
- colorSelectorBlock.className = 'color-selector-block';
- styleContBody.appendChild(colorSelectorBlock);
-
- const colorSelector = document.createElement('select');
- colorSelector.id = 'color-selector';
- colorSelector.style.width = '40%';
- colorSelector.style.borderRadius = '20px';
- colorSelector.style.border = '1px solid #fff';
- colorSelector.style.background = '#222';
- colorSelector.style.color = '#fff';
- colorSelector.style.fontSize = '18px';
- colorSelector.style.textAlign = 'center';
- colorSelector.style.padding = '4px';
- colorSelector.style.marginTop = '25px';
- colorSelector.style.marginRight = '10px';
- colorSelector.style.boxShadow = '0px 0px 5px #fff';
- colorSelector.style.cursor = 'pointer';
- const storedColor = localStorage.getItem('selectedColor') || 'WHITE';
- const colors = ['WHITE', 'PINK', 'CYAN', 'KHAKI', 'SKYBLUE', 'PALEGREEN'];
- colors.forEach(color => {
- const option = document.createElement('option');
- option.value = color;
- option.textContent = color;
- if (color === storedColor) {
- option.selected = true;
- applySelectedStyle(color);
- }
- colorSelector.appendChild(option);
- });
- colorSelector.addEventListener('change', function() {
- const selectedColor = this.value;
- localStorage.setItem('selectedColor', selectedColor);
- applySelectedStyle(selectedColor);
- });
- colorSelectorBlock.appendChild(colorSelector);
-
- const colorSelectorText = document.createElement('span');
- colorSelectorText.className = 'addingText';
- colorSelectorText.textContent = 'Выбор Цвета';
- colorSelectorBlock.appendChild(colorSelectorText);
-
- const brightnessSliderBlock = document.createElement('label');
- brightnessSliderBlock.className = 'brightness-slider-block';
- styleContBody.appendChild(brightnessSliderBlock);
-
- const storedBright = localStorage.getItem('savedBrightness') || '100';
- const htmlContent = document.querySelector('html');
- const brightnessSlider = document.createElement('input');
- htmlContent.style.filter = `brightness(${storedBright}%)`
- brightnessSlider.id = 'brightness-slider';
- brightnessSlider.type = 'range';
- brightnessSlider.min = '30';
- brightnessSlider.max = '100';
- brightnessSlider.style.marginTop = '25px';
- brightnessSlider.style.marginRight = '10px';
- brightnessSlider.value = storedBright;
- brightnessSlider.addEventListener('input', function() {
- const brightnessValue = this.value;
- localStorage.setItem('savedBrightness', brightnessValue);
- htmlContent.style.filter = `brightness(${brightnessValue}%)`;
- });
- const filterHeading = document.querySelector('#log-filter-heading');
- if (filterHeading) {
- filterHeading.parentNode.insertBefore(brightnessSlider, filterHeading.nextSibling);
- }
- const sliderStyle = document.createElement('style');
- sliderStyle.textContent = `input[type=range] {width: 40%; border-radius: 10px; -webkit-appearance: none; -moz-appearance: none; appearance: none; box-shadow: 0px 0px 5px #fff;}
- input[type=range]::-webkit-slider-runnable-track {border-radius: 10px; height: 15px; border: 2px solid #fff; background-color: #222;}
- input[type=range]::-webkit-slider-thumb {background: #444; border: 1px solid #fff; box-shadow: 0px 0px 2px #fff; border-radius: 25px; cursor: pointer; width: 15px; height: 30px; -webkit-appearance: none; margin-top: -8px;}
- input[type=range]::-moz-range-track {border-radius: 10px/100%; height: 5px; border: 1px solid cyan; background-color: #fff;}
- input[type=range]::-moz-range-thumb {background: #ecf0f1; border: 1px solid cyan; border-radius: 10px/100%; cursor: pointer;}`;
- document.head.appendChild(sliderStyle);
- brightnessSliderBlock.appendChild(brightnessSlider);
-
- const brightnessSliderText = document.createElement('span');
- brightnessSliderText.className = 'addingText';
- brightnessSliderText.textContent = 'Выбор Яркости';
- brightnessSliderBlock.appendChild(brightnessSliderText);
-
- const nickColorBlock = document.createElement('label');
- nickColorBlock.className = 'color-picker-nickname';
- styleContBody.appendChild(nickColorBlock);
-
- const colorNickElement = document.createElement('input');
- const nickColor = localStorage.getItem('playerNameColor') || '#ff8800';
- colorNickElement.type = 'color';
- colorNickElement.style.marginTop = '20px';
- colorNickElement.style.marginRight = '10px';
- colorNickElement.style.width = '40%';
- colorNickElement.value = nickColor;
- colorNickElement.addEventListener('input', function() {
- const selectedColor = colorNickElement.value;
- const tdElements = document.querySelectorAll('td.td-player-name[data-v-2d76ca92=""]');
- localStorage.setItem('playerNameColor', selectedColor);
- tdElements.forEach(function(td) {
- const playerNick = td.querySelector('a');
- if (playerNick) {
- playerNick.style.color = selectedColor;
- playerNick.style.textShadow = '0px 0px 1px' + selectedColor;
- }
- });
- });
- nickColorBlock.appendChild(colorNickElement);
-
- const colorNickText = document.createElement('span');
- colorNickText.className = 'addingText';
- colorNickText.textContent = 'Цвет Никнеймов';
- nickColorBlock.appendChild(colorNickText);
-
- const categoryColorBlock = document.createElement('label');
- nickColorBlock.className = 'color-picker-category';
- styleContBody.appendChild(categoryColorBlock);
-
- const colorCategoryElement = document.createElement('input');
- const categoryColor = localStorage.getItem('categoryColor') || '#0088ff';
- colorCategoryElement.type = 'color';
- colorCategoryElement.style.marginTop = '20px';
- colorCategoryElement.style.marginRight = '10px';
- colorCategoryElement.style.width = '40%';
- colorCategoryElement.value = categoryColor;
- colorCategoryElement.addEventListener('input', function() {
- const selectedColor = colorCategoryElement.value;
- const tdElements = document.querySelectorAll('td.td-category[data-v-2d76ca92=""]');
- localStorage.setItem('categoryColor', selectedColor);
- tdElements.forEach(function(td) {
- const category = td.querySelector('a');
- if (category) {
- category.style.color = selectedColor;
- category.style.textShadow = '0px 0px 1px' + selectedColor;
- }
- });
- });
- categoryColorBlock.appendChild(colorCategoryElement);
-
- const colorCategoryText = document.createElement('span');
- colorCategoryText.className = 'addingText';
- colorCategoryText.textContent = 'Цвет Категорий';
- categoryColorBlock.appendChild(colorCategoryText);
- }
-
- function applySavedColors() {
- const savedNick = localStorage.getItem('playerNameColor');
- const savedCategory = localStorage.getItem('categoryColor');
- const savedColors = document.createElement('style');
- savedColors.textContent = `.td-player-name[data-v-2d76ca92] a[data-v-2d76ca92] {
- color: ${savedNick};
- text-shadow: 0px 0px 1px ${savedNick};
- }
- .td-category[data-v-2d76ca92] a[data-v-2d76ca92] {
- color: ${savedCategory};
- text-shadow: 0px 0px 1px ${savedCategory};
- }`
- document.head.appendChild(savedColors);
- }
-
- function applySelectedStyle(color) {
- const currentStyleElement = document.getElementById('customStyle');
- if (currentStyleElement) {
- currentStyleElement.remove();
- }
- const styleElement = document.createElement('style');
- styleElement.id = 'customStyle';
- styleElement.textContent = `h1, h2, h3, h4, h5, h6 { color: ${color.toLowerCase()} !important; filter: contrast(0.8); text-shadow: 0px 0px 10px ${color.toLowerCase()} !important;}
- #log-filter[data-v-2d76ca92] .form-label[data-v-2d76ca92] {color: ${color.toLowerCase()} !important; filter: contrast(0.8); text-shadow: 0px 0px 2px ${color.toLowerCase()} !important;}
- #log-filter-section[data-v-2d76ca92] {border: 1px solid ${color.toLowerCase()} !important;}
- .navbar-dark .navbar-nav .nav-link {color: ${color.toLowerCase()} !important; filter: contrast(0.8); text-shadow: 0px 0px 2px ${color.toLowerCase()} !important;}
- #log-table[data-v-2d76ca92]>:not(:last-child)>:last-child>*, .table>:not(:last-child)>:last-child>* {color: ${color.toLowerCase()} !important; border-bottom: 1px solid ${color.toLowerCase()} !important;}
- #log-table[data-v-2d76ca92] .first-row[data-v-2d76ca92] td[data-v-2d76ca92] {color: ${color.toLowerCase()} !important; text-shadow: 0px 0px 2px ${color.toLowerCase()} !important;}
- #log-table[data-v-2d76ca92]>:not(caption)>*>*, .table-borderless>:not(caption)>*>* {border-bottom: 1px solid ${color.toLowerCase()} !important;}
- #log-table[data-v-2d76ca92] .second-row[data-v-2d76ca92] td[data-v-2d76ca92] {color: ${color.toLowerCase()} !important; text-shadow: 0px 0px 2px ${color.toLowerCase()} !important;}
- .form-control {color: ${color.toLowerCase()} !important; border: 1px solid ${color.toLowerCase()} !important;}
- .input-group.has-validation>.dropdown-toggle:nth-last-child(n+4), .input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), .input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3), .input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) {color: ${color.toLowerCase()} !important; border: 1px solid ${color.toLowerCase()} !important;}
- .autoComplete_wrapper>input {border: 1px solid ${color.toLowerCase()} !important;}
- .dp__input{border: 1px solid ${color.toLowerCase()} !important;};
- ` ;
- document.head.appendChild(styleElement);
- }
-
- function applySwitchStyle() {
- const switchStyle = document.createElement('style');
- switchStyle.textContent = `
- .switch {
- position: relative;
- display: inline-block;
- width: 60px;
- height: 34px;
- padding-left: 20px;
- }
- .switch input { display: none; }
- .slider {
- position: absolute;
- cursor: pointer;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- background-color: #ccc;
- transition: all .4s ease;
- }
- .slider:before {
- position: absolute;
- content: "";
- height: 26px;
- width: 26px;
- left: 4px;
- bottom: 4px;
- background-color: white;
- transition: all .4s ease;
- }
- input:checked + .slider {
- background-color: #222;
- }
- input:focus + .slider {
- box-shadow: 0 0 1px #222;
- }
- input:checked + .slider:before {
- transform: translateX(26px);
- }
- .slider.round {
- border-radius: 34px;
- }
- .slider.round:before {
- border-radius: 50%;
- }
- `;
- document.head.appendChild(switchStyle);};
-
- function applyBodyStyle() {
- const bodyStyle = document.createElement('style');
- bodyStyle.textContent = `
- .bg-dark {
- bs-bg-opacity: 0;
- background: #000 !important;
- }
- .modal-header {
- border-top-left-radius: 25px !important;
- border-top-right-radius: 25px !important;
- }
- .modal-body {
- border-bottom-left-radius: 25px !important;
- border-bottom-right-radius: 25px !important;
- }
- .modal-content {
- border-radius: 25px;
- }
- .modal-open {
- padding-right: 0px !important;
- }
- .modal-backdrop {
- height: 100%;
- width: 100%;
- }
- .modal.fade.show {
- padding-right: 80px !important;
- padding-left: 80px !important;
- }
- .addingText {
- font-size: 20px;
- font-style: italic;
- font-weight: 800;
- }
- h1, h2, h3, h4, h5, h6 {
- color: #fff;
- text-shadow: 0px 0px 10px #fff;
- }
- #game-logs-app {
- background: #000;
- }
- body {
- background-color: #000;
- background-size: 100%;
- }
- .navbar-dark .navbar-brand, .navbar-dark .navbar-brand:focus, .navbar-dark .navbar-brand:hover {
- color: #fff;
- font-weight: 900;
- }
- @keyframes textGradient {
- 0% { background-position: 0% 50%; }
- 100% { background-position: 1200% 50%; }
- }
- .bg-success {
- background: #000 !important;
- border: 1px solid #fff;
- box-shadow: 0px 0px 10px #fff;
- }
- .badge {
- border-radius: 7px;
- color: #fff;
- display: inline-block;
- font-size: .75em;
- font-weight: 500;
- line-height: 1;
- padding: 0.35em 0.65em;
- text-align: center;
- vertical-align: baseline;
- white-space: nowrap;
- }
- .navbar-dark .navbar-nav .nav-link {
- color: #fff;
- text-shadow: 0px 0px 10px #fff;
- }
- .bi-arrow-left::before {
- color: #fff;
- }
- #log-table[data-v-2d76ca92]>:not(:last-child)>:last-child>*, .table>:not(:last-child)>:last-child>* {
- border: 1px solid #111;
- border-bottom: 1px solid #fff;
- background: #111;
- color: #fff;
- }
- #log-table[data-v-2d76ca92] .first-row[data-v-2d76ca92] td[data-v-2d76ca92] {
- text-align: center;
- background: #111;
- color: #fff;
- text-shadow: 0px 0px 2px #fff;
- }
- .td-category[data-v-2d76ca92] a[data-v-2d76ca92] {
- color: #08f;
- -webkit-background-clip: text;
- font-style: italic;
- font-weight: 700;
- text-decoration: none;
- text-shadow: 0px 0px 1px #08f;
- padding-right: 3px;
- }
- .td-player-name[data-v-2d76ca92] a[data-v-2d76ca92] {
- color: #f80;
- -webkit-background-clip: text;
- font-style: italic;
- font-weight: 700;
- text-decoration: none;
- text-shadow: 0px 0px 1px #f80;
- padding-right: 3px;
- }
- #log-table[data-v-2d76ca92] .second-row[data-v-2d76ca92] td[data-v-2d76ca92] {
- padding: 0.5rem 0.5rem 0.5rem 1.5rem;
- background: #000;
- color: #fff;
- text-shadow: 0px 0px 2px #fff;
- }
- .td-index[data-v-2d76ca92] {
- background: linear-gradient(90deg, rgba(51,51,51,1) 0%, rgba(17,17,17,1) 100%) !important;
- color: #fff;
- }
- #log-table[data-v-2d76ca92]>:not(caption)>*>*, .table-borderless>:not(caption)>*>* {
- border: 1px solid rgba(0,0,0,0);
- border-bottom: 1px solid #fff;
- }
- .bi-sort-down::before {
- color: #f90;
- text-shadow: 0px 0px 2px #f90;
- }
- .bi-sort-up::before {
- color: #f90;
- text-shadow: 0px 0px 2px #f90;
- }
- #log-table[data-v-2d76ca92] .first-row[data-v-2d76ca92] td[data-v-2d76ca92] {
- border: 1px solid rgba(0,0,0,0);
- text-align: center;
- }
- #log-filter-section[data-v-2d76ca92] {
- background: #000;
- border: 1px solid #fff;
- border-radius: 25px;
- height: 830px;
- margin-left: 1rem;
- min-width: 20rem;
- overflow-y: auto;
- }
- #log-filter[data-v-2d76ca92] .form-label[data-v-2d76ca92] {
- color: #fff;
- font-weight: 500;
- }
- #log-filter[data-v-2d76ca92] .close-btn[data-v-2d76ca92] {
- height: 41px;
- background: #000;
- border-bottom-left-radius: 10px;
- border: 1px solid #000;
- }
- .btn-primary, .submit-btn {
- background-color: #000;
- border: 3px solid #0af;
- border-radius: 10px;
- color: #0ff;
- }
- .btn-outline-danger {
- border: 3px solid #f00;
- color: #f00;
- border-radius: 10px;
- }
- .input-group.has-validation>.dropdown-toggle:nth-last-child(n+4), .input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), .input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3), .input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) {
- border-bottom-right-radius: 0;
- border-top-right-radius: 0;
- background: #111;
- color: #fff;
- border: 1px solid #fff;
- }
- .input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback):not(.field-error) {
- border-bottom-left-radius: 0;
- border-top-left-radius: 0;
- margin-left: -1px;
- background: #000;
- color: #fff;
- }
- .form-control {
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
- background-clip: padding-box;
- background-color: #fff;
- border: 1px solid #fff;
- border-radius: 0.25rem;
- color: #fff;
- display: block;
- font-size: 1rem;
- font-weight: 400;
- line-height: 1.5;
- padding: 0.375rem 0.75rem;
- transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
- width: 100%;
- }
- .form-control:focus {
- background-color: #fff;
- border-color: #fff;
- box-shadow: 0px 0px 10px #fff;
- color: #212529;
- outline: 0;
- }
- .multiselect-search {
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
- background: #000;
- border: 0;
- border-radius: var(--ms-radius,4px);
- bottom: 0;
- box-sizing: border-box;
- color: #fff;
- font-family: inherit;
- font-size: inherit;
- left: 0;
- outline: none;
- padding-left: var(--ms-px,.875rem);
- position: absolute;
- right: 0;
- top: 0;
- width: 100%;
- }
- .multiselect-option {
- align-items: center;
- box-sizing: border-box;
- cursor: pointer;
- background: #000;
- display: flex;
- font-size: var(--ms-option-font-size,1rem);
- justify-content: flex-start;
- line-height: var(--ms-option-line-height,1.375);
- padding: var(--ms-option-py,.5rem) var(--ms-option-px,.75rem);
- text-align: left;
- text-decoration: none;
- }
- .multiselect .multiselect-option.is-pointed {
- background-color: #222;
- color: #fff;
- }
- .multiselect .multiselect-option.is-pointed.is-selected {
- background-color: #666;
- color: #fff;
- }
- .multiselect .multiselect-option.is-selected {
- background-color: #444;
- color: #fff;
- }
- .autoComplete_wrapper>input {
- background-color: #000;
- background-origin: border-box;
- background-position: left 1.05rem top 0.8rem;
- background-repeat: no-repeat;
- background-size: 1.4rem;
- border: 1px solid #fff;
- border-radius: 4px;
- box-sizing: border-box;
- color: #f90;
- font-size: 1rem;
- height: 2.45rem;
- margin: 0;
- outline: none;
- padding: 0 1rem;
- text-overflow: ellipsis;
- transition: all .4s ease;
- width: 100%;
- }
- .autoComplete_wrapper>input:focus {
- border: 1px solid #f90;
- color: #f90;
- }
- .autoComplete_wrapper>ul>li {
- background-color: #000;
- color: #fff;
- font-size: 1rem;
- margin: 0;
- overflow: hidden;
- padding: 0.3rem 0.5rem;
- text-align: left;
- text-overflow: ellipsis;
- transition: all .2s ease;
- white-space: nowrap;
- }
- .autoComplete_wrapper>ul>li:hover, .autoComplete_wrapper>ul>li[aria-selected=true] {
- background-color: #222;
- }
- .autoComplete_wrapper>ul>li mark {
- background-color: transparent;
- color: #f90;
- font-weight: 700;
- }
- .form-control {
- -webkit-appearance: none;
- -moz-appearance: none;
- appearance: none;
- background-clip: padding-box;
- background-color: #000;
- border: 1px solid #fff;
- border-radius: 0.25rem;
- color: #fff;
- display: block;
- font-size: 1rem;
- font-weight: 400;
- line-height: 1.5;
- padding: 0.375rem 0.75rem;
- transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
- width: 100%;
- }
- .form-control:focus {
- background-color: #000;
- border-color: #fff;
- box-shadow: 0px 0px 10px #fff;
- color: #fff;
- outline: 0;
- }
- .dp__input {
- background-color: #111;
- border: 1px solid #fff;
- border-radius: 5px;
- box-sizing: border-box;
- color: #fff;
- font-family: -apple-system,blinkmacsystemfont,Segoe UI,roboto,oxygen,ubuntu,cantarell,Open Sans,Helvetica Neue,sans-serif;
- font-size: 1rem;
- line-height: 1.5rem;
- outline: none;
- padding: 6px 30px;
- transition: border-color .2s cubic-bezier(.645,.045,.355,1);
- width: 100%;
- }
- #loading-overlay[data-v-173ec149] {
- height: 100%;
- width: 100%;
- }
- #loading-overlay-heading[data-v-173ec149] {
- font-size: 2rem;
- font-weight: 500;
- letter-spacing: 1px;
- padding: 1rem;
- text-align: center;
- text-transform: uppercase;
- background: linear-gradient(90deg, #ffffff, #444444, #ffffff);
- background-size: 150% 150%;
- background-clip: text;
- -webkit-background-clip: text;
- color: transparent !important;
- filter: saturate(0);
- animation: textGradient 5s linear infinite;
- text-shadow: none !important;
- }
- #loading-overlay[data-v-173ec149] .spinner[data-v-173ec149] {
- border-width: 0.375rem;
- color: #fff;
- height: 4rem;
- width: 4rem;
- }
- #loading-overlay-container[data-v-173ec149] {
- align-items: center;
- display: flex;
- flex-direction: column;
- background-color: #000;
- height: 100%;
- justify-content: center;
- width: 100%;
- }
- #placeholder-pic[data-v-9c1e68e2] {
- display: block;
- opacity: 0;
- margin: auto;
- max-height: 20rem;
- }
- #content-placeholder[data-v-9c1e68e2] {
- background-image: url(https://snipboard.io/8kBudo.jpg);
- background-repeat: no-repeat;
- background-size: contain;
- background-position: center;
- }
- .bi-question-circle-fill::before {
- color: #666;
- text-shadow: 0px 0px 10px #000;
- }
- .modal-header {
- background: #000;
- border: 1px solid #fff;
- align-items: center;
- border-bottom: 1px solid #dee2e6;
- border-top-left-radius: calc(0.3rem - 1px);
- border-top-right-radius: calc(0.3rem - 1px);
- display: flex;
- flex-shrink: 0;
- justify-content: space-between;
- padding: 1rem;
- }
- .modal-body {
- background: #000;
- border: 1px solid #fff;
- color: #fff;
- flex: 1 1 auto;
- padding: 1rem;
- position: relative;
- }
- .fade {
- transition: opacity .15s linear;
- backdrop-filter: blur(5px);
- }
- .show-filter-btn[data-v-2d76ca92] {
- background: #328;
- border-bottom-left-radius: 10px;
- border: 0;
- height: 44px;
- opacity: 1;
- position: fixed;
- right: 0;
- top: 0;
- z-index: 1059;
- }
- body::-webkit-scrollbar {
- width: 16px;
- }
- body::-webkit-scrollbar-track {
- background: #222;
- border-left: 1px solid #fff;
- }
- body::-webkit-scrollbar-thumb {
- background-color: #fff;
- border-radius: 20px;
- border: 1px solid #222;
- }
- .multiselect-dropdown::-webkit-scrollbar {
- width: 12px;
- }
- .multiselect-dropdown::-webkit-scrollbar-track {
- background: #222;
- border-left: 1px solid #fff;
- }
- .multiselect-dropdown::-webkit-scrollbar-thumb {
- background-color: #fff;
- border-radius: 20px;
- border: 1px solid #222;
- }
- .autoComplete_wrapper>ul::-webkit-scrollbar {
- width: 12px;
- }
- .autoComplete_wrapper>ul::-webkit-scrollbar-track {
- background: #222;
- border-left: 1px solid #fff;
- }
- .autoComplete_wrapper>ul::-webkit-scrollbar-thumb {
- background-color: #fff;
- border-radius: 20px;
- border: 1px solid #222;
- }
- input#playerNameInput::placeholder {
- color: #a60;
- }
- .multiselect.is-open.is-active {
- box-shadow: 0px 0px 10px #fff;
- }
- .autoComplete_wrapper>input:hover {
- color: #a60;
- transition: all .3s ease;
- }
- .dp__input_icons {
- color: #0ff;
- }
- .dp__month_year_row {
- background: #111;
- color: #fff;
- }
- .dp__inner_nav svg {
- color: #0ff;
- }
- .dp__calendar_header, .dp__calendar_wrap {
- background: #111;
- }
- .dp__calendar_header_item {
- color: #fff;
- }
- .dp__cell_inner {
- color: #fff;
- }
- .dp__active_date, .dp__range_end, .dp__range_start {
- background: #666;
- color: #fff;
- }
- .dp__date_hover:hover, .dp__date_hover_end:hover, .dp__date_hover_start:hover {
- background: #444;
- color: #fff;
- transition: all .5s ease-in-out;
- }
- .dp__cell_disabled, .dp__cell_offset {
- color: #444;
- }
- .dp__button {
- background: #222;
- }
- .dp__button_bottom {
- background: #222;
- color: #0ff;
- }
- .dp__button:hover {
- background: #328;
- color: #077;
- transition: all .5s ease-in-out;
- }
- .dp__month_year_select:hover {
- background: #222;
- color: #fff;
- transition: all .5s ease-in-out;
- }
- .dp__overlay_cell, .dp__overlay_cell_active {
- background: #444;
- }
- .dp__overlay_container {
- background: #000;
- }
- .dp__overlay_cell_disabled, .dp__overlay_cell_disabled:hover {
- background: #111;
- color: #444;
- }
- .dp__time_display {
- color: #aaa;
- }
- .dp__time_display:hover {
- background: #111;
- color: #fff;
- transition: all .3s ease-in-out;
- }
- .dp__inc_dec_button:hover {
- background: #222;
- color: #0ff;
- transition: all .3s ease-in-out;
- }
- .dp__cell_in_between, .dp__overlay_cell:hover {
- background: #666;
- color: #fff;
- transition: all .3s ease-in-out;
- }
- .dp__overlay_cell_pad {
- padding: 10px 0;
- color: #999;
- }
- .dp__inner_nav:hover {
- background: #328;
- color: #fff;
- transition: all .3s ease-in-out;
- }
- .dp__today {
- border: 1px solid #fff;
- }
- .btn-outline-danger:hover {
- background-color: #900;
- border-color: #fff;
- color: #fff;
- transition: all .2s ease-in-out;
- }
- .btn-primary:hover, .submit-btn:hover {
- background-color: #033;
- border-color: #fff;
- color: #fff;
- transition: all .2s ease-in-out;
- }
- #next-page-btn[data-v-2d76ca92], .btn-secondary, .close-btn, .icon-btn, .show-filter-btn {
- background-color: #222;
- border-color: #fff;
- color: #fff;
- }
- #next-page-btn[data-v-2d76ca92]:hover, .btn-secondary:hover, .close-btn:hover, .icon-btn:hover, .show-filter-btn:hover {
- background-color: #444;
- border-color: #aaa;
- color: #fff;
- }
- #prev-page-btn[data-v-2d76ca92], .btn-outline-secondary {
- border-color: #fff;
- color: #fff;
- }
- #prev-page-btn[data-v-2d76ca92]:hover, .btn-outline-secondary:hover {
- background-color: #444;
- border-color: #aaa;
- color: #fff;
- }
- .lookup-comment[data-v-2d76ca92] {
- color: #fff;
- font-size: .9rem;
- font-weight: 400;
- }
- .accessible-servers .page-intro {
- color: #0ff;
- font-size: 1.15rem;
- font-weight: 300;
- text-align: center;
- text-shadow: 0px 0px 10px #fff;
- }
- a {
- color: #faf;
- text-decoration: none;
- }
- .dropdown-item:focus, .dropdown-item:hover {
- background-color: #444;
- color: #1e2125;
- }
- .dropdown-menu {
- background-color: #222;
- }
- .accessible-servers .game-logs-link {
- font-size: 1.5rem;
- text-shadow: 0px 0px 10px #f0f;
- }
- a:hover {
- color: #f0f;
- }
- #placeholder-msg[data-v-9c1e68e2] {
- color: #0aa;
- font-size: 1.25rem;
- padding: 1rem;
- text-align: center;
- }
- strong {
- color: #0ff;
- }
- .modal [type=button], .modal [type=submit] {
- margin-left: 0.5rem;
- filter: invert(1);
- }
- .lookup-symbol[data-v-2d76ca92] {
- color: #fff;
- font-size: 1.125rem;
- font-weight: 500;
- width: 1.75rem;
- text-shadow: 0px 0px 10px #fff;
- }
- .lookup-comment[data-v-2d76ca92] {
- color: #fff;
- font-size: .9rem;
- font-weight: 400;
- text-shadow: 0px 0px 10px #fff;
- }
- .dropdown-menu show {
- position: absolute;
- inset: 0px auto auto 0px;
- margin: 0px;
- transform: translate(-1px, 40px);
- background: #328;
- }
- .alert-danger, .alert-modal.failure .modal-content, .default-error-page .exception {
- background-color: #000;
- border: 5px solid #f11;
- border-radius: 50px;
- color: #fff;
- }
- `;
- document.head.appendChild(bodyStyle);};
-
- function applyColorPickerStyle() {
- const colorPickerStyle = document.createElement('style');
- colorPickerStyle.textContent = `
- input[type="color"]::-webkit-color-swatch-wrapper {
- padding: 2px;
- }
-
- input[type="color"]::-webkit-color-swatch {
- border: none;
- border-radius: 20px;
- }
- input[type="color"] {
- -webkit-appearance: none;
- border: 2px solid #fff;
- background: #000;
- border-radius: 20px;
- overflow: hidden;
- outline: none;
- cursor: pointer;
- box-shadow: 0px 0px 5px #fff;
- }`;
- document.head.appendChild(colorPickerStyle);
- }
-
- function replaceSpinnerImage() {
- const spinnerElement = document.querySelector('div.spinner.spinner-border[data-v-173ec149=""]');
- if (spinnerElement) {
- const gifImageUrl = 'https://rb.ru/media/upload_tmp/2018/d1.gif';
- const gifImage = document.createElement('img');
- gifImage.src = gifImageUrl;
- gifImage.style.width = '160px';
- gifImage.style.height = '120px';
- gifImage.style.filter = 'saturate(0)';
- spinnerElement.replaceWith(gifImage);
- }
- }
-
- function addListener() {
- const inputNameElement = document.querySelector('#playerNameInput');
- const transactionData = document.querySelector('#log-filter-form__transaction-desc');
- inputNameElement.addEventListener('keydown', function(event) {
- if (event.keyCode === 13) {
- const otherElement = document.querySelector('.btn.btn-primary');
- otherElement.click();
- }
- });
- transactionData.addEventListener('keydown', function(event) {
- if (event.keyCode === 13) {
- event.preventDefault();
- const otherElement = document.querySelector('.btn.btn-primary');
- otherElement.click();
- }
- });
- }
-
- function setPageTitle() {
- const titleElement = document.querySelector('div.container-fluid span.badge.bg-success');
- document.title += ' - ' + titleElement.textContent;
- }
-
- function scriptInit() {
- applySwitchStyle();
-
- applyBodyStyle();
-
- applyColorPickerStyle();
-
- replaceTableHeading();
-
- replaceSpinnerImage();
-
- addListener()
-
- applySavedColors();
-
- setPageTitle();
- }
- })();