Merge branch 'main' into suggestions-redis

This commit is contained in:
Mouse Reeve
2021-08-02 20:40:06 -07:00
6 changed files with 36 additions and 4 deletions

View File

@ -13,6 +13,7 @@ from django.db import models
from django.forms import ClearableFileInput, ImageField as DjangoImageField
from django.utils import timezone
from django.utils.translation import gettext_lazy as _
from bookwyrm import activitypub
from bookwyrm.connectors import get_image
from bookwyrm.sanitize_html import InputHtmlParser
@ -354,7 +355,8 @@ def image_serializer(value, alt):
url = value.url
else:
return None
url = "https://%s%s" % (DOMAIN, url)
if not url[:4] == "http":
url = "https://{:s}{:s}".format(DOMAIN, url)
return activitypub.Document(url=url, name=alt)

View File

@ -426,6 +426,15 @@ class ActivitypubFields(TestCase):
self.assertIsInstance(loaded_image, list)
self.assertIsInstance(loaded_image[1], ContentFile)
def test_image_serialize(self):
"""make sure we're creating sensible image paths"""
ValueMock = namedtuple("ValueMock", ("url"))
value_mock = ValueMock("/images/fish.jpg")
result = fields.image_serializer(value_mock, "hello")
self.assertEqual(result.type, "Document")
self.assertEqual(result.url, "https://your.domain.here/images/fish.jpg")
self.assertEqual(result.name, "hello")
def test_datetime_field(self):
"""this one is pretty simple, it just has to use isoformat"""
instance = fields.DateTimeField()

View File

@ -51,7 +51,7 @@ class Announcements(View):
form = forms.AnnouncementForm()
data = {
"announcements": Paginator(
models.Announcement.objects.all(), PAGE_LENGTH
models.Announcement.objects.order_by("-created_date"), PAGE_LENGTH
).get_page(request.GET.get("page")),
"form": form,
}

View File

@ -88,7 +88,9 @@ class Followers(View):
if is_api_request(request):
return ActivitypubResponse(user.to_followers_activity(**request.GET))
paginated = Paginator(user.followers.all(), PAGE_LENGTH)
paginated = Paginator(
user.followers.order_by("-created_date").all(), PAGE_LENGTH
)
data = {
"user": user,
"is_self": request.user.id == user.id,
@ -107,7 +109,9 @@ class Following(View):
if is_api_request(request):
return ActivitypubResponse(user.to_following_activity(**request.GET))
paginated = Paginator(user.following.all(), PAGE_LENGTH)
paginated = Paginator(
user.following.order_by("-created_date").all(), PAGE_LENGTH
)
data = {
"user": user,
"is_self": request.user.id == user.id,