1616use Magento \Framework \GraphQl \Schema \Type \ResolveInfo ;
1717use Magefan \Blog \Api \PostRepositoryInterface ;
1818use Magento \Framework \Api \SortOrderBuilder ;
19+ use Magento \Framework \App \ScopeResolverInterface ;
1920
2021/**
2122 * Class Posts
@@ -50,6 +51,11 @@ class Posts implements ResolverInterface
5051 */
5152 protected $ filterGroupBuilder ;
5253
54+ /**
55+ * @var ScopeResolverInterface
56+ */
57+ private $ scopeResolver ;
58+
5359 /**
5460 * Posts constructor.
5561 * @param SearchCriteriaBuilder $searchCriteriaBuilder
@@ -58,21 +64,24 @@ class Posts implements ResolverInterface
5864 * @param DataProvider\Post $postDataProvider
5965 * @param FilterBuilder $filterBuilder
6066 * @param FilterGroupBuilder $filterGroupBuilder
67+ * @param ScopeResolverInterface $scopeResolver
6168 */
6269 public function __construct (
6370 SearchCriteriaBuilder $ searchCriteriaBuilder ,
6471 PostRepositoryInterface $ postRepository ,
6572 SortOrderBuilder $ sortOrderBuilder ,
6673 DataProvider \Post $ postDataProvider ,
6774 FilterBuilder $ filterBuilder ,
68- FilterGroupBuilder $ filterGroupBuilder
75+ FilterGroupBuilder $ filterGroupBuilder ,
76+ ScopeResolverInterface $ scopeResolver
6977 ) {
7078 $ this ->searchCriteriaBuilder = $ searchCriteriaBuilder ;
7179 $ this ->postRepository = $ postRepository ;
7280 $ this ->sortOrderBuilder = $ sortOrderBuilder ;
7381 $ this ->postDataProvider = $ postDataProvider ;
7482 $ this ->filterBuilder = $ filterBuilder ;
7583 $ this ->filterGroupBuilder = $ filterGroupBuilder ;
84+ $ this ->scopeResolver = $ scopeResolver ;
7685 }
7786 /**
7887 * @inheritdoc
@@ -94,6 +103,15 @@ public function resolve(
94103 $ filterGroups = $ searchCriteria ->getFilterGroups ();
95104 $ filterGroups [] = $ this ->filterGroupBuilder ->addFilter ($ statusFilter )->create ();
96105
106+ $ scope = $ this ->scopeResolver ->getScope ()->getId ();
107+
108+ $ scopeFilter = $ this ->filterBuilder
109+ ->setField ('store_id ' )
110+ ->setValue ($ scope )
111+ ->setConditionType ('eq ' )
112+ ->create ();
113+ $ filterGroups [] = $ this ->filterGroupBuilder ->addFilter ($ scopeFilter )->create ();
114+
97115 if (isset ($ args ['filter ' ]['post_id ' ]['in ' ])) {
98116 $ postIdFilter = $ this ->filterBuilder
99117 ->setField ('post_id ' )
0 commit comments