Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

German #21

Merged
merged 14 commits into from
Apr 27, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 5 additions & 0 deletions HomeAssistant.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -523,6 +523,7 @@
D40EA2625B9413852756757B /* Pods_MapNotificationContentExtension.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_MapNotificationContentExtension.framework; sourceTree = BUILT_PRODUCTS_DIR; };
DCC27AD4585C850F12A3F0D4 /* Pods-MapNotificationContentExtension-metadata.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "Pods-MapNotificationContentExtension-metadata.plist"; path = "Pods/Pods-MapNotificationContentExtension-metadata.plist"; sourceTree = "<group>"; };
E340A91043F97CDAE845613F /* Pods-HomeAssistantUITests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-HomeAssistantUITests.release.xcconfig"; path = "Pods/Target Support Files/Pods-HomeAssistantUITests/Pods-HomeAssistantUITests.release.xcconfig"; sourceTree = "<group>"; };
F6D1BAC21EA4CAD300628E8C /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = "<group>"; };
FA8D40F800F5CEB4406229A3 /* Pods-MapNotificationContentExtension.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MapNotificationContentExtension.debug.xcconfig"; path = "Pods/Target Support Files/Pods-MapNotificationContentExtension/Pods-MapNotificationContentExtension.debug.xcconfig"; sourceTree = "<group>"; };
FF2CD2B00405400F05681BD0 /* Pods-CameraNotificationContentExtension.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-CameraNotificationContentExtension.debug.xcconfig"; path = "Pods/Target Support Files/Pods-CameraNotificationContentExtension/Pods-CameraNotificationContentExtension.debug.xcconfig"; sourceTree = "<group>"; };
/* End PBXFileReference section */
Expand Down Expand Up @@ -1224,6 +1225,7 @@
knownRegions = (
en,
Base,
de,
);
mainGroup = B657A8DD1CA646EB00121384;
productRefGroup = B657A8E71CA646EB00121384 /* Products */;
Expand Down Expand Up @@ -1852,6 +1854,7 @@
isa = PBXVariantGroup;
children = (
B69933941E232AEA0054453D /* en */,
F6D1BAC21EA4CAD300628E8C /* de */,
);
name = Localizable.strings;
path = .;
Expand Down Expand Up @@ -1907,6 +1910,7 @@
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)";
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
BUNDLE_ID_PREFIX = .dev;
CLANG_ANALYZER_NONNULL = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
Expand Down Expand Up @@ -1962,6 +1966,7 @@
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = "$(inherited)";
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
BUNDLE_ID_PREFIX = "";
CLANG_ANALYZER_NONNULL = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
Expand Down
12 changes: 12 additions & 0 deletions HomeAssistant/Resources/SwiftGen/Strings.swift
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,14 @@ enum L10n {

enum Settings {

enum NavigationBar {

static let title = L10n.tr("settings.navigation_bar.title")

enum AboutButton {
static let title = L10n.tr("settings.navigation_bar.about_button.title")
}
}
enum CertificateErrorNotification {
/// A self-signed or invalid SSL certificate has been detected. Certificates of this kind are not supported by Home Assistant for iOS. Please tap the More Info button for further information.
static let message = L10n.tr("settings.certificate_error_notification.message")
Expand Down Expand Up @@ -182,6 +190,10 @@ enum L10n {
/// Invalid URL
static let title = L10n.tr("settings.connection_section.invalid_url_scheme_notification.title")
}

enum SaveButton {
static let title = L10n.tr("settings.connection_section.save_button.title")
}
}

enum DetailsSection {
Expand Down
126 changes: 126 additions & 0 deletions HomeAssistant/Resources/de.lproj/Localizable.strings
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
/*
Localizable.strings
HomeAssistant

Created by Tim Wilbrink on 4/17/17.
Copyright © 2017 Tim Wilbrink. All rights reserved.
*/
"location_change_notification.title" = "Ortswechsel";
"zone_entered_notification.message" = "%@ betreten";
"significant_location_change_notification.message" = "Erhebliche Änderungen der Position bemerkt, benachrichtige Home Assistant";
"manual_location_update_notification.title" = "Position aktualisiert";
"manual_location_update_notification.message" = "Position erfolgreich an den Server übermittelt";
"manual_location_update_failed_notification.title" = "Position konnte nicht aktualisiert werden";
"manual_location_update_failed_notification.message" = "Konnte die Position nicht an den Server übertragen. Fehler %@";

"settings.navigation_bar.title" = "Einstellungen";
"settings.navigation_bar.about_button.title" = "Über";
"settings.connection_error_notification.title" = "Verbindungsfehler";
"settings.connection_error_notification.message" = "Es ist ein Fehler bei der Verbindung zu Home Assistant aufgetreten. Bitte überprüfe die Einstellungen und speichere sie um erneut zu verbinden. Fehler:\n\n %@";
"settings.certificate_error_notification.title" = "Selbstsigniertes oder ungültiges Zertifikat entdeckt";
"settings.certificate_error_notification.message" = "Ein selbstsigniertes oder ungültiges SSL Zertifikat wurde entdeckt. Solche Zertifikate werden von Home Assistant für iOS nicht unterstützt. Klicke auf den Mehr Info button für weitergehende Informationen.";
"settings.discovery_section.header" = "Home Assistant entdeckt";
"settings.discovery_section.requiresPassword" = "Passwort benötigt";
"settings.connection_section.header" = "Verbindung";
"settings.connection_section.invalid_url_scheme_notification.title" = "Ungültige URL";
"settings.connection_section.invalid_url_scheme_notification.message" = "Die URL muss entweder mit http:// oder https:// beginnen.";
"settings.connection_section.api_password_row.title" = "Passwort";
"settings.connection_section.api_password_row.placeholder" = "Passwort";
"settings.connection_section.connect_row.title" = "verbinden";
"settings.connection_section.base_url.title" = "URL";
"settings.connection_section.save_button.title" ="Sichern";
"settings.connection_error.forbidden.message" = "Das eingegeben Passwort ist falsch.";
"settings.connection_error.invalid_url.title" = "Fehler beim lesen der URL";
"settings.connection_error.invalid_url.message" = "Es scheint, als ob die URL ungültig ist. Prüfe bitte das Format und versuche es erneut.";

"settings.status_section.header" = "Status";
"settings.status_section.location_name_row.title" = "Name";
"settings.status_section.location_name_row.placeholder" = "Mein Home Assistant";
"settings.status_section.version_row.title" = "Version";
"settings.status_section.version_row.placeholder" = "0.35.0";
"settings.status_section.connected_to_sse_row.title" = "verbunden";
"settings.status_section.ios_component_loaded_row.title" = "iOS Komponente geladen";
"settings.status_section.device_tracker_component_loaded_row.title" = "Geräte Tracker Komponente geladen";
"settings.status_section.notify_platform_loaded_row.title" = "iOS Benachrichtigungs Plattform geladen";

"settings.device_id_section.footer" = "Die Geräte ID ist der Bezeichner, der bei der Aktualisierung der Position an Home Assistant gesendet wird und wird auch als Ziel für die Pushbenachrichtigungen genutzt.";
"settings.device_id_section.device_id_row.title" = "Geräte ID";

"settings.general_settings_button.title" = "Allgemeine Einstellungen";

"settings.details_section.enable_location_row.title" = "Positionsverfolgung einschalten";
"settings.details_section.location_settings_row.title" = "Einstellungen für die Position";

"settings.details_section.enable_notification_row.title" = "Benachrichtigungen einschalten";
"settings.details_section.notification_settings_row.title" = "Einstellungen für Benachrichtigungen";

"settings.reset_section.reset_row.title" = "zurücksetzen";
"settings.reset_section.reset_alert.title" = "zurücksetzen";
"settings.reset_section.reset_alert.message" = "Die Einstellungen werden zurückgesetzt und es werden sowohl die Benachrichtigungen nicht mehr abonniert als auch die Konfiguration aus Home Assistant entfernt.";


"settings_details.general.title" = "Allgemeine Einstellungen";
"settings_details.general.chrome.title" = "Links in Chrome öffnen";

"settings_details.location.title" = "Einstellungen für die Position";
"settings_details.location.notifications.header" = "Benachrichtigungen";
"settings_details.location.notifications.enter.title" = "Benachrichtigungen beim Betreten einer Zone";
"settings_details.location.notifications.exit.title" = "Benachrichtigungen beim Verlassen einer Zone";
"settings_details.location.notifications.beacon_enter.title" = "Betreten der Zone iBeacon Benachrichtigung";
"settings_details.location.notifications.beacon_exit.title" = "Verlassen der Zone iBeacon Benachrichtigung";
"settings_details.location.notifications.location_change.title" = "Benachrichtigungen beim Wechseln einer Zone";
"settings_details.location.notifications.background_fetch.title" = "Benachrichtigung im Hintergrund aktualisieren";
"settings_details.location.zones.enter_exit_tracked.title" = "Betreten/verlassen erfassen";
"settings_details.location.zones.location.title" = "Position";
"settings_details.location.zones.radius.title" = "Radius";
"settings_details.location.zones.beacon.prop_not_set.value" = "Not set";
"settings_details.location.zones.beacon_uuid.title" = "iBeacon UUID";
"settings_details.location.zones.beacon_major.title" = "iBeacon Major";
"settings_details.location.zones.beacon_minor.title" = "iBeacon Minor";
"settings_details.location.zones.footer" = "Um die Positionsverfolgung zu deaktivieren muss zur entsprechenden Zone ein 'track_ios: false' oder bei customize hinzugefügt werden.";

"settings_details.notifications.title" = "Einstellungen für Benachrichtigungen";
"settings_details.notifications.push_id_section.header" = "Push ID";
"settings_details.notifications.push_id_section.footer" = "Das ist das Ziel zur Verwendung in der Home Assistant Konfiguration. Antippen zum Kopieren oder Teilen.";
"settings_details.notifications.push_id_section.placeholder" = "Push ID";
"settings_details.notifications.push_id_section.not_registered" = "Nicht für Benachrichtigungen registriert";

"settings_details.notifications.update_section.footer" = "Das Aktualisieren der Benachrichtigungseinstellungen fragt die aktuellsten Benachrichtigungsaktionen und Kategorien von Home Assistant ab.";
"settings_details.notifications.update_section.button.title" = "Benachrichtigungseinstellungen Aktualisieren";
"settings_details.notifications.update_section.updated_alert.title" = "Einstellungen importiert";
"settings_details.notifications.update_section.updated_alert.message" = "Benachrichtigungseinstellungen von Home Assistant importiert.";

"settings_details.notifications.sounds_section.footer" = "Eigene Benachrichtigungstöne können via iTunes hinzugefügt werden.";
"settings_details.notifications.sounds_section.button.title" = "Töne importieren";
"settings_details.notifications.sounds_section.imported_alert.title" = "Töne importieren";
"settings_details.notifications.sounds_section.imported_alert.message" = "%d Töne wurde importiert. Bitte starte das Telefon neu um den Import abzuschließen.";

"settings_details.notifications.badge_section.button.title" = "Badge auf 0 zurücksetzen";
"settings_details.notifications.badge_section.reset_alert.title" = "Badge zurücksetzen";
"settings_details.notifications.badge_section.reset_alert.message" = "Das Badge wurde auf 0 zurückgesetzt.";



"permissions.location.message" = "Die Informationen werden genutzt um \r\nHome Assistant über die aktuelle Position \r\nund den Gerätestatus zu informieren.";
"permissions.notification.message" = "Damit werden die Benachrichtigungen \r\nan dieses Gerät gesendet.";

"devices_map.title" = "Geräte & Zonen";
"devices_map.map_types.standard" = "Standard";
"devices_map.map_types.hybrid" = "Hybrid";
"devices_map.map_types.satellite" = "Satellit";
"devices_map.battery_label" = "Batterie";

"ok_label" = "OK";

"about.title" = "Über";
"about.logo.app_title" = "Home Assistant für iOS";
"about.logo.tagline" = "Awaken Your Home";
"about.acknowledgements.title" = "Danksagungen";
"about.website.title" = "Webseite";
"about.forums.title" = "Forum";
"about.chat.title" = "Chat";
"about.documentation.title" = "Dokumentation";
"about.home_assistant_on_twitter.title" = "Home Assistant auf Twitter";
"about.home_assistant_on_facebook.title" = "Home Assistant auf Facebook";
"about.github.title" = "GitHub";
"about.github_issue_tracker.title" = "GitHub Issue Tracker";
3 changes: 3 additions & 0 deletions HomeAssistant/Resources/en.lproj/Localizable.strings
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
"manual_location_update_failed_notification.title" = "Location failed to update";
"manual_location_update_failed_notification.message" = "Failed to send current location to server. The error was %@";

"settings.navigation_bar.title" = "Settings";
"settings.navigation_bar.about_button.title" = "About";
"settings.connection_error_notification.title" = "Connection Error";
"settings.connection_error_notification.message" = "There was an error connecting to Home Assistant. Please confirm the settings are correct and save to attempt to reconnect. The error was:\n\n %@";
"settings.certificate_error_notification.title" = "Self-signed or invalid certificate detected";
Expand All @@ -26,6 +28,7 @@
"settings.connection_section.api_password_row.placeholder" = "password";
"settings.connection_section.connect_row.title" = "Connect";
"settings.connection_section.base_url.title" = "URL";
"settings.connection_section.save_button.title" = "Save";
"settings.connection_error.forbidden.message" = "The password was incorrect.";
"settings.connection_error.invalid_url.title" = "Error unwrapping URL";
"settings.connection_error.invalid_url.message" = "Looks like your URL is invalid. Please check the format and try again.";
Expand Down
2 changes: 1 addition & 1 deletion HomeAssistant/Views/AboutViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ class AboutViewController: FormViewController {
override func viewDidLoad() {
super.viewDidLoad()

self.title = "About"
self.title = L10n.About.title

self.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .done,
target: self,
Expand Down
8 changes: 4 additions & 4 deletions HomeAssistant/Views/SettingsViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,15 @@ class SettingsViewController: FormViewController {
}

override func viewWillAppear(_ animated: Bool) {
self.title = "Settings"
self.title = L10n.Settings.NavigationBar.title
}

// swiftlint:disable:next cyclomatic_complexity function_body_length
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.

let aboutButton = UIBarButtonItem(title: "About",
let aboutButton = UIBarButtonItem(title: L10n.Settings.NavigationBar.AboutButton.title,
style: .plain,
target: self,
action: #selector(SettingsViewController.openAbout(_:)))
Expand All @@ -58,7 +58,7 @@ class SettingsViewController: FormViewController {

if doneButton {
let closeSelector = #selector(SettingsViewController.closeSettings(_:))
let doneButton = UIBarButtonItem(title: "Done", style: .done, target: self,
let doneButton = UIBarButtonItem(barButtonSystemItem: .done, target: self,
action: closeSelector)

self.navigationItem.setRightBarButton(doneButton, animated: true)
Expand Down Expand Up @@ -156,7 +156,7 @@ class SettingsViewController: FormViewController {
}

<<< ButtonRow("connect") {
$0.title = "Save"
$0.title = L10n.Settings.ConnectionSection.SaveButton.title
}.onCellSelection { _, _ in
if self.form.validate().count == 0 {
if let baseUrl = self.baseURL {
Expand Down