Skip to content

Commit db94c94

Browse files
committed
updated browscap mapping
Signed-off-by: bidi <bidi@apidemia.com>
1 parent 8db3038 commit db94c94

1 file changed

Lines changed: 14 additions & 10 deletions

File tree

src/Admin/src/Service/AdminLoginService.php

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@
1515
use Dot\GeoIP\Service\LocationService;
1616
use Exception;
1717

18+
use function get_browser;
1819
use function in_array;
20+
use function ini_get;
1921

2022
class AdminLoginService implements AdminLoginServiceInterface
2123
{
@@ -114,24 +116,26 @@ private function logAdminVisit(array $serverParams, string $name, SuccessFailure
114116
//check browscap availability
115117
if (ini_get('browscap')) {
116118
//call browscap
117-
$browser = get_browser($_SERVER['HTTP_USER_AGENT'], true);
119+
$browser = get_browser($_SERVER['HTTP_USER_AGENT']);
118120

119121
//map browscap to AdminLogin
120122
$adminLogin = (new AdminLogin())
121123
->setAdminIp($this->locationService->obfuscateIpAddress($ipAddress))
122124
->setContinent($continent)
123125
->setCountry($country)
124126
->setOrganization($organization)
125-
->setDeviceType($browser['device_type'])
126-
->setDeviceBrand($browser['device_name'])
127+
->setDeviceType($browser->device_type ?? null)
128+
->setDeviceBrand($browser->device_name ?? null)
127129
->setDeviceModel(null)
128-
->setIsMobile($browser['ismobiledevice'] ? YesNoEnum::Yes : YesNoEnum::No)
129-
->setOsName($browser['platform_description'])
130-
->setOsVersion($browser['platform_version'])
131-
->setOsPlatform($browser['platform'])
132-
->setClientType($browser['browser_type'])
133-
->setClientName($browser['browser'])
134-
->setClientEngine($browser['renderingengine_name'])
130+
->setIsMobile(
131+
isset($browser->ismobiledevice) && $browser->ismobiledevice ? YesNoEnum::Yes : YesNoEnum::No
132+
)
133+
->setOsName($browser->platform_description ?? null)
134+
->setOsVersion($browser->platform_version ?? null)
135+
->setOsPlatform($browser->platform ?? null)
136+
->setClientType($browser->browser_type ?? null)
137+
->setClientName($browser->browser ?? null)
138+
->setClientEngine($browser->renderingengine_name ?? null)
135139
->setClientVersion(null)
136140
->setLoginStatus($status)
137141
->setIdentity($name);

0 commit comments

Comments
 (0)