APIv4 - Improve joins test coverage
[civicrm-core.git] / Civi / Api4 / Service / Schema / Joiner.php
index 8442da91129ab5ef9ac24eca13a5340bcd67db15..6b66c57f986ba482581d6ab997ec69905005782e 100644 (file)
@@ -60,7 +60,11 @@ class Joiner {
     foreach ($fullPath as $link) {
       $target = $link->getTargetTable();
       $alias = $link->getAlias();
-      $conditions = $link->getConditionsForJoin($baseTable);
+      $bao = \CRM_Core_DAO_AllCoreTables::getBAOClassName(\CRM_Core_DAO_AllCoreTables::getClassForTable($target));
+      $conditions = array_merge(
+        $link->getConditionsForJoin($baseTable),
+        $query->getAclClause($alias, $bao, explode('.', $joinPath))
+      );
 
       $query->join($side, $target, $alias, $conditions);