diff --git a/bookwyrm/models/user.py b/bookwyrm/models/user.py
index 7ebe9b96..666ac612 100644
--- a/bookwyrm/models/user.py
+++ b/bookwyrm/models/user.py
@@ -479,10 +479,13 @@ def set_remote_server(user_id):
get_remote_reviews.delay(user.outbox)
-def get_or_create_remote_server(domain):
+def get_or_create_remote_server(domain, refresh=False):
"""get info on a remote server"""
+ server = FederatedServer()
try:
- return FederatedServer.objects.get(server_name=domain)
+ server = FederatedServer.objects.get(server_name=domain)
+ if not refresh:
+ return server
except FederatedServer.DoesNotExist:
pass
@@ -497,13 +500,15 @@ def get_or_create_remote_server(domain):
application_type = data.get("software", {}).get("name")
application_version = data.get("software", {}).get("version")
except ConnectorException:
+ if server.id:
+ return server
application_type = application_version = None
- server = FederatedServer.objects.create(
- server_name=domain,
- application_type=application_type,
- application_version=application_version,
- )
+ server.server_name = domain
+ server.application_type = application_type
+ server.application_version = application_version
+
+ server.save()
return server
diff --git a/bookwyrm/templates/settings/federation/edit_instance.html b/bookwyrm/templates/settings/federation/edit_instance.html
index 0a67895c..3d9b031b 100644
--- a/bookwyrm/templates/settings/federation/edit_instance.html
+++ b/bookwyrm/templates/settings/federation/edit_instance.html
@@ -4,7 +4,19 @@
{% block header %}
{% trans "Add instance" %}
-{% trans "Back to instance list" %}
+{% endblock %}
+
+{% block breadcrumbs %}
+
{% endblock %}
{% block panel %}
@@ -73,9 +85,13 @@
-
+