Update application settings to configure GDAL and GEOS paths

Update GDAL_LIBRARY_PATH and GEOS_LIBRARY_PATH in base.py, local.py, and test_accounts.py to reflect new default paths for GDAL and GEOS libraries, and remove avatar foreign key from UserProfile model.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: eff39de1-3afa-446d-a965-acaf61837fc7
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d6d61dac-164d-45dd-929f-7dcdfd771b64/eff39de1-3afa-446d-a965-acaf61837fc7/NsPV9U7
This commit is contained in:
pac7
2025-09-21 01:20:44 +00:00
committed by pacnpal
parent 4a4b7924c5
commit 31b7e5ee53
5 changed files with 59 additions and 79 deletions

View File

@@ -149,12 +149,12 @@ class UserProfile(models.Model):
blank=True,
help_text="Legacy display name field - use User.display_name instead",
)
avatar = models.ForeignKey(
'django_cloudflareimages_toolkit.CloudflareImage',
on_delete=models.SET_NULL,
null=True,
blank=True
)
# avatar = models.ForeignKey(
# 'django_cloudflareimages_toolkit.CloudflareImage',
# on_delete=models.SET_NULL,
# null=True,
# blank=True
# )
pronouns = models.CharField(max_length=50, blank=True)
bio = models.TextField(max_length=500, blank=True)
@@ -175,26 +175,27 @@ class UserProfile(models.Model):
"""
Return the avatar URL or generate a default letter-based avatar URL
"""
if self.avatar and self.avatar.is_uploaded:
# Try to get avatar variant first, fallback to public
avatar_url = self.avatar.get_url('avatar')
if avatar_url:
return avatar_url
# Avatar field temporarily disabled - return default avatar
# if self.avatar and self.avatar.is_uploaded:
# # Try to get avatar variant first, fallback to public
# avatar_url = self.avatar.get_url('avatar')
# if avatar_url:
# return avatar_url
# Fallback to public variant
public_url = self.avatar.get_url('public')
if public_url:
return public_url
# # Fallback to public variant
# public_url = self.avatar.get_url('public')
# if public_url:
# return public_url
# Last fallback - try any available variant
if self.avatar.variants:
if isinstance(self.avatar.variants, list) and self.avatar.variants:
return self.avatar.variants[0]
elif isinstance(self.avatar.variants, dict):
# Return first available variant
for variant_url in self.avatar.variants.values():
if variant_url:
return variant_url
# # Last fallback - try any available variant
# if self.avatar.variants:
# if isinstance(self.avatar.variants, list) and self.avatar.variants:
# return self.avatar.variants[0]
# elif isinstance(self.avatar.variants, dict):
# # Return first available variant
# for variant_url in self.avatar.variants.values():
# if variant_url:
# return variant_url
# Generate default letter-based avatar using first letter of username
first_letter = self.user.username[0].upper() if self.user.username else "U"
@@ -205,32 +206,33 @@ class UserProfile(models.Model):
"""
Return avatar variants for different use cases
"""
if self.avatar and self.avatar.is_uploaded:
variants = {}
# Avatar field temporarily disabled - return default variants
# if self.avatar and self.avatar.is_uploaded:
# variants = {}
# Try to get specific variants
thumbnail_url = self.avatar.get_url('thumbnail')
avatar_url = self.avatar.get_url('avatar')
large_url = self.avatar.get_url('large')
public_url = self.avatar.get_url('public')
# # Try to get specific variants
# thumbnail_url = self.avatar.get_url('thumbnail')
# avatar_url = self.avatar.get_url('avatar')
# large_url = self.avatar.get_url('large')
# public_url = self.avatar.get_url('public')
# Use specific variants if available, otherwise fallback to public or first available
fallback_url = public_url
if not fallback_url and self.avatar.variants:
if isinstance(self.avatar.variants, list) and self.avatar.variants:
fallback_url = self.avatar.variants[0]
elif isinstance(self.avatar.variants, dict):
fallback_url = next(iter(self.avatar.variants.values()), None)
# # Use specific variants if available, otherwise fallback to public or first available
# fallback_url = public_url
# if not fallback_url and self.avatar.variants:
# if isinstance(self.avatar.variants, list) and self.avatar.variants:
# fallback_url = self.avatar.variants[0]
# elif isinstance(self.avatar.variants, dict):
# fallback_url = next(iter(self.avatar.variants.values()), None)
variants = {
"thumbnail": thumbnail_url or fallback_url,
"avatar": avatar_url or fallback_url,
"large": large_url or fallback_url,
}
# variants = {
# "thumbnail": thumbnail_url or fallback_url,
# "avatar": avatar_url or fallback_url,
# "large": large_url or fallback_url,
# }
# Only return variants if we have at least one valid URL
if any(variants.values()):
return variants
# # Only return variants if we have at least one valid URL
# if any(variants.values()):
# return variants
# For default avatars, return the same URL for all variants
default_url = self.get_avatar_url()