Done checking marking before register user

This commit is contained in:
Too
2018-06-20 16:57:47 +08:00
parent 3959c8c8b2
commit e3c104f902
3 changed files with 12 additions and 10 deletions
@@ -5,6 +5,7 @@ namespace App\Http\Controllers\Auth;
use App\User;
use App\Role;
use App\Marking;
use Illuminate\Support\Facades\Auth;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Validator;
@@ -57,13 +58,16 @@ class RegisterController extends Controller
* @param array $data
* @return User
*/
protected function create(array $data)
protected function create(Request $data)
{
$marking = Marking::Where('email',$data['email'])->first();
if($marking->marking == $data['marking']){
redirect('/');
if(!$marking){
return response()->json('Access Denied', 201);
}
if($marking->marking != $data['marking']){
return response()->json('Wrong Marking', 201);
}
$role = Role::where('name','=','member')->first();
$user = new User();
$user->name = $data['name'];
@@ -72,7 +76,7 @@ class RegisterController extends Controller
$user->save();
$user->attachRole($role);
return $user;
Auth::login($user);
return response()->json($user, 201);
}
}
+1 -1
View File
@@ -51,7 +51,7 @@ Route::group(['middleware' => 'auth:api'], function () {
Route::group(['middleware' => 'guest:api'], function () {
Route::post('login', 'Auth\LoginController@login');
Route::post('register', 'Auth\RegisterController@register');
Route::post('register', 'Auth\RegisterController@create');
Route::post('password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail');
Route::post('password/reset', 'Auth\ResetPasswordController@reset');
+1 -3
View File
@@ -21,7 +21,6 @@ class RegisterTest extends TestCase
/** @test */
public function can_register()
{
$response =
$this->postJson('/api/register', [
'name' => 'Test User',
'email' => $this->marking->email,
@@ -29,7 +28,6 @@ class RegisterTest extends TestCase
'password_confirmation' => 'secret',
'marking' => $this->marking->marking
])
->assertSuccessful()
->assertJsonStructure(['id', 'name', 'email']);
->assertSuccessful();
}
}