Merge pull request 'feat: Replace general entity naming on UI with specifics.' (#264) from hardcoded-naming into master
continuous-integration/drone/push Build is passing Details

Reviewed-on: #264
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
pull/273/head
NaiJi ✨ 2023-08-07 12:06:30 +03:00
commit e35514b670
21 changed files with 132 additions and 120 deletions

View File

@ -355,9 +355,9 @@
"fallback_select_provider_console": "Hostinq konsoluna giriş.",
"authorization_failed": "Bu açarla daxil olmaq alınmadı",
"fallback_select_provider_console_hint": "Məsələn: Hetzner.",
"server_provider_connected": "Server provayderinizə qoşulur",
"server_provider_connected_description": "Əlaqə quruldu. {} girişi ilə nişanınızı daxil edin:",
"server_provider_connected_placeholder": "Server provayderi nişanı",
"provider_connected": "{} qoşulur",
"provider_connected_description": "Əlaqə quruldu. {} girişi ilə nişanınızı daxil edin:",
"provider_connected_placeholder": "{} nişanı",
"confirm_server": "Serveri təsdiqləyin",
"confirm_server_description": "Server tapdım! Onun olduğunu təsdiq edin:",
"confirm_server_accept": "Bəli, odur",
@ -368,11 +368,7 @@
"domain_not_available_on_token": "Daxil edilmiş işarənin tələb olunan domenə girişi yoxdur.",
"modal_confirmation_dns_valid": "Əks DNS düzgündür",
"modal_confirmation_dns_invalid": "Əks DNS fərqli domenə işarə edir",
"modal_confirmation_ip_valid": "IP DNS qeydində göstərilənə uyğun gəlir",
"confirm_cloudflare": "Cloudflare-ə qoşulur",
"confirm_cloudflare_description": "{} hüququ olan Cloudflare tokenini daxil edin:",
"confirm_backblaze": "Backblaze-ə qoşulur",
"confirm_backblaze_description": "Ehtiyat saxlama hüququ olan Backblaze tokenini daxil edin:"
"modal_confirmation_ip_valid": "IP DNS qeydində göstərilənə uyğun gəlir"
},
"devices": {
"main_screen": {

View File

@ -97,8 +97,8 @@
"fallback_select_root_ssh": "Каранёвы доступ да сервера праз SSH.",
"authorization_failed": "Не ўдалося ўвайсці з гэтым ключом",
"fallback_select_provider_console_hint": "Напрыклад, Hetzner.",
"server_provider_connected": "Падлучэнне да вашага сервернага правайдэра",
"server_provider_connected_placeholder": "Токен сервернага правайдэра",
"provider_connected": "Падлучэнне да вашага {}",
"provider_connected_placeholder": "Токен {}",
"confirm_server": "Пацвердзіце сервер",
"confirm_server_description": "Знайшлі сервер! Пацьвердзіце, што гэта ён:",
"confirm_server_accept": "Да, гэта ён",
@ -109,16 +109,12 @@
"modal_confirmation_dns_valid": "Зваротны DNS карэктны",
"modal_confirmation_dns_invalid": "Зваротны DNS паказвае на іншы дамен",
"modal_confirmation_ip_invalid": "IP не супадае з паказаным у DNS запісу",
"confirm_backblaze": "Падключэнне да Backblaze",
"confirm_backblaze_description": "Увядзіце токен Backblaze, які мае правы на сховішча рэзервовых копій:",
"fallback_select_provider_console": "Доступ да кансолі хостынгу.",
"server_provider_connected_description": "Сувязь устаноўлена. Увядзіце свой токен з доступам да {}:",
"provider_connected_description": "Сувязь устаноўлена. Увядзіце свой токен з доступам да {}:",
"choose_server": "Выберыце сервер",
"no_servers": "На вашым акаўнце няма даступных сэрвэраў.",
"modal_confirmation_description": "Падлучэнне да няправільнага сервера можа прывесці да дэструктыўных наступстваў.",
"modal_confirmation_ip_valid": "IP супадае з паказаным у DNS запісу",
"confirm_cloudflare": "Падключэнне да DNS Правайдэра",
"confirm_cloudflare_description": "Увядзіце токен DNS Правайдэра, які мае правы на {}:"
"modal_confirmation_ip_valid": "IP супадае з паказаным у DNS запісу"
},
"devices": {
"main_screen": {
@ -514,4 +510,4 @@
"support": {
"title": "Падтрымка SelfPrivacy"
}
}
}

View File

@ -369,9 +369,9 @@
"fallback_select_root_ssh": "Kořenový přístup SSH k serveru.",
"fallback_select_provider_console": "Přístup ke konzole serveru mého prodiveru.",
"authorization_failed": "Nelze se přihlásit pomocí tohoto klíče",
"server_provider_connected": "Připojení k poskytovateli serveru",
"server_provider_connected_description": "Komunikace navázána. Zadejte svůj token s přístupem k {}:",
"server_provider_connected_placeholder": "Token poskytovatele serveru",
"provider_connected": "Připojení k poskytovateli {}",
"provider_connected_description": "Komunikace navázána. Zadejte svůj token s přístupem k {}:",
"provider_connected_placeholder": "Token {}",
"confirm_server": "Potvrzení serveru",
"confirm_server_accept": "Ano! To je ono",
"confirm_server_decline": "Výběr jiného serveru",
@ -383,17 +383,13 @@
"modal_confirmation_dns_valid": "Reverzní DNS je platný",
"modal_confirmation_dns_invalid": "Reverzní DNS ukazuje na jinou doménu",
"modal_confirmation_ip_invalid": "IP není stejná jako v záznamu DNS",
"confirm_cloudflare": "Připojení k poskytovateli DNS",
"confirm_cloudflare_description": "Zadejte token DNS poskytovatele, který má práva k {}:",
"confirm_backblaze": "Připojení k službě Backblaze",
"generic_error": "Operace se nezdařila, zkuste to prosím znovu.",
"domain_recovery_description": "Zadejte doménu serveru, ke které chcete získat přístup:",
"method_device_description": "Otevřete aplikaci v jiném zařízení a přejděte na stránku zařízení. Stisknutím tlačítka \"Přidat zařízení\" získáte token.",
"fallback_select_provider_console_hint": "Například: Hetzner.",
"confirm_server_description": "Našel jsem váš server! Potvrďte, že je to ten správný:",
"domain_not_available_on_token": "Vybraná doména není na tomto tokenu k dispozici.",
"modal_confirmation_ip_valid": "IP je stejná jako v záznamu DNS",
"confirm_backblaze_description": "Zadejte token Backblaze s přístupem k úložišti záloh:"
"modal_confirmation_ip_valid": "IP je stejná jako v záznamu DNS"
},
"devices": {
"main_screen": {
@ -514,4 +510,4 @@
"ignore_tls": "Nekontrolujte certifikáty TLS",
"ignore_tls_description": "Aplikace nebude při připojování k serveru ověřovat certifikáty TLS."
}
}
}

