$user->newUser($userData['email'], $userData['name'], md5($userData['email'] . rand(0, 100))); $facebookClient->setUserID($user->getID()); $facebookClient->save(); $user->fetchProviders(); $jwt = $user->getJWT(); $headersHandler->sendJSONData(['token' => $jwt]); $outputHandler->write('registered successfully'); $outputHandler->write($jwt); } else { if ($facebookIDRepeats == 1) { // log in $facebookClient->searchByFacebookID(); $facebookClient->setAccessToken($accessToken); $facebookClient->save(); $user = new User($database); $user->fetchUser($facebookClient->getUserID()); $jwt = $user->getJWT(); $headersHandler->sendJSONData(['token' => $jwt]); $outputHandler->write('signed in successfully'); $outputHandler->write($jwt); } else { // invalid number, report $headersHandler->sendHeaderCode(401); $headersHandler->sendJSONData(['error' => 'two or more users registered with the same facebook id']); $outputHandler->write("two or more users registered with the same facebook id"); } } } break; default: $headersHandler->sendHeaderCode(401);