@@ -1,19 +1,19 @@ discard block |
||
| 1 | 1 | <?php |
| 2 | -declare(strict_types = 1); |
|
| 2 | +declare(strict_types=1); |
|
| 3 | 3 | namespace hexydec\agentzero; |
| 4 | 4 | |
| 5 | 5 | class platforms { |
| 6 | 6 | |
| 7 | 7 | public static function get() { |
| 8 | 8 | $fn = [ |
| 9 | - 'platformspace' => function (string $value) : array { |
|
| 9 | + 'platformspace' => function(string $value) : array { |
|
| 10 | 10 | $parts = \explode(' ', $value, 2); |
| 11 | 11 | return [ |
| 12 | 12 | 'platform' => $parts[0], |
| 13 | 13 | 'platformversion' => $parts[1] ?? null |
| 14 | 14 | ]; |
| 15 | 15 | }, |
| 16 | - 'platformlinux' => function (string $value) : array { |
|
| 16 | + 'platformlinux' => function(string $value) : array { |
|
| 17 | 17 | if (!\str_starts_with($value, 'Red Hat/') && ($platform = \mb_strstr($value, ' ', true)) !== false) { |
| 18 | 18 | $value = $platform; |
| 19 | 19 | } |
@@ -32,7 +32,7 @@ discard block |
||
| 32 | 32 | 'platformversion' => isset($parts[1]) && \strspn($parts[1], '0123456789.-_') > 0 ? $parts[1] : null |
| 33 | 33 | ]; |
| 34 | 34 | }, |
| 35 | - 'platformwindows' => function (string $value) : array { |
|
| 35 | + 'platformwindows' => function(string $value) : array { |
|
| 36 | 36 | $mapping = [ |
| 37 | 37 | '5.0' => '2000', |
| 38 | 38 | '5.1' => 'XP', |
@@ -69,7 +69,7 @@ discard block |
||
| 69 | 69 | ], |
| 70 | 70 | 'Windows Phone' => [ |
| 71 | 71 | 'match' => 'start', |
| 72 | - 'categories' => function (string $value) : array { |
|
| 72 | + 'categories' => function(string $value) : array { |
|
| 73 | 73 | $version = \mb_substr($value, 14); |
| 74 | 74 | return [ |
| 75 | 75 | 'type' => 'human', |
@@ -110,7 +110,7 @@ discard block |
||
| 110 | 110 | ], |
| 111 | 111 | 'Mac OS X' => [ |
| 112 | 112 | 'match' => 'any', |
| 113 | - 'categories' => function (string $value) : array { |
|
| 113 | + 'categories' => function(string $value) : array { |
|
| 114 | 114 | $version = \str_replace('_', '.', \mb_substr($value, \mb_stripos($value, 'Mac OS X') + 9)); |
| 115 | 115 | $register = $version && \intval(\explode('.', $version)[1] ?? 0) >= 6 ? 64 : null; |
| 116 | 116 | return [ |
@@ -133,7 +133,7 @@ discard block |
||
| 133 | 133 | ], |
| 134 | 134 | 'CrOS' => [ |
| 135 | 135 | 'match' => 'start', |
| 136 | - 'categories' => function (string $value) : array { |
|
| 136 | + 'categories' => function(string $value) : array { |
|
| 137 | 137 | $parts = \explode(' ', $value); |
| 138 | 138 | return [ |
| 139 | 139 | 'type' => 'human', |
@@ -154,7 +154,7 @@ discard block |
||
| 154 | 154 | ], |
| 155 | 155 | 'Tizen' => [ |
| 156 | 156 | 'match' => 'start', |
| 157 | - 'categories' => function (string $value) : array { |
|
| 157 | + 'categories' => function(string $value) : array { |
|
| 158 | 158 | $parts = \explode(' ', $value, 2); |
| 159 | 159 | return [ |
| 160 | 160 | 'type' => 'human', |
@@ -257,7 +257,7 @@ discard block |
||
| 257 | 257 | ], |
| 258 | 258 | 'AmigaOS' => [ |
| 259 | 259 | 'match' => 'any', |
| 260 | - 'categories' => function (string $value) : array { |
|
| 260 | + 'categories' => function(string $value) : array { |
|
| 261 | 261 | if (($pos = \mb_stripos($value, 'AmigaOS')) !== false) { |
| 262 | 262 | $value = \mb_substr($value, $pos); |
| 263 | 263 | } |
@@ -273,7 +273,7 @@ discard block |
||
| 273 | 273 | ], |
| 274 | 274 | 'Fuchsia' => [ |
| 275 | 275 | 'match' => 'exact', |
| 276 | - 'categories' => function (string $value, int $i, array $tokens) : array { |
|
| 276 | + 'categories' => function(string $value, int $i, array $tokens) : array { |
|
| 277 | 277 | $os = \explode(' ', $tokens[++$i], 2); |
| 278 | 278 | return [ |
| 279 | 279 | 'type' => 'human', |
@@ -286,7 +286,7 @@ discard block |
||
| 286 | 286 | ], |
| 287 | 287 | 'Maemo' => [ |
| 288 | 288 | 'match' => 'exact', |
| 289 | - 'categories' => function (string $value, int $i, array $tokens) : array { |
|
| 289 | + 'categories' => function(string $value, int $i, array $tokens) : array { |
|
| 290 | 290 | $os = \explode(' ', $tokens[++$i], 2); |
| 291 | 291 | return [ |
| 292 | 292 | 'type' => 'human', |
@@ -308,7 +308,7 @@ discard block |
||
| 308 | 308 | ], |
| 309 | 309 | 'Haiku' => [ |
| 310 | 310 | 'match' => 'any', |
| 311 | - 'categories' => function (string $value) : array { |
|
| 311 | + 'categories' => function(string $value) : array { |
|
| 312 | 312 | $parts = \explode('/', $value, 2); |
| 313 | 313 | return [ |
| 314 | 314 | 'type' => 'human', |
@@ -321,7 +321,7 @@ discard block |
||
| 321 | 321 | ], |
| 322 | 322 | 'BeOS' => [ |
| 323 | 323 | 'match' => 'start', |
| 324 | - 'categories' => function (string $value) : array { |
|
| 324 | + 'categories' => function(string $value) : array { |
|
| 325 | 325 | $parts = \explode('/', $value, 2); |
| 326 | 326 | return [ |
| 327 | 327 | 'type' => 'human', |
@@ -334,7 +334,7 @@ discard block |
||
| 334 | 334 | ], |
| 335 | 335 | 'Android' => [ |
| 336 | 336 | 'match' => 'start', |
| 337 | - 'categories' => function (string $value, int $i, array $tokens) : ?array { |
|
| 337 | + 'categories' => function(string $value, int $i, array $tokens) : ?array { |
|
| 338 | 338 | $os = \explode(' ', $value, 3); |
| 339 | 339 | $device = empty($tokens[++$i]) ? [] : devices::getDevice($tokens[$i]); |
| 340 | 340 | return \array_merge($device, [ |
@@ -355,7 +355,7 @@ discard block |
||
| 355 | 355 | ], |
| 356 | 356 | 'X11' => [ |
| 357 | 357 | 'match' => 'exact', |
| 358 | - 'categories' => function (string $value, int $i, array $tokens) : array { |
|
| 358 | + 'categories' => function(string $value, int $i, array $tokens) : array { |
|
| 359 | 359 | $os = \explode(' ', $tokens[++$i], 2); |
| 360 | 360 | return [ |
| 361 | 361 | 'type' => 'human', |
@@ -1,5 +1,5 @@ discard block |
||
| 1 | 1 | <?php |
| 2 | -declare(strict_types = 1); |
|
| 2 | +declare(strict_types=1); |
|
| 3 | 3 | namespace hexydec\agentzero; |
| 4 | 4 | |
| 5 | 5 | class languages { |
@@ -210,7 +210,7 @@ discard block |
||
| 210 | 210 | ]; |
| 211 | 211 | $fn = [ |
| 212 | 212 | 'match' => 'start', |
| 213 | - 'categories' => function (string $value) : ?array { |
|
| 213 | + 'categories' => function(string $value) : ?array { |
|
| 214 | 214 | $len = \strlen($value); |
| 215 | 215 | if ($len === 2) { |
| 216 | 216 | return ['language' => $value]; |
@@ -1,5 +1,5 @@ discard block |
||
| 1 | 1 | <?php |
| 2 | -declare(strict_types = 1); |
|
| 2 | +declare(strict_types=1); |
|
| 3 | 3 | namespace hexydec\agentzero; |
| 4 | 4 | |
| 5 | 5 | class crawlers { |
@@ -31,7 +31,7 @@ discard block |
||
| 31 | 31 | 'crawler' => fn (string $value) : array => self::getApp($value, ['category' => 'crawler']), |
| 32 | 32 | 'monitor' => fn (string $value) : array => self::getApp($value, ['category' => 'monitor']), |
| 33 | 33 | 'scraper' => fn (string $value) : array => self::getApp($value, ['category' => 'scraper']), |
| 34 | - 'map' => function (string $value, int $i, array $tokens) : ?array { |
|
| 34 | + 'map' => function(string $value, int $i, array $tokens) : ?array { |
|
| 35 | 35 | if (!\str_contains($value, '://')) { // bot will be in the URL |
| 36 | 36 | $parts = \explode('/', $value, 2); |
| 37 | 37 | |
@@ -166,7 +166,7 @@ discard block |
||
| 166 | 166 | ], |
| 167 | 167 | 'Pingdom.com' => [ |
| 168 | 168 | 'match' => 'start', |
| 169 | - 'categories' => function (string $value) : array { |
|
| 169 | + 'categories' => function(string $value) : array { |
|
| 170 | 170 | $version = \explode('_', \trim($value, '_')); |
| 171 | 171 | return [ |
| 172 | 172 | 'type' => 'robot', |
@@ -251,7 +251,7 @@ discard block |
||
| 251 | 251 | ], |
| 252 | 252 | 'Microsoft Office' => [ |
| 253 | 253 | 'match' => 'start', |
| 254 | - 'categories' => function (string $value, int $i, array $tokens) : array { |
|
| 254 | + 'categories' => function(string $value, int $i, array $tokens) : array { |
|
| 255 | 255 | $data = [ |
| 256 | 256 | 'type' => 'robot', |
| 257 | 257 | 'category' => 'feed' |
@@ -1,12 +1,12 @@ discard block |
||
| 1 | 1 | <?php |
| 2 | -declare(strict_types = 1); |
|
| 2 | +declare(strict_types=1); |
|
| 3 | 3 | namespace hexydec\agentzero; |
| 4 | 4 | |
| 5 | 5 | class apps { |
| 6 | 6 | |
| 7 | 7 | public static function get() { |
| 8 | 8 | $fn = [ |
| 9 | - 'appslash' => function (string $value) : ?array { |
|
| 9 | + 'appslash' => function(string $value) : ?array { |
|
| 10 | 10 | if (!\str_starts_with($value, 'AppleWebKit') && !\str_contains($value, '://')) { |
| 11 | 11 | $parts = \explode('/', $value, 2); |
| 12 | 12 | return [ |
@@ -24,7 +24,7 @@ discard block |
||
| 24 | 24 | ], |
| 25 | 25 | 'Instagram' => [ |
| 26 | 26 | 'match' => 'any', |
| 27 | - 'categories' => function (string $value, int $i, array $tokens) : array { |
|
| 27 | + 'categories' => function(string $value, int $i, array $tokens) : array { |
|
| 28 | 28 | $data = [ |
| 29 | 29 | 'app' => 'Instagram', |
| 30 | 30 | 'appversion' => \explode(' ', $value, 3)[1] ?? null |
@@ -64,7 +64,7 @@ discard block |
||
| 64 | 64 | // special parser for Facebook app because it is completely different to any other |
| 65 | 65 | 'FBAN/' => [ |
| 66 | 66 | 'match' => 'start', |
| 67 | - 'categories' => function (string $value) : array { |
|
| 67 | + 'categories' => function(string $value) : array { |
|
| 68 | 68 | $map = [ |
| 69 | 69 | 'FBAN/MessengerLiteForiOS' => [ |
| 70 | 70 | 'type' => 'human', |
@@ -137,7 +137,7 @@ discard block |
||
| 137 | 137 | ], |
| 138 | 138 | 'FBDM/' => [ |
| 139 | 139 | 'match' => 'start', |
| 140 | - 'categories' => function (string $value) : array { |
|
| 140 | + 'categories' => function(string $value) : array { |
|
| 141 | 141 | $data = []; |
| 142 | 142 | foreach (\explode(',', \trim(\mb_substr($value, 5), '{}')) AS $item) { |
| 143 | 143 | $parts = \explode('=', $item); |