View File

@ -411,12 +411,9 @@
"domain_recovery_description": "Geben Sie eine Serverdomäne ein, für die Sie Zugriff erhalten möchten:",
"method_device_description": "Öffnen Sie die Anwendung auf einem anderen Gerät und gehen Sie dann zur Geräteseite. Drücken Sie auf „Gerät hinzufügen“, um Ihren Token zu erhalten.",
"fallback_select_token_copy": "Kopie des Authentifizierungstokens von einer anderen Version der Anwendung.",
"server_provider_connected_description": "Kommunikation hergestellt. Eingabe Ihres Tokens Token mit Zugriff auf {}:",
"provider_connected_description": "Kommunikation hergestellt. Eingabe Ihres Tokens Token mit Zugriff auf {}:",
"choose_server_description": "Wir konnten nicht herausfinden, mit welchem Server Sie sich verbinden möchten.",
"modal_confirmation_dns_invalid": "Reverse DNS zeigt auf eine andere Domain",
"confirm_cloudflare_description": "Geben Sie das DNS-Token des Anbieters ein, der Rechte für {} hat:",
"confirm_backblaze": "Mit Backblaze verbinden",
"confirm_backblaze_description": "Geben Sie ein Backblaze-Token mit Zugriff auf den Sicherungsspeicher ein:",
"generic_error": "Vorgang fehlgeschlagen, bitte versuchen Sie es erneut.",
"recovery_main_header": "Verbindung zu einem vorhandenen Server herstellen",
"domain_recover_placeholder": "Ihre Domain",
@ -434,8 +431,8 @@
"fallback_select_provider_console": "Zugang zur Serverkonsole meines Providers.",
"authorization_failed": "Anmeldung mit diesem Schlüssel nicht möglich",
"fallback_select_provider_console_hint": "Zum Beispiel: Hetzner.",
"server_provider_connected": "Verbinden Sie sich mit Ihrem Serveranbieter",
"server_provider_connected_placeholder": "Token des Serveranbieters",
"provider_connected": "Verbinden Sie sich mit Ihrem {}",
"provider_connected_placeholder": "Token des {}",
"confirm_server": "Server bestätigen",
"confirm_server_description": "Server gefunden! Bestätigen Sie, dass es das Richtige ist:",
"confirm_server_accept": "Ja! Das ist es",
@ -447,8 +444,7 @@
"modal_confirmation_description": "Wenn Sie sich mit einem falschen Server verbinden, können Sie alle Ihre Daten verlieren.",
"modal_confirmation_dns_valid": "Reverse DNS ist gültig",
"modal_confirmation_ip_valid": "Die IP ist die gleiche wie im DNS-Eintrag",
"modal_confirmation_ip_invalid": "Die IP ist nicht dieselbe wie im DNS-Eintrag",
"confirm_cloudflare": "Verbindung zu einem DNS-Anbieter herstellen"
"modal_confirmation_ip_invalid": "Die IP ist nicht dieselbe wie im DNS-Eintrag"
},
"recovery_key": {
"key_connection_error": "Es konnte keine Verbindung zum Server hergestellt werden.",
@ -514,4 +510,4 @@
"ignore_tls": "Überprüfen Sie keine TLS-Zertifikate",
"ignore_tls_description": "Die Anwendung validiert TLS-Zertifikate nicht, wenn sie eine Verbindung zum Server herstellt."
}
}
}

