getValue( 'SELECT id FROM account.user WHERE `name` = #', [$_REQUEST['supplantUser']] ); $isClient = $db->getValue( 'SELECT COUNT(*) > 0 FROM vn.client WHERE id = #', [$userId] ); if (!$isClient) throw new Web\ForbiddenException(s('The user is not a client')); $hasAccount = $db->getValue( 'SELECT COUNT(*) > 0 FROM account.account WHERE id = #', [$userId] ); if ($hasAccount) throw new Web\ForbiddenException(s('The user is not impersonable')); return $this->service->createToken($_REQUEST['supplantUser']); } }