kopia lustrzana https://gitlab.com/jaywink/federation
Merge branch 'allow-disabling-ap-webfinger' into 'master'
Disable ActivityPub limited features by default when on Django See merge request jaywink/federation!139merge-requests/141/head
commit
4f2e57c579
|
@ -1,6 +1,6 @@
|
|||
from django.http import JsonResponse, HttpResponse, HttpResponseNotFound
|
||||
|
||||
from federation.utils.django import get_function_from_config
|
||||
from federation.utils.django import get_function_from_config, get_configuration
|
||||
|
||||
|
||||
def activitypub_object_view(func):
|
||||
|
@ -15,6 +15,11 @@ def activitypub_object_view(func):
|
|||
def inner(request, *args, **kwargs):
|
||||
|
||||
def get(request, *args, **kwargs):
|
||||
# TODO remove once AP support is more ready
|
||||
config = get_configuration()
|
||||
if not config.get("activitypub"):
|
||||
return func(request, *args, **kwargs)
|
||||
|
||||
fallback = True
|
||||
accept = request.META.get('HTTP_ACCEPT', '')
|
||||
for content_type in (
|
||||
|
|
|
@ -8,6 +8,8 @@ from jsonschema import validate
|
|||
from jsonschema.exceptions import ValidationError
|
||||
from xrd import XRD, Link, Element
|
||||
|
||||
from federation.utils.django import get_configuration
|
||||
|
||||
|
||||
def generate_host_meta(template=None, *args, **kwargs):
|
||||
"""Generate a host-meta XRD document.
|
||||
|
@ -386,13 +388,26 @@ class RFC7033Webfinger:
|
|||
"rel": "salmon",
|
||||
"href": "%s/receive/users/%s" % (self.base_url, self.guid),
|
||||
},
|
||||
{
|
||||
],
|
||||
}
|
||||
|
||||
# TODO remove once AP support is more ready
|
||||
try:
|
||||
config = get_configuration()
|
||||
except ImportError:
|
||||
webfinger["links"].append({
|
||||
"rel": "self",
|
||||
"href": self.id,
|
||||
"type": "application/activity+json",
|
||||
})
|
||||
else:
|
||||
if config.get("activitypub"):
|
||||
webfinger["links"].append({
|
||||
"rel": "self",
|
||||
"href": self.id,
|
||||
"type": "application/activity+json",
|
||||
},
|
||||
],
|
||||
}
|
||||
})
|
||||
|
||||
if self.atom_path:
|
||||
webfinger['links'].append(
|
||||
{
|
||||
|
|
|
@ -8,4 +8,6 @@ FEDERATION = {
|
|||
"get_profile_function": "federation.tests.django.utils.get_profile",
|
||||
"process_payload_function": "federation.tests.django.utils.process_payload",
|
||||
"search_path": "/search?q=",
|
||||
# TODO remove once AP support is more ready
|
||||
"activitypub": True,
|
||||
}
|
||||
|
|
|
@ -14,6 +14,8 @@ def get_configuration():
|
|||
"nodeinfo2_function": None,
|
||||
"process_payload_function": None,
|
||||
"search_path": None,
|
||||
# TODO remove or default to True once AP support is more ready
|
||||
"activitypub": False,
|
||||
}
|
||||
configuration.update(settings.FEDERATION)
|
||||
if not all([
|
||||
|
|
Ładowanie…
Reference in New Issue