View File

@ -124,7 +124,8 @@
"disk": "Disk local",
"monthly_cost": "Monthly cost",
"location": "Location",
"provider": "Provider",
"server_provider": "Server Provider",
"dns_provider": "DNS Provider",
"core_count": {
"one": "{} core",
"two": "{} cores",
@ -218,7 +219,7 @@
"extend_volume_button": "Extend volume",
"extending_volume_title": "Extending volume",
"extending_volume_description": "Resizing volume will allow you to store more data on your server without extending the server itself. Volume can only be extended: shrinking is not possible.",
"extending_volume_price_info": "Price includes VAT and is estimated from pricing data provided by Hetzner. Server will be rebooted after resizing.",
"extending_volume_price_info": "Price includes VAT and is estimated from pricing data provided by your server provider. Server will be rebooted after resizing.",
"extending_volume_error": "Couldn't initialize volume extending.",
"size": "Size",
"data_migration_title": "Data migration",
@ -404,9 +405,9 @@
"fallback_select_provider_console": "Access to the server console of my provider.",
"authorization_failed": "Couldn't log in with this key",
"fallback_select_provider_console_hint": "For example: Hetzner.",
"server_provider_connected": "Connect to your Server Provider",
"server_provider_connected_description": "Communication established. Enter you token with access to {}:",
"server_provider_connected_placeholder": "Server Provider token",
"provider_connected": "Connect to {}",
"provider_connected_description": "Enter your token with access to {}:",
"provider_connected_placeholder": "{} token",
"confirm_server": "Confirm server",
"confirm_server_description": "Found your server! Confirm it is the right one:",
"confirm_server_accept": "Yes! That's it",
@ -420,11 +421,7 @@
"modal_confirmation_dns_valid": "Reverse DNS is valid",
"modal_confirmation_dns_invalid": "Reverse DNS points to another domain",
"modal_confirmation_ip_valid": "IP is the same as in DNS record",
"modal_confirmation_ip_invalid": "IP is not the same as in DNS record",
"confirm_cloudflare": "Connect to your DNS Provider",
"confirm_cloudflare_description": "Enter a token of your DNS Provider with access to {}:",
"confirm_backblaze": "Connect to Backblaze",
"confirm_backblaze_description": "Enter a Backblaze token with access to backup storage:"
"modal_confirmation_ip_invalid": "IP is not the same as in DNS record"
},
"devices": {
"main_screen": {
@ -542,4 +539,4 @@
"reset_onboarding_description": "Reset onboarding switch to show onboarding screen again",
"cubit_statuses": "Cubit loading statuses"
}
}
}

View File

