diff --git a/assets/langs/fr.json b/assets/langs/fr.json index e3ffe41..b3a213a 100644 --- a/assets/langs/fr.json +++ b/assets/langs/fr.json @@ -131,6 +131,7 @@ "Confirm your password": "Confirmer le mot de passe", "Congratulations! Your password has now been successfully changed!": "Félicitations ! Votre mot de passe a bien été changé !", "Connected users": "Utilisateurs connectés", + "Contact us": "Contactez-nous", "Conversation color (optional)": "Couleur de conversation (optionnel)", "Conversation logo": "Logo de la conversation", "Conversation members": "Membres de la conversation", diff --git a/lib/helpers/server_config_helper.dart b/lib/helpers/server_config_helper.dart index 785d487..b38ea01 100644 --- a/lib/helpers/server_config_helper.dart +++ b/lib/helpers/server_config_helper.dart @@ -28,6 +28,7 @@ class ServerConfigurationHelper { Version.parse(response["min_supported_mobile_version"]), termsURL: response["terms_url"], privacyPolicyURL: response["privacy_policy_url"], + contactEmail: response["contact_email"], playStoreURL: response["play_store_url"], androidDirectDownloadURL: response["android_direct_download_url"], notificationsPolicy: NotificationsPolicy( diff --git a/lib/models/server_config.dart b/lib/models/server_config.dart index 5a637c6..5618269 100644 --- a/lib/models/server_config.dart +++ b/lib/models/server_config.dart @@ -136,6 +136,7 @@ class ServerConfig { final Version minSupportedMobileVersion; final String termsURL; final String privacyPolicyURL; + final String contactEmail; final String playStoreURL; final String androidDirectDownloadURL; final NotificationsPolicy notificationsPolicy; @@ -148,6 +149,7 @@ class ServerConfig { @required this.minSupportedMobileVersion, @required this.termsURL, @required this.privacyPolicyURL, + @required this.contactEmail, @required this.playStoreURL, @required this.androidDirectDownloadURL, @required this.notificationsPolicy, @@ -158,6 +160,7 @@ class ServerConfig { }) : assert(minSupportedMobileVersion != null), assert(termsURL != null), assert(privacyPolicyURL != null), + assert(contactEmail != null), assert(playStoreURL != null), assert(androidDirectDownloadURL != null), assert(notificationsPolicy != null), diff --git a/lib/ui/routes/settings/application_settings.dart b/lib/ui/routes/settings/application_settings.dart index b9c3a4c..036a579 100644 --- a/lib/ui/routes/settings/application_settings.dart +++ b/lib/ui/routes/settings/application_settings.dart @@ -1,6 +1,7 @@ import 'package:comunic/helpers/preferences_helper.dart'; import 'package:comunic/helpers/server_config_helper.dart'; import 'package:comunic/ui/widgets/async_screen_widget.dart'; +import 'package:comunic/ui/widgets/copy_icon.dart'; import 'package:comunic/ui/widgets/settings/header_spacer_section.dart'; import 'package:comunic/utils/flutter_utils.dart'; import 'package:comunic/utils/intl_utils.dart'; @@ -68,6 +69,11 @@ class _ApplicationSettingsState extends State { title: tr("Terms of Use"), onPressed: (c) => launch(srvConfig.termsURL), ), + SettingsTile( + title: tr("Contact us"), + subtitle: srvConfig.contactEmail, + trailing: CopyIcon(srvConfig.contactEmail), + ), SettingsTile( title: tr("About this application"), subtitle: isIOS ? null : tr("Learn more about us"),