/** * @param array $data * @param RZ\Roadiz\Core\Entities\User $user * * @return RZ\Roadiz\Core\Entities\Group */ private function addUserGroup($data, User $user) { if ($data['userId'] == $user->getId()) { $group = $this->getService('em')->find('RZ\\Roadiz\\Core\\Entities\\Group', $data['group']); if ($group !== null) { $user->addGroup($group); $this->getService('em')->flush(); } return $group; } return null; }
/** * @param array $data * * @return boolean */ public function createDefaultUser($data) { $existing = $this->entityManager->getRepository('RZ\\Roadiz\\Core\\Entities\\User')->findOneBy(['username' => $data['username'], 'email' => $data['email']]); if ($existing === null) { $user = new User(); $user->setUsername($data['username']); $user->setPlainPassword($data['password']); $user->setEmail($data['email']); $url = "http://www.gravatar.com/avatar/" . md5(strtolower(trim($user->getEmail()))) . "?d=identicon&s=200"; $user->setPictureUrl($url); $existingGroup = $this->entityManager->getRepository('RZ\\Roadiz\\Core\\Entities\\Group')->findOneByName('Admin'); $user->addGroup($existingGroup); $this->entityManager->persist($user); $this->entityManager->flush(); } return true; }