From 478802673042fe07356c6f49915a8de396ad669b Mon Sep 17 00:00:00 2001 From: Thomas David Baker Date: Tue, 14 May 2024 21:25:45 -0700 Subject: [PATCH 01/10] Cards mouseover on archetype detail page --- decksite/views/archetype.py | 1 + 1 file changed, 1 insertion(+) diff --git a/decksite/views/archetype.py b/decksite/views/archetype.py index 152a19c34..a00f5738f 100644 --- a/decksite/views/archetype.py +++ b/decksite/views/archetype.py @@ -42,6 +42,7 @@ def __init__(self, archetype: archs.Archetype, archetypes: list[archs.Archetype] self.show_tournament_toggle = True self.toggle_results_url = url_for('.archetype', archetype_id=self.archetype.id, deck_type=None if tournament_only else DeckType.TOURNAMENT.value) self.show_archetype_tree = len(self.archetypes) > 0 + self.has_cards = True def og_title(self) -> str: return self.archetype.name From 70a97d1c68831f6af44bfcdc1f6e83435378ff93 Mon Sep 17 00:00:00 2001 From: Thomas David Baker Date: Wed, 15 May 2024 06:17:21 -0700 Subject: [PATCH 02/10] Move rounded coners more properly onto the buttons themslves This is so they don't "disappear" on hover. --- decksite/templates/buttons.mustache | 12 ++++++------ shared_web/static/css/pd.css | 12 ++++++++---- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/decksite/templates/buttons.mustache b/decksite/templates/buttons.mustache index 6e89941f1..503738a19 100644 --- a/decksite/templates/buttons.mustache +++ b/decksite/templates/buttons.mustache @@ -1,7 +1,7 @@ diff --git a/shared_web/static/css/pd.css b/shared_web/static/css/pd.css index c893dc9ee..a8c09253d 100644 --- a/shared_web/static/css/pd.css +++ b/shared_web/static/css/pd.css @@ -1632,23 +1632,27 @@ Button Bars --text-rounded-corners: 0.317rem; } -ul.buttons li { +.button { background: var(--background); + border: 0.05rem solid var(--light-border); + border-radius: var(--button-rounded-corners); color: var(--deemphasized-text); display: block; font-size: var(--table-font-size); - list-style-type: none; padding: 0.422em 1em; text-align: center; user-select: none; } +ul.buttons li { + list-style-type: none; +} + ul.buttons > li { - border: 0.05rem solid var(--light-border); - border-radius: var(--button-rounded-corners); margin-left: 0.75rem; } + /* We only want to float the buttons alongside the h1. Other buttons should just appear in the flow. */ .banner ul.buttons { float: right; From 747591cf5a5f3c261eedc259e5273115143d1abd Mon Sep 17 00:00:00 2001 From: Thomas David Baker Date: Wed, 15 May 2024 06:24:17 -0700 Subject: [PATCH 03/10] Update README with perf testing notes --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index 28ef1ece6..257fbff03 100644 --- a/README.md +++ b/README.md @@ -119,3 +119,9 @@ Check the dev.py source code for the full set of options including `unit`, `type - Run logsite - pipenv run python dev.py watch # Builds bundle.js after every file change. + +## Decksite performance testing/monitoring + +- You can run decksite in profiling mode with: + - $ pipenv run python3 ~/pd/run.py profiler +- You can be warned about slowness by setting `slow_query`, `slow_page` and `slow_fetch` limits in conifg.json From 6a7f652f1b71564d6418b404a51ac413d843c587 Mon Sep 17 00:00:00 2001 From: Thomas David Baker Date: Wed, 15 May 2024 13:32:58 -0700 Subject: [PATCH 04/10] Update types comment with official python names --- decksite/data/deck.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/decksite/data/deck.py b/decksite/data/deck.py index 0acec7b31..c9373cf3a 100644 --- a/decksite/data/deck.py +++ b/decksite/data/deck.py @@ -293,10 +293,10 @@ class RawDeckDescription(TypedDict, total=False): # Expects: # # { -# 'name': , -# 'url': , -# 'source': , -# 'identifier': , +# 'name': , +# 'url': , +# 'source': , +# 'identifier': , # 'cards' { # 'maindeck': { # '': , From caa3deca97e6fb67c12d15e250796438b6b0642c Mon Sep 17 00:00:00 2001 From: Thomas David Baker Date: Wed, 15 May 2024 13:33:10 -0700 Subject: [PATCH 05/10] Emit legal HTML in card name links Did you know that not even HTML5 allows spaces in href? I did not. --- decksite/prepare.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/decksite/prepare.py b/decksite/prepare.py index 0fb473e61..57969f084 100644 --- a/decksite/prepare.py +++ b/decksite/prepare.py @@ -1,3 +1,4 @@ +import urllib.parse from collections.abc import Sequence from anytree import PreOrderIter @@ -58,7 +59,7 @@ def url_for_card(c: Card, tournament_only: bool = False, season_id: int | str | g.url_cache['card_page'] = url_for('.card', name='--cardname--', deck_type=DeckType.TOURNAMENT.value if tournament_only else None) else: g.url_cache['card_page'] = url_for('seasons.card', name='--cardname--', deck_type=DeckType.TOURNAMENT.value if tournament_only else None, season_id=season_id) - return g.url_cache['card_page'].replace('--cardname--', c.name) + return g.url_cache['card_page'].replace('--cardname--', urllib.parse.quote(c.name)) def prepare_decks(ds: list[Deck]) -> None: for d in ds: From dbbce6efa879827e8bfe86f5b0315380a1e7dc75 Mon Sep 17 00:00:00 2001 From: Thomas David Baker Date: Wed, 15 May 2024 13:33:56 -0700 Subject: [PATCH 06/10] Fix some doubled up class attributes --- decksite/templates/buttons.mustache | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/decksite/templates/buttons.mustache b/decksite/templates/buttons.mustache index 503738a19..9c8fe3412 100644 --- a/decksite/templates/buttons.mustache +++ b/decksite/templates/buttons.mustache @@ -9,13 +9,13 @@ {{/show_tournament_toggle}} {{#has_external_source}} -
  • Source
  • +
  • Source
  • {{/has_external_source}} {{^is_in_current_run}} {{#is_deck_page}}
  • Download
  • -
  • Buy
  • -
  • Source
  • +
  • Buy
  • +
  • Source
  • {{/is_deck_page}} {{/is_in_current_run}} {{#show_seasons}} From 39d02bf35da8439d7e98bf9601bd00da9b374b6b Mon Sep 17 00:00:00 2001 From: Thomas David Baker Date: Wed, 15 May 2024 13:34:12 -0700 Subject: [PATCH 07/10] Fix some HTML validation stuff --- decksite/templates/faqsbody.mustache | 2 +- decksite/templates/header.mustache | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/decksite/templates/faqsbody.mustache b/decksite/templates/faqsbody.mustache index 82ddff22f..9d1fcd540 100644 --- a/decksite/templates/faqsbody.mustache +++ b/decksite/templates/faqsbody.mustache @@ -36,7 +36,7 @@

    {{_ You play five matches per run. You can join the league at any time.}}

    {{_ To find a game sign up and then create a game in Constructed, Specialty, Freeform Tournament Practice with "Penny Dreadful League" as the comment.}}

    {{_ Top 8 finishers on each month's league leaderboard win credit with [Cardhoarder](https://cardhoarder.com/).}}

    -

    {{_ Current League}} +

    {{_ Current League}}

    {{_ More Info}}

    {{_ Sign Up}}

    diff --git a/decksite/templates/header.mustache b/decksite/templates/header.mustache index 2a3a77010..60e18a1ec 100644 --- a/decksite/templates/header.mustache +++ b/decksite/templates/header.mustache @@ -20,7 +20,7 @@ {{#oembed_url}} + title="Penny Dreadful Magic"> {{/oembed_url}} From d1d10bfcaee33760c224c897ecfddc43f1fcc018 Mon Sep 17 00:00:00 2001 From: Thomas David Baker Date: Wed, 15 May 2024 13:34:38 -0700 Subject: [PATCH 08/10] Add missing alt tag --- decksite/templates/language_switcher.mustache | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/decksite/templates/language_switcher.mustache b/decksite/templates/language_switcher.mustache index 3549d7a65..aa05db2b2 100644 --- a/decksite/templates/language_switcher.mustache +++ b/decksite/templates/language_switcher.mustache @@ -1,5 +1,5 @@
    - + Language Switcher