fix: pass diamond tier colors to card template #193

Merged
cal merged 1 commits from fix/diamond-tier-colors into main 2026-04-07 05:13:04 +00:00

View File

@ -143,6 +143,14 @@ def normalize_franchise(franchise: str) -> str:
return FRANCHISE_NORMALIZE.get(titled, titled)
TIER_DIAMOND_COLORS = {
1: "linear-gradient(135deg, #40b040 0%, #1a6b1a 50%, #145214 100%)",
2: "linear-gradient(135deg, #50a0e8 0%, #2070b0 50%, #185488 100%)",
3: "linear-gradient(135deg, #e85050 0%, #a82020 50%, #7e1818 100%)",
4: "linear-gradient(135deg, #a060d0 0%, #6b2d8e 50%, #50226a 100%)",
}
def resolve_refractor_tier(player_id: int, variant: int) -> int:
"""Determine the refractor tier (0-4) from a player's variant hash.
@ -809,6 +817,7 @@ async def get_animated_card(
else:
card_data["cardset_name"] = this_player.description
card_data["refractor_tier"] = refractor_tier
card_data["filled_bg"] = TIER_DIAMOND_COLORS.get(refractor_tier, "")
card_data["request"] = request
html_response = templates.TemplateResponse("player_card.html", card_data)
@ -845,6 +854,7 @@ async def get_animated_card(
else:
card_data["cardset_name"] = this_player.description
card_data["refractor_tier"] = refractor_tier
card_data["filled_bg"] = TIER_DIAMOND_COLORS.get(refractor_tier, "")
card_data["request"] = request
html_response = templates.TemplateResponse("player_card.html", card_data)
@ -944,6 +954,9 @@ async def get_batter_card(
card_data["refractor_tier"] = (
tier if tier is not None else resolve_refractor_tier(player_id, variant)
)
card_data["filled_bg"] = TIER_DIAMOND_COLORS.get(
card_data["refractor_tier"], ""
)
card_data["request"] = request
html_response = templates.TemplateResponse("player_card.html", card_data)
@ -984,6 +997,9 @@ async def get_batter_card(
card_data["refractor_tier"] = (
tier if tier is not None else resolve_refractor_tier(player_id, variant)
)
card_data["filled_bg"] = TIER_DIAMOND_COLORS.get(
card_data["refractor_tier"], ""
)
card_data["request"] = request
html_response = templates.TemplateResponse("player_card.html", card_data)