From 639e9859edbf8b7a3c0fc66785af228af3f6be23 Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Mon, 15 Nov 2021 19:33:52 -0700 Subject: [PATCH] Add AutolinkService --- app/Services/AutolinkService.php | 54 ++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 app/Services/AutolinkService.php diff --git a/app/Services/AutolinkService.php b/app/Services/AutolinkService.php new file mode 100644 index 000000000..f0f3278ff --- /dev/null +++ b/app/Services/AutolinkService.php @@ -0,0 +1,54 @@ +contains('@'); + $profile = Profile::whereUsername($username)->first(); + if($profile) { + if($profile->domain != null) { + $instance = InstanceService::getByDomain($profile->domain); + if($instance && $instance->banned == true) { + return false; + } + } + return true; + } else { + if($remote) { + $parts = explode('@', $username); + $domain = last($parts); + $instance = InstanceService::getByDomain($domain); + + if($instance) { + if($instance->banned == true) { + return false; + } else { + $wf = WebfingerUrl::generateWebfingerUrl($username); + $res = Http::head($wf); + return $res->ok(); + } + } else { + $wf = WebfingerUrl::generateWebfingerUrl($username); + $res = Http::head($wf); + return $res->ok(); + } + } + } + return false; + }); + } +}