'Nama wajib diisi', 'name.max' => 'Nama maksimal 255 karakter', 'name.string' => 'Nama harus berupa string', 'email.required' => 'Email wajib diisi', 'email.email' => 'Email tidak valid', 'email.unique' => 'Email sudah terdaftar', 'password.required' => 'Password wajib diisi', 'password.confirmed' => 'Password tidak cocok', 'password.min' => 'Password minimal 8 karakter', ]; $validator = Validator::make($request->all(), [ 'name' => ['required', 'string', 'max:255'], 'email' => ['required', 'string', 'email', 'max:255', 'unique:users'], 'password' => ['required', 'string', 'confirmed', Rules\Password::defaults()], ], $customMessage); if ($validator->fails()) { toast($validator->messages()->all()[0], 'error')->position('top')->autoclose(3000); return redirect()->back()->withInput(); } DB::beginTransaction(); $user = new User(); $user->username = $request->username; $user->name = $request->name; $user->email = $request->email; $user->password = Hash::make($request->password); try { $user->save(); DB::commit(); toast('Registrasi berhasil', 'success')->position('top')->autoclose(3000); return redirect()->route('auth.two_step_verify', ['email' => $request->email]); } catch (\Throwable $th) { DB::rollBack(); toast($th->getMessage(), 'error')->position('top')->autoclose(3000); return redirect()->back(); } } }