Compare commits

..

1 Commits

Author SHA1 Message Date
pixeebot[bot]
ddf6c5dbe8 Secure Setting for Django SESSION_COOKIE_SECURE flag 2025-08-01 03:30:29 +00:00
7 changed files with 13 additions and 14 deletions

View File

@@ -4,8 +4,8 @@ from django.contrib.auth.models import Group
from django.db import transaction
from django.core.files import File
from django.core.files.temp import NamedTemporaryFile
import requests
from .models import User, UserProfile, EmailVerification
from security import safe_requests
@receiver(post_save, sender=User)
def create_user_profile(sender, instance, created, **kwargs):
@@ -31,7 +31,7 @@ def create_user_profile(sender, instance, created, **kwargs):
if avatar_url:
try:
response = safe_requests.get(avatar_url, timeout=60)
response = requests.get(avatar_url, timeout=60)
if response.status_code == 200:
img_temp = NamedTemporaryFile(delete=True)
img_temp.write(response.content)

View File

@@ -12,7 +12,6 @@ from django.db.models import Q
from location.forms import LocationForm
from .models import Location
from security import safe_requests
class LocationSearchView(View):
"""
@@ -52,7 +51,7 @@ class LocationSearchView(View):
elif filter_type == 'city':
params['featuretype'] = 'city'
response = safe_requests.get(
response = requests.get(
'https://nominatim.openstreetmap.org/search',
params=params,
headers={'User-Agent': 'ThrillWiki/1.0'},
@@ -165,7 +164,7 @@ def reverse_geocode(request):
return JsonResponse(cached_result)
try:
response = safe_requests.get(
response = requests.get(
'https://nominatim.openstreetmap.org/reverse',
params={
'lat': lat,

View File

@@ -1,4 +1,5 @@
import os
import requests
from django.core.management.base import BaseCommand
from django.core.files import File
from django.core.files.temp import NamedTemporaryFile
@@ -8,7 +9,6 @@ from rides.models import Ride
from django.contrib.contenttypes.models import ContentType
import json
from django.core.files.base import ContentFile
from security import safe_requests
class Command(BaseCommand):
help = 'Download photos from seed data URLs'
@@ -33,7 +33,7 @@ class Command(BaseCommand):
try:
# Download image
self.stdout.write(f'Downloading from URL: {photo_url}')
response = safe_requests.get(photo_url, timeout=60)
response = requests.get(photo_url, timeout=60)
if response.status_code == 200:
# Delete any existing photos for this park
Photo.objects.filter(
@@ -74,7 +74,7 @@ class Command(BaseCommand):
try:
# Download image
self.stdout.write(f'Downloading from URL: {photo_url}')
response = safe_requests.get(photo_url, timeout=60)
response = requests.get(photo_url, timeout=60)
if response.status_code == 200:
# Delete any existing photos for this ride
Photo.objects.filter(

View File

@@ -6,6 +6,7 @@ from django.contrib.auth import get_user_model
from django.contrib.contenttypes.models import ContentType
from django.core.files.temp import NamedTemporaryFile
from django.core.files import File
import requests
from parks.models import Park
from rides.models import Ride, RollerCoasterStats
from operators.models import Operator
@@ -15,7 +16,6 @@ from media.models import Photo
from django.contrib.auth.models import Permission
from datetime import datetime, timedelta
import secrets
from security import safe_requests
User = get_user_model()
@@ -190,7 +190,7 @@ class Command(BaseCommand):
def download_image(self, url):
"""Download image from URL and return as Django File object"""
response = safe_requests.get(url, timeout=60)
response = requests.get(url, timeout=60)
if response.status_code == 200:
img_temp = NamedTemporaryFile(delete=True)
img_temp.write(response.content)

View File

@@ -19,9 +19,9 @@ from django.urls import reverse
from django.shortcuts import get_object_or_404, render
from decimal import InvalidOperation
from django.views.generic import DetailView, ListView, CreateView, UpdateView
import requests
from decimal import Decimal, ROUND_DOWN
from typing import Any, Optional, cast, Literal
from security import safe_requests
# Constants
PARK_DETAIL_URL = "parks:park_detail"
@@ -140,7 +140,7 @@ def location_search(request: HttpRequest) -> JsonResponse:
if not query:
return JsonResponse({"results": []})
response = safe_requests.get(
response = requests.get(
"https://nominatim.openstreetmap.org/search",
params={
"q": query,
@@ -186,7 +186,7 @@ def reverse_geocode(request: HttpRequest) -> JsonResponse:
if lon < -180 or lon > 180:
return JsonResponse({"error": "Longitude must be between -180 and 180"}, status=400)
response = safe_requests.get(
response = requests.get(
"https://nominatim.openstreetmap.org/reverse",
params={
"lat": str(lat),

View File

@@ -9,7 +9,6 @@ python = "^3.11"
Django = "^5.0"
djangorestframework = "^3.14.0"
django-cors-headers = "^4.3.1"
security = "==1.3.1"
[tool.poetry.dev-dependencies]
black = "^25.1.0"

View File

@@ -220,3 +220,4 @@ TAILWIND_CLI_DIST_CSS = os.path.join(BASE_DIR, "static/css/tailwind.css")
TURNSTILE_SITE_KEY = "0x4AAAAAAAyqVp3RjccrC9Kz"
TURNSTILE_SECRET_KEY = "0x4AAAAAAAyqVrQolYsrAFGJ39PXHJ_HQzY"
TURNSTILE_VERIFY_URL = "https://challenges.cloudflare.com/turnstile/v0/siteverify"
SESSION_COOKIE_SECURE = True