migrate from django deprecation

This commit is contained in:
Your Name 2024-05-29 10:48:45 -04:00 committed by Henri Dickson
parent 6ad51512f3
commit a50bd14277
8 changed files with 27 additions and 28 deletions

View file

@ -8,11 +8,11 @@ from auditlog.models import AuditlogHistoryField, LogEntry
from django.conf import settings
from django.contrib.contenttypes.models import ContentType
from django.core.files.uploadedfile import SimpleUploadedFile
from django.core.signing import b62_decode, b62_encode
from django.db import connection, models
from django.db.models import QuerySet, Value
from django.template.defaultfilters import default
from django.utils import timezone
from django.utils.baseconv import base62
from django.utils.translation import gettext_lazy as _
from loguru import logger
from ninja import Field, Schema
@ -475,7 +475,7 @@ class Item(PolymorphicModel):
@property
def uuid(self):
return base62.encode(self.uid.int).zfill(22)
return b62_encode(self.uid.int).zfill(22)
@property
def url(self):
@ -505,7 +505,7 @@ class Item(PolymorphicModel):
if r:
b62 = r[0]
try:
item = cls.objects.get(uid=uuid.UUID(int=base62.decode(b62)))
item = cls.objects.get(uid=uuid.UUID(int=b62_decode(b62)))
except Exception:
item = None
return item

View file

@ -5,9 +5,9 @@ from typing import TYPE_CHECKING
from discord import SyncWebhook
from django.conf import settings
from django.core.exceptions import PermissionDenied
from django.core.signing import b62_decode, b62_encode
from django.http import Http404, HttpRequest, HttpResponseRedirect, QueryDict
from django.utils import timezone
from django.utils.baseconv import base62
from django.utils.translation import gettext_lazy as _
from .config import PAGE_LINK_NUMBER
@ -195,7 +195,7 @@ def GenerateDateUUIDMediaFilePath(filename, path_root):
def get_uuid_or_404(uuid_b62):
try:
i = base62.decode(uuid_b62)
i = b62_decode(uuid_b62)
return uuid.UUID(int=i)
except ValueError:
raise Http404("Malformed Base62 UUID")

View file

@ -4,10 +4,10 @@ from functools import cached_property
from typing import TYPE_CHECKING
from django.conf import settings
from django.core.signing import b62_decode, b62_encode
from django.db import connection, models
from django.db.models import Avg, CharField, Count, Q
from django.utils import timezone
from django.utils.baseconv import base62
from django.utils.translation import gettext_lazy as _
from polymorphic.models import PolymorphicModel
@ -125,7 +125,7 @@ class Piece(PolymorphicModel, UserOwnedObjectMixin):
@property
def uuid(self):
return base62.encode(self.uid.int)
return b62_encode(self.uid.int)
@property
def url(self):
@ -177,7 +177,7 @@ class Piece(PolymorphicModel, UserOwnedObjectMixin):
if r:
b62 = r[0]
try:
obj = cls.objects.get(uid=uuid.UUID(int=base62.decode(b62)))
obj = cls.objects.get(uid=uuid.UUID(int=b62_decode(b62)))
except Exception:
obj = None
return obj

View file

@ -10,7 +10,6 @@ from django.core.validators import MaxValueValidator, MinValueValidator, RegexVa
from django.db import connection, models
from django.db.models import Avg, Count, Q
from django.utils import timezone
from django.utils.baseconv import base62
from django.utils.translation import gettext_lazy as _
from loguru import logger
from markdownx.models import MarkdownxField

View file

