From ebeb72ee939b026ab37dc8d907a086d624653ca2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9my=20Munsch?= Date: Wed, 1 Dec 2021 16:00:05 +0100 Subject: [PATCH] Authentification fix the NOCRM from the .env --- app/Http/Controllers/AuthController.php | 39 +++++++++---------------- config/crm.php | 2 +- 2 files changed, 15 insertions(+), 26 deletions(-) diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php index 8bedb9a0..cf74f3f2 100644 --- a/app/Http/Controllers/AuthController.php +++ b/app/Http/Controllers/AuthController.php @@ -137,7 +137,13 @@ class AuthController extends Controller try { /** @var \LDC\LDCCRM\CrmApiV2 */ $crm = app('crmAPI'); - $loginIsValid = $crm->login($request->email, $request->password); + + // If login debug mode + if (config('app.debug') && config('crm.NOCRM')) { + $loginIsValid = true; + } else { + $loginIsValid = $crm->login($request->email, $request->password); + } // ne devrait pas survenir, $crm->login throws ApiError::authFailed() if (!$loginIsValid) { @@ -145,37 +151,19 @@ class AuthController extends Controller return back()->withErrors("Email ou mot de passe incorrect."); } - // Login - if (($loginIsValid and $customer) or (config('app.debug') && env('NOCRM'))) { + // Login un compte local existe + if ($customer) { return $this->processLogin($customer, $request->remember); } // Si pas de compte local mais existe en CRM - try { - $crmCustomer = $crm->getCustomer($request->email); - $customer = $this->createLocalCustomer($crmCustomer); - } catch (CrmException | ApiErrorException $e) { - Utils::sendEmailErrorManually($e); - // Une erreur critique est survenue avec la CRM - return back()->withErrors('Une erreur est survenue, merci de réessayer ultérieurement.'); - } catch (\Exception $e) { - // TODO remove this test - Utils::sendEmailErrorManually($e); - Utils::sendEmailErrorManually(new \Exception(sprintf( - 'Reset pwd user hascode was request email %s null for %s,%s,%s,%s', - $request->email, - $crmCustomer->hashcode, - $crmCustomer->email, - $crmCustomer->city, - $crmCustomer->lastname - ))); - return back()->withErrors('Une erreur est survenue, merci de réessayer ultérieurement.'); - } + $crmCustomer = $crm->getCustomer($request->email); + $customer = $this->createLocalCustomer($crmCustomer); return $this->processLogin($customer, $request->remember); } catch (ApiErrorException $e) { return $this->handleLoginApiErrorException($e, $request); - } catch (CrmException $e) { + } catch (CrmException | \Exception $e) { Utils::sendEmailErrorManually($e); // Une erreur critique est survenue avec la CRM return back()->withErrors('Une erreur est survenue, merci de réessayer ultérieurement.'); @@ -223,7 +211,8 @@ class AuthController extends Controller le mail de confirmation. Un lien d\'activation vous a été renvoyé.') ); default: - // une erreur non gérée + Utils::sendEmailErrorManually($e); + // une erreur non gérée return back()->withErrors('Une erreur est survenue, merci de réessayer ultérieurement.'); } } diff --git a/config/crm.php b/config/crm.php index bb9e2100..535c8a8f 100644 --- a/config/crm.php +++ b/config/crm.php @@ -5,5 +5,5 @@ return [ 'endpoint' => env('CRM_ENDPOINT'), 'token' => env('CRM_TOKEN'), 'password' => env('CRM_PASSWORD'), - + 'NOCRM' => env('NOCRM') ];