/**
  * @param Request $request
  * @param ThreeStep $threeStep
  * @param ThreeStepLog $three_step_log
  * @param Role $role
  * @return Ambigous <\Illuminate\Http\$this, boolean, \Illuminate\Http\RedirectResponse>|Ambigous <\Illuminate\View\View, mixed, \Illuminate\Foundation\Application, \Illuminate\Container\static>
  */
 public function getStepTwo(Request $request, ThreeStep $threeStep, Client $client)
 {
     $validation_rules = $threeStep->getValidationRulesStepTwo();
     //    	$this->validate($request, $validation_rules);
     $arr_request = $threeStep->getRequestArrayStepTwo($request);
     //		$objClient = $client->where('cloaked_client_id', $arr_request['client_id'])->first();
     $objClient = $client->getObjClient($arr_request['client_id']);
     if ($objClient == null) {
         return view('three_step/bad_client_id');
     } else {
         $client = $objClient;
         print_r($client);
         echo "<br>";
         $objThreeStep = $threeStep->where('three_step_id', $arr_request['three_step_id'])->where('user_id', $client->user_id)->first();
         if ($objThreeStep == null) {
             return view('three_step/bad_three_step_id');
         } else {
             $threeStep = $objThreeStep;
             if ($threeStep == null) {
                 return view('three_step/step_two_fail');
             } else {
                 $redirect_url = $client->client_url;
                 $redirect_url .= "/three_step_remote/step_one/";
                 $redirect_url .= $threeStep->three_step_id;
                 return redirect($redirect_url);
             }
             // end else, if bad three step id
         }
         // end else, if $objClient == null
     }
     // end else, if objClinet == null
 }