method() == 'PUT') { $requirements = RegisterController::passwordRequirements(); $v->sometimes('password', $requirements['password'], function($input) { return (strlen($input->password) > 0 || strlen($input->password_confirmation) > 0); }); } return $v; } /** * Get the validation rules that apply to the request. * * @return array */ public function rules() { switch ($this->method()) { case 'POST': return RegisterController::passwordRequirements(); case 'PUT': $userId = intval($this->segment(3)); $requirements = RegisterController::passwordRequirements(); $requirements['email'] = 'required|email|max:255|unique:users,email,' . $userId; unset($requirements['password']); return $requirements; } return []; } }