private function syncOAuthClient($app) { $client = OAuthClient::find($app->client_id); if (!$client) { return $this->addOAuthClient($app); } $client->name = $app->name; $client->save(); $endpoint = OAuthClientEndPoint::find($app->client_id); $endpoint->redirect_uri = $app->redirect_uri; $endpoint->save(); OAuthClientScope::where('client_id', $app->client_id)->delete(); $scopes = []; $scopeString = $app->scopes; if ($scopeString !== null) { $scopes = explode(',', $scopeString); } foreach ($scopes as $scope_id) { $clientScope = new OAuthClientScope(['client_id' => $app->client_id, 'scope_id' => $scope_id]); $clientScope->save(); } }