From e880d833776ae2f573bd8257e0cb61406dd2a6c9 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Wed, 14 Jun 2023 13:25:38 +0200 Subject: [PATCH] Link: Fix autologin (#3281) --- src/api/gramjs/apiBuilders/appConfig.ts | 5 +---- src/api/gramjs/apiBuilders/misc.ts | 1 + src/api/types/misc.ts | 2 +- src/global/actions/api/messages.ts | 6 +++--- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/api/gramjs/apiBuilders/appConfig.ts b/src/api/gramjs/apiBuilders/appConfig.ts index 31eb71993..5edac2d27 100644 --- a/src/api/gramjs/apiBuilders/appConfig.ts +++ b/src/api/gramjs/apiBuilders/appConfig.ts @@ -50,9 +50,7 @@ function buildEmojiSounds(appConfig: GramJsAppConfig) { accessHash: BigInt(l.access_hash), dcId: 1, mimeType: 'audio/ogg', - fileReference: Buffer.from(atob(l.file_reference_base64 - .replace(/-/g, '+') - .replace(/_/g, '/'))), + fileReference: Buffer.alloc(0), size: BigInt(0), } as GramJs.Document); @@ -75,7 +73,6 @@ export function buildAppConfig(json: GramJs.TypeJSONValue, hash: number): ApiApp seenByMaxChatMembers: appConfig.chat_read_mark_size_threshold, seenByExpiresAt: appConfig.chat_read_mark_expire_period, autologinDomains: appConfig.autologin_domains || [], - autologinToken: appConfig.autologin_token || '', urlAuthDomains: appConfig.url_auth_domains || [], maxUniqueReactions: appConfig.reactions_uniq_max, premiumBotUsername: appConfig.premium_bot_username, diff --git a/src/api/gramjs/apiBuilders/misc.ts b/src/api/gramjs/apiBuilders/misc.ts index 1bd108fba..93d258783 100644 --- a/src/api/gramjs/apiBuilders/misc.ts +++ b/src/api/gramjs/apiBuilders/misc.ts @@ -250,5 +250,6 @@ export function buildApiConfig(config: GramJs.Config): ApiConfig { gifSearchUsername: config.gifSearchUsername, defaultReaction, maxGroupSize: config.chatSizeMax, + autologinToken: config.autologinToken, }; } diff --git a/src/api/types/misc.ts b/src/api/types/misc.ts index 45139af24..0e94a8ca6 100644 --- a/src/api/types/misc.ts +++ b/src/api/types/misc.ts @@ -175,7 +175,6 @@ export interface ApiAppConfig { seenByMaxChatMembers: number; seenByExpiresAt: number; autologinDomains: string[]; - autologinToken: string; urlAuthDomains: string[]; premiumInvoiceSlug: string; premiumBotUsername: string; @@ -196,6 +195,7 @@ export interface ApiConfig { defaultReaction?: ApiReaction; gifSearchUsername?: string; maxGroupSize: number; + autologinToken?: string; } export interface GramJsEmojiInteraction { diff --git a/src/global/actions/api/messages.ts b/src/global/actions/api/messages.ts index a6258f6b4..a7c449fcb 100644 --- a/src/global/actions/api/messages.ts +++ b/src/global/actions/api/messages.ts @@ -1380,12 +1380,12 @@ addActionHandler('openUrl', (global, actions, payload): ActionReturnType => { return; } - const { appConfig } = global; + const { appConfig, config } = global; if (appConfig) { const parsedUrl = new URL(urlWithProtocol); - if (appConfig.autologinDomains.includes(parsedUrl.hostname)) { - parsedUrl.searchParams.set(AUTOLOGIN_TOKEN_KEY, appConfig.autologinToken); + if (config?.autologinToken && appConfig.autologinDomains.includes(parsedUrl.hostname)) { + parsedUrl.searchParams.set(AUTOLOGIN_TOKEN_KEY, config.autologinToken); window.open(parsedUrl.href, '_blank', 'noopener'); return; }