From 59ac5ea0fead91987d31cf4e0cf59774528ce81e Mon Sep 17 00:00:00 2001 From: otsmr Date: Sun, 11 May 2025 12:31:55 +0200 Subject: [PATCH] fix #158 --- lib/src/localization/app_de.arb | 2 ++ lib/src/localization/app_en.arb | 2 ++ .../localization/generated/app_localizations.dart | 12 ++++++++++++ .../localization/generated/app_localizations_de.dart | 6 ++++++ .../localization/generated/app_localizations_en.dart | 6 ++++++ lib/src/views/camera/share_image_editor_view.dart | 8 ++++++++ lib/src/views/contact/contact_verify_view.dart | 3 ++- 7 files changed, 38 insertions(+), 1 deletion(-) diff --git a/lib/src/localization/app_de.arb b/lib/src/localization/app_de.arb index 7bb6430..953cd27 100644 --- a/lib/src/localization/app_de.arb +++ b/lib/src/localization/app_de.arb @@ -38,6 +38,8 @@ "shareImageAllTwonlyWarning": "Twonlies können nur an verifizierte Kontakte gesendet werden!", "shareImageSearchAllContacts": "Alle Kontakte durchsuchen", "@shareImageSearchAllContacts": {}, + "shareImageUserNotVerified": "Benutzer ist nicht verifiziert", + "shareImageUserNotVerifiedDesc": "twonlies können nur an verifizierte Nutzer gesendet werden. Um einen Nutzer zu verifizieren, gehe auf sein Profil und auf „Sicherheitsnummer verifizieren“.", "shareImageShowArchived": "Archivierte Benutzer anzeigen", "searchUsernameInput": "Benutzername", "searchUsernameTitle": "Benutzernamen suchen", diff --git a/lib/src/localization/app_en.arb b/lib/src/localization/app_en.arb index 182a59f..06db8c7 100644 --- a/lib/src/localization/app_en.arb +++ b/lib/src/localization/app_en.arb @@ -78,6 +78,8 @@ "@shareImageAllUsers": {}, "shareImageAllTwonlyWarning": "twonlies can only be send to verified contacts!", "@shareImageAllTwonlyWarning": {}, + "shareImageUserNotVerified": "User is not verified", + "shareImageUserNotVerifiedDesc": "twonlies can only be sent to verified users. To verify a user, go to their profile and to verify security number.", "shareImageShowArchived": "Show archived users", "searchUsernameInput": "Username", "@searchUsernameInput": {}, diff --git a/lib/src/localization/generated/app_localizations.dart b/lib/src/localization/generated/app_localizations.dart index 68ac230..f629248 100644 --- a/lib/src/localization/generated/app_localizations.dart +++ b/lib/src/localization/generated/app_localizations.dart @@ -335,6 +335,18 @@ abstract class AppLocalizations { /// **'twonlies can only be send to verified contacts!'** String get shareImageAllTwonlyWarning; + /// No description provided for @shareImageUserNotVerified. + /// + /// In en, this message translates to: + /// **'User is not verified'** + String get shareImageUserNotVerified; + + /// No description provided for @shareImageUserNotVerifiedDesc. + /// + /// In en, this message translates to: + /// **'twonlies can only be sent to verified users. To verify a user, go to their profile and to verify security number.'** + String get shareImageUserNotVerifiedDesc; + /// No description provided for @shareImageShowArchived. /// /// In en, this message translates to: diff --git a/lib/src/localization/generated/app_localizations_de.dart b/lib/src/localization/generated/app_localizations_de.dart index 4779db1..3260d3c 100644 --- a/lib/src/localization/generated/app_localizations_de.dart +++ b/lib/src/localization/generated/app_localizations_de.dart @@ -128,6 +128,12 @@ class AppLocalizationsDe extends AppLocalizations { @override String get shareImageAllTwonlyWarning => 'Twonlies können nur an verifizierte Kontakte gesendet werden!'; + @override + String get shareImageUserNotVerified => 'Benutzer ist nicht verifiziert'; + + @override + String get shareImageUserNotVerifiedDesc => 'twonlies können nur an verifizierte Nutzer gesendet werden. Um einen Nutzer zu verifizieren, gehe auf sein Profil und auf „Sicherheitsnummer verifizieren“.'; + @override String get shareImageShowArchived => 'Archivierte Benutzer anzeigen'; diff --git a/lib/src/localization/generated/app_localizations_en.dart b/lib/src/localization/generated/app_localizations_en.dart index 0c4853c..b57fa21 100644 --- a/lib/src/localization/generated/app_localizations_en.dart +++ b/lib/src/localization/generated/app_localizations_en.dart @@ -128,6 +128,12 @@ class AppLocalizationsEn extends AppLocalizations { @override String get shareImageAllTwonlyWarning => 'twonlies can only be send to verified contacts!'; + @override + String get shareImageUserNotVerified => 'User is not verified'; + + @override + String get shareImageUserNotVerifiedDesc => 'twonlies can only be sent to verified users. To verify a user, go to their profile and to verify security number.'; + @override String get shareImageShowArchived => 'Show archived users'; diff --git a/lib/src/views/camera/share_image_editor_view.dart b/lib/src/views/camera/share_image_editor_view.dart index 15e40de..cb8f121 100644 --- a/lib/src/views/camera/share_image_editor_view.dart +++ b/lib/src/views/camera/share_image_editor_view.dart @@ -9,6 +9,7 @@ import 'package:twonly/src/model/protobuf/api/error.pb.dart' show ErrorCode; import 'package:twonly/src/providers/api/media_send.dart'; import 'package:twonly/src/views/camera/components/save_to_gallery.dart'; import 'package:twonly/src/views/camera/image_editor/action_button.dart'; +import 'package:twonly/src/views/components/alert_dialog.dart'; import 'package:twonly/src/views/components/media_view_sizing.dart'; import 'package:twonly/src/views/components/notification_badge.dart'; import 'package:twonly/src/database/daos/contacts_dao.dart'; @@ -229,6 +230,13 @@ class _ShareImageEditorView extends State { ? Theme.of(context).colorScheme.primary : Colors.white, onPressed: () async { + if (widget.sendTo != null) { + if (!widget.sendTo!.verified) { + showAlertDialog(context, context.lang.shareImageUserNotVerified, + context.lang.shareImageUserNotVerifiedDesc); + return; + } + } _isRealTwonly = !_isRealTwonly; if (_isRealTwonly) { maxShowTime = 12; diff --git a/lib/src/views/contact/contact_verify_view.dart b/lib/src/views/contact/contact_verify_view.dart index 7d4e938..013d1f5 100644 --- a/lib/src/views/contact/contact_verify_view.dart +++ b/lib/src/views/contact/contact_verify_view.dart @@ -113,7 +113,8 @@ class _ContactVerifyViewState extends State { const EdgeInsets.symmetric(horizontal: 30, vertical: 10), child: GestureDetector( onTap: () { - launchUrl(Uri.parse("https://twonly.eu/verify")); + launchUrl(Uri.parse( + "https://twonly.eu/faq/security/verify-security-number")); }, child: Text( "Read more.",