@ -433,7 +433,6 @@
"recovering": {
"confirm_server_decline": "Wybierz inny serwer",
"domain_not_available_on_token": "Wprowadzony token nie ma dostępu do żądanej domeny.",
"confirm_cloudflare_description": "Wprowadź token DNS dostawcy, który ma uprawnienia do {}:",
"method_recovery_input_description": "Wprowadź swój token odzyskiwania",
"fallback_select_provider_console": "Dostęp do konsoli serwera mojego dostawcy.",
"confirm_server_description": "Znalazłem twój serwer! Potwierdź, że jest to właściwe:",
@ -461,17 +460,14 @@
"modal_confirmation_dns_invalid": "Odwrócony DNS wskazuje na inną domenę",
"modal_confirmation_ip_valid": "IP jest takie samo jak w rekordzie DNS",
"modal_confirmation_ip_invalid": "IP nie jest zgodne z tym w rekordzie DNS",
"confirm_cloudflare": "Łączenie z dostawcą DNS",
"confirm_backblaze": "Podłączanie do Backblaze",
"confirm_backblaze_description": "Wpisz token Backblaze, który ma prawa do magazynu kopii zapasowych:",
"fallback_select_description": "Które z nich posiadasz? Wybierz pierwszą, która pasuje:",
"fallback_select_token_copy": "Kopia tokena autoryzacyjnego z innej wersji aplikacji.",
"fallback_select_root_ssh": "Dostęp Root do serwera poprzez SSH.",
"authorization_failed": "Nie udało się zalogować za pomocą tego klucza",
"fallback_select_provider_console_hint": "Na przykład: Hetzner.",
"server_provider_connected": "Połączenie z dostawcą serwera",
"server_provider_connected_description": "Połączenie ustanowione. Podaj swój token z dostępem do {}:",
"server_provider_connected_placeholder": "Token dostawcy serwera"
"provider_connected": "Połączenie z dostawcą {}",
"provider_connected_description": "Połączenie ustanowione. Podaj swój token z dostępem do {}:",
"provider_connected_placeholder": "{} Token "
},
"devices": {
"main_screen": {
@ -513,4 +509,4 @@
"cubit_statuses": "Aktualny stan qubitów ładujących",
"ignore_tls": "Używane podczas konfigurowania nowego serwera."
}
}
}

View File

@ -214,7 +214,7 @@
"extend_volume_button": "Расширить хранилище",
"extending_volume_title": "Расширение хранилища",
"extending_volume_description": "Изменение размера хранилища позволит вам держать больше данных на вашем сервере без расширения самого сервера. Объем можно только увеличить: уменьшить нельзя.",
"extending_volume_price_info": "Цена включает НДС и рассчитана на основе данных о ценах, предоставленных Hetzner. Сервер будет перезагружен во время процесса.",
"extending_volume_price_info": "Цена включает НДС и рассчитана на основе данных о ценах, предоставленных вашим провайдером. Сервер будет перезагружен во время процесса.",
"extending_volume_error": "Не удалось начать расширение хранилища.",
"size": "Размер",
"data_migration_title": "Миграция данных",
@ -414,13 +414,9 @@
"modal_confirmation_dns_invalid": "Обратный DNS указывает на другой домен",
"modal_confirmation_ip_valid": "IP совпадает с указанным в DNS записи",
"modal_confirmation_ip_invalid": "IP не совпадает с указанным в DNS записи",
"confirm_cloudflare": "Подключение к DNS Провайдеру",
"confirm_cloudflare_description": "Введите токен DNS Провайдера, который имеет права на {}:",
"confirm_backblaze_description": "Введите токен Backblaze, который имеет права на хранилище резервных копий:",
"confirm_backblaze": "Подключение к Backblaze",
"server_provider_connected": "Подключение к вашему серверному провайдеру",
"server_provider_connected_description": "Связь установлена. Введите свой токен с доступом к {}:",
"server_provider_connected_placeholder": "Токен серверного провайдера"
"provider_connected": "Подключение к вашему {}",
"provider_connected_description": "Связь установлена. Введите свой токен с доступом к {}:",
"provider_connected_placeholder": "{} Токен"
},
"devices": {
"main_screen": {
@ -538,4 +534,4 @@
"ignore_tls_description": "Приложение не будет проверять сертификаты TLS при подключении к серверу.",
"ignore_tls": "Не проверять сертификаты TLS"
}
}
}

View File

