mirror of
https://github.com/openvk/openvk
synced 2025-01-09 01:09:46 +03:00
051fb316a4
* Add Utils.resolveScreenName * Codestyle fix in Utils.resolveScreenName
39 lines
1.3 KiB
PHP
39 lines
1.3 KiB
PHP
<?php declare(strict_types=1);
|
|
namespace openvk\VKAPI\Handlers;
|
|
|
|
use openvk\Web\Models\Entities\Alias;
|
|
use openvk\Web\Models\Repositories\Aliases;
|
|
|
|
final class Utils extends VKAPIRequestHandler
|
|
{
|
|
function getServerTime(): int
|
|
{
|
|
return time();
|
|
}
|
|
|
|
function resolveScreenName(string $screen_name): object
|
|
{
|
|
if(\Chandler\MVC\Routing\Router::i()->getMatchingRoute("/$screen_name")[0]->presenter !== "UnknownTextRouteStrategy") {
|
|
if(substr($screen_name, 0, strlen("id")) === "id") {
|
|
return (object) [
|
|
"object_id" => (int) substr($screen_name, strlen("id")),
|
|
"type" => "user"
|
|
];
|
|
} else if(substr($screen_name, 0, strlen("club")) === "club") {
|
|
return (object) [
|
|
"object_id" => (int) substr($screen_name, strlen("club")),
|
|
"type" => "group"
|
|
];
|
|
}
|
|
} else {
|
|
$alias = (new Aliases)->getByShortCode($screen_name);
|
|
|
|
if(!$alias) return (object)[];
|
|
|
|
return (object) [
|
|
"object_id" => $alias->getOwnerId(),
|
|
"type" => $alias->getType()
|
|
];
|
|
}
|
|
}
|
|
}
|