diff --git a/app/controllers/api/account.php b/app/controllers/api/account.php index 436f59876..a2f3f2f8f 100644 --- a/app/controllers/api/account.php +++ b/app/controllers/api/account.php @@ -138,7 +138,7 @@ App::post('/v1/account/sessions') /** @var Appwrite\Utopia\Response $response */ /** @var Appwrite\Database\Database $projectDB */ /** @var Utopia\Locale\Locale $locale */ - /** @var GeoIp2\Database\Reader $geodb */ + /** @var MaxMind\Db\Reader $geodb */ /** @var Appwrite\Event\Event $audits */ $protocol = $request->getProtocol(); @@ -203,10 +203,13 @@ App::post('/v1/account/sessions') ]); try { - $record = $geodb->country($request->getIP()); - $session - ->setAttribute('countryCode', \strtolower($record->country->isoCode)) - ; + $record = $geodb->get($request->getIP()); + + if($record) { + $session + ->setAttribute('countryCode', \strtolower($record['country']['iso_code'])) + ; + } } catch (\Exception $e) { $session ->setAttribute('countryCode', '--') @@ -375,7 +378,7 @@ App::get('/v1/account/sessions/oauth2/:provider/redirect') /** @var Appwrite\Database\Document $project */ /** @var Appwrite\Database\Document $user */ /** @var Appwrite\Database\Database $projectDB */ - /** @var GeoIp2\Database\Reader $geodb */ + /** @var MaxMind\Db\Reader $geodb */ /** @var Appwrite\Event\Event $audits */ $protocol = $request->getProtocol(); @@ -540,10 +543,13 @@ App::get('/v1/account/sessions/oauth2/:provider/redirect') ]); try { - $record = $geodb->country($request->getIP()); - $session - ->setAttribute('countryCode', \strtolower($record->country->isoCode)) - ; + $record = $geodb->get($request->getIP()); + + if ($record) { + $session + ->setAttribute('countryCode', \strtolower($record['country']['iso_code'])) + ; + } } catch (\Exception $e) { $session ->setAttribute('countryCode', '--') diff --git a/app/controllers/api/teams.php b/app/controllers/api/teams.php index deb3b03aa..9b60606a3 100644 --- a/app/controllers/api/teams.php +++ b/app/controllers/api/teams.php @@ -468,7 +468,7 @@ App::patch('/v1/teams/:teamId/memberships/:inviteId/status') /** @var Appwrite\Utopia\Response $response */ /** @var Appwrite\Database\Document $user */ /** @var Appwrite\Database\Database $projectDB */ - /** @var GeoIp2\Database\Reader $geodb */ + /** @var MaxMind\Db\Reader $geodb */ /** @var Appwrite\Event\Event $audits */ $protocol = $request->getProtocol(); @@ -570,10 +570,13 @@ App::patch('/v1/teams/:teamId/memberships/:inviteId/status') ]); try { - $record = $geodb->country($request->getIP()); - $session - ->setAttribute('countryCode', \strtolower($record->country->isoCode)) - ; + $record = $geodb->get($request->getIP()); + + if ($record) { + $session + ->setAttribute('countryCode', \strtolower($record['country']['iso_code'])) + ; + } } catch (\Exception $e) { $session ->setAttribute('countryCode', '--')