added default Earthman 108-card tarot deck, 78-card Minchiate Fiorentine deck, admin tests for each; DeckVariant model governs deck toggle; ran new migrations for apps.epic, apps.lyric; seeded DeckVariant migration to ensure Earthman is default deck; added min. tarot url; most new FTs passing

This commit is contained in:
Disco DeDisco
2026-03-24 21:07:01 -04:00
parent 11c85d56d1
commit 588358a20f
12 changed files with 1005 additions and 3 deletions

View File

@@ -37,6 +37,10 @@ class User(AbstractBaseUser):
"Token", null=True, blank=True,
on_delete=models.SET_NULL, related_name="+",
)
equipped_deck = models.ForeignKey(
"epic.DeckVariant", null=True, blank=True,
on_delete=models.SET_NULL, related_name="+",
)
is_staff = models.BooleanField(default=False)
is_superuser = models.BooleanField(default=False)
@@ -155,6 +159,7 @@ class PaymentMethod(models.Model):
def create_wallet_and_tokens(sender, instance, created, **kwargs):
if not created:
return
from apps.epic.models import DeckVariant
Wallet.objects.create(user=instance, writs=144)
coin = Token.objects.create(user=instance, token_type=Token.COIN)
Token.objects.create(
@@ -167,4 +172,6 @@ def create_wallet_and_tokens(sender, instance, created, **kwargs):
instance.equipped_trinket = pass_token
else:
instance.equipped_trinket = coin
instance.save(update_fields=['equipped_trinket'])
earthman = DeckVariant.objects.filter(slug="earthman").first()
instance.equipped_deck = earthman
instance.save(update_fields=['equipped_trinket', 'equipped_deck'])