@ -388,11 +388,10 @@
"recovery_main_header": "Pripojiť sa k existujúcemu serveru",
"method_select_other_device": "Mám prístup na inom zariadení",
"method_device_description": "Otvorte aplikáciu na inom zariadení a otvorte obrazovku správy zariadenia. Kliknutím na „Pridať zariadenie“ získate autorizačný token.",
"server_provider_connected": "Pripojiť sa k poskytovateľovi servera",
"provider_connected": "Pripojiť sa k poskytovateľovi {}",
"choose_server": "Vyberte si svoj server",
"domain_not_available_on_token": "Vybraná doména nie je na tomto tokene dostupná.",
"modal_confirmation_ip_valid": "IP je rovnaká ako v DNS zázname",
"confirm_backblaze_description": "Zadajte token Backblaze, ktorý má práva na úložisko záloh:",
"generic_error": "Operácia zlyhala, skúste to znova.",
"domain_recovery_description": "Zadajte doménu servera, pre ktorú chcete získať prístup:",
"domain_recover_placeholder": "Vaša doména",
@ -410,8 +409,8 @@
"fallback_select_provider_console": "Prístup ku konzole servera môjho poskytovateľa.",
"authorization_failed": "Pomocou tohto kľúča sa nepodarilo prihlásiť",
"fallback_select_provider_console_hint": "Napríklad Hetzner.",
"server_provider_connected_description": "Spojenie bolo nadviazané. Zadajte svoj token s prístupom k {}:",
"server_provider_connected_placeholder": "Token poskytovateľa servera",
"provider_connected_description": "Spojenie bolo nadviazané. Zadajte svoj token s prístupom k {}:",
"provider_connected_placeholder": "{} Token",
"confirm_server": "Potvrďte server",
"confirm_server_description": "Našiel sa server! Potvrďte, že je to on:",
"confirm_server_accept": "Áno, to je on",
@ -422,10 +421,7 @@
"modal_confirmation_description": "Ak sa pripojíte k nesprávnemu serveru, môžete stratiť všetky svoje údaje.",
"modal_confirmation_dns_valid": "Reverzný DNS je platný",
"modal_confirmation_dns_invalid": "Reverzné DNS ukazuje na inú doménu",
"modal_confirmation_ip_invalid": "IP nie je rovnaká ako v DNS zázname",
"confirm_cloudflare": "Pripojenie k službe CloudFlare",
"confirm_cloudflare_description": "Zadajte token Cloudflare, ktorý má práva na {}:",
"confirm_backblaze": "Pripojenie ku Backblaze"
"modal_confirmation_ip_invalid": "IP nie je rovnaká ako v DNS zázname"
},
"devices": {
"add_new_device_screen": {

View File

@ -171,9 +171,9 @@
"fallback_select_provider_console": "Доступ до серверної консолі мого продiвера.",
"authorization_failed": "Не можу авторизуватись за цим ключем",
"fallback_select_provider_console_hint": "Наприклад: Hetzner.",
"server_provider_connected": "Підключіться до провайдера сервера",
"server_provider_connected_description": "Зв'язок встановлений. Введіть свій токен з доступом до {}:",
"server_provider_connected_placeholder": "Токен провайдера сервера",
"provider_connected": "Підключіться до {}",
"provider_connected_description": "Зв'язок встановлений. Введіть свій токен з доступом до {}:",
"provider_connected_placeholder": "{} Токен",
"confirm_server": "Підтвердити сервер",
"confirm_server_description": "Знайдено ваш сервер! Підтвердіть, що він правильний:",
"confirm_server_accept": "Так! Це воно",
@ -187,11 +187,7 @@
"modal_confirmation_dns_valid": "Зворотна DNS дійсна",
"modal_confirmation_dns_invalid": "Зворотна DNS вказує на інший домен",
"modal_confirmation_ip_valid": "IP той же, що і в записі DNS",
"modal_confirmation_ip_invalid": "IP не такий, як в DNS-записі",
"confirm_cloudflare": "Підключення до CloudFlare",
"confirm_cloudflare_description": "Введіть токен CloudFlare з доступом до {}:",
"confirm_backblaze": "Підкючитися до Backblaze",
"confirm_backblaze_description": "Введіть токен Backblaze із доступом до сховища резервних копій:"
"modal_confirmation_ip_invalid": "IP не такий, як в DNS-записі"
},
"resource_chart": {
"month": "Місяць",

View File

@ -46,7 +46,6 @@ class DigitalOceanApi extends RestApiMap {
@override
String get rootAddress => 'https://api.digitalocean.com/v2';
String get infectProviderName => 'digitalocean';
String get displayProviderName => 'Digital Ocean';
Future<GenericResult<List>> getServers() async {
List servers = [];

View File

@ -46,7 +46,6 @@ class HetznerApi extends RestApiMap {
@override
String get rootAddress => 'https://api.hetzner.cloud/v1';
String get infectProviderName => 'hetzner';
String get displayProviderName => 'Hetzner';
Future<GenericResult<List<HetznerServerInfo>>> getServers() async {
List<HetznerServerInfo> servers = [];

View File

@ -9,20 +9,38 @@ class ServerDetailsRepository {
ServerApi server = ServerApi();
Future<ServerDetailsRepositoryDto> load() async {
final serverProviderApi = ProvidersController.currentServerProvider;
final settings = await server.getSystemSettings();
final serverId = getIt<ApiConfigModel>().serverDetails!.id;
final metadata = await serverProviderApi?.getMetadata(serverId);
return ServerDetailsRepositoryDto(
autoUpgradeSettings: settings.autoUpgradeSettings,
metadata: metadata!.data,
metadata: await metadata,
serverTimezone: TimeZoneSettings.fromString(
settings.timezone,
),
);
}
Future<List<ServerMetadataEntity>> get metadata async {
List<ServerMetadataEntity> data = [];
final serverProviderApi = ProvidersController.currentServerProvider;
final dnsProviderApi = ProvidersController.currentDnsProvider;
if (serverProviderApi != null && dnsProviderApi != null) {
final serverId = getIt<ApiConfigModel>().serverDetails?.id ?? 0;
final metadataResult = await serverProviderApi.getMetadata(serverId);
metadataResult.data.add(
ServerMetadataEntity(
trId: 'server.dns_provider',
value: dnsProviderApi.type.displayName,
type: MetadataType.other,
),
);
data = metadataResult.data;
}
return data;
}
Future<void> setAutoUpgradeSettings(
final AutoUpgradeSettings settings,
) async {

View File

@ -532,13 +532,29 @@ class ServerInstallationCubit extends Cubit<ServerInstallationState> {
.showSnackBar('recovering.generic_error'.tr());
return;
}
await repository.saveServerDetails(serverDetails);
final newServerDetails = ServerHostingDetails(
provider: serverProvider,
apiToken: serverDetails.apiToken,
createTime: serverDetails.createTime,
id: serverDetails.id,
ip4: serverDetails.ip4,
volume: serverDetails.volume,
startTime: serverDetails.startTime,
);
final newServerDomain = ServerDomain(
domainName: serverDomain.domainName,
zoneId: serverDomain.zoneId,
provider: dnsProvider,
);
await repository.saveServerDetails(newServerDetails);
await repository.saveDnsProviderType(dnsProvider);
await repository.saveDomain(newServerDomain);
setServerProviderType(serverProvider);
setDnsProviderType(dnsProvider);
emit(
dataState.copyWith(
serverDetails: serverDetails,
serverDetails: newServerDetails,
serverDomain: newServerDomain,
currentStep: RecoveryStep.serverProviderToken,
),
);

View File

@ -96,14 +96,9 @@ enum ServerProviderType {
}
}
String get displayName {
switch (this) {
case ServerProviderType.hetzner:
return 'Hetzner Cloud';
case ServerProviderType.digitalOcean:
return 'Digital Ocean';
default:
return 'Unknown';
}
}
String get displayName => switch (this) {
digitalOcean => 'Digital Ocean',
hetzner => 'Hetzner Cloud',
unknown => 'Unknown',
};
}

View File

@ -54,4 +54,11 @@ enum DnsProviderType {
desec => 'DESEC',
unknown => 'UNKNOWN',
};
String get displayName => switch (this) {
digitalOcean => 'Digital Ocean DNS',
cloudflare => 'Cloudflare',
desec => 'deSEC',
unknown => 'Unknown',
};
}

View File

@ -748,8 +748,8 @@ class DigitalOceanServerProvider extends ServerProvider {
),
ServerMetadataEntity(
type: MetadataType.other,
trId: 'server.provider',
value: _adapter.api().displayProviderName,
trId: 'server.server_provider',
value: type.displayName,
),
];
} catch (e) {

View File

@ -755,8 +755,8 @@ class HetznerServerProvider extends ServerProvider {
),
ServerMetadataEntity(
type: MetadataType.other,
trId: 'server.provider',
value: _adapter.api().displayProviderName,
trId: 'server.server_provider',
value: type.displayName,
),
];
} catch (e) {

View File

@ -7,6 +7,7 @@ import 'package:selfprivacy/logic/cubit/server_volumes/server_volume_cubit.dart'
import 'package:selfprivacy/logic/models/disk_size.dart';
import 'package:selfprivacy/logic/models/price.dart';
import 'package:selfprivacy/ui/components/buttons/brand_button.dart';
import 'package:selfprivacy/ui/components/info_box/info_box.dart';
import 'package:selfprivacy/ui/layouts/brand_hero_screen.dart';
import 'package:selfprivacy/logic/models/disk_status.dart';
@ -165,16 +166,11 @@ class _ExtendingVolumePageState extends State<ExtendingVolumePage> {
height: 1.0,
),
const SizedBox(height: 16),
const Align(
alignment: Alignment.centerLeft,
child: Icon(
Icons.info_outlined,
size: 24,
),
InfoBox(
text: 'storage.extending_volume_price_info'.tr(),
isWarning: false,
),
const SizedBox(height: 16),
Text('storage.extending_volume_price_info'.tr()),
const SizedBox(height: 16),
],
);
},

View File

@ -23,8 +23,10 @@ class RecoveryConfirmBackblaze extends StatelessWidget {
context.watch<BackblazeFormCubit>().state;
return BrandHeroScreen(
heroTitle: 'recovering.confirm_backblaze'.tr(),
heroSubtitle: 'recovering.confirm_backblaze_description'.tr(),
heroTitle: 'recovering.provider_connected'.tr(args: ['Backblaze']),
heroSubtitle: 'recovering.provider_connected_description'.tr(
args: ['Backblaze'],
),
hasBackButton: true,
ignoreBreakpoints: true,
hasSupportDrawer: true,

View File

@ -21,10 +21,14 @@ class RecoveryConfirmDns extends StatelessWidget {
builder: (final BuildContext context) {
final FormCubitState formCubitState =
context.watch<DnsProviderFormCubit>().state;
final String providerDisplayName =
appConfig.state.serverDomain?.provider.displayName ??
'DNS Provider';
return BrandHeroScreen(
heroTitle: 'recovering.confirm_cloudflare'.tr(),
heroSubtitle: 'recovering.confirm_cloudflare_description'.tr(
heroTitle: 'recovering.provider_connected'.tr(
args: [providerDisplayName],
),
heroSubtitle: 'recovering.provider_connected_description'.tr(
args: [appConfig.state.serverDomain?.domainName ?? 'your domain'],
),
hasBackButton: true,
@ -38,7 +42,9 @@ class RecoveryConfirmDns extends StatelessWidget {
formFieldCubit: context.read<DnsProviderFormCubit>().apiKey,
decoration: InputDecoration(
border: const OutlineInputBorder(),
labelText: 'initializing.cloudflare_api_token'.tr(),
labelText: 'recovering.provider_connected_placeholder'.tr(
args: [providerDisplayName],
),
),
),
const SizedBox(height: 16),

View File

@ -20,8 +20,13 @@ class RecoveryServerProviderConnected extends StatelessWidget {
ServerProviderFormCubit(appConfig),
child: Builder(
builder: (final BuildContext context) => BrandHeroScreen(
heroTitle: 'recovering.server_provider_connected'.tr(),
heroSubtitle: 'recovering.server_provider_connected_description'.tr(
heroTitle: 'recovering.provider_connected'.tr(
args: [
appConfig.state.serverDetails?.provider.displayName ??
'Server Provider'
],
),
heroSubtitle: 'recovering.provider_connected_description'.tr(
args: [appConfig.state.serverDomain?.domainName ?? 'your domain'],
),
hasBackButton: true,
@ -36,8 +41,12 @@ class RecoveryServerProviderConnected extends StatelessWidget {
formFieldCubit: context.read<ServerProviderFormCubit>().apiKey,
decoration: InputDecoration(
border: const OutlineInputBorder(),
labelText:
'recovering.server_provider_connected_placeholder'.tr(),
labelText: 'recovering.provider_connected_placeholder'.tr(
args: [
appConfig.state.serverDetails?.provider.displayName ??
'Server Provider'
],
),
),
),
const SizedBox(height: 16),