protected function buildRepoOwnedByActorOrOrg(BaseEvent $event) { if ($event->hasBaseOrg()) { $owner_login = $event->getBaseOrg()->getName(); $owner_id = $event->getBaseOrg()->getId(); } else { $owner_login = $event->getActor()->getLogin(); $owner_id = $event->getActor()->getId(); } $q = 'MERGE (repo:Repository {id: {repo_id}}) ON CREATE SET repo.name = {repo_name} MERGE (user:User {id: {user_id}}) SET user.login = {user_login}'; if ($event->hasBaseOrg()) { $q .= ' SET user :Organisation'; } $q .= ' MERGE (repo)-[:OWNED_BY]->(user)'; $p = ['repo_id' => $event->getRepository()->getId(), 'repo_name' => $this->getRepoName($event->getRepository()), 'user_id' => $owner_id, 'user_login' => $owner_login]; return ['query' => $q, 'params' => $p]; }