From 9413dacaf28d9448e0774215b2d092d644c95510 Mon Sep 17 00:00:00 2001
From: Mouse Reeve <mousereeve@riseup.net>
Date: Fri, 10 Sep 2021 11:44:01 -0700
Subject: [PATCH] Updates instance info endpoint

---
 ..._sitesettings_instance_short_description.py | 18 ++++++++++++++++++
 bookwyrm/models/site.py                        |  1 +
 bookwyrm/views/wellknown.py                    | 11 +++++++----
 3 files changed, 26 insertions(+), 4 deletions(-)
 create mode 100644 bookwyrm/migrations/0092_sitesettings_instance_short_description.py

diff --git a/bookwyrm/migrations/0092_sitesettings_instance_short_description.py b/bookwyrm/migrations/0092_sitesettings_instance_short_description.py
new file mode 100644
index 000000000..4c62dd7be
--- /dev/null
+++ b/bookwyrm/migrations/0092_sitesettings_instance_short_description.py
@@ -0,0 +1,18 @@
+# Generated by Django 3.2.4 on 2021-09-10 18:39
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ("bookwyrm", "0091_merge_0090_auto_20210908_2346_0090_emailblocklist"),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name="sitesettings",
+            name="instance_short_description",
+            field=models.TextField(blank=True, null=True),
+        ),
+    ]
diff --git a/bookwyrm/models/site.py b/bookwyrm/models/site.py
index d9289b148..cf3a94b2c 100644
--- a/bookwyrm/models/site.py
+++ b/bookwyrm/models/site.py
@@ -20,6 +20,7 @@ class SiteSettings(models.Model):
         max_length=150, default="Social Reading and Reviewing"
     )
     instance_description = models.TextField(default="This instance has no description.")
+    instance_short_description = models.TextField(blank=True, null=True)
 
     # about page
     registration_closed_text = models.TextField(
diff --git a/bookwyrm/views/wellknown.py b/bookwyrm/views/wellknown.py
index 9c76beafa..426d0cdcf 100644
--- a/bookwyrm/views/wellknown.py
+++ b/bookwyrm/views/wellknown.py
@@ -8,7 +8,7 @@ from django.utils import timezone
 from django.views.decorators.http import require_GET
 
 from bookwyrm import models
-from bookwyrm.settings import DOMAIN, VERSION
+from bookwyrm.settings import DOMAIN, VERSION, MEDIA_FULL_URL
 
 
 @require_GET
@@ -95,21 +95,24 @@ def instance_info(_):
     status_count = models.Status.objects.filter(user__local=True).count()
 
     site = models.SiteSettings.get()
+    logo_path = site.logo_small or "images/logo-small.png"
+    logo = f"{MEDIA_FULL_URL}{logo_path}"
     return JsonResponse(
         {
             "uri": DOMAIN,
             "title": site.name,
-            "short_description": "",
+            "short_description": site.instance_short_description,
             "description": site.instance_description,
-            "version": "0.0.1",
+            "version": VERSION,
             "stats": {
                 "user_count": user_count,
                 "status_count": status_count,
             },
-            "thumbnail": "https://%s/static/images/logo.png" % DOMAIN,
+            "thumbnail": logo,
             "languages": ["en"],
             "registrations": site.allow_registration,
             "approval_required": False,
+            "email": site.admin_email,
         }
     )