From 68b84d1f652aae4644c2dde96d9bb99e358294e8 Mon Sep 17 00:00:00 2001 From: davide.cucurnia@vola.it <davide.cucurnia@vola.it> Date: Wed, 07 Feb 2024 10:18:30 +0100 Subject: [PATCH] struttura di base versione model based --- app/Http/Controllers/FakeResponder/FakeResponder.php | 68 +++++++++++++++------------------- 1 files changed, 30 insertions(+), 38 deletions(-) diff --git a/app/Http/Controllers/FakeResponder/FakeResponder.php b/app/Http/Controllers/FakeResponder/FakeResponder.php index d5307c2..ec88acb 100644 --- a/app/Http/Controllers/FakeResponder/FakeResponder.php +++ b/app/Http/Controllers/FakeResponder/FakeResponder.php @@ -3,9 +3,10 @@ namespace App\Http\Controllers\FakeResponder; use App\Http\Controllers\Controller; +use App\Http\Requests\genericPicasso; use App\Vola\Services\VolaFakeHTTPResponder\VolaFakeHTTPResponder; use Illuminate\Http\Request; -use Illuminate\Support\Str; +use App\Vola\Classes\Utils; class FakeResponder extends Controller { @@ -14,7 +15,6 @@ public string $cookieFakePicassoName = "SSOSESSIONID"; public array $headers; public VolaFakeHTTPResponder $VolaFakeSSO; - protected bool $openFakeSSO = true; function __construct() { @@ -27,47 +27,39 @@ } } + public function modelBasedRequest(Request $request) + { + $this->logReceivedRequest($request); + + $picassoRequest = (str_starts_with($request->getRequestUri(), '/picasso/',)); + $profile = Utils::getRequestedUser($request); + + if (isset($profile)) { + $responseContent = $this->VolaFakeSSO->getModelBasedResponses($request, $profile, $picassoRequest); + $this->logProcessedRequest($request, $responseContent, (($picassoRequest) ? "SSO v2 Legacy" : "SSO v2 Picasso")); + $responseContent = $this->compressIfRequested($request, $responseContent); + return response($responseContent, 200, $this->headers); + } else { + $this->logRejectedRequest($request); + return response('No cookie, no logged', 400, $this->headers); + } + } + public function manageLegacyRequest(Request $request) { - if (isset($_COOKIE[$this->cookieFakeSSOName])) { - $testUser = intval(str_replace("xno:", "", $_COOKIE[$this->cookieFakeSSOName])); - $responseContent = $this->VolaFakeSSO->getResponses($request, $testUser); + $this->logReceivedRequest($request); - $this->logRequest($request, $responseContent, "SSO Legacy"); - $responseContent = (config('custom.compressed_responses',false) === TRUE) ? gzencode($responseContent, 3) : $responseContent; + $picassoRequest = (str_starts_with($request->getRequestUri(), '/picasso/',)); + $profile = Utils::getRequestedUser($request); + + if (isset($profile)) { + $responseContent = $this->VolaFakeSSO->getResponses($request, $profile, $picassoRequest); + $this->logProcessedRequest($request, $responseContent, (($picassoRequest) ? "SSO Legacy" : "SSO Picasso")); + $responseContent = $this->compressIfRequested($request, $responseContent); return response($responseContent, 200, $this->headers); } else { - \Log::channel('requests_failed')->debug($request->url() . "\nNessun cookie di sessione ".$this->cookieFakeSSOName); - return response('No cookie', 400, $this->headers); - } - } - - public function managePicassoRequest(Request $request) - { - if (isset($_COOKIE[$this->cookieFakePicassoName])) { - $testUser = intval(str_replace("xno:", "", $_COOKIE[$this->cookieFakePicassoName])); - $responseContent = $this->VolaFakeSSO->getResponses($request, $testUser, true); - - $this->logRequest($request, $responseContent, "Picasso"); - $responseContent = (config('custom.compressed_responses',false) === TRUE) ? gzencode($responseContent, 3) : $responseContent; - return response($responseContent, 200, $this->headers); - } else { - \Log::channel('requests_failed')->debug("Picasso " . $request->url() . "\nNessun cookie di sessione ".$this->cookieFakePicassoName); - return response('No cookie', 400, $this->headers); - } - } - - public function logRequest(Request $request, $responseContent = null, $system = '') - { - if (config('custom.log_all_requests', true) === TRUE) { - $uriParts = explode("?", $request->url()); - $methodUri = Str::afterLast($uriParts[0], "/"); - $reqParams = !empty($request->query()) ? $request->query() : []; - //\Log::channel('requests_managed')->debug($system . " " . $request->getClientIp() ." ". $methodUri . " with params ".print_r($reqParams,1)); - //\Log::channel('requests_managed')->debug("Cookies received: " . print_r($_COOKIE,1)); - if (isset($responseContent)) { - \Log::channel('requests_managed')->debug("\n" . $system . " " . $request->getClientIp() . " " . $methodUri . " :\n" . print_r($responseContent, 1)); - } + $this->logRejectedRequest($request); + return response('No cookie, no logged', 400, $this->headers); } } -- Gitblit v1.8.0