public function loadRelatedLayoutsData(Layout $sharedLayout): array
    {
        $query = $this->getLayoutSelectQuery();

        $query->innerJoin(
            'l',
            'ngbm_zone',
            'z',
            $query->expr()->andX(
                $query->expr()->eq('z.layout_id', 'l.id'),
                $query->expr()->eq('z.status', 'l.status'),
                $query->expr()->eq('z.linked_layout_id', ':linked_layout_id')
            )
        )
        ->where(
            $query->expr()->andX(
                $query->expr()->eq('l.shared', ':shared'),
                $query->expr()->eq('l.status', ':status')
            )
        )
        ->setParameter('shared', false, Type::BOOLEAN)
        ->setParameter('status', Value::STATUS_PUBLISHED, Type::INTEGER)
        ->setParameter('linked_layout_id', $sharedLayout->id, Type::INTEGER);

        $query->orderBy('l.name', 'ASC');

        return $query->execute()->fetchAll(PDO::FETCH_ASSOC);
    }