diff --git a/app/pages/login.vue b/app/pages/login.vue
index c49b77d..627608a 100644
--- a/app/pages/login.vue
+++ b/app/pages/login.vue
@@ -185,6 +185,7 @@ async function startMessengerLogin(channel: 'TELEGRAM' | 'MAX') {
channel,
baseUrl,
email: normalizedEmail.value,
+ redirectPath: `/profile/notifications/success?connected=${channel.toLowerCase()}`,
});
}
diff --git a/app/pages/notifications.vue b/app/pages/notifications.vue
index efbf88b..9d40536 100644
--- a/app/pages/notifications.vue
+++ b/app/pages/notifications.vue
@@ -78,7 +78,7 @@ async function connectMessenger(channel: 'TELEGRAM' | 'MAX') {
await openMessengerBot({
channel,
baseUrl,
- redirectPath: `/profile/notifications?status=success&connected=${channel.toLowerCase()}`,
+ redirectPath: `/profile/notifications/success?connected=${channel.toLowerCase()}`,
});
}
diff --git a/app/pages/profile/notifications.vue b/app/pages/profile/notifications.vue
index 2562632..b9159c1 100644
--- a/app/pages/profile/notifications.vue
+++ b/app/pages/profile/notifications.vue
@@ -23,7 +23,6 @@ type MessengerItem = {
};
const config = useRuntimeConfig();
-const route = useRoute();
const meQuery = useQuery(MeDocument);
const connectionsQuery = useQuery(MyMessengerConnectionsDocument);
const { openMessengerBot, pendingChannel } = useMessengerStart();
@@ -51,47 +50,6 @@ function buildBotConnectUrl(baseUrl: string) {
const telegramConnectUrl = computed(() => buildBotConnectUrl(config.public.telegramBotUrl || ''));
const maxConnectUrl = computed(() => buildBotConnectUrl(config.public.maxBotUrl || ''));
-const successChannel = computed(() => {
- const raw = String(route.query.connected || '').trim().toLowerCase();
- return raw === 'telegram' || raw === 'max' ? raw : '';
-});
-const showSuccess = computed(() => route.query.status === 'success' && Boolean(successChannel.value));
-const profileName = computed(() => meQuery.result.value?.me?.fullName?.trim() || meQuery.result.value?.me?.email || 'Пользователь');
-const profileInitials = computed(() =>
- profileName.value
- .split(' ')
- .filter(Boolean)
- .slice(0, 2)
- .map((part) => part.charAt(0).toUpperCase())
- .join('') || 'FR',
-);
-const successTitle = computed(() =>
- successChannel.value === 'telegram' ? 'Telegram успешно подключен' : 'Max успешно подключен',
-);
-const successText = computed(() =>
- successChannel.value === 'telegram'
- ? 'Теперь этот Telegram привязан к вашему кабинету, и уведомления будут приходить в него.'
- : 'Теперь этот Max привязан к вашему кабинету, и уведомления будут приходить в него.',
-);
-const successConnection = computed(() =>
- successChannel.value === 'telegram' ? telegramConnection.value : maxConnection.value,
-);
-const successAvatarSrc = computed(() => messengerConnectionAvatarSrc(successConnection.value));
-const successAvatarInitials = computed(() =>
- messengerConnectionInitials(
- successConnection.value,
- profileInitials.value,
- ),
-);
-const successConnectionName = computed(() => messengerConnectionName(successConnection.value));
-const successConnectionHandleValue = computed(() => messengerConnectionHandle(successConnection.value));
-
-onMounted(() => {
- if (showSuccess.value) {
- void connectionsQuery.refetch();
- void meQuery.refetch();
- }
-});
async function connectMessenger(channel: 'TELEGRAM' | 'MAX') {
const baseUrl = channel === 'TELEGRAM' ? telegramConnectUrl.value : maxConnectUrl.value;
@@ -102,7 +60,7 @@ async function connectMessenger(channel: 'TELEGRAM' | 'MAX') {
await openMessengerBot({
channel,
baseUrl,
- redirectPath: `/profile/notifications?status=success&connected=${channel.toLowerCase()}`,
+ redirectPath: `/profile/notifications/success?connected=${channel.toLowerCase()}`,
});
}
@@ -112,33 +70,6 @@ async function connectMessenger(channel: 'TELEGRAM' | 'MAX') {
- {{ successText }} -
-
Подключите Telegram и Max, чтобы получать статусы заказов и важные уведомления в удобном канале.
diff --git a/app/pages/profile/notifications/success.vue b/app/pages/profile/notifications/success.vue
new file mode 100644
index 0000000..522bc57
--- /dev/null
+++ b/app/pages/profile/notifications/success.vue
@@ -0,0 +1,112 @@
+
+
+
+
+ {{ successText }}
+
+
{{ successTitle }}
+