diff --git a/app/src/main/java/io/heckel/ntfy/ui/CustomHeaderFragment.kt b/app/src/main/java/io/heckel/ntfy/ui/CustomHeaderFragment.kt index 0901f822..e18edfcd 100644 --- a/app/src/main/java/io/heckel/ntfy/ui/CustomHeaderFragment.kt +++ b/app/src/main/java/io/heckel/ntfy/ui/CustomHeaderFragment.kt @@ -59,7 +59,7 @@ class CustomHeaderFragment : DialogFragment() { // Build root view val view = requireActivity().layoutInflater.inflate(R.layout.fragment_custom_header_dialog, null) - val positiveButtonTextResId = if (header == null) R.string.custom_headers_add else R.string.custom_headers_save + val positiveButtonTextResId = if (header == null) R.string.custom_headers_dialog_button_add else R.string.custom_headers_dialog_button_save val descriptionView: TextView = view.findViewById(R.id.custom_header_dialog_description) baseUrlView = view.findViewById(R.id.custom_header_dialog_base_url) @@ -69,12 +69,12 @@ class CustomHeaderFragment : DialogFragment() { var title: String if (header == null) { - title = getString(R.string.custom_headers_add_title) - descriptionView.text = getString(R.string.custom_header_dialog_description_add) + title = getString(R.string.custom_headers_dialog_title_add) + descriptionView.text = getString(R.string.custom_headers_dialog_description_add) baseUrlView.visibility = View.VISIBLE } else { - title = getString(R.string.custom_headers_edit_title) - descriptionView.text = getString(R.string.custom_header_dialog_description_edit) + title = getString(R.string.custom_headers_dialog_title_edit) + descriptionView.text = getString(R.string.custom_headers_dialog_description_edit) baseUrlView.visibility = View.GONE baseUrlView.setText(header!!.baseUrl) headerNameView.setText(header!!.name) @@ -92,7 +92,7 @@ class CustomHeaderFragment : DialogFragment() { // Do nothing } if (header != null) { - builder.setNeutralButton(R.string.custom_headers_delete) { _, _ -> + builder.setNeutralButton(R.string.custom_headers_dialog_button_delete) { _, _ -> if (this::listener.isInitialized) { listener.onDeleteCustomHeader(this, header!!) } @@ -169,10 +169,10 @@ class CustomHeaderFragment : DialogFragment() { var isValid = true if (headerName.isNotEmpty()) { if (!validateHeaderName(headerName)) { - headerNameLayout.error = getString(R.string.custom_headers_invalid_name) + headerNameLayout.error = getString(R.string.custom_headers_dialog_error_invalid_name) isValid = false } else if (isReservedHeader(headerName)) { - headerNameLayout.error = getString(R.string.custom_headers_reserved_name) + headerNameLayout.error = getString(R.string.custom_headers_dialog_error_reserved_name) isValid = false } else if (headerName.equals("Authorization", ignoreCase = true)) { // Check if a user exists for this server (async) @@ -185,7 +185,7 @@ class CustomHeaderFragment : DialogFragment() { false } if (userExists) { - headerNameLayout.error = getString(R.string.custom_headers_user_exists) + headerNameLayout.error = getString(R.string.custom_headers_dialog_error_user_exists) isValid = false } } diff --git a/app/src/main/res/layout/fragment_custom_header_dialog.xml b/app/src/main/res/layout/fragment_custom_header_dialog.xml index dff4696e..a7c042c4 100644 --- a/app/src/main/res/layout/fragment_custom_header_dialog.xml +++ b/app/src/main/res/layout/fragment_custom_header_dialog.xml @@ -21,7 +21,7 @@ android:layout_marginTop="4dp" android:layout_width="match_parent" android:layout_height="wrap_content" - android:text="@string/custom_header_dialog_description_add" + android:text="@string/custom_headers_dialog_description_add" android:textColor="?android:attr/textColorSecondary"/> + android:hint="@string/custom_headers_dialog_base_url_hint"> + android:hint="@string/custom_headers_dialog_name_hint"> + android:hint="@string/custom_headers_dialog_value_hint"> ntfy kann keine genauen Alarme planen. Um WebSockets im Hintergrund wieder zu verbinden, sind genaue Alarme erforderlich. Tippe hier, um die Berechtigung zu erteilen. Benutzerdefinierte Header Benutzerdefinierte HTTP-Header pro Server hinzufügen - Benutzerdefinierte Header Header hinzufügen Header für einen Server hinzufügen Header werden mit jeder HTTP-Anfrage an diesen Server gesendet Header hinzufügen Neuen benutzerdefinierten HTTP-Header hinzufügen - Neuen Header hinzufügen - Header bearbeiten + Neuen Header hinzufügen + Header bearbeiten Header löschen Sicher, dass Sie den Header „%1$s" löschen möchten? - Hinzufügen - Speichern - Löschen + Hinzufügen + Speichern + Löschen Ungültiger Header - Ungültige Zeichen im Header-Namen - Dieser Header ist reserviert und wird von ntfy gesetzt - Authorization-Header kann nicht hinzugefügt werden: Ein Benutzer ist bereits für diesen Server konfiguriert - Name (z.B. CF-Access-Client-Id) - Wert - Einen benutzerdefinierten HTTP-Header hinzufügen, der mit jeder Anfrage an den angegebenen Server gesendet wird. - Den Header-Namen/Wert bearbeiten oder löschen. - Service-URL + Ungültige Zeichen im Header-Namen + Dieser Header ist reserviert und wird von ntfy gesetzt + Authorization-Header kann nicht hinzugefügt werden: Ein Benutzer ist bereits für diesen Server konfiguriert + Name (z.B. CF-Access-Client-Id) + Wert + Einen benutzerdefinierten HTTP-Header hinzufügen, der mit jeder Anfrage an den angegebenen Server gesendet wird. + Den Header-Namen/Wert bearbeiten oder löschen. + Service-URL Dynamische Farben Verwendung der dynamischen Systemfarben Verwendung der ntfy-Themenfarben diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 1f94ebf2..e7f4b874 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -391,11 +391,10 @@ ntfy will act as a UnifiedPush distributor ntfy will not act as a UnifiedPush distributor Custom headers - Add custom HTTP headers per server - Custom Headers + Define custom HTTP headers that will be sent along with every request, e.g. if your ntfy server is behind an authenticated proxy or tunnel. Add header Add a header for a server - Headers are sent with every HTTP request to that server + Headers are included with every HTTP request. Each ntfy server can have its own set of custom headers. Record logs Logging (up to 1,000 entries) to device … Turn on logging, so you can share logs later to diagnose issues. @@ -458,7 +457,7 @@ You can add a user here. All topics for the given server will use this user. You may edit username/password for the selected user, or delete it. Service URL - Authorization header already set in custom headers for this server + Cannot add user if custom Authorization header is set for this server Username Password Password (unchanged if left blank) @@ -467,23 +466,18 @@ Delete user Save - - Add Header - Add a new custom HTTP header - Add Custom Header - Edit Custom Header - Delete Header - Are you sure you want to delete the header "%1$s"? - Add - Save - Delete - Invalid Header - Header name contains invalid characters - This header is reserved and set by ntfy - Cannot add Authorization header: A user is already configured for this server - Name (e.g. CF-Access-Client-Id) - Value - Add a custom HTTP header that will be sent with every request to the specified server. - You may edit the header name/value for the selected header, or delete it. - Service URL + + Add Custom Header + Edit Custom Header + Service URL + Header name (e.g. CF-Access-Client-Id) + Value (e.g. 9f3c2e4a1b2d4e) + Add a custom HTTP header that will be sent with every request to the specified server. + You may edit the header name/value for the selected header, or delete it. + Header name contains invalid characters + This header is reserved and set by ntfy + Cannot add Authorization header if a user is configured for this server + Add + Save + Delete diff --git a/app/src/main/res/xml/custom_header_preferences.xml b/app/src/main/res/xml/custom_header_preferences.xml index df870884..48e65755 100644 --- a/app/src/main/res/xml/custom_header_preferences.xml +++ b/app/src/main/res/xml/custom_header_preferences.xml @@ -1,4 +1,5 @@ + app:title="@string/settings_advanced_custom_headers_title"> +