function findByOwnerGroupedByGroup(\MapasCulturais\Entity $owner) { $app = App::i(); $repo = $app->repo($owner->getFileClassName()); $files = $repo->findBy(['owner' => $owner]); $result = []; if ($files) { foreach ($files as $file) { $registeredGroup = $app->getRegisteredFileGroup($owner->controllerId, $file->group); if ($registeredGroup && $registeredGroup->unique) { $result[trim($file->group)] = $file; } else { if (!key_exists($file->group, $result)) { $result[trim($file->group)] = []; } $result[trim($file->group)][] = $file; } } ksort($result); } return $result; }