/** * Get the validation rules that apply to the request. * * @return array */ public function rules(\Illuminate\Http\Request $req) { $passwordRule = 'required|confirmed'; if (\Route::currentRouteName() == "users.panelists.update" && (int) $req->input("password") == 0) { $passwordRule = ""; } $email = "required|email|unique:users"; if (\Route::currentRouteName() == "users.panelists.update") { $panelist = Panelist::findOrFail($this->route('panelists')); $email = "required|email|unique:users,email," . $panelist->user_id; } return ['name' => 'required', 'email' => $email, 'password' => $passwordRule]; }