Add standardized HTMX conventions, interaction patterns, and migration guide for ThrillWiki UX

This commit is contained in:
pacnpal
2025-12-22 16:56:27 -05:00
parent 2e35f8c5d9
commit ae31e889d7
144 changed files with 25792 additions and 4440 deletions

View File

@@ -360,3 +360,58 @@ class TestScenarios:
reviews = [ParkReviewFactory(park=park, user=user) for user in users]
return {"park": park, "users": users, "reviews": reviews}
class CloudflareImageFactory(DjangoModelFactory):
"""Factory for creating CloudflareImage instances."""
class Meta:
model = "django_cloudflareimages_toolkit.CloudflareImage"
cloudflare_id = factory.Sequence(lambda n: f"cf-image-{n}")
status = "uploaded"
upload_url = factory.Faker("url")
width = fuzzy.FuzzyInteger(100, 1920)
height = fuzzy.FuzzyInteger(100, 1080)
format = "jpeg"
@factory.lazy_attribute
def expires_at(self):
from django.utils import timezone
return timezone.now() + timezone.timedelta(days=365)
@factory.lazy_attribute
def uploaded_at(self):
from django.utils import timezone
return timezone.now()
class ParkPhotoFactory(DjangoModelFactory):
"""Factory for creating ParkPhoto instances."""
class Meta:
model = "parks.ParkPhoto"
park = factory.SubFactory(ParkFactory)
image = factory.SubFactory(CloudflareImageFactory)
caption = factory.Faker("sentence", nb_words=6)
alt_text = factory.Faker("sentence", nb_words=8)
is_primary = False
is_approved = True
uploaded_by = factory.SubFactory(UserFactory)
date_taken = factory.Faker("date_time_between", start_date="-2y", end_date="now")
class RidePhotoFactory(DjangoModelFactory):
"""Factory for creating RidePhoto instances."""
class Meta:
model = "rides.RidePhoto"
ride = factory.SubFactory(RideFactory)
image = factory.SubFactory(CloudflareImageFactory)
caption = factory.Faker("sentence", nb_words=6)
alt_text = factory.Faker("sentence", nb_words=8)
is_primary = False
is_approved = True
uploaded_by = factory.SubFactory(UserFactory)