Scryfall Deck Cat

Cat maker ))

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey, Greasemonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да инсталирате разширение, като например Tampermonkey .

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Violentmonkey.

За да инсталирате този скрипт, трябва да имате инсталирано разширение като Tampermonkey или Userscripts.

За да инсталирате скрипта, трябва да инсталирате разширение като Tampermonkey.

За да инсталирате този скрипт, трябва да имате инсталиран скриптов мениджър.

(Вече имам скриптов мениджър, искам да го инсталирам!)

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да инсталирате разширение като Stylus.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

За да инсталирате този стил, трябва да имате инсталиран мениджър на потребителски стилове.

(Вече имам инсталиран мениджър на стиловете, искам да го инсталирам!)

// ==UserScript==
// @name         Scryfall Deck Cat
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Cat maker ))
// @author       kaur
// @match        https://scryfall.com/*/decks*
// @icon         https://www.google.com/s2/favicons?domain=scryfall.com
// @grant        none
// @license MIT 
// ==/UserScript==

var thStyles = {
    "backgroundColor": "#2B253A",
    "padding": "6px 0px 6px 10px",
    "color": "#fff"
};

var tableStyles = {
    "max-width": "100%",
    "width": "100%",
    "margin-left": "0"
};

$(".control-panel-table thead").addClass("catless_table"); //добавление класса первой шапке
$(".control-panel-table > tbody > tr").each(function() { //перебор строк таблицы
    var deckLink = $(this).find("td:first > a"); // ищем строку с названием колоды
    var CategoryName = deckLink.text(); // преобразуем в текст
    CategoryName=CategoryName.substring(CategoryName.lastIndexOf("[") + 1,CategoryName.lastIndexOf("]")); //обрезаем категорию по квадратным скобкам

    if (CategoryName!="") {
        if (!$("*").is("."+CategoryName.toLowerCase()+"_table")) { //проверяем наличие категории, если нет - создаем
            $(".catless_table").before("<thead class='"+CategoryName.toLowerCase()+"_table'><tr><th>["+CategoryName+"] Deck</th> <th>Colors</th> <th>Owner</th> <th>Last Updated</th> <th></th></tr></thead> <tbody></tbody>");
        }
        $("."+CategoryName.toLowerCase()+"_table + tbody").append(this); //аппенд строки в соответствующей категории
    }
    $(".control-panel-table").css(tableStyles);
    $(".control-panel-table th").css(thStyles);//стили заголовков
    //очистка названий колод от категорий
    var new_deckLink = deckLink.html().replace("["+CategoryName+"]","");
    deckLink.html(new_deckLink);
});