@ -1,5 +1,5 @@
from django.core.signing import b62_decode, b62_encode
from django.shortcuts import get_object_or_404, redirect, render
from django.utils.baseconv import base62
from catalog.collection.models import Collection
from catalog.models import Item
@ -9,54 +9,54 @@ from .models import *
def book(request, id):
link = get_object_or_404(BookLink, old_id=id)
return redirect(f"/book/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/book/{b62_encode(link.new_uid.int)}", permanent=True)
def movie(request, id):
link = get_object_or_404(MovieLink, old_id=id)
return redirect(f"/movie/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/movie/{b62_encode(link.new_uid.int)}", permanent=True)
def album(request, id):
link = get_object_or_404(AlbumLink, old_id=id)
return redirect(f"/album/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/album/{b62_encode(link.new_uid.int)}", permanent=True)
def song(request, id):
link = get_object_or_404(SongLink, old_id=id)
return redirect(f"/album/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/album/{b62_encode(link.new_uid.int)}", permanent=True)
def game(request, id):
link = get_object_or_404(GameLink, old_id=id)
return redirect(f"/game/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/game/{b62_encode(link.new_uid.int)}", permanent=True)
def collection(request, id):
link = get_object_or_404(CollectionLink, old_id=id)
return redirect(f"/collection/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/collection/{b62_encode(link.new_uid.int)}", permanent=True)
def book_review(request, id):
link = get_object_or_404(ReviewLink, module="book", old_id=id)
return redirect(f"/review/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/review/{b62_encode(link.new_uid.int)}", permanent=True)
def movie_review(request, id):
link = get_object_or_404(ReviewLink, module="movie", old_id=id)
return redirect(f"/review/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/review/{b62_encode(link.new_uid.int)}", permanent=True)
def album_review(request, id):
link = get_object_or_404(ReviewLink, module="album", old_id=id)
return redirect(f"/review/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/review/{b62_encode(link.new_uid.int)}", permanent=True)
def song_review(request, id):
link = get_object_or_404(ReviewLink, module="song", old_id=id)
return redirect(f"/review/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/review/{b62_encode(link.new_uid.int)}", permanent=True)
def game_review(request, id):
link = get_object_or_404(ReviewLink, module="game", old_id=id)
return redirect(f"/review/{base62.encode(link.new_uid.int)}", permanent=True)
return redirect(f"/review/{b62_encode(link.new_uid.int)}", permanent=True)

View file

@ -1,10 +1,10 @@
black~=22.12.0
coverage
django-debug-toolbar
django-stubs~=4.2.7
django-stubs
djlint~=1.34.0
isort~=5.13.2
lxml-stubs
pre-commit
pyright==1.1.350
pyright==1.1.365
ruff

View file

@ -1,6 +1,7 @@
import time
from contextlib import nullcontext
from datetime import datetime, timezone
from datetime import datetime
from datetime import timezone as dttz
from django.conf import settings
from django.contrib.contenttypes.models import ContentType
@ -23,7 +24,7 @@ from users.models import User as NeoUser
BATCH_SIZE = 1000
TIMELINE_START = datetime.datetime(2023, 7, 1, tzinfo=timezone.utc)
TIMELINE_START = datetime.datetime(2023, 7, 1, tzinfo=dttz.utc)
def content_type_id(cls):

View file

@ -10,13 +10,12 @@ from django.contrib.auth.decorators import login_required
from django.core.cache import cache
from django.core.exceptions import BadRequest, ObjectDoesNotExist
from django.core.mail import send_mail
from django.core.signing import TimestampSigner
from django.core.signing import TimestampSigner, b62_decode, b62_encode
from django.core.validators import EmailValidator
from django.db.models import Count, Q
from django.shortcuts import get_object_or_404, redirect, render
from django.urls import reverse
from django.utils import timezone
from django.utils.baseconv import base62
from django.utils.translation import gettext_lazy as _
from django.views.decorators.http import require_http_methods
from loguru import logger
@ -86,7 +85,7 @@ def connect(request):
{"msg": _("Invalid email address")},
)
user = User.objects.filter(email__iexact=login_email).first()
code = base62.encode(random.randint(pow(62, 4), pow(62, 5) - 1))
code = b62_encode(random.randint(pow(62, 4), pow(62, 5) - 1))
cache.set(f"login_{code}", login_email, timeout=60 * 15)
request.session["login_email"] = login_email
action = "login" if user else "register"