diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index 8cb1362841e6..c859e8a153fa 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -269,12 +269,14 @@ class LoginController extends BaseController $user = $google->getTokenResponse(request()->input('id_token')); if (is_array($user)) { + $query = [ 'oauth_user_id' => $google->harvestSubField($user), 'oauth_provider_id'=> 'google', ]; if ($existing_user = MultiDB::hasUser($query)) { + Auth::login($existing_user, true); $existing_user->setCompany($existing_user->account->default_company); @@ -282,6 +284,7 @@ class LoginController extends BaseController ->where('user_id', auth()->user()->id); return $this->listResponse($cu); + } } diff --git a/app/Http/Controllers/ConnectedAccountController.php b/app/Http/Controllers/ConnectedAccountController.php index 80acf01133ee..06c7d04d67b3 100644 --- a/app/Http/Controllers/ConnectedAccountController.php +++ b/app/Http/Controllers/ConnectedAccountController.php @@ -87,7 +87,16 @@ class ConnectedAccountController extends BaseController $google = new Google(); - $user = $google->getTokenResponse(request()->input('id_token')); + if($request->header('X-API-OAUTH-PASSWORD') && strlen($request->header('X-API-OAUTH-PASSWORD')) >=1){ + $user = $google->getTokenResponse($request->header('X-API-OAUTH-PASSWORD')); + } + else { + return response() + ->json(['message' => 'No valid oauth parameter sent.'], 401) + ->header('X-App-Version', config('ninja.app_version')) + ->header('X-Api-Version', config('ninja.minimum_client_version')); + } + if (is_array($user)) { diff --git a/app/Jobs/Util/Import.php b/app/Jobs/Util/Import.php index 4d29271c360b..b60c210d6c66 100644 --- a/app/Jobs/Util/Import.php +++ b/app/Jobs/Util/Import.php @@ -214,9 +214,14 @@ class Import implements ShouldQueue // if($check_data['status'] == 'errors') // throw new ProcessingMigrationArchiveFailed(implode("\n", $check_data)); - Mail::to($this->user->email, $this->user->name()) - ->send(new MigrationCompleted($this->company, implode("
",$check_data))); - + try{ + Mail::to($this->user->email, $this->user->name()) + ->send(new MigrationCompleted($this->company, implode("
",$check_data))); + } + catch(\Exception $e) { + nlog($e->getMessage()); + } + /*After a migration first some basic jobs to ensure the system is up to date*/ VersionCheck::dispatch(); CompanySizeCheck::dispatch();