change support text and link

This commit is contained in:
PhilReact 2025-06-04 14:33:58 +03:00 committed by Nicola Benaglia
parent 4ddd2cd589
commit e0eb53530e
19 changed files with 94 additions and 23 deletions

View File

@ -70,17 +70,14 @@ export const NewUsersCTA = ({ balance }) => {
onClick={() => {
if (window?.electronAPI?.openExternal) {
window.electronAPI.openExternal(
'https://link.qortal.dev/telegram-invite'
'https://link.qortal.dev/support'
);
} else {
window.open(
'https://link.qortal.dev/telegram-invite',
'_blank'
);
window.open('https://link.qortal.dev/support', '_blank');
}
}}
>
Telegram
Nextcloud
</ButtonBase>
<ButtonBase

View File

@ -188,3 +188,6 @@ export {
export const RESOURCE_TYPE_NUMBER_GROUP_CHAT_REACTIONS = 102;
export const PUBLIC_NOTIFICATION_CODE_FIRST_SECRET_KEY = '4001'; // Q for Qortal
export const MAX_SIZE_PUBLIC_NODE = 500 * 1024 * 1024; // 500mb
export const MAX_SIZE_PUBLISH = 2000 * 1024 * 1024; // 2GB

View File

@ -169,7 +169,7 @@
},
"member": "mitglied",
"member_other": "mitglieder",
"message_us": "bitte senden Sie uns eine Nachricht in Telegramm oder Discord, wenn Sie 4 Qort benötigen, um ohne Einschränkungen zu chatten",
"message_us": "bitte senden Sie uns eine Nachricht in Nextcloud (keine Anmeldung erforderlich) oder Discord, wenn Sie 4 QORT benötigen, um ohne Einschränkungen zu chatten",
"message": {
"error": {
"address_not_found": "ihre Adresse wurde nicht gefunden",

View File

@ -98,7 +98,9 @@
"upload_encryption": "der Upload ist aufgrund fehlgeschlagener Verschlüsselung fehlgeschlagen",
"upload": "upload fehlgeschlagen",
"use_private_service": "für eine verschlüsselte Veröffentlichung verwenden Sie bitte einen Dienst, der mit _Private endet",
"user_qortal_name": "der Benutzer hat keinen Qortalnamen"
"user_qortal_name": "der Benutzer hat keinen Qortalnamen",
"max_size_publish": "maximale Dateigröße pro Datei: {{size}} GB.",
"max_size_publish_public": "maximale Dateigröße auf dem öffentlichen Knoten: {{size}} MB. Bitte verwenden Sie Ihren lokalen Knoten für größere Dateien."
},
"generic": {
"calculate_fee": "*the {{ amount }} sats fee is derived from {{ rate }} sats per kb, for a transaction that is approximately 300 bytes in size.",

View File

@ -173,7 +173,7 @@
},
"member": "member",
"member_other": "members",
"message_us": "please message us on Telegram or Discord if you need 4 QORT to start chatting without any limitations",
"message_us": "please message us on Nextcloud (no signup required) or Discord if you need 4 QORT to start chatting without any limitations",
"message": {
"error": {
"address_not_found": "your address was not found",

View File

@ -98,7 +98,9 @@
"upload_encryption": "upload failed due to failed encryption",
"upload": "upload failed",
"use_private_service": "for an encrypted publish please use a service that ends with _PRIVATE",
"user_qortal_name": "user has no Qortal name"
"user_qortal_name": "user has no Qortal name",
"max_size_publish": "maximum file size allowed is {{size}} GB per file.",
"max_size_publish_public": "maximum file size allowed on the public node is {{size}} MB. Please use your local node for larger files."
},
"generic": {
"calculate_fee": "*the {{ amount }} sats fee is derived from {{ rate }} sats per kb, for a transaction that is approximately 300 bytes in size.",

View File

@ -170,7 +170,7 @@
},
"member": "miembro",
"member_other": "miembros",
"message_us": "envíenos un mensaje en Telegram o Discord si necesita 4 Qort para comenzar a chatear sin limitaciones",
"message_us": "envíenos un mensaje en Nextcloud (no requiere registro) o Discord si necesita 4 QORT para comenzar a chatear sin limitaciones",
"message": {
"error": {
"address_not_found": "no se encontró su dirección",

View File

@ -98,7 +98,9 @@
"upload_encryption": "carga fallida debido al cifrado fallido",
"upload": "carga falló",
"use_private_service": "para una publicación encriptada, utilice un servicio que termine con _Private",
"user_qortal_name": "el usuario no tiene nombre Qortal"
"user_qortal_name": "el usuario no tiene nombre Qortal",
"max_size_publish": "tamaño máximo permitido por archivo: {{size}} GB.",
"max_size_publish_public": "tamaño máximo permitido en el nodo público: {{size}} MB. Por favor, utilice su nodo local para archivos más grandes."
},
"generic": {
"calculate_fee": "*the {{ amount }} sats fee is derived from {{ rate }} sats per kb, for a transaction that is approximately 300 bytes in size.",

View File

@ -171,7 +171,7 @@
},
"member": "membre",
"member_other": "membres",
"message_us": "veuillez nous envoyer un message sur Telegram ou Discord si vous avez besoin de 4 Qort pour commencer à discuter sans aucune limitation",
"message_us": "veuillez nous envoyer un message sur Nextcloud (aucune inscription requise) ou Discord si vous avez besoin de 4 QORT pour commencer à discuter sans aucune limitation",
"message": {
"error": {
"address_not_found": "votre adresse n'a pas été trouvée",

View File

@ -98,7 +98,9 @@
"upload_encryption": "upload failed due to failed encryption",
"upload": "upload failed",
"use_private_service": "for an encrypted publish please use a service that ends with _PRIVATE",
"user_qortal_name": "user has no Qortal name"
"user_qortal_name": "user has no Qortal name",
"max_size_publish": "taille maximale autorisée par fichier : {{size}} GB.",
"max_size_publish_public": "taille maximale autorisée sur le nœud public : {{size}} MB. Veuillez utiliser votre nœud local pour les fichiers plus volumineux."
},
"generic": {
"calculate_fee": "*the {{ amount }} sats fee is derived from {{ rate }} sats per kb, for a transaction that is approximately 300 bytes in size.",

View File

@ -173,7 +173,7 @@
},
"member": "membro",
"member_other": "membri",
"message_us": "si prega di inviarci un messaggio su Telegram o Discord se hai bisogno di 4 Qort per iniziare a chattare senza limitazioni",
"message_us": "si prega di inviarci un messaggio su Nextcloud (nessuna registrazione richiesta) o Discord se hai bisogno di 4 QORT per iniziare a chattare senza limitazioni",
"message": {
"error": {
"address_not_found": "il tuo indirizzo non è stato trovato.",

View File

@ -98,7 +98,9 @@
"upload_encryption": "caricamento fallito a causa della criptazione",
"upload": "caricamento fallito",
"use_private_service": "per pubblicare criptato, usa un servizio che termina con _PRIVATE",
"user_qortal_name": "l'utente non ha un nome Qortal"
"user_qortal_name": "l'utente non ha un nome Qortal",
"max_size_publish": "dimensione massima consentita per file: {{size}} GB.",
"max_size_publish_public": "dimensione massima consentita sul nodo pubblico: {{size}} MB. Si prega di utilizzare il proprio nodo locale per file più grandi."
},
"generic": {
"calculate_fee": "*la commissione di {{ amount }} sats è calcolata su una tariffa di {{ rate }} sats per kb, per una transazione di circa 300 byte.",

View File

@ -170,7 +170,7 @@
},
"member": "メンバー",
"member_other": "メンバー",
"message_us": "制限なしにチャットを開始するために4 Qortが必要な場合は、電報または不一致で私たちにメッセージを送ってください",
"message_us": "制限なしにチャットを開始するために4 QORTが必要な場合は、Nextcloud登録不要またはDiscordで私たちにメッセージを送ってください",
"message": {
"error": {
"address_not_found": "あなたの住所は見つかりませんでした",

View File

@ -98,7 +98,9 @@
"upload_encryption": "upload failed due to failed encryption",
"upload": "upload failed",
"use_private_service": "for an encrypted publish please use a service that ends with _PRIVATE",
"user_qortal_name": "user has no Qortal name"
"user_qortal_name": "user has no Qortal name",
"max_size_publish": "ファイルごとの最大許容サイズ:{{size}} GB。",
"max_size_publish_public": "パブリックノードでの最大許容サイズ:{{size}} MB。ローカルードをご利用ください。"
},
"generic": {
"calculate_fee": "*the {{ amount }} sats fee is derived from {{ rate }} sats per kb, for a transaction that is approximately 300 bytes in size.",

View File

@ -171,7 +171,7 @@
},
"member": "член",
"member_other": "члены",
"message_us": "Пожалуйста, напишите нам о Telegram или Discord, если вам нужно 4 Qort, чтобы начать общаться без каких -либо ограничений",
"message_us": "пожалуйста, напишите нам в Nextcloud (регистрация не требуется) или Discord, если вам нужно 4 QORT, чтобы начать общаться без каких-либо ограничений",
"message": {
"error": {
"address_not_found": "Ваш адрес не был найден",

View File

@ -98,7 +98,9 @@
"upload_encryption": "Загрузка не удалась из -за неудачного шифрования",
"upload": "Загрузка не удалась",
"use_private_service": "Для зашифрованной публикации, пожалуйста, используйте услугу, которая заканчивается _private",
"user_qortal_name": "У пользователя нет имени Qortal"
"user_qortal_name": "У пользователя нет имени Qortal",
"max_size_publish": "максимально допустимый размер файла: {{size}} ГБ.",
"max_size_publish_public": "максимально допустимый размер на публичном узле: {{size}} МБ. Пожалуйста, используйте локальный узел для более крупных файлов."
},
"generic": {
"calculate_fee": "*the {{ amount }} sats fee is derived from {{ rate }} sats per kb, for a transaction that is approximately 300 bytes in size.",

View File

@ -170,7 +170,7 @@
},
"member": "成员",
"member_other": "成员",
"message_us": "如果您需要4个QORT开始聊天而无需任何限制",
"message_us": "如果您需要 4 个 QORT 来开始无限制地聊天,请通过 Nextcloud无需注册或 Discord 联系我们",
"message": {
"error": {
"address_not_found": "找不到您的地址",

View File

@ -98,7 +98,9 @@
"upload_encryption": "upload failed due to failed encryption",
"upload": "upload failed",
"use_private_service": "for an encrypted publish please use a service that ends with _PRIVATE",
"user_qortal_name": "user has no Qortal name"
"user_qortal_name": "user has no Qortal name",
"max_size_publish": "每个文件的最大允许大小:{{size}} GB。",
"max_size_publish_public": "公共节点上允许的最大文件大小:{{size}} MB。请使用本地节点上传更大的文件。"
},
"generic": {
"calculate_fee": "*the {{ amount }} sats fee is derived from {{ rate }} sats per kb, for a transaction that is approximately 300 bytes in size.",

View File

@ -52,7 +52,11 @@ import {
getPublishesFromAdmins,
validateSecretKey,
} from '../components/Group/Group.tsx';
import { QORT_DECIMALS } from '../constants/constants.ts';
import {
MAX_SIZE_PUBLIC_NODE,
MAX_SIZE_PUBLISH,
QORT_DECIMALS,
} from '../constants/constants.ts';
import Base58 from '../encryption/Base58.ts';
import ed2curve from '../encryption/ed2curve.ts';
import nacl from '../encryption/nacl-fast.ts';
@ -1339,6 +1343,27 @@ export const publishQDNResource = async (
const tags = data?.tags || [];
const result = {};
if (file && file.size > MAX_SIZE_PUBLISH) {
throw new Error(
i18n.t('question:message.error.max_size_publish', {
size: 2,
postProcess: 'capitalizeFirstChar',
})
);
}
if (file && file.size > MAX_SIZE_PUBLIC_NODE) {
const isPublicNode = await isRunningGateway();
if (isPublicNode) {
throw new Error(
i18n.t('question:message.error.max_size_publish_public', {
size: 500,
postProcess: 'capitalizeFirstChar',
})
);
}
}
// Fill tags dynamically while maintaining backward compatibility
for (let i = 0; i < 5; i++) {
result[`tag${i + 1}`] = tags[i] || data[`tag${i + 1}`] || undefined;
@ -1542,6 +1567,36 @@ export const publishMultipleQDNResources = async (
})
);
}
const isPublicNode = await isRunningGateway();
if (isPublicNode) {
const hasOversizedFilePublicNode = resources.some((resource) => {
const file = resource?.file;
return file instanceof File && file.size > MAX_SIZE_PUBLIC_NODE;
});
if (hasOversizedFilePublicNode) {
throw new Error(
i18n.t('question:message.error.max_size_publish_public', {
size: 500,
postProcess: 'capitalizeFirstChar',
})
);
}
}
const hasOversizedFile = resources.some((resource) => {
const file = resource?.file;
return file instanceof File && file.size > MAX_SIZE_PUBLISH;
});
if (hasOversizedFile) {
throw new Error(
i18n.t('question:message.error.max_size_publish', {
size: 2,
postProcess: 'capitalizeFirstChar',
})
);
}
const encrypt = data?.encrypt;