/** * Run the database seeds. * * @return void */ public function run() { $user = new User(); $user->name = 'Wahid'; $user->email = '*****@*****.**'; $user->password = bcrypt('password'); $user->save(); // create an admin }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\StoreNewRequest $request * @return \Illuminate\Http\Response */ public function store(StoreNewUserRequest $request) { // Grab the data that we want $data = $request->only('email', 'first_name', 'password'); // create a new user $user = User::create(['name' => $data['first_name'], 'email' => $data['email'], 'password' => bcrypt($data['password'])]); return response()->api($user); }
/** * authenticate, handles the authentication for the initial request to login. * * @param Request $request The login request to handle the authentication * * @return Response json The data that came back */ public function authenticate(Request $request) { $credentials = $request->only('email', 'password'); $user = User::whereEmail($credentials['email'])->first(); $adminClaim = ['admin' => false]; // see if we have an admin user on our hands if ($user != null) { $adminClaim = ['admin' => $user->hasRole('admin')]; } try { // attempt to verify the credentials and create a token for the user if (!($token = JWTAuth::attempt($credentials, $adminClaim))) { return response()->json(['error' => 'invalid_credentials'], 401); } } catch (JWTException $e) { // something went wrong whilst attempting to encode the token return response()->json(['error' => 'could_not_create_token'], 500); } return response()->json(compact('token')); }