From b97ddde71c0e7ffda6bc36b51e0cc2ef09f24401 Mon Sep 17 00:00:00 2001 From: badbl0cks <4161747+badbl0cks@users.noreply.github.com> Date: Thu, 13 Mar 2025 15:48:26 -0700 Subject: [PATCH] fix card_multiselect filtering and quantity controls --- .gitignore | 1 + Dockerfile | 2 +- accounts/migrations/0001_initial.py | 4 +- cards/migrations/0001_initial.py | 13 +- cards/models.py | 11 + cards/templatetags/card_multiselect.py | 13 +- django_project/settings.py | 58 +- home/views.py | 13 +- requirements.txt | 1 + reset-db_make-migrations_seed-data.sh | 8 +- seed/0000_Site.json | 10 + seed/0005_TestUsers.json | 38 +- seed/0006_TestFriendCodes.json | 42 - seed/0006_TradeOffers.json | 1114 +++++++++++++++++ seed/0007_TestTradeOffers.json | 112 -- seed/0008_TestOfferWantCard.json | 632 ---------- seed/0009_TestOfferHaveCard.json | 632 ---------- static/css/base.css | 132 +- theme/templates/_messages.html | 9 + theme/templates/account/account_inactive.html | 2 +- .../confirm_email_verification_code.html | 2 +- .../templates/account/confirm_login_code.html | 2 +- .../account/confirm_password_reset_code.html | 2 +- .../confirm_phone_verification_code.html | 2 +- theme/templates/account/email.html | 4 +- theme/templates/account/email_change.html | 6 +- theme/templates/account/email_confirm.html | 6 +- theme/templates/account/login.html | 4 +- theme/templates/account/password_reset.html | 2 +- theme/templates/account/reauthenticate.html | 4 +- .../templates/account/request_login_code.html | 4 +- theme/templates/account/signup.html | 10 +- .../templates/account/signup_by_passkey.html | 4 +- theme/templates/account/signup_closed.html | 2 +- .../templates/account/verification_sent.html | 2 +- .../account/verified_email_required.html | 6 +- theme/templates/base.html | 25 +- .../friend_codes/list_friend_codes.html | 19 +- theme/templates/home/home.html | 19 +- .../templates/trades/_friend_code_select.html | 40 +- .../trades/trade_offer_all_list.html | 26 +- .../templates/trades/trade_offer_create.html | 39 +- .../templates/trades/trade_offer_delete.html | 8 +- .../templates/trades/trade_offer_my_list.html | 129 +- .../templates/trades/trade_offer_update.html | 4 +- theme/templatetags/card_multiselect.html | 221 ++-- theme/templatetags/trade_offer.html | 114 +- trades/admin.py | 7 +- trades/migrations/0001_initial.py | 16 +- trades/models.py | 254 +--- trades/signals.py | 62 +- trades/views.py | 65 +- 52 files changed, 1689 insertions(+), 2268 deletions(-) create mode 100644 seed/0000_Site.json delete mode 100644 seed/0006_TestFriendCodes.json create mode 100644 seed/0006_TradeOffers.json delete mode 100644 seed/0007_TestTradeOffers.json delete mode 100644 seed/0008_TestOfferWantCard.json delete mode 100644 seed/0009_TestOfferHaveCard.json create mode 100644 theme/templates/_messages.html diff --git a/.gitignore b/.gitignore index 6c4d423..a83fb25 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +.env.production # OSX # .DS_Store diff --git a/Dockerfile b/Dockerfile index 51e738b..6607bb6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,6 +19,7 @@ RUN set -ex && \ # Copy local project COPY . /code/ +COPY .env.production /code/.env ENV HOME=/code # Install NPM & node.js @@ -32,5 +33,4 @@ EXPOSE 8000 RUN python manage.py collectstatic --noinput # Use gunicorn on port 8000 -#CMD ["/bin/bash", "-c", "python manage.py collectstatic --noinput; gunicorn --bind :8000 --workers 2 django_project.wsgi"] CMD ["gunicorn", "--bind", ":8000", "--workers", "2", "django_project.wsgi"] diff --git a/accounts/migrations/0001_initial.py b/accounts/migrations/0001_initial.py index a5df58d..4b2ade7 100644 --- a/accounts/migrations/0001_initial.py +++ b/accounts/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 5.1.2 on 2025-03-09 05:08 +# Generated by Django 5.1.2 on 2025-03-13 01:46 import django.contrib.auth.models import django.contrib.auth.validators @@ -13,7 +13,7 @@ class Migration(migrations.Migration): initial = True dependencies = [ - ('auth', '0012_alter_user_first_name_max_length'), + ('auth', '0001_initial'), ] operations = [ diff --git a/cards/migrations/0001_initial.py b/cards/migrations/0001_initial.py index 2acc31b..47bfc0f 100644 --- a/cards/migrations/0001_initial.py +++ b/cards/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 5.1.2 on 2025-03-09 05:08 +# Generated by Django 5.1.2 on 2025-03-13 01:46 import django.db.models.deletion from django.db import migrations, models @@ -89,4 +89,15 @@ class Migration(migrations.Migration): name='rarity', field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='cards', to='cards.rarity'), ), + migrations.CreateModel( + name='RarityNameTranslation', + fields=[ + ('id', models.AutoField(primary_key=True, serialize=False)), + ('name', models.CharField(max_length=64)), + ('language', models.CharField(max_length=64)), + ('created_at', models.DateTimeField(auto_now_add=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('rarity', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='name_translations', to='cards.rarity')), + ], + ), ] diff --git a/cards/models.py b/cards/models.py index a762ac8..363fb59 100644 --- a/cards/models.py +++ b/cards/models.py @@ -22,6 +22,17 @@ class CardNameTranslation(models.Model): def __str__(self): return self.name +class RarityNameTranslation(models.Model): + id = models.AutoField(primary_key=True) + name = models.CharField(max_length=64) + rarity = models.ForeignKey("Rarity", on_delete=models.PROTECT, related_name='name_translations') + language = models.CharField(max_length=64) + created_at = models.DateTimeField(auto_now_add=True) + updated_at = models.DateTimeField(auto_now=True) + + def __str__(self): + return self.name + class CardSet(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=64) diff --git a/cards/templatetags/card_multiselect.py b/cards/templatetags/card_multiselect.py index 958fb0b..854b018 100644 --- a/cards/templatetags/card_multiselect.py +++ b/cards/templatetags/card_multiselect.py @@ -48,20 +48,13 @@ def card_multiselect(field_name, label, placeholder, card_filter=None, selected_ .prefetch_related("decks") ) - # Loop through available cards and set styling, plus attach pre‑selected quantity + # Loop through available cards and attach pre‑selected quantity for card in available_cards: - # decks = list(card.decks.all()) - # deck_count = len(decks) - # if deck_count == 1: - # card.style = f"background-color: {decks[0].hex_color}; color: white;" - # elif deck_count == 2: - # card.style = f"background: linear-gradient(to right, {decks[0].hex_color}, {decks[1].hex_color}); color: white;" - # elif deck_count >= 3: - # card.style = f"background: linear-gradient(to right, {decks[0].hex_color}, {decks[1].hex_color}, {decks[2].hex_color}); color: white;" - pk_str = str(card.pk) if pk_str in selected_cards: card.selected_quantity = selected_cards[pk_str] + else: + card.selected_quantity = 1 return { 'field_name': field_name, diff --git a/django_project/settings.py b/django_project/settings.py index 8478330..9534160 100644 --- a/django_project/settings.py +++ b/django_project/settings.py @@ -1,8 +1,17 @@ from pathlib import Path +import environ +import os + +env = environ.Env( + DEBUG=(bool, False) +) # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent +# Take environment variables from .env file +environ.Env.read_env(os.path.join(BASE_DIR, '.env')) + # Quick-start development settings - unsuitable for production # See https://docs.djangoproject.com/en/dev/howto/deployment/checklist/ @@ -15,7 +24,7 @@ RESEND_API_KEY = "re_BBXJWctP_8gb4iNpfaHuau7Na95mc3feu" # https://docs.djangoproject.com/en/dev/ref/settings/#debug # SECURITY WARNING: don't run with debug turned on in production! -DEBUG = True +DEBUG = env('DEBUG') # https://docs.djangoproject.com/en/dev/ref/settings/#allowed-hosts ALLOWED_HOSTS = ["localhost", "0.0.0.0", "127.0.0.1", "pkmntrade-club.fly.dev", "pkmntrade.club"] @@ -97,42 +106,24 @@ TEMPLATES = [ # https://docs.djangoproject.com/en/dev/ref/settings/#databases DATABASES = { - "local": { - "ENGINE": "django.db.backends.postgresql", - "NAME": "postgres", - "USER": "postgres", - "PASSWORD": "", - "HOST": "localhost", # set in docker-compose.yml - "PORT": 5432, # default postgres port - }, - "default": { - "ENGINE": "django.db.backends.postgresql", - "NAME": "dev", - "USER": "pocket_trade_owner", - "PASSWORD": "npg_f1lTpOX7Rnvb", - "HOST": "ep-cool-cake-a6zvgu85-pooler.us-west-2.aws.neon.tech", # set in docker-compose.yml - "PORT": 5432, # default postgres port - "OPTIONS": { - "sslmode": "require" - }, - } + 'default': env.db(), } # Password validation # https://docs.djangoproject.com/en/dev/ref/settings/#auth-password-validators AUTH_PASSWORD_VALIDATORS = [ - # { - # "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator", - # }, - # { - # "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator", - # }, - # { - # "NAME": "django.contrib.auth.password_validation.CommonPasswordValidator", - # }, - # { - # "NAME": "django.contrib.auth.password_validation.NumericPasswordValidator", - # }, + { + "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator", + }, + { + "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator", + }, + { + "NAME": "django.contrib.auth.password_validation.CommonPasswordValidator", + }, + { + "NAME": "django.contrib.auth.password_validation.NumericPasswordValidator", + }, ] @@ -228,8 +219,7 @@ ACCOUNT_SESSION_REMEMBER = True ACCOUNT_SIGNUP_PASSWORD_ENTER_TWICE = True ACCOUNT_AUTHENTICATION_METHOD = "username_email" ACCOUNT_EMAIL_REQUIRED = True -ACCOUNT_EMAIL_VERIFICATION = "mandatory" -#ACCOUNT_EMAIL_VERIFICATION = "none" +ACCOUNT_EMAIL_VERIFICATION = env('ACCOUNT_EMAIL_VERIFICATION') ACCOUNT_CHANGE_EMAIL = True ACCOUNT_UNIQUE_EMAIL = True ACCOUNT_LOGIN_BY_CODE_ENABLED = True diff --git a/home/views.py b/home/views.py index 4b1983e..0a3d4c9 100644 --- a/home/views.py +++ b/home/views.py @@ -54,17 +54,6 @@ class HomePageView(TemplateView): "acceptances" ) .select_related("initiated_by__user") - .annotate( - is_active=Case( - When( - Q(total_have_accepted__lt=F('total_have_quantity')) & - Q(total_want_accepted__lt=F('total_want_quantity')), - then=Value(True) - ), - default=Value(False), - output_field=BooleanField() - ) - ) ) return qs @@ -77,7 +66,7 @@ class HomePageView(TemplateView): .prefetch_related("decks") # Reuse base trade offer queryset for market stats - base_offer_qs = self.get_base_trade_offer_queryset().filter(manually_closed=False, is_active=True) + base_offer_qs = self.get_base_trade_offer_queryset().filter(is_closed=False) # Recent Offers recent_offers_qs = base_offer_qs.order_by("-created_at")[:10] diff --git a/requirements.txt b/requirements.txt index aaff3c1..0781862 100644 --- a/requirements.txt +++ b/requirements.txt @@ -13,6 +13,7 @@ django-crispy-forms==2.3 django-daisy==1.0.13 django-debug-toolbar==4.4.6 django-el-pagination==4.1.2 +django-environ==0.12.0 django-tailwind-4[reload]==0.1.4 django-widget-tweaks==1.5.0 gunicorn==23.0.0 diff --git a/reset-db_make-migrations_seed-data.sh b/reset-db_make-migrations_seed-data.sh index 4af0594..e1d4f31 100755 --- a/reset-db_make-migrations_seed-data.sh +++ b/reset-db_make-migrations_seed-data.sh @@ -14,13 +14,13 @@ echo "Waiting for the database to be ready..." sleep 10 echo "Running makemigrations..." -docker compose exec web bash -c "python manage.py makemigrations" +uv run python manage.py makemigrations echo "Running migrations..." -docker compose exec web bash -c "python manage.py migrate" +uv run python manage.py migrate echo "Loading seed data..." -docker compose exec web bash -c "python manage.py loaddata seed/0*" +uv run python manage.py loaddata seed/0* echo "Seeding default friend codes..." -docker compose exec web bash -c "python manage.py seed_default_friend_codes" \ No newline at end of file +uv run python manage.py seed_default_friend_codes \ No newline at end of file diff --git a/seed/0000_Site.json b/seed/0000_Site.json new file mode 100644 index 0000000..643c918 --- /dev/null +++ b/seed/0000_Site.json @@ -0,0 +1,10 @@ +[ + { + "model": "sites.site", + "pk": 1, + "fields": { + "domain": "pkmntrade.club", + "name": "PKMN Trade Club" + } + } + ] \ No newline at end of file diff --git a/seed/0005_TestUsers.json b/seed/0005_TestUsers.json index 2bfc9ab..9f5a9c2 100644 --- a/seed/0005_TestUsers.json +++ b/seed/0005_TestUsers.json @@ -3,16 +3,17 @@ "model": "accounts.customuser", "pk": 1, "fields": { - "password": "pbkdf2_sha256$870000$V4NrlZBJxsPJFIeGf2lrc3$tpkNJJtmZ9mE6i2FXE0tdk9MlL/CUmbcERLFgmp+x8s=", - "last_login": "2025-02-20T08:53:07.044Z", + "password": "pbkdf2_sha256$870000$f99EReOECF2LPne1JHADoy$pr/769omIyRNkDhaojgIIm8kZcAeFiR0DOLcUvbLlk4=", + "last_login": "2025-03-13T04:24:11.029Z", "is_superuser": true, - "username": "admin", + "username": "badblocks", "first_name": "", "last_name": "", "email": "rob@badblocks.email", "is_staff": true, "is_active": true, - "date_joined": "2025-02-20T08:31:16.678Z", + "date_joined": "2025-03-13T04:21:04.553Z", + "default_friend_code": 1, "groups": [], "user_permissions": [] } @@ -21,18 +22,39 @@ "model": "accounts.customuser", "pk": 2, "fields": { - "password": "pbkdf2_sha256$870000$V4NrlZBJxsPJFIeGf2lrc3$tpkNJJtmZ9mE6i2FXE0tdk9MlL/CUmbcERLFgmp+x8s=", - "last_login": "2025-02-20T09:01:59.008Z", + "password": "pbkdf2_sha256$870000$NxQDOyPzAvM3FgLL5z0SRy$JuET4f8HI55Oy1umkzg6WtjFVpYTt+UfpZWqPff4EO4=", + "last_login": "2025-03-13T04:52:57.949Z", "is_superuser": false, - "username": "test", + "username": "nathanward2016@gmail.com", "first_name": "", "last_name": "", "email": "nathanward2016@gmail.com", "is_staff": false, "is_active": true, - "date_joined": "2025-02-20T09:01:58.289Z", + "date_joined": "2025-03-13T04:52:28.482Z", + "default_friend_code": 2, "groups": [], "user_permissions": [] } +}, +{ + "model": "accounts.friendcode", + "pk": 1, + "fields": { + "friend_code": "9167-8051-9691-8032", + "user": 1, + "created_at": "2025-03-13T04:21:05.166Z", + "updated_at": "2025-03-13T04:21:05.166Z" + } +}, +{ + "model": "accounts.friendcode", + "pk": 2, + "fields": { + "friend_code": "1234-2938-7848-7636", + "user": 2, + "created_at": "2025-03-13T04:52:29.166Z", + "updated_at": "2025-03-13T04:52:29.166Z" + } } ] diff --git a/seed/0006_TestFriendCodes.json b/seed/0006_TestFriendCodes.json deleted file mode 100644 index b1011a7..0000000 --- a/seed/0006_TestFriendCodes.json +++ /dev/null @@ -1,42 +0,0 @@ -[ -{ - "model": "accounts.friendcode", - "pk": 1, - "fields": { - "friend_code": "3595-6375-9151-8459", - "user": 1, - "created_at": "2025-02-20T08:57:33.268Z", - "updated_at": "2025-02-20T08:57:33.268Z" - } -}, -{ - "model": "accounts.friendcode", - "pk": 2, - "fields": { - "friend_code": "4863-0754-2764-1890", - "user": 1, - "created_at": "2025-02-20T08:58:11.912Z", - "updated_at": "2025-02-20T08:58:11.912Z" - } -}, -{ - "model": "accounts.friendcode", - "pk": 3, - "fields": { - "friend_code": "1020-0576-9371-6042", - "user": 2, - "created_at": "2025-02-20T08:57:33.268Z", - "updated_at": "2025-02-20T08:57:33.268Z" - } -}, -{ - "model": "accounts.friendcode", - "pk": 4, - "fields": { - "friend_code": "8358-5883-3807-6654", - "user": 2, - "created_at": "2025-02-20T08:58:11.912Z", - "updated_at": "2025-02-20T08:58:11.912Z" - } -} -] diff --git a/seed/0006_TradeOffers.json b/seed/0006_TradeOffers.json new file mode 100644 index 0000000..06dd6f6 --- /dev/null +++ b/seed/0006_TradeOffers.json @@ -0,0 +1,1114 @@ +[ +{ + "model": "trades.tradeoffer", + "pk": 1, + "fields": { + "is_closed": false, + "hash": "8775ce1cz", + "initiated_by": 1, + "created_at": "2025-03-13T04:38:41.385Z", + "updated_at": "2025-03-13T04:38:41.385Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 2, + "fields": { + "is_closed": false, + "hash": "daa6300dz", + "initiated_by": 1, + "created_at": "2025-03-13T04:39:25.777Z", + "updated_at": "2025-03-13T04:39:25.777Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 3, + "fields": { + "is_closed": false, + "hash": "e6cdbdf8z", + "initiated_by": 1, + "created_at": "2025-03-13T04:40:07.727Z", + "updated_at": "2025-03-13T04:40:07.727Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 4, + "fields": { + "is_closed": false, + "hash": "a975713ez", + "initiated_by": 1, + "created_at": "2025-03-13T04:40:29.957Z", + "updated_at": "2025-03-13T04:40:29.957Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 5, + "fields": { + "is_closed": false, + "hash": "37dc0786z", + "initiated_by": 1, + "created_at": "2025-03-13T04:41:00.359Z", + "updated_at": "2025-03-13T04:41:00.359Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 6, + "fields": { + "is_closed": false, + "hash": "f10208bdz", + "initiated_by": 1, + "created_at": "2025-03-13T04:41:31.231Z", + "updated_at": "2025-03-13T04:41:31.231Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 7, + "fields": { + "is_closed": false, + "hash": "88963192z", + "initiated_by": 1, + "created_at": "2025-03-13T04:43:07.737Z", + "updated_at": "2025-03-13T04:43:07.737Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 8, + "fields": { + "is_closed": false, + "hash": "31a7aee8z", + "initiated_by": 1, + "created_at": "2025-03-13T04:44:05.193Z", + "updated_at": "2025-03-13T04:44:05.193Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 9, + "fields": { + "is_closed": false, + "hash": "7a79e1f7z", + "initiated_by": 1, + "created_at": "2025-03-13T04:44:35.634Z", + "updated_at": "2025-03-13T04:44:35.634Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 10, + "fields": { + "is_closed": false, + "hash": "a465a255z", + "initiated_by": 1, + "created_at": "2025-03-13T04:45:02.040Z", + "updated_at": "2025-03-13T04:45:02.040Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 11, + "fields": { + "is_closed": false, + "hash": "9d871edbz", + "initiated_by": 1, + "created_at": "2025-03-13T04:45:34.815Z", + "updated_at": "2025-03-13T04:45:34.815Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 12, + "fields": { + "is_closed": false, + "hash": "32b34a89z", + "initiated_by": 2, + "created_at": "2025-03-13T04:54:17.809Z", + "updated_at": "2025-03-13T04:54:17.809Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 13, + "fields": { + "is_closed": false, + "hash": "f747edbdz", + "initiated_by": 2, + "created_at": "2025-03-13T04:55:33.344Z", + "updated_at": "2025-03-13T04:55:33.344Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 14, + "fields": { + "is_closed": false, + "hash": "9a13333dz", + "initiated_by": 2, + "created_at": "2025-03-13T04:58:02.062Z", + "updated_at": "2025-03-13T04:58:02.062Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 15, + "fields": { + "is_closed": false, + "hash": "5b0d6871z", + "initiated_by": 2, + "created_at": "2025-03-13T04:59:11.177Z", + "updated_at": "2025-03-13T04:59:11.177Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 16, + "fields": { + "is_closed": false, + "hash": "f012360cz", + "initiated_by": 2, + "created_at": "2025-03-13T05:00:49.530Z", + "updated_at": "2025-03-13T05:00:49.530Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 17, + "fields": { + "is_closed": false, + "hash": "a6e927eaz", + "initiated_by": 2, + "created_at": "2025-03-13T05:00:53.037Z", + "updated_at": "2025-03-13T05:00:53.037Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 18, + "fields": { + "is_closed": false, + "hash": "a5ec89b7z", + "initiated_by": 2, + "created_at": "2025-03-13T05:02:36.926Z", + "updated_at": "2025-03-13T05:02:36.926Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 19, + "fields": { + "is_closed": false, + "hash": "ebf6a095z", + "initiated_by": 2, + "created_at": "2025-03-13T05:03:39.241Z", + "updated_at": "2025-03-13T05:03:39.241Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 20, + "fields": { + "is_closed": false, + "hash": "c7541b41z", + "initiated_by": 2, + "created_at": "2025-03-13T05:05:22.304Z", + "updated_at": "2025-03-13T05:05:22.304Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 21, + "fields": { + "is_closed": false, + "hash": "2b97019dz", + "initiated_by": 2, + "created_at": "2025-03-13T05:08:31.437Z", + "updated_at": "2025-03-13T05:08:31.437Z" + } +}, +{ + "model": "trades.tradeoffer", + "pk": 22, + "fields": { + "is_closed": false, + "hash": "5d90ca78z", + "initiated_by": 2, + "created_at": "2025-03-13T05:09:40.853Z", + "updated_at": "2025-03-13T05:09:40.853Z" + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 1, + "fields": { + "trade_offer": 1, + "card": 417, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 2, + "fields": { + "trade_offer": 1, + "card": 321, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 3, + "fields": { + "trade_offer": 2, + "card": 115, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 4, + "fields": { + "trade_offer": 2, + "card": 508, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 5, + "fields": { + "trade_offer": 3, + "card": 210, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 6, + "fields": { + "trade_offer": 3, + "card": 55, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 7, + "fields": { + "trade_offer": 4, + "card": 41, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 8, + "fields": { + "trade_offer": 4, + "card": 491, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 9, + "fields": { + "trade_offer": 5, + "card": 549, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 10, + "fields": { + "trade_offer": 5, + "card": 227, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 11, + "fields": { + "trade_offer": 6, + "card": 115, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 12, + "fields": { + "trade_offer": 6, + "card": 507, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 13, + "fields": { + "trade_offer": 7, + "card": 353, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 14, + "fields": { + "trade_offer": 7, + "card": 26, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 15, + "fields": { + "trade_offer": 8, + "card": 35, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 16, + "fields": { + "trade_offer": 8, + "card": 300, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 17, + "fields": { + "trade_offer": 9, + "card": 36, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 18, + "fields": { + "trade_offer": 9, + "card": 379, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 19, + "fields": { + "trade_offer": 10, + "card": 236, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 20, + "fields": { + "trade_offer": 10, + "card": 359, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 21, + "fields": { + "trade_offer": 11, + "card": 41, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 22, + "fields": { + "trade_offer": 11, + "card": 123, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 23, + "fields": { + "trade_offer": 12, + "card": 115, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 24, + "fields": { + "trade_offer": 13, + "card": 18, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 25, + "fields": { + "trade_offer": 13, + "card": 479, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 26, + "fields": { + "trade_offer": 14, + "card": 33, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 27, + "fields": { + "trade_offer": 14, + "card": 70, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 28, + "fields": { + "trade_offer": 15, + "card": 115, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 29, + "fields": { + "trade_offer": 15, + "card": 502, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 30, + "fields": { + "trade_offer": 15, + "card": 1, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 31, + "fields": { + "trade_offer": 16, + "card": 417, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 32, + "fields": { + "trade_offer": 16, + "card": 460, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 33, + "fields": { + "trade_offer": 17, + "card": 417, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 34, + "fields": { + "trade_offer": 17, + "card": 460, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 35, + "fields": { + "trade_offer": 18, + "card": 524, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 36, + "fields": { + "trade_offer": 19, + "card": 449, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 37, + "fields": { + "trade_offer": 19, + "card": 353, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 38, + "fields": { + "trade_offer": 20, + "card": 165, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 39, + "fields": { + "trade_offer": 20, + "card": 213, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 40, + "fields": { + "trade_offer": 20, + "card": 100, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 41, + "fields": { + "trade_offer": 21, + "card": 353, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 42, + "fields": { + "trade_offer": 21, + "card": 489, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferhavecard", + "pk": 43, + "fields": { + "trade_offer": 22, + "card": 489, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 1, + "fields": { + "trade_offer": 1, + "card": 221, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 2, + "fields": { + "trade_offer": 1, + "card": 224, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 3, + "fields": { + "trade_offer": 2, + "card": 517, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 4, + "fields": { + "trade_offer": 2, + "card": 5, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 5, + "fields": { + "trade_offer": 3, + "card": 22, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 6, + "fields": { + "trade_offer": 3, + "card": 331, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 7, + "fields": { + "trade_offer": 4, + "card": 23, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 8, + "fields": { + "trade_offer": 4, + "card": 304, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 9, + "fields": { + "trade_offer": 5, + "card": 530, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 10, + "fields": { + "trade_offer": 5, + "card": 359, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 11, + "fields": { + "trade_offer": 6, + "card": 503, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 12, + "fields": { + "trade_offer": 6, + "card": 27, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 13, + "fields": { + "trade_offer": 7, + "card": 165, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 14, + "fields": { + "trade_offer": 7, + "card": 519, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 15, + "fields": { + "trade_offer": 7, + "card": 30, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 16, + "fields": { + "trade_offer": 8, + "card": 396, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 17, + "fields": { + "trade_offer": 8, + "card": 80, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 18, + "fields": { + "trade_offer": 9, + "card": 304, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 19, + "fields": { + "trade_offer": 9, + "card": 471, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 20, + "fields": { + "trade_offer": 10, + "card": 227, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 21, + "fields": { + "trade_offer": 10, + "card": 530, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 22, + "fields": { + "trade_offer": 11, + "card": 289, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 23, + "fields": { + "trade_offer": 11, + "card": 467, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 24, + "fields": { + "trade_offer": 12, + "card": 510, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 25, + "fields": { + "trade_offer": 13, + "card": 517, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 26, + "fields": { + "trade_offer": 13, + "card": 107, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 27, + "fields": { + "trade_offer": 14, + "card": 57, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 28, + "fields": { + "trade_offer": 14, + "card": 172, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 29, + "fields": { + "trade_offer": 15, + "card": 27, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 30, + "fields": { + "trade_offer": 15, + "card": 151, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 31, + "fields": { + "trade_offer": 15, + "card": 124, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 32, + "fields": { + "trade_offer": 16, + "card": 148, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 33, + "fields": { + "trade_offer": 16, + "card": 38, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 34, + "fields": { + "trade_offer": 17, + "card": 148, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 35, + "fields": { + "trade_offer": 17, + "card": 38, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 36, + "fields": { + "trade_offer": 18, + "card": 106, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 37, + "fields": { + "trade_offer": 19, + "card": 295, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 38, + "fields": { + "trade_offer": 19, + "card": 12, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 39, + "fields": { + "trade_offer": 20, + "card": 321, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 40, + "fields": { + "trade_offer": 20, + "card": 184, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 41, + "fields": { + "trade_offer": 20, + "card": 427, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 42, + "fields": { + "trade_offer": 21, + "card": 321, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 43, + "fields": { + "trade_offer": 21, + "card": 184, + "quantity": 1, + "qty_accepted": 0 + } +}, +{ + "model": "trades.tradeofferwantcard", + "pk": 44, + "fields": { + "trade_offer": 22, + "card": 449, + "quantity": 1, + "qty_accepted": 0 + } +} +] diff --git a/seed/0007_TestTradeOffers.json b/seed/0007_TestTradeOffers.json deleted file mode 100644 index 4b7c1f5..0000000 --- a/seed/0007_TestTradeOffers.json +++ /dev/null @@ -1,112 +0,0 @@ -[ -{ - "model": "trades.tradeoffer", - "pk": 1, - "fields": { - "manually_closed": false, - "hash": "c4ca4238z", - "initiated_by": 3, - "created_at": "2025-03-07T00:21:33.089Z", - "updated_at": "2025-03-07T00:21:33.089Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 2, - "fields": { - "manually_closed": false, - "hash": "c81e728dz", - "initiated_by": 4, - "created_at": "2025-03-07T00:24:21.664Z", - "updated_at": "2025-03-07T00:24:21.664Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 3, - "fields": { - "manually_closed": false, - "hash": "eccbc87ez", - "initiated_by": 3, - "created_at": "2025-03-07T00:27:36.345Z", - "updated_at": "2025-03-07T00:27:36.345Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 4, - "fields": { - "manually_closed": false, - "hash": "a87ff679z", - "initiated_by": 4, - "created_at": "2025-03-07T00:28:57.655Z", - "updated_at": "2025-03-07T00:28:57.655Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 5, - "fields": { - "manually_closed": false, - "hash": "e4da3b7fz", - "initiated_by": 4, - "created_at": "2025-03-07T00:30:53.491Z", - "updated_at": "2025-03-07T00:30:53.491Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 6, - "fields": { - "manually_closed": false, - "hash": "1679091cz", - "initiated_by": 1, - "created_at": "2025-03-07T00:21:33.089Z", - "updated_at": "2025-03-07T00:21:33.089Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 7, - "fields": { - "manually_closed": false, - "hash": "8f14e45fz", - "initiated_by": 2, - "created_at": "2025-03-07T00:24:21.664Z", - "updated_at": "2025-03-07T00:24:21.664Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 8, - "fields": { - "manually_closed": false, - "hash": "c9f0f895z", - "initiated_by": 1, - "created_at": "2025-03-07T00:27:36.345Z", - "updated_at": "2025-03-07T00:27:36.345Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 9, - "fields": { - "manually_closed": false, - "hash": "45c48ccez", - "initiated_by": 2, - "created_at": "2025-03-07T00:28:57.655Z", - "updated_at": "2025-03-07T00:28:57.655Z" - } -}, -{ - "model": "trades.tradeoffer", - "pk": 10, - "fields": { - "manually_closed": false, - "hash": "d3d94468z", - "initiated_by": 1, - "created_at": "2025-03-07T00:30:53.491Z", - "updated_at": "2025-03-07T00:30:53.491Z" - } -} -] diff --git a/seed/0008_TestOfferWantCard.json b/seed/0008_TestOfferWantCard.json deleted file mode 100644 index 9ee1c92..0000000 --- a/seed/0008_TestOfferWantCard.json +++ /dev/null @@ -1,632 +0,0 @@ -[ -{ - "model": "trades.tradeofferwantcard", - "pk": 1, - "fields": { - "trade_offer": 1, - "card": 113, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 2, - "fields": { - "trade_offer": 1, - "card": 479, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 3, - "fields": { - "trade_offer": 1, - "card": 206, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 4, - "fields": { - "trade_offer": 1, - "card": 414, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 5, - "fields": { - "trade_offer": 1, - "card": 329, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 6, - "fields": { - "trade_offer": 1, - "card": 395, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 7, - "fields": { - "trade_offer": 1, - "card": 42, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 8, - "fields": { - "trade_offer": 1, - "card": 8, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 9, - "fields": { - "trade_offer": 2, - "card": 165, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 10, - "fields": { - "trade_offer": 2, - "card": 65, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 11, - "fields": { - "trade_offer": 2, - "card": 309, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 12, - "fields": { - "trade_offer": 2, - "card": 219, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 13, - "fields": { - "trade_offer": 2, - "card": 413, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 14, - "fields": { - "trade_offer": 2, - "card": 173, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 15, - "fields": { - "trade_offer": 2, - "card": 469, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 16, - "fields": { - "trade_offer": 2, - "card": 424, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 17, - "fields": { - "trade_offer": 3, - "card": 394, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 18, - "fields": { - "trade_offer": 3, - "card": 437, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 19, - "fields": { - "trade_offer": 3, - "card": 384, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 20, - "fields": { - "trade_offer": 3, - "card": 305, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 21, - "fields": { - "trade_offer": 3, - "card": 13, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 22, - "fields": { - "trade_offer": 3, - "card": 177, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 23, - "fields": { - "trade_offer": 3, - "card": 103, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 24, - "fields": { - "trade_offer": 4, - "card": 345, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 25, - "fields": { - "trade_offer": 4, - "card": 76, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 26, - "fields": { - "trade_offer": 4, - "card": 4, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 27, - "fields": { - "trade_offer": 4, - "card": 471, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 28, - "fields": { - "trade_offer": 4, - "card": 379, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 29, - "fields": { - "trade_offer": 4, - "card": 104, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 30, - "fields": { - "trade_offer": 5, - "card": 230, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 31, - "fields": { - "trade_offer": 5, - "card": 529, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 32, - "fields": { - "trade_offer": 5, - "card": 540, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 33, - "fields": { - "trade_offer": 5, - "card": 239, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 34, - "fields": { - "trade_offer": 5, - "card": 248, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 35, - "fields": { - "trade_offer": 5, - "card": 355, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 36, - "fields": { - "trade_offer": 6, - "card": 115, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 37, - "fields": { - "trade_offer": 6, - "card": 502, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 38, - "fields": { - "trade_offer": 6, - "card": 517, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 39, - "fields": { - "trade_offer": 6, - "card": 105, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 40, - "fields": { - "trade_offer": 6, - "card": 151, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 41, - "fields": { - "trade_offer": 6, - "card": 442, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 42, - "fields": { - "trade_offer": 6, - "card": 287, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 43, - "fields": { - "trade_offer": 6, - "card": 194, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 44, - "fields": { - "trade_offer": 7, - "card": 417, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 45, - "fields": { - "trade_offer": 7, - "card": 321, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 46, - "fields": { - "trade_offer": 7, - "card": 34, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 47, - "fields": { - "trade_offer": 7, - "card": 524, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 48, - "fields": { - "trade_offer": 7, - "card": 108, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 49, - "fields": { - "trade_offer": 7, - "card": 30, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 50, - "fields": { - "trade_offer": 7, - "card": 431, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 51, - "fields": { - "trade_offer": 7, - "card": 150, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 52, - "fields": { - "trade_offer": 8, - "card": 210, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 53, - "fields": { - "trade_offer": 8, - "card": 117, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 54, - "fields": { - "trade_offer": 8, - "card": 40, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 55, - "fields": { - "trade_offer": 8, - "card": 486, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 56, - "fields": { - "trade_offer": 8, - "card": 481, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 57, - "fields": { - "trade_offer": 8, - "card": 425, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 58, - "fields": { - "trade_offer": 8, - "card": 300, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 59, - "fields": { - "trade_offer": 9, - "card": 332, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 60, - "fields": { - "trade_offer": 9, - "card": 41, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 61, - "fields": { - "trade_offer": 9, - "card": 84, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 62, - "fields": { - "trade_offer": 9, - "card": 36, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 63, - "fields": { - "trade_offer": 9, - "card": 482, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 64, - "fields": { - "trade_offer": 9, - "card": 401, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 65, - "fields": { - "trade_offer": 10, - "card": 236, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 66, - "fields": { - "trade_offer": 10, - "card": 549, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 67, - "fields": { - "trade_offer": 10, - "card": 227, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 68, - "fields": { - "trade_offer": 10, - "card": 530, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 69, - "fields": { - "trade_offer": 10, - "card": 359, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferwantcard", - "pk": 70, - "fields": { - "trade_offer": 10, - "card": 238, - "quantity": 1 - } -} -] diff --git a/seed/0009_TestOfferHaveCard.json b/seed/0009_TestOfferHaveCard.json deleted file mode 100644 index 05fa25d..0000000 --- a/seed/0009_TestOfferHaveCard.json +++ /dev/null @@ -1,632 +0,0 @@ -[ -{ - "model": "trades.tradeofferhavecard", - "pk": 9, - "fields": { - "trade_offer": 1, - "card": 115, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 2, - "fields": { - "trade_offer": 1, - "card": 502, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 3, - "fields": { - "trade_offer": 1, - "card": 517, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 4, - "fields": { - "trade_offer": 1, - "card": 105, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 5, - "fields": { - "trade_offer": 1, - "card": 151, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 6, - "fields": { - "trade_offer": 1, - "card": 442, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 7, - "fields": { - "trade_offer": 1, - "card": 287, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 8, - "fields": { - "trade_offer": 1, - "card": 194, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 1, - "fields": { - "trade_offer": 2, - "card": 417, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 10, - "fields": { - "trade_offer": 2, - "card": 321, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 11, - "fields": { - "trade_offer": 2, - "card": 34, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 12, - "fields": { - "trade_offer": 2, - "card": 524, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 13, - "fields": { - "trade_offer": 2, - "card": 108, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 14, - "fields": { - "trade_offer": 2, - "card": 30, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 15, - "fields": { - "trade_offer": 2, - "card": 431, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 16, - "fields": { - "trade_offer": 2, - "card": 150, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 17, - "fields": { - "trade_offer": 3, - "card": 210, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 18, - "fields": { - "trade_offer": 3, - "card": 117, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 19, - "fields": { - "trade_offer": 3, - "card": 40, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 20, - "fields": { - "trade_offer": 3, - "card": 486, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 21, - "fields": { - "trade_offer": 3, - "card": 481, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 22, - "fields": { - "trade_offer": 3, - "card": 425, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 23, - "fields": { - "trade_offer": 3, - "card": 300, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 24, - "fields": { - "trade_offer": 4, - "card": 332, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 25, - "fields": { - "trade_offer": 4, - "card": 41, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 26, - "fields": { - "trade_offer": 4, - "card": 84, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 27, - "fields": { - "trade_offer": 4, - "card": 36, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 28, - "fields": { - "trade_offer": 4, - "card": 482, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 29, - "fields": { - "trade_offer": 4, - "card": 401, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 30, - "fields": { - "trade_offer": 5, - "card": 236, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 31, - "fields": { - "trade_offer": 5, - "card": 549, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 32, - "fields": { - "trade_offer": 5, - "card": 227, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 33, - "fields": { - "trade_offer": 5, - "card": 530, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 34, - "fields": { - "trade_offer": 5, - "card": 359, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 35, - "fields": { - "trade_offer": 5, - "card": 238, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 36, - "fields": { - "trade_offer": 6, - "card": 113, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 37, - "fields": { - "trade_offer": 6, - "card": 479, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 38, - "fields": { - "trade_offer": 6, - "card": 206, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 39, - "fields": { - "trade_offer": 6, - "card": 414, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 40, - "fields": { - "trade_offer": 6, - "card": 329, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 41, - "fields": { - "trade_offer": 6, - "card": 395, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 42, - "fields": { - "trade_offer": 6, - "card": 42, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 43, - "fields": { - "trade_offer": 6, - "card": 8, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 44, - "fields": { - "trade_offer": 7, - "card": 165, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 45, - "fields": { - "trade_offer": 7, - "card": 65, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 46, - "fields": { - "trade_offer": 7, - "card": 309, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 47, - "fields": { - "trade_offer": 7, - "card": 219, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 48, - "fields": { - "trade_offer": 7, - "card": 413, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 49, - "fields": { - "trade_offer": 7, - "card": 173, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 50, - "fields": { - "trade_offer": 7, - "card": 469, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 51, - "fields": { - "trade_offer": 7, - "card": 424, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 52, - "fields": { - "trade_offer": 8, - "card": 394, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 53, - "fields": { - "trade_offer": 8, - "card": 437, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 54, - "fields": { - "trade_offer": 8, - "card": 384, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 55, - "fields": { - "trade_offer": 8, - "card": 305, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 56, - "fields": { - "trade_offer": 8, - "card": 13, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 57, - "fields": { - "trade_offer": 8, - "card": 177, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 58, - "fields": { - "trade_offer": 8, - "card": 103, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 59, - "fields": { - "trade_offer": 9, - "card": 345, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 60, - "fields": { - "trade_offer": 9, - "card": 76, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 61, - "fields": { - "trade_offer": 9, - "card": 4, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 62, - "fields": { - "trade_offer": 9, - "card": 471, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 63, - "fields": { - "trade_offer": 9, - "card": 379, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 64, - "fields": { - "trade_offer": 9, - "card": 104, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 65, - "fields": { - "trade_offer": 10, - "card": 230, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 66, - "fields": { - "trade_offer": 10, - "card": 529, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 67, - "fields": { - "trade_offer": 10, - "card": 540, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 68, - "fields": { - "trade_offer": 10, - "card": 239, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 69, - "fields": { - "trade_offer": 10, - "card": 248, - "quantity": 1 - } -}, -{ - "model": "trades.tradeofferhavecard", - "pk": 70, - "fields": { - "trade_offer": 10, - "card": 355, - "quantity": 1 - } -} -] diff --git a/static/css/base.css b/static/css/base.css index 5ec6223..3ab72c8 100644 --- a/static/css/base.css +++ b/static/css/base.css @@ -1,109 +1,49 @@ -/* /* Helper classes --------------------------------------------------- */ -/* .min-width-fit-content { - min-width: fit-content; -} */ - -/* Sticky footer styles --------------------------------------------------- */ -/* html { - position: relative; - min-height: 100%; - font-size: 14px; +.choices.is-disabled .choices__inner, +.choices.is-disabled .choices__input { + background-color: var(--color-neutral); } -@media (min-width: 768px) { - html { - font-size: 16px; - } +.choices[data-type*=select-one] .choices__input { + border-bottom: 1px solid var(--btn-shadow); + background-color: var(--color-base-100); } - -body { - margin-bottom: 60px; /* Margin bottom by footer height +.choices[data-type*=select-one] .choices__button:focus { + box-shadow: 0 0 0 2px #005F75; } - -.container { - max-width: 960px; +.choices__inner { + background-color: var(--color-base-100); + border: 1px solid var(--btn-shadow); } - -.pricing-header { - max-width: 700px; +.is-focused .choices__inner, .is-open .choices__inner { + border-color: var(--btn-shadow); } - -.footer { - position: absolute; - bottom: 0; - width: 100%; - height: 60px; /* Set the fixed height of the footer here - line-height: 60px; /* Vertically center the text there - background-color: #f5f5f5; -} */ -/* Trade Offer --------------------------------------------------- */ -.trade-offer-grid { - display: grid; - grid-template-columns: 1fr 1fr; - gap: 1rem; +.choices__list--multiple .choices__item { + background-color: var(--color-base-100); + border: 1px solid var(--btn-shadow); + color: var(--color-primary); } - -.trade-offer-cell { - display: flex; - flex-direction: column; +.choices__list--multiple .choices__item.is-highlighted { + background-color: var(--color-base-100); + border: 1px solid var(--btn-shadow); } - -.trade-offer-header { - display: flex; - align-items: center; - justify-content: space-between; - margin-bottom: 0.5rem; +.is-disabled .choices__list--multiple .choices__item { + background-color: var(--color-neutral); + border: 1px solid var(--btn-shadow); } - -.trade-offer-header .avatar { - width: 40px; - height: 40px; - flex-shrink: 0; - border-radius: 50%; - overflow: hidden; +.choices__list--dropdown, .choices__list[aria-expanded] { + background-color: var(--color-base-100); + border: 1px solid var(--btn-shadow); } - -.trade-offer-cards { - display: grid; - grid-template-columns: 1fr; - gap: 0.5rem; +.is-open .choices__list--dropdown, .is-open .choices__list[aria-expanded] { + border-color: var(--btn-shadow); } - -.bg-trade-offer { - background: linear-gradient(to right, var(--bs-gray-400) 50%, var(--bs-white) 50%); +.choices__list--dropdown .choices__item--selectable.is-highlighted, .choices__list[aria-expanded] .choices__item--selectable.is-highlighted { + background-color: var(--color-base-100); + border: 1px solid var(--btn-shadow); } - -/* Card Badge --------------------------------------------------- */ -/* Responsive: On narrow viewports, stack the Has and Wants sections */ -@media (max-width: 576px) { - .trade-offer-grid { - grid-template-columns: 1fr; - } +.choices__heading { + border-bottom: 1px solid var(--btn-shadow); + color: var(--color-neutral); } - -/* Fix for the remove item button */ -button.select2-selection__choice__remove { - height: 100%; -} - -/* Trade Offer Card Body with Vertical Separator --------------------------------------------------- */ -.trade-offer-body { - position: relative; /* Required for the absolute separator */ - background-color: var(--bs-white); /* Use a single background color */ -} - -.trade-offer-body::before { - content: ""; - position: absolute; - left: 50%; /* Centered horizontally */ - transform: translateX(-50%); - top: 1rem; /* Gap from the top */ - bottom: 1rem; /* Gap from the bottom */ - width: 1px; /* The thickness of the separator */ - background-color: var(--bs-gray-300); /* Color for the separator */ - z-index: 1; +.choices__input { + background-color: var(--color-base-100); } \ No newline at end of file diff --git a/theme/templates/_messages.html b/theme/templates/_messages.html new file mode 100644 index 0000000..a6c9c6f --- /dev/null +++ b/theme/templates/_messages.html @@ -0,0 +1,9 @@ +{% if messages %} +
+
{% trans "This account is inactive." %}
+
{% trans "The following email addresses are associated with your account:" %}
{% url 'account_email' as email_url %} @@ -46,7 +46,7 @@