summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorMaxence Lange <maxence@artificial-owl.com>2023-06-15 14:35:42 -0100
committerLouis Chemineau <louis@chmn.me>2023-06-28 14:03:24 +0200
commitacceb582ed68aa5535daf73e14c899b10f4f6f67 (patch)
tree2b0aab4de1c13d54309120a006a032a12a78d705 /lib
parentbea293487e0a08b046236af78183dabd1799b1eb (diff)
minor fix
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/Db/StreamRequestBuilder.php2
-rw-r--r--lib/WellKnown/WebfingerHandler.php16
2 files changed, 16 insertions, 2 deletions
diff --git a/lib/Db/StreamRequestBuilder.php b/lib/Db/StreamRequestBuilder.php
index 8071e733..e6ad134b 100644
--- a/lib/Db/StreamRequestBuilder.php
+++ b/lib/Db/StreamRequestBuilder.php
@@ -142,7 +142,7 @@ class StreamRequestBuilder extends CoreRequestBuilder {
protected function timelineHomeLinkCacheActor(
SocialQueryBuilder $qb, string $alias = 'ca', string $aliasFollow = 'f'
) {
- $qb->linkToCacheActors($alias, 'attributed_to_prim');
+ $qb->linkToCacheActors($alias, 's.attributed_to_prim');
$expr = $qb->expr();
$orX = $expr->orX();
diff --git a/lib/WellKnown/WebfingerHandler.php b/lib/WellKnown/WebfingerHandler.php
index 1ffd8889..1d445079 100644
--- a/lib/WellKnown/WebfingerHandler.php
+++ b/lib/WellKnown/WebfingerHandler.php
@@ -38,6 +38,7 @@ use OCP\AppFramework\Http;
use OCP\Http\WellKnown\IHandler;
use OCP\Http\WellKnown\IRequestContext;
use OCP\Http\WellKnown\IResponse;
+use OCP\IRequest;
use OCP\IURLGenerator;
class WebfingerHandler implements IHandler {
@@ -111,7 +112,7 @@ class WebfingerHandler implements IHandler {
* @return IResponse|null
*/
public function handleWebfinger(IRequestContext $context, ?IResponse $previousResponse): ?IResponse {
- $subject = $context->getHttpRequest()->getParam('resource') ?? '';
+ $subject = $this->getSubjectFromRequest($context->getHttpRequest());
if (str_starts_with($subject, 'acct:')) {
$subject = substr($subject, 5);
}
@@ -222,4 +223,17 @@ class WebfingerHandler implements IHandler {
return $response;
}
+
+ private function getSubjectFromRequest(IRequest $request): string {
+ $subject = $request->getParam('resource') ?? '';
+ if ($subject !== '') {
+ return $subject;
+ }
+
+ // work around to extract resource:
+ // on some setup (i.e. tests) the data are not available from IRequest
+ parse_str(parse_url($request->getRequestUri(), PHP_URL_QUERY), $query);
+
+ return $query['resource'] ?? '';
+ }
}