public static function create($email, $password, $valid = false) { $passwordHash = password_hash($password, PASSWORD_DEFAULT); $numOfUsersWithThisName = R::count('user', ' email = ? ', [$email]); if ($numOfUsersWithThisName < 1) { $bean = R::dispense('user'); $bean->email = strtolower($email); $bean->password = $passwordHash; $bean->valid = $valid; $bean->locked = false; $bean->lastLogin = R::isoDateTime(); $bean->created = R::isoDateTime(); $bean->sharedGroupList; $bean->lockedKey = App::guid(); $bean->validationKey = App::guid(); $bean->validationDate = R::isoDateTime(); Event\User\BeforeStore::pub($bean); $id = R::store($bean); $user = new User($email, $bean); Event\User\Create::pub($user); return $user; } return null; }