diff --git a/extensions/subscriptions/src/Gambit/SubscriptionGambit.php b/extensions/subscriptions/src/Gambit/SubscriptionGambit.php index 2b20a2269..b906945f5 100644 --- a/extensions/subscriptions/src/Gambit/SubscriptionGambit.php +++ b/extensions/subscriptions/src/Gambit/SubscriptionGambit.php @@ -13,7 +13,6 @@ namespace Flarum\Subscriptions\Gambit; use Flarum\Search\AbstractRegexGambit; use Flarum\Search\AbstractSearch; -use Illuminate\Database\Query\Expression; class SubscriptionGambit extends AbstractRegexGambit { @@ -32,9 +31,9 @@ class SubscriptionGambit extends AbstractRegexGambit // might be better as `id IN (subquery)`? $method = $negate ? 'whereNotExists' : 'whereExists'; $search->getQuery()->$method(function ($query) use ($actor, $matches) { - $query->select(app('flarum.db')->raw(1)) + $query->selectRaw('1') ->from('users_discussions') - ->where('discussions.id', new Expression('discussion_id')) + ->whereRaw('discussions.id = discussion_id') ->where('user_id', $actor->id) ->where('subscription', $matches[1] === 'follow' ? 'follow' : 'ignore'); }); diff --git a/extensions/subscriptions/src/Listener/FilterDiscussionListBySubscription.php b/extensions/subscriptions/src/Listener/FilterDiscussionListBySubscription.php index 883064534..c5bfdc224 100755 --- a/extensions/subscriptions/src/Listener/FilterDiscussionListBySubscription.php +++ b/extensions/subscriptions/src/Listener/FilterDiscussionListBySubscription.php @@ -16,7 +16,6 @@ use Flarum\Event\ConfigureDiscussionGambits; use Flarum\Event\ConfigureForumRoutes; use Flarum\Subscriptions\Gambit\SubscriptionGambit; use Illuminate\Contracts\Events\Dispatcher; -use Illuminate\Database\Query\Expression; class FilterDiscussionListBySubscription { @@ -49,7 +48,7 @@ class FilterDiscussionListBySubscription $event->search->getQuery()->whereNotExists(function ($query) use ($actor) { $query->selectRaw(1) ->from('users_discussions') - ->where('discussions.id', new Expression('discussion_id')) + ->whereRaw('discussions.id = discussion_id') ->where('user_id', $actor->id) ->where('subscription', 'ignore'); });