UserController.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\User;
  4. use Illuminate\Http\Request;
  5. use Illuminate\Support\Facades\DB;
  6. use App\Http\Controllers\Controller;
  7. use Illuminate\Support\Facades\Auth;
  8. class UserController extends Controller
  9. {
  10. /**
  11. * check if a user exists
  12. * @param Request $request [description]
  13. * @return json
  14. */
  15. public function checkUser()
  16. {
  17. $count = DB::table('users')->count();
  18. return response()->json(['userCount' => $count], 200);
  19. }
  20. /**
  21. * register new user
  22. * @param Request $request [description]
  23. * @return json
  24. */
  25. public function register(Request $request)
  26. {
  27. // check if a user already exists
  28. $count = DB::table('users')->count();
  29. if( $count > 0 ) {
  30. return response()->json(['message' => __('errors.already_one_user_registered')], 400);
  31. }
  32. $this->validate($request, [
  33. 'name' => 'required',
  34. 'email' => 'required|email',
  35. 'password' => 'required|confirmed|min:8',
  36. ]);
  37. $input = $request->all();
  38. $input['password'] = bcrypt($input['password']);
  39. $user = User::create($input);
  40. $success['token'] = $user->createToken('MyApp')->accessToken;
  41. $success['name'] = $user->name;
  42. return response()->json(['message' => $success]);
  43. }
  44. }