diff --git a/AgileWorks/AgileWorks/App/AppShared.swift b/AgileWorks/AgileWorks/App/AppShared.swift index 0492ce6e7111ac6b6efd621a854521af0843d76e..62c6eaa97ad2d1d7bf87fe451e360c853684c49e 100644 --- a/AgileWorks/AgileWorks/App/AppShared.swift +++ b/AgileWorks/AgileWorks/App/AppShared.swift @@ -39,5 +39,5 @@ class AppShared { func appVersionLabelText() -> String { let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as! String - return String(format: localizadString(key: "AppVersion", comment: ""), version) + return String(format: getDisplayString(key: "AppVersion", comment: ""), version) } diff --git a/AgileWorks/AgileWorks/License/Presenter/LicenseViewPresenter.swift b/AgileWorks/AgileWorks/License/Presenter/LicenseViewPresenter.swift index bc30bd871edc35de781ae9e539e11b4ef3c1ec17..aa7ccede6c2542b15ecc28fa475c5b455b53aaee 100644 --- a/AgileWorks/AgileWorks/License/Presenter/LicenseViewPresenter.swift +++ b/AgileWorks/AgileWorks/License/Presenter/LicenseViewPresenter.swift @@ -36,9 +36,9 @@ class LicenseViewPresenterImpl: LicenseViewPresenter { func acceptLabel() -> String { if nextTarget == .close { - return localizadString(key: "Close", comment: "") + return getDisplayString(key: "Close", comment: "") } else { - return localizadString(key: "LicenseAccept", comment: "") + return getDisplayString(key: "LicenseAccept", comment: "") } } diff --git a/AgileWorks/AgileWorks/License/View/LicenseViewController.swift b/AgileWorks/AgileWorks/License/View/LicenseViewController.swift index 69ec9b74c20242933cc0dcbff77346195dff070a..e1127e4d59b59c39240da78c31926fcb21bb346c 100644 --- a/AgileWorks/AgileWorks/License/View/LicenseViewController.swift +++ b/AgileWorks/AgileWorks/License/View/LicenseViewController.swift @@ -23,7 +23,7 @@ class LicenseViewController: UIViewController { super.viewDidLoad() licenseContentsText.attributedText = presenter.licenseContent() acceptButton.setTitle(presenter.acceptLabel(), for: .normal) - licenseTitle.text = localizadString(key: "LicenseViewTitle", comment: "") + licenseTitle.text = getDisplayString(key: "LicenseViewTitle", comment: "") } @IBAction private func onAcceptButtonTouched(_ sender: UIButton) { diff --git a/AgileWorks/AgileWorks/Main/Builder/MainTabBarViewBuilder.swift b/AgileWorks/AgileWorks/Main/Builder/MainTabBarViewBuilder.swift index 194392f7d4b153048af4bae56d2ff22bfa3d1df6..18284bafdd7588a9744887c16c023f51548d48fc 100644 --- a/AgileWorks/AgileWorks/Main/Builder/MainTabBarViewBuilder.swift +++ b/AgileWorks/AgileWorks/Main/Builder/MainTabBarViewBuilder.swift @@ -61,39 +61,39 @@ extension MainTabBarViewBuilderImpl { let viewVC = view.viewControllers[view.viewControllers.count - 1] as! WebViewController switch type { case ViewType.home.rawValue: - view.tabBarItem.title = localizadString(key: "HomeTitle", comment: "") + view.tabBarItem.title = getDisplayString(key: "HomeTitle", comment: "") //view.tabBarItem.image = "" //view.tabBarItem.selectedItem = "" viewVC.loadURL = createLoadUrl(urlPath: ViewURL.home.rawValue) - viewVC.naviTitle = localizadString(key: "HomeTitle", comment: "") + viewVC.naviTitle = getDisplayString(key: "HomeTitle", comment: "") viewVC.tabTitleKey = "HomeTitle" case ViewType.work.rawValue: - view.tabBarItem.title = localizadString(key: "WorkTitle", comment: "") + view.tabBarItem.title = getDisplayString(key: "WorkTitle", comment: "") //view.tabBarItem.image = "" //view.tabBarItem.selectedItem = "" viewVC.loadURL = createLoadUrl(urlPath: ViewURL.work.rawValue) - viewVC.naviTitle = localizadString(key: "WorkTitle", comment: "") + viewVC.naviTitle = getDisplayString(key: "WorkTitle", comment: "") viewVC.tabTitleKey = "WorkTitle" case ViewType.documents.rawValue: - view.tabBarItem.title = localizadString(key: "DocumentsTitle", comment: "") + view.tabBarItem.title = getDisplayString(key: "DocumentsTitle", comment: "") //view.tabBarItem.image = "" //view.tabBarItem.selectedItem = "" viewVC.loadURL = ViewURL.documents.rawValue - viewVC.naviTitle = localizadString(key: "DocumentsTitle", comment: "") + viewVC.naviTitle = getDisplayString(key: "DocumentsTitle", comment: "") viewVC.tabTitleKey = "DocumentsTitle" case ViewType.search.rawValue: - view.tabBarItem.title = localizadString(key: "SearchTitle", comment: "") + view.tabBarItem.title = getDisplayString(key: "SearchTitle", comment: "") //view.tabBarItem.image = "" //view.tabBarItem.selectedItem = "" viewVC.loadURL = createLoadUrl(urlPath: ViewURL.search.rawValue) - viewVC.naviTitle = localizadString(key: "SearchTitle", comment: "") + viewVC.naviTitle = getDisplayString(key: "SearchTitle", comment: "") viewVC.tabTitleKey = "SearchTitle" default: - view.tabBarItem.title = localizadString(key: "HomeTitle", comment: "") + view.tabBarItem.title = getDisplayString(key: "HomeTitle", comment: "") //view.tabBarItem.image = "" //view.tabBarItem.selectedItem = "" viewVC.loadURL = createLoadUrl(urlPath: ViewURL.home.rawValue) - viewVC.naviTitle = localizadString(key: "HomeTitle", comment: "") + viewVC.naviTitle = getDisplayString(key: "HomeTitle", comment: "") viewVC.tabTitleKey = "HomeTitle" } return view diff --git a/AgileWorks/AgileWorks/Main/View/MainTabBarViewController.swift b/AgileWorks/AgileWorks/Main/View/MainTabBarViewController.swift index 48e98ebdd21475cbaf5ded8518d64c576e53a7d2..9fa5fc908dc0986971f6982d079875719c45eafa 100644 --- a/AgileWorks/AgileWorks/Main/View/MainTabBarViewController.swift +++ b/AgileWorks/AgileWorks/Main/View/MainTabBarViewController.swift @@ -60,7 +60,7 @@ class MainTabBarViewController: UITabBarController { for view in self.children { if let navi = view as? UINavigationController { if let webView = navi.viewControllers[navi.viewControllers.count - 1] as? WebViewController { - navi.tabBarItem.title = localizadString(key: webView.tabTitleKey, comment: "") + navi.tabBarItem.title = getDisplayString(key: webView.tabTitleKey, comment: "") } } } diff --git a/AgileWorks/AgileWorks/Main/Wireframe/MainTabBarViewWireframe.swift b/AgileWorks/AgileWorks/Main/Wireframe/MainTabBarViewWireframe.swift index 12f8b1cc63a1ab73b7207cc2f247b359b3b466fc..7616671f367e7359bbaa00860983c99825a893d6 100644 --- a/AgileWorks/AgileWorks/Main/Wireframe/MainTabBarViewWireframe.swift +++ b/AgileWorks/AgileWorks/Main/Wireframe/MainTabBarViewWireframe.swift @@ -60,15 +60,15 @@ extension MainTabBarViewWireframeImpl: MainTabBarViewWireframe { // 書類上書き確認アラート表示 func showOverrideAlter(oldNavi: UINavigationController, newNavi: UINavigationController) { // 開き直し確認 - let message = localizadString(key: "DocOverrideConfirm", comment: "") + let message = getDisplayString(key: "DocOverrideConfirm", comment: "") // OK アクション設定 - let defaultAction = UIAlertAction(title: localizadString(key: "YES", comment: ""), style: .default) { _ in + let defaultAction = UIAlertAction(title: getDisplayString(key: "YES", comment: ""), style: .default) { _ in // 今表示されている書類を閉じて、新たに開き直す oldNavi.dismiss(animated: true, completion: nil) self.viewController.present(newNavi, animated: true, completion: nil) } // キャンセルアクション設定 - let cancelAction = UIAlertAction(title: localizadString(key: "NO", comment: ""), style: .cancel) { _ in + let cancelAction = UIAlertAction(title: getDisplayString(key: "NO", comment: ""), style: .cancel) { _ in // 何もしない } // アラート表示 diff --git a/AgileWorks/AgileWorks/OpenLicense/View/OpenLicenseViewController.swift b/AgileWorks/AgileWorks/OpenLicense/View/OpenLicenseViewController.swift index 2768d16be096a06379f32bdc86b6c6e2d5554316..69d93f3f021c00f3870052a0ab0a221a7de32217 100644 --- a/AgileWorks/AgileWorks/OpenLicense/View/OpenLicenseViewController.swift +++ b/AgileWorks/AgileWorks/OpenLicense/View/OpenLicenseViewController.swift @@ -14,12 +14,12 @@ class OpenLicenseViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() - closeButton.setTitle(localizadString(key: "Close", comment: ""), for: .normal) + closeButton.setTitle(getDisplayString(key: "Close", comment: ""), for: .normal) } override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) - self.navigationItem.title = localizadString(key: "OpenLicenseViewTitle", comment: "") + self.navigationItem.title = getDisplayString(key: "OpenLicenseViewTitle", comment: "") } @IBAction private func onCloseButtonTouched(_ sender: UIButton) { diff --git a/AgileWorks/AgileWorks/Profile/View/ProfileTableViewController.swift b/AgileWorks/AgileWorks/Profile/View/ProfileTableViewController.swift index ed8019b080d867b17ad8b36bbd636b881d0590f6..3050d7e4b32a4ef8f875ac2be1180e7160d5f21f 100644 --- a/AgileWorks/AgileWorks/Profile/View/ProfileTableViewController.swift +++ b/AgileWorks/AgileWorks/Profile/View/ProfileTableViewController.swift @@ -66,9 +66,9 @@ class ProfileTableViewController: UITableViewController { } override func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? { if section == SectionType.userInfo.rawValue { - return localizadString(key: "UserInfoHeader", comment: "") + return getDisplayString(key: "UserInfoHeader", comment: "") } else if section == SectionType.unit.rawValue { - return localizadString(key: "UnitInfoHeader", comment: "") + return getDisplayString(key: "UnitInfoHeader", comment: "") } return "" } @@ -84,13 +84,13 @@ class ProfileTableViewController: UITableViewController { // ユーザ情報表示 switch indexPath.row { case UserInfoType.code.rawValue: - subject = localizadString(key: "UserCodeTitle", comment: "") + subject = getDisplayString(key: "UserCodeTitle", comment: "") title = sessionInfo?.user.code ?? "" case UserInfoType.name.rawValue: - subject = localizadString(key: "UserNameTitle", comment: "") + subject = getDisplayString(key: "UserNameTitle", comment: "") title = sessionInfo?.user.name ?? "" case UserInfoType.loginId.rawValue: - subject = localizadString(key: "LoginIdTitle", comment: "") + subject = getDisplayString(key: "LoginIdTitle", comment: "") title = sessionInfo?.user.loginId ?? "" default: break @@ -101,10 +101,10 @@ class ProfileTableViewController: UITableViewController { for unit in units where unit.mainUnit { switch indexPath.row { case UnitType.name.rawValue: - subject = localizadString(key: "UnitNameTitle", comment: "") + subject = getDisplayString(key: "UnitNameTitle", comment: "") title = unit.name case UnitType.role.rawValue: - subject = localizadString(key: "RoleNameTitle", comment: "") + subject = getDisplayString(key: "RoleNameTitle", comment: "") title = unit.sectionRoleName ?? "" default: break diff --git a/AgileWorks/AgileWorks/Profile/View/ProfileViewController.swift b/AgileWorks/AgileWorks/Profile/View/ProfileViewController.swift index 41230565965f64302cf687198d7682c7a5927095..3c37ba7e2a91e1756408bb817dc987d9198c6abe 100644 --- a/AgileWorks/AgileWorks/Profile/View/ProfileViewController.swift +++ b/AgileWorks/AgileWorks/Profile/View/ProfileViewController.swift @@ -19,8 +19,8 @@ class ProfileViewController: UIViewController { } private func setupLabel() { - profileLabel.text = localizadString(key: "ProfileTitle", comment: "") - closeButton.setTitle(localizadString(key: "CloseButton", comment: ""), for: .normal) + profileLabel.text = getDisplayString(key: "ProfileTitle", comment: "") + closeButton.setTitle(getDisplayString(key: "CloseButton", comment: ""), for: .normal) } override func touchesEnded(_ touches: Set, with event: UIEvent?) { diff --git a/AgileWorks/AgileWorks/Splash/View/SplashViewController.swift b/AgileWorks/AgileWorks/Splash/View/SplashViewController.swift index bbaa738be330ddf9309fcda110fe7b0b602503fd..80ffbd4c2cd1b6c24f046c5add4db834c042f4f2 100644 --- a/AgileWorks/AgileWorks/Splash/View/SplashViewController.swift +++ b/AgileWorks/AgileWorks/Splash/View/SplashViewController.swift @@ -29,10 +29,10 @@ class SplashViewController: UIViewController { super.viewDidLoad() logoImage.tintColor = .white - self.view.backgroundColor = UIColor(named: localizadString(key: "MainColor", comment: "")) + self.view.backgroundColor = UIColor(named: getDisplayString(key: "MainColor", comment: "")) view.addSubview(activityIndicator) activityIndicator.frame = view.bounds - activityIndicator.backgroundColor = UIColor(named: localizadString(key: "IndicatorBackgroud", comment: "")) + activityIndicator.backgroundColor = UIColor(named: getDisplayString(key: "IndicatorBackgroud", comment: "")) activityIndicator.translatesAutoresizingMaskIntoConstraints = false @@ -54,7 +54,7 @@ class SplashViewController: UIViewController { var error: NSError? if context.canEvaluatePolicy(.deviceOwnerAuthentication, error: &error) { - context.evaluatePolicy(.deviceOwnerAuthentication, localizedReason: localizadString(key: "Auth", comment: "")) { sucess, error in + context.evaluatePolicy(.deviceOwnerAuthentication, localizedReason: getDisplayString(key: "Auth", comment: "")) { sucess, error in if sucess { self.freshToken() } else { diff --git a/AgileWorks/AgileWorks/Strings/Chinese-Simplified.strings b/AgileWorks/AgileWorks/Strings/Chinese-Simplified.strings index 7ccf656dec41af88a8e7dc5fad551286fcd6221f..064cf767b9ad01db00458d808e74e12ab7278471 100644 --- a/AgileWorks/AgileWorks/Strings/Chinese-Simplified.strings +++ b/AgileWorks/AgileWorks/Strings/Chinese-Simplified.strings @@ -7,30 +7,30 @@ */ // Splash -"Auth" = "認証"; +"Auth" = "应用程序认证"; // Version "AppVersion" = "App ver. %@"; // Login -"ServerURLPlaceholder" = "AgileWorksサーバ"; +"ServerURLPlaceholder" = "AgileWorks服务器"; "ContextPlaceholder" = "AgileWorks"; -"LoginButton" = "接続"; +"LoginButton" = "连接"; "QRCodeReadLabel" = "读取QR码"; -"QRCodeReadGuidance" = "ログインQRコードを読み込んでください"; -"ClientCertificateConfigured" = "クライアント証明書設定済"; -"ClientCertificateRemovalConfirmation" = "クライアント証明書の設定を削除します。よろしいですか?"; -"ClientCertificateRemovalOK" = "削除"; -"ClientCertificateRemovalCancel" = "キャンセル"; -"LoginErrorMessage" = "ログインに失敗しました。再度ログインしてください。"; -"CameraStartupErrorMessage" = "カメラの起動に失敗しました。"; +"QRCodeReadGuidance" = "请扫描二维码。"; +"ClientCertificateConfigured" = "已经设置的客户证书"; +"ClientCertificateRemovalConfirmation" = "删除客户证书设置。 你确定吗?"; +"ClientCertificateRemovalOK" = "删除"; +"ClientCertificateRemovalCancel" = "取消"; +"LoginErrorMessage" = "登录失败。 请重新登录。"; +"CameraStartupErrorMessage" = "未能激活摄像机。"; // WebView "HomeTitle" = "家"; "WorkTitle" = "工作"; "DocumentsTitle" = "制作文档"; "SearchTitle" = "检索"; -"CheckConnectButton" = "接続確認"; +"CheckConnectButton" = "连接确认"; // SideMenu "ProfileTitle" = "个人档案"; @@ -50,23 +50,23 @@ // License "LicenseViewTitle" = "许可证"; -"LicenseAccept" = "利用許諾に同意します"; +"LicenseAccept" = "重新确认许可证。"; // Open License "OpenLicenseViewTitle" = "开放许可证"; // Notification -"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか。"; +"DocOverrideConfirm" = "由通知点选的文件已经显示了。\n你想放弃当前的编辑并显示一个新的文件吗?"; // Refresh Token Error -"RefreshTokenUpdateErrorTitle" = "アクセストークン更新エラー"; -"RefreshTokenUpdateError" = "AgileWorksサーバへアクセスするためのトークンの更新が行えませんでした。\n再ログインする必要があります。"; +"RefreshTokenUpdateErrorTitle" = "访问令牌更新错误"; +"RefreshTokenUpdateError" = "访问AgileWorks服务器的令牌不能被更新。\n你将需要重新登录。"; // Network Error Message -"DisconnectNetworkLabel" = "現在オフラインです。\nオフライン中の操作はお控えください。"; -"UnknownNetworkError" = "ネットワークエラーが発生しました"; -"NotConnectNetworkError" = "インターネットにアクセスするにはモバイルデータ通信をオンにするかWi-Fiを利用してください"; -"TimedOutNetworkError" = "インターネットに接続できません\nしばらく経ってから再度おためしください"; +"DisconnectNetworkLabel" = "我们目前处于离线状态。\n请不要在离线时进行操作。"; +"UnknownNetworkError" = "发生了一个网络错误。"; +"NotConnectNetworkError" = "要访问互联网,请打开移动数据传输或使用Wi-Fi。"; +"TimedOutNetworkError" = "我无法连接到互联网\n请稍后再试。"; // logout "LogoutConfirm" = "你想登出吗?"; @@ -74,13 +74,13 @@ // Alert Form "YES" = "有"; "NO" = "无"; -"OK" = "OK"; -"Cancel" = "キャンセル"; -"Close" = "閉じる"; +"OK" = "好的"; +"Cancel" = "取消"; +"Close" = "关闭"; -// Form (ログアウト通知) -"LogoutAlertTitle" = "ログアウト通知"; -"LogoutAlertMessage"= "セッションタイムアウトによりログアウトしました。書類を開き直してください。"; +// WebView sample +"LogoutAlertTitle" = "sample title"; +"LogoutAlertMessage"= "sample message"; // Color "MainColor" = "DarkMauve"; @@ -88,30 +88,30 @@ "SeparatorColor" = "PastelGray"; // TodayExtension -"NotLogedin" = "アプリからログインしてください"; -"NoData" = "データがありません"; +"NotLogedin" = "请通过应用程序登录。"; +"NoData" = "无数据"; // ShareExtension -"CertificateTitle" = "クライアント証明書"; -"Import" = "インポート"; -"Passphrase" = "パスフレーズ"; -"CertificateImportSuccess" = "クライアント証明書をインポートしました。"; -"IncorrectPassphrase" = "パスフレーズが違います。"; -"CertificateImportError" = "証明書のインポート中にエラーが発生しました。"; +"CertificateTitle" = "客户证书"; +"Import" = "导入"; +"Passphrase" = "通行证短语"; +"CertificateImportSuccess" = "输入的客户证书。"; +"IncorrectPassphrase" = "通行证短语是不同的。"; +"CertificateImportError" = "在证书导入过程中发生了一个错误。"; // Widget Status -"Draft" = "下書き"; -"RequestApplication" = "申請依頼"; -"RequestApproval" = "承認依頼"; -"Remand" = "差戻し"; -"CheckReport" = "報告確認"; -"Demand" = "催促あり"; -"Share" = "共有した"; -"Shared" = "共有された"; -"FuturePass" = "回付予定"; +"Draft" = "草稿"; +"RequestApplication" = "委托申请"; +"RequestApproval" = "委托批准"; +"Remand" = "退回"; +"CheckReport" = "报告确认"; +"Demand" = "有督促"; +"Share" = "共通"; +"Shared" = "被共通"; +"FuturePass" = "预定移交"; //WidgetExtension -"StatusCheckWidgetName" = "状況確認ウィジェット"; -"StatusCheckWidgetDescription" = "状況確認ウィジェットの説明"; -"ApprovalWidgetName" = "承認待ちウィジェット"; -"ApprovalWidgetDescription" = "承認待ちウィジェットの説明"; +"StatusCheckWidgetName" = "AgileWorks 批准情况检查"; +"StatusCheckWidgetDescription" = "每个等待处理的文件的编号以小部件的形式显示。"; +"ApprovalWidgetName" = "AgileWorks 等待批准的数量"; +"ApprovalWidgetDescription" = "等待批准的文件数量以小部件的形式显示。"; diff --git a/AgileWorks/AgileWorks/Strings/Chinese-Traditional.strings b/AgileWorks/AgileWorks/Strings/Chinese-Traditional.strings index e4fe1d0b99905901aac42bded81e0802c1c86691..9f7acc1bd0b4b2cbb5810e1e531b67ad3539fb77 100644 --- a/AgileWorks/AgileWorks/Strings/Chinese-Traditional.strings +++ b/AgileWorks/AgileWorks/Strings/Chinese-Traditional.strings @@ -7,30 +7,30 @@ */ // Splash -"Auth" = "認証"; +"Auth" = "應用程序認證"; // Version "AppVersion" = "App ver. %@"; // Login -"ServerURLPlaceholder" = "AgileWorksサーバ"; +"ServerURLPlaceholder" = "AgileWorks服務器"; "ContextPlaceholder" = "AgileWorks"; -"LoginButton" = "接続"; +"LoginButton" = "連接"; "QRCodeReadLabel" = "讀取QR碼"; -"QRCodeReadGuidance" = "ログインQRコードを読み込んでください"; -"ClientCertificateConfigured" = "クライアント証明書設定済"; -"ClientCertificateRemovalConfirmation" = "クライアント証明書の設定を削除します。よろしいですか?"; -"ClientCertificateRemovalOK" = "削除"; -"ClientCertificateRemovalCancel" = "キャンセル"; -"LoginErrorMessage" = "ログインに失敗しました。再度ログインしてください。"; -"CameraStartupErrorMessage" = "カメラの起動に失敗しました。"; +"QRCodeReadGuidance" = "請掃描二維碼。"; +"ClientCertificateConfigured" = "已经设置的客户证书"; +"ClientCertificateRemovalConfirmation" = "刪除客戶證書設置。你確定嗎?"; +"ClientCertificateRemovalOK" = "刪除"; +"ClientCertificateRemovalCancel" = "取消"; +"LoginErrorMessage" = "登錄失敗。請重新登錄。"; +"CameraStartupErrorMessage" = "未能激活攝像機。"; // WebView "HomeTitle" = "家"; "WorkTitle" = "工作"; "DocumentsTitle" = "建立文件"; "SearchTitle" = "搜尋"; -"CheckConnectButton" = "接続確認"; +"CheckConnectButton" = "連接確認"; // SideMenu "ProfileTitle" = "個人檔案"; @@ -50,23 +50,23 @@ // License "LicenseViewTitle" = "授權"; -"LicenseAccept" = "利用許諾に同意します"; +"LicenseAccept" = "重新確認許可證。"; // Open License "OpenLicenseViewTitle" = "開放許可證"; // Notification -"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか。"; +"DocOverrideConfirm" = "由通知點選的文件已經顯示了。 \n你想放棄當前的編輯並顯示一個新的文件嗎?"; // Refresh Token Error -"RefreshTokenUpdateErrorTitle" = "アクセストークン更新エラー"; -"RefreshTokenUpdateError" = "AgileWorksサーバへアクセスするためのトークンの更新が行えませんでした。\n再ログインする必要があります。"; +"RefreshTokenUpdateErrorTitle" = "訪問令牌更新錯誤"; +"RefreshTokenUpdateError" = "訪問AgileWorks服務器的令牌不能被更新。 \n你將需要重新登錄。"; // Network Error Message -"DisconnectNetworkLabel" = "現在オフラインです。\nオフライン中の操作はお控えください。"; -"UnknownNetworkError" = "ネットワークエラーが発生しました"; -"NotConnectNetworkError" = "インターネットにアクセスするにはモバイルデータ通信をオンにするかWi-Fiを利用してください"; -"TimedOutNetworkError" = "インターネットに接続できません\nしばらく経ってから再度おためしください"; +"DisconnectNetworkLabel" = "我們目前處於離線狀態。 \n請不要在離線時進行操作。"; +"UnknownNetworkError" = "發生了一個網絡錯誤。"; +"NotConnectNetworkError" = "要訪問互聯網,請打開移動數據傳輸或使用Wi-Fi。"; +"TimedOutNetworkError" = "我無法連接到互聯網\n請稍後再試。"; // logout "LogoutConfirm" = "你想登出嗎?"; @@ -74,13 +74,13 @@ // Alert Form "YES" = "有"; "NO" = "無"; -"OK" = "OK"; -"Cancel" = "キャンセル"; -"Close" = "閉じる"; +"OK" = "好的"; +"Cancel" = "取消"; +"Close" = "關閉"; -// Form (ログアウト通知) -"LogoutAlertTitle" = "ログアウト通知"; -"LogoutAlertMessage"= "セッションタイムアウトによりログアウトしました。書類を開き直してください。"; +// WebView sample +"LogoutAlertTitle" = "sample title"; +"LogoutAlertMessage"= "sample message"; // Color "MainColor" = "DarkMauve"; @@ -88,30 +88,30 @@ "SeparatorColor" = "PastelGray"; // TodayExtension -"NotLogedin" = "アプリからログインしてください"; -"NoData" = "データがありません"; +"NotLogedin" = "請通過應用程序登錄。"; +"NoData" = "無數據"; // ShareExtension -"CertificateTitle" = "クライアント証明書"; -"Import" = "インポート"; -"Passphrase" = "パスフレーズ"; -"CertificateImportSuccess" = "クライアント証明書をインポートしました。"; -"IncorrectPassphrase" = "パスフレーズが違います。"; -"CertificateImportError" = "証明書のインポート中にエラーが発生しました。"; +"CertificateTitle" = "客戶證書"; +"Import" = "導入"; +"Passphrase" = "通行證短語"; +"CertificateImportSuccess" = "輸入的客戶證書。"; +"IncorrectPassphrase" = "通行證短語是不同的。"; +"CertificateImportError" = "在證書導入過程中發生了一個錯誤。"; // Widget Status -"Draft" = "下書き"; -"RequestApplication" = "申請依頼"; -"RequestApproval" = "承認依頼"; -"Remand" = "差戻し"; +"Draft" = "草稿"; +"RequestApplication" = "委託申請"; +"RequestApproval" = "委託核准"; +"Remand" = "退回"; "CheckReport" = "報告確認"; -"Demand" = "催促あり"; -"Share" = "共有した"; -"Shared" = "共有された"; -"FuturePass" = "回付予定"; +"Demand" = "有催促"; +"Share" = "共通"; +"Shared" = "被共通"; +"FuturePass" = "預定移交"; //WidgetExtension -"StatusCheckWidgetName" = "状況確認ウィジェット"; -"StatusCheckWidgetDescription" = "状況確認ウィジェットの説明"; -"ApprovalWidgetName" = "承認待ちウィジェット"; -"ApprovalWidgetDescription" = "承認待ちウィジェットの説明"; +"StatusCheckWidgetName" = "AgileWorks 批准情況檢查"; +"StatusCheckWidgetDescription" = "每個等待處理的文件的編號以小部件的形式顯示。"; +"ApprovalWidgetName" = "AgileWorks 等待批准的數量"; +"ApprovalWidgetDescription" = "等待批准的文件數量以小部件的形式顯示。"; diff --git a/AgileWorks/AgileWorks/Strings/English.strings b/AgileWorks/AgileWorks/Strings/English.strings index 10b73d03af2fc727881fc76261995e8037ecd5d7..cd41f0256aa63f045fbb4e77a0176b2b4a79478f 100644 --- a/AgileWorks/AgileWorks/Strings/English.strings +++ b/AgileWorks/AgileWorks/Strings/English.strings @@ -7,30 +7,30 @@ */ // Splash -"Auth" = "認証"; +"Auth" = "App Authentication"; // Version "AppVersion" = "App ver. %@"; // Login -"ServerURLPlaceholder" = "AgileWorksサーバ"; +"ServerURLPlaceholder" = "AgileWorks Server"; "ContextPlaceholder" = "AgileWorks"; -"LoginButton" = "接続"; +"LoginButton" = "connection"; "QRCodeReadLabel" = "Read QR code"; -"QRCodeReadGuidance" = "ログインQRコードを読み込んでください"; -"ClientCertificateConfigured" = "クライアント証明書設定済"; -"ClientCertificateRemovalConfirmation" = "クライアント証明書の設定を削除します。よろしいですか?"; -"ClientCertificateRemovalOK" = "削除"; -"ClientCertificateRemovalCancel" = "キャンセル"; -"LoginErrorMessage" = "ログインに失敗しました。再度ログインしてください。"; -"CameraStartupErrorMessage" = "カメラの起動に失敗しました。"; +"QRCodeReadGuidance" = "Please scan the QR code."; +"ClientCertificateConfigured" = "Client certificate already set"; +"ClientCertificateRemovalConfirmation" = "Delete client certificate settings. Are you sure?"; +"ClientCertificateRemovalOK" = "Delete"; +"ClientCertificateRemovalCancel" = "cancel"; +"LoginErrorMessage" = "Login failed. Please login again."; +"CameraStartupErrorMessage" = "Camera failed to start."; // WebView "HomeTitle" = "HOME"; "WorkTitle" = "Task"; "DocumentsTitle" = "Apply"; "SearchTitle" = "Search"; -"CheckConnectButton" = "接続確認"; +"CheckConnectButton" = "Connection Confirmation"; // SideMenu "ProfileTitle" = "Profile"; @@ -50,23 +50,23 @@ // License "LicenseViewTitle" = "License"; -"LicenseAccept" = "利用許諾に同意します"; +"LicenseAccept" = "I agree to the license agreement"; // Open License "OpenLicenseViewTitle" = "Open license"; // Notification -"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか。"; +"DocOverrideConfirm" = "A document by a notification tap is already displayed.\nDo you want to discard the current edits and display a new document?"; // Refresh Token Error -"RefreshTokenUpdateErrorTitle" = "アクセストークン更新エラー"; -"RefreshTokenUpdateError" = "AgileWorksサーバへアクセスするためのトークンの更新が行えませんでした。\n再ログインする必要があります。"; +"RefreshTokenUpdateErrorTitle" = "Access token update error"; +"RefreshTokenUpdateError" = "We were unable to update the token to access the AgileWorks server.\n You will need to re-login."; // Network Error Message -"DisconnectNetworkLabel" = "現在オフラインです。\nオフライン中の操作はお控えください。"; -"UnknownNetworkError" = "ネットワークエラーが発生しました"; -"NotConnectNetworkError" = "インターネットにアクセスするにはモバイルデータ通信をオンにするかWi-Fiを利用してください"; -"TimedOutNetworkError" = "インターネットに接続できません\nしばらく経ってから再度おためしください"; +"DisconnectNetworkLabel" = "We are currently offline.\nPlease refrain from operating while offline."; +"UnknownNetworkError" = "A network error has occurred."; +"NotConnectNetworkError" = "To access the Internet, turn on mobile data communication or use Wi-Fi."; +"TimedOutNetworkError" = "Unable to connect to the Internet\nPlease try again a few moments later."; // logout "LogoutConfirm" = "Would you like to log out?"; @@ -79,8 +79,8 @@ "Close" = "Close"; // Form (ログアウト通知) -"LogoutAlertTitle" = "ログアウト通知"; -"LogoutAlertMessage"= "セッションタイムアウトによりログアウトしました。書類を開き直してください。"; +"LogoutAlertTitle" = "sample title"; +"LogoutAlertMessage"= "sample message"; // Color "MainColor" = "DarkMauve"; @@ -88,30 +88,30 @@ "SeparatorColor" = "PastelGray"; // TodayExtension -"NotLogedin" = "アプリからログインしてください"; -"NoData" = "データがありません"; +"NotLogedin" = "Please log in through the application."; +"NoData" = "No data available."; // ShareExtension -"CertificateTitle" = "クライアント証明書"; -"Import" = "インポート"; -"Passphrase" = "パスフレーズ"; -"CertificateImportSuccess" = "クライアント証明書をインポートしました。"; -"IncorrectPassphrase" = "パスフレーズが違います。"; -"CertificateImportError" = "証明書のインポート中にエラーが発生しました。"; +"CertificateTitle" = "client certificate"; +"Import" = "import"; +"Passphrase" = "pass phrase"; +"CertificateImportSuccess" = "Client certificate imported."; +"IncorrectPassphrase" = "The passphrase is different."; +"CertificateImportError" = "An error occurred during certificate import."; // Widget Status -"Draft" = "下書き"; -"RequestApplication" = "申請依頼"; -"RequestApproval" = "承認依頼"; -"Remand" = "差戻し"; -"CheckReport" = "報告確認"; -"Demand" = "催促あり"; -"Share" = "共有した"; -"Shared" = "共有された"; -"FuturePass" = "回付予定"; +"Draft" = "Draft"; +"RequestApplication" = "Requested Apply"; +"RequestApproval" = "Requested Approval"; +"Remand" = "Remand"; +"CheckReport" = "Requested Confirmation"; +"Demand" = "Reminder"; +"Share" = "Sharing Sender"; +"Shared" = "Sharing Receiver"; +"FuturePass" = "Upcoming Task"; //WidgetExtension -"StatusCheckWidgetName" = "状況確認ウィジェット"; -"StatusCheckWidgetDescription" = "状況確認ウィジェットの説明"; -"ApprovalWidgetName" = "承認待ちウィジェット"; -"ApprovalWidgetDescription" = "承認待ちウィジェットの説明"; +"StatusCheckWidgetName" = "AgileWorks Approval Status Check"; +"StatusCheckWidgetDescription" = "The number of each document waiting to be processed is displayed as a widget."; +"ApprovalWidgetName" = "AgileWorks Number of pending approvals"; +"ApprovalWidgetDescription" = "The number of documents awaiting approval is displayed in the widget."; diff --git a/AgileWorks/AgileWorks/Strings/Japanese.strings b/AgileWorks/AgileWorks/Strings/Japanese.strings index d4d38d1935c03397fd70572fdb465a65d8972db5..94fd879c9c8aa8666d2bf467534c0b7afccf708b 100644 --- a/AgileWorks/AgileWorks/Strings/Japanese.strings +++ b/AgileWorks/AgileWorks/Strings/Japanese.strings @@ -56,7 +56,7 @@ "OpenLicenseViewTitle" = "オープンソースライセンス"; // Notification -"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか。"; +"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか?"; // Refresh Token Error "RefreshTokenUpdateErrorTitle" = "アクセストークン更新エラー"; @@ -78,9 +78,9 @@ "Cancel" = "キャンセル"; "Close" = "閉じる"; -// Form (ログアウト通知) -"LogoutAlertTitle" = "ログアウト通知"; -"LogoutAlertMessage"= "セッションタイムアウトによりログアウトしました。書類を開き直してください。"; +// WebView sample +"LogoutAlertTitle" = "sample title"; +"LogoutAlertMessage"= "sample message"; // Color "MainColor" = "DarkMauve"; @@ -111,7 +111,7 @@ "FuturePass" = "回付予定"; //WidgetExtension -"StatusCheckWidgetName" = "状況確認ウィジェット"; -"StatusCheckWidgetDescription" = "状況確認ウィジェットの説明"; -"ApprovalWidgetName" = "承認待ちウィジェット"; -"ApprovalWidgetDescription" = "承認待ちウィジェットの説明"; +"StatusCheckWidgetName" = "AgileWorks 承認状況確認"; +"StatusCheckWidgetDescription" = "処理待ちの書類の各件数がウィジェットとして表示されます。"; +"ApprovalWidgetName" = "AgileWorks 承認待ち数"; +"ApprovalWidgetDescription" = "承認待ち書類の件数がウィジェットとして表示されます。"; diff --git a/AgileWorks/AgileWorks/Strings/en.lproj/Localizable.strings b/AgileWorks/AgileWorks/Strings/en.lproj/Localizable.strings index a6e3ca1163a427cca3fcfd82b78340826e7f0dc6..5504ddc79d91b9923745cb3d2d92b6f9a8aa80f6 100644 --- a/AgileWorks/AgileWorks/Strings/en.lproj/Localizable.strings +++ b/AgileWorks/AgileWorks/Strings/en.lproj/Localizable.strings @@ -7,30 +7,30 @@ */ // Splash -"Auth" = "認証"; +"Auth" = "App Authentication"; // Version "AppVersion" = "App ver. %@"; // Login -"ServerURLPlaceholder" = "AgileWorksサーバ"; +"ServerURLPlaceholder" = "AgileWorks Server"; "ContextPlaceholder" = "AgileWorks"; -"LoginButton" = "接続"; +"LoginButton" = "connection"; "QRCodeReadLabel" = "Read QR code"; -"QRCodeReadGuidance" = "ログインQRコードを読み込んでください"; -"ClientCertificateConfigured" = "クライアント証明書設定済"; -"ClientCertificateRemovalConfirmation" = "クライアント証明書の設定を削除します。よろしいですか?"; -"ClientCertificateRemovalOK" = "削除"; -"ClientCertificateRemovalCancel" = "キャンセル"; -"LoginErrorMessage" = "ログインに失敗しました。再度ログインしてください。"; -"CameraStartupErrorMessage" = "カメラの起動に失敗しました。"; +"QRCodeReadGuidance" = "Please scan the QR code."; +"ClientCertificateConfigured" = "Client certificate already set"; +"ClientCertificateRemovalConfirmation" = "Delete client certificate settings. Are you sure?"; +"ClientCertificateRemovalOK" = "Delete"; +"ClientCertificateRemovalCancel" = "cancel"; +"LoginErrorMessage" = "Login failed. Please login again."; +"CameraStartupErrorMessage" = "Camera failed to start."; // WebView "HomeTitle" = "HOME"; "WorkTitle" = "Task"; "DocumentsTitle" = "Apply"; "SearchTitle" = "Search"; -"CheckConnectButton" = "接続確認"; +"CheckConnectButton" = "Connection Confirmation"; // SideMenu "ProfileTitle" = "Profile"; @@ -50,23 +50,23 @@ // License "LicenseViewTitle" = "License"; -"LicenseAccept" = "利用許諾に同意します"; +"LicenseAccept" = "I agree to the license agreement"; // Open License "OpenLicenseViewTitle" = "Open license"; // Notification -"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか。"; +"DocOverrideConfirm" = "A document by a notification tap is already displayed.\nDo you want to discard the current edits and display a new document?"; // Refresh Token Error -"RefreshTokenUpdateErrorTitle" = "アクセストークン更新エラー"; -"RefreshTokenUpdateError" = "AgileWorksサーバへアクセスするためのトークンの更新が行えませんでした。\n再ログインする必要があります。"; +"RefreshTokenUpdateErrorTitle" = "Access token update error"; +"RefreshTokenUpdateError" = "We were unable to update the token to access the AgileWorks server.\n You will need to re-login."; // Network Error Message -"DisconnectNetworkLabel" = "現在オフラインです。\nオフライン中の操作はお控えください。"; -"UnknownNetworkError" = "ネットワークエラーが発生しました"; -"NotConnectNetworkError" = "インターネットにアクセスするにはモバイルデータ通信をオンにするかWi-Fiを利用してください"; -"TimedOutNetworkError" = "インターネットに接続できません\nしばらく経ってから再度おためしください"; +"DisconnectNetworkLabel" = "We are currently offline.\nPlease refrain from operating while offline."; +"UnknownNetworkError" = "A network error has occurred."; +"NotConnectNetworkError" = "To access the Internet, turn on mobile data communication or use Wi-Fi."; +"TimedOutNetworkError" = "Unable to connect to the Internet\nPlease try again a few moments later."; // logout "LogoutConfirm" = "Would you like to log out?"; @@ -78,9 +78,9 @@ "Cancel" = "Cancel"; "Close" = "Close"; -// Form (ログアウト通知) -"LogoutAlertTitle" = "ログアウト通知"; -"LogoutAlertMessage"= "セッションタイムアウトによりログアウトしました。書類を開き直してください。"; +// WebView sample +"LogoutAlertTitle" = "sample title"; +"LogoutAlertMessage"= "sample message"; // Color "MainColor" = "DarkMauve"; @@ -88,30 +88,30 @@ "SeparatorColor" = "PastelGray"; // TodayExtension -"NotLogedin" = "アプリからログインしてください"; -"NoData" = "データがありません"; +"NotLogedin" = "Please log in through the application."; +"NoData" = "No data available."; // ShareExtension -"CertificateTitle" = "クライアント証明書"; -"Import" = "インポート"; -"Passphrase" = "パスフレーズ"; -"CertificateImportSuccess" = "クライアント証明書をインポートしました。"; -"IncorrectPassphrase" = "パスフレーズが違います。"; -"CertificateImportError" = "証明書のインポート中にエラーが発生しました。"; +"CertificateTitle" = "client certificate"; +"Import" = "import"; +"Passphrase" = "pass phrase"; +"CertificateImportSuccess" = "Client certificate imported."; +"IncorrectPassphrase" = "The passphrase is different."; +"CertificateImportError" = "An error occurred during certificate import."; // Widget Status -"Draft" = "下書き"; -"RequestApplication" = "申請依頼"; -"RequestApproval" = "承認依頼"; -"Remand" = "差戻し"; -"CheckReport" = "報告確認"; -"Demand" = "催促あり"; -"Share" = "共有した"; -"Shared" = "共有された"; -"FuturePass" = "回付予定"; +"Draft" = "Draft"; +"RequestApplication" = "Requested Apply"; +"RequestApproval" = "Requested Approval"; +"Remand" = "Remand"; +"CheckReport" = "Requested Confirmation"; +"Demand" = "Reminder"; +"Share" = "Sharing Sender"; +"Shared" = "Sharing Receiver"; +"FuturePass" = "Upcoming Task"; //WidgetExtension -"StatusCheckWidgetName" = "状況確認ウィジェット"; -"StatusCheckWidgetDescription" = "状況確認ウィジェットの説明"; -"ApprovalWidgetName" = "承認待ちウィジェット"; -"ApprovalWidgetDescription" = "承認待ちウィジェットの説明"; +"StatusCheckWidgetName" = "AgileWorks Approval Status Check"; +"StatusCheckWidgetDescription" = "The number of each document waiting to be processed is displayed as a widget."; +"ApprovalWidgetName" = "AgileWorks Number of pending approvals"; +"ApprovalWidgetDescription" = "The number of documents awaiting approval is displayed in the widget."; diff --git a/AgileWorks/AgileWorks/Strings/ja.lproj/Localizable.strings b/AgileWorks/AgileWorks/Strings/ja.lproj/Localizable.strings index 91960b3307875fc3affa2003854347d414904618..ae5e5727ffd9fe51e80d8f8bbcfaf3cfe7bd4c8b 100644 --- a/AgileWorks/AgileWorks/Strings/ja.lproj/Localizable.strings +++ b/AgileWorks/AgileWorks/Strings/ja.lproj/Localizable.strings @@ -56,7 +56,7 @@ "OpenLicenseViewTitle" = "オープンソースライセンス"; // Notification -"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか。"; +"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか?"; // Refresh Token Error "RefreshTokenUpdateErrorTitle" = "アクセストークン更新エラー"; @@ -78,9 +78,9 @@ "Cancel" = "キャンセル"; "Close" = "閉じる"; -// Form (ログアウト通知) -"LogoutAlertTitle" = "ログアウト通知"; -"LogoutAlertMessage"= "セッションタイムアウトによりログアウトしました。書類を開き直してください。"; +// WebView sample +"LogoutAlertTitle" = "sample title"; +"LogoutAlertMessage"= "sample message"; // Color "MainColor" = "DarkMauve"; @@ -111,7 +111,7 @@ "FuturePass" = "回付予定"; //WidgetExtension -"StatusCheckWidgetName" = "状況確認ウィジェット"; -"StatusCheckWidgetDescription" = "状況確認ウィジェットの説明"; -"ApprovalWidgetName" = "承認待ちウィジェット"; -"ApprovalWidgetDescription" = "承認待ちウィジェットの説明"; +"StatusCheckWidgetName" = "AgileWorks 承認状況確認"; +"StatusCheckWidgetDescription" = "処理待ちの書類の各件数がウィジェットとして表示されます。"; +"ApprovalWidgetName" = "AgileWorks 承認待ち数"; +"ApprovalWidgetDescription" = "承認待ち書類の件数がウィジェットとして表示されます。"; diff --git a/AgileWorks/AgileWorks/Strings/zh-Hans.lproj/Localizable.strings b/AgileWorks/AgileWorks/Strings/zh-Hans.lproj/Localizable.strings index 0b3bf6c2aaa671d283a83178e9df7e80624fa83c..fa403dd1373730f49273d95d886bcdab3adf04cb 100644 --- a/AgileWorks/AgileWorks/Strings/zh-Hans.lproj/Localizable.strings +++ b/AgileWorks/AgileWorks/Strings/zh-Hans.lproj/Localizable.strings @@ -7,30 +7,30 @@ */ // Splash -"Auth" = "認証"; +"Auth" = "应用程序认证"; // Version "AppVersion" = "App ver. %@"; // Login -"ServerURLPlaceholder" = "AgileWorksサーバ"; +"ServerURLPlaceholder" = "AgileWorks服务器"; "ContextPlaceholder" = "AgileWorks"; -"LoginButton" = "接続"; +"LoginButton" = "连接"; "QRCodeReadLabel" = "读取QR码"; -"QRCodeReadGuidance" = "ログインQRコードを読み込んでください"; -"ClientCertificateConfigured" = "クライアント証明書設定済"; -"ClientCertificateRemovalConfirmation" = "クライアント証明書の設定を削除します。よろしいですか?"; -"ClientCertificateRemovalOK" = "削除"; -"ClientCertificateRemovalCancel" = "キャンセル"; -"LoginErrorMessage" = "ログインに失敗しました。再度ログインしてください。"; -"CameraStartupErrorMessage" = "カメラの起動に失敗しました。"; +"QRCodeReadGuidance" = "请扫描二维码。"; +"ClientCertificateConfigured" = "已经设置的客户证书"; +"ClientCertificateRemovalConfirmation" = "删除客户证书设置。 你确定吗?"; +"ClientCertificateRemovalOK" = "删除"; +"ClientCertificateRemovalCancel" = "取消"; +"LoginErrorMessage" = "登录失败。 请重新登录。"; +"CameraStartupErrorMessage" = "未能激活摄像机。"; // WebView "HomeTitle" = "家"; "WorkTitle" = "工作"; "DocumentsTitle" = "制作文档"; "SearchTitle" = "检索"; -"CheckConnectButton" = "接続確認"; +"CheckConnectButton" = "连接确认"; // SideMenu "ProfileTitle" = "个人档案"; @@ -50,23 +50,23 @@ // License "LicenseViewTitle" = "许可证"; -"LicenseAccept" = "利用許諾に同意します"; +"LicenseAccept" = "重新确认许可证。"; // Open License "OpenLicenseViewTitle" = "开放许可证"; // Notification -"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか。"; +"DocOverrideConfirm" = "由通知点选的文件已经显示了。\n你想放弃当前的编辑并显示一个新的文件吗?"; // Refresh Token Error -"RefreshTokenUpdateErrorTitle" = "アクセストークン更新エラー"; -"RefreshTokenUpdateError" = "AgileWorksサーバへアクセスするためのトークンの更新が行えませんでした。\n再ログインする必要があります。"; +"RefreshTokenUpdateErrorTitle" = "访问令牌更新错误"; +"RefreshTokenUpdateError" = "访问AgileWorks服务器的令牌不能被更新。\n你将需要重新登录。"; // Network Error Message -"DisconnectNetworkLabel" = "現在オフラインです。\nオフライン中の操作はお控えください。"; -"UnknownNetworkError" = "ネットワークエラーが発生しました"; -"NotConnectNetworkError" = "インターネットにアクセスするにはモバイルデータ通信をオンにするかWi-Fiを利用してください"; -"TimedOutNetworkError" = "インターネットに接続できません\nしばらく経ってから再度おためしください"; +"DisconnectNetworkLabel" = "我们目前处于离线状态。\n请不要在离线时进行操作。"; +"UnknownNetworkError" = "发生了一个网络错误。"; +"NotConnectNetworkError" = "要访问互联网,请打开移动数据传输或使用Wi-Fi。"; +"TimedOutNetworkError" = "我无法连接到互联网\n请稍后再试。"; // logout "LogoutConfirm" = "你想登出吗?"; @@ -74,13 +74,13 @@ // Alert Form "YES" = "有"; "NO" = "无"; -"OK" = "OK"; -"Cancel" = "キャンセル"; -"Close" = "閉じる"; +"OK" = "好的"; +"Cancel" = "取消"; +"Close" = "关闭"; -// Form (ログアウト通知) -"LogoutAlertTitle" = "ログアウト通知"; -"LogoutAlertMessage"= "セッションタイムアウトによりログアウトしました。書類を開き直してください。"; +// WebView sample +"LogoutAlertTitle" = "sample title"; +"LogoutAlertMessage"= "sample message"; // Color "MainColor" = "DarkMauve"; @@ -88,30 +88,30 @@ "SeparatorColor" = "PastelGray"; // TodayExtension -"NotLogedin" = "アプリからログインしてください"; -"NoData" = "データがありません"; +"NotLogedin" = "请通过应用程序登录。"; +"NoData" = "无数据"; // ShareExtension -"CertificateTitle" = "クライアント証明書"; -"Import" = "インポート"; -"Passphrase" = "パスフレーズ"; -"CertificateImportSuccess" = "クライアント証明書をインポートしました。"; -"IncorrectPassphrase" = "パスフレーズが違います。"; -"CertificateImportError" = "証明書のインポート中にエラーが発生しました。"; +"CertificateTitle" = "客户证书"; +"Import" = "导入"; +"Passphrase" = "通行证短语"; +"CertificateImportSuccess" = "输入的客户证书。"; +"IncorrectPassphrase" = "通行证短语是不同的。"; +"CertificateImportError" = "在证书导入过程中发生了一个错误。"; // Widget Status -"Draft" = "下書き"; -"RequestApplication" = "申請依頼"; -"RequestApproval" = "承認依頼"; -"Remand" = "差戻し"; -"CheckReport" = "報告確認"; -"Demand" = "催促あり"; -"Share" = "共有した"; -"Shared" = "共有された"; -"FuturePass" = "回付予定"; +"Draft" = "草稿"; +"RequestApplication" = "委托申请"; +"RequestApproval" = "委托批准"; +"Remand" = "退回"; +"CheckReport" = "报告确认"; +"Demand" = "有督促"; +"Share" = "共通"; +"Shared" = "被共通"; +"FuturePass" = "预定移交"; //WidgetExtension -"StatusCheckWidgetName" = "状況確認ウィジェット"; -"StatusCheckWidgetDescription" = "状況確認ウィジェットの説明"; -"ApprovalWidgetName" = "承認待ちウィジェット"; -"ApprovalWidgetDescription" = "承認待ちウィジェットの説明"; +"StatusCheckWidgetName" = "AgileWorks 批准情况检查"; +"StatusCheckWidgetDescription" = "每个等待处理的文件的编号以小部件的形式显示。"; +"ApprovalWidgetName" = "AgileWorks 等待批准的数量"; +"ApprovalWidgetDescription" = "等待批准的文件数量以小部件的形式显示。"; diff --git a/AgileWorks/AgileWorks/Strings/zh-Hant.lproj/Localizable.strings b/AgileWorks/AgileWorks/Strings/zh-Hant.lproj/Localizable.strings index f4dc98058b6b4b9e4c3d251213719a15148179a6..0d4caefdcddf5058f16d2a83afd9e54b2dafdf9c 100644 --- a/AgileWorks/AgileWorks/Strings/zh-Hant.lproj/Localizable.strings +++ b/AgileWorks/AgileWorks/Strings/zh-Hant.lproj/Localizable.strings @@ -7,30 +7,30 @@ */ // Splash -"Auth" = "認証"; +"Auth" = "應用程序認證"; // Version "AppVersion" = "App ver. %@"; // Login -"ServerURLPlaceholder" = "AgileWorksサーバ"; +"ServerURLPlaceholder" = "AgileWorks服務器"; "ContextPlaceholder" = "AgileWorks"; -"LoginButton" = "接続"; +"LoginButton" = "連接"; "QRCodeReadLabel" = "讀取QR碼"; -"QRCodeReadGuidance" = "ログインQRコードを読み込んでください"; -"ClientCertificateConfigured" = "クライアント証明書設定済"; -"ClientCertificateRemovalConfirmation" = "クライアント証明書の設定を削除します。よろしいですか?"; -"ClientCertificateRemovalOK" = "削除"; -"ClientCertificateRemovalCancel" = "キャンセル"; -"LoginErrorMessage" = "ログインに失敗しました。再度ログインしてください。"; -"CameraStartupErrorMessage" = "カメラの起動に失敗しました。"; +"QRCodeReadGuidance" = "請掃描二維碼。"; +"ClientCertificateConfigured" = "已经设置的客户证书"; +"ClientCertificateRemovalConfirmation" = "刪除客戶證書設置。你確定嗎?"; +"ClientCertificateRemovalOK" = "刪除"; +"ClientCertificateRemovalCancel" = "取消"; +"LoginErrorMessage" = "登錄失敗。請重新登錄。"; +"CameraStartupErrorMessage" = "未能激活攝像機。"; // WebView "HomeTitle" = "家"; "WorkTitle" = "工作"; "DocumentsTitle" = "建立文件"; "SearchTitle" = "搜尋"; -"CheckConnectButton" = "接続確認"; +"CheckConnectButton" = "連接確認"; // SideMenu "ProfileTitle" = "個人檔案"; @@ -50,23 +50,23 @@ // License "LicenseViewTitle" = "授權"; -"LicenseAccept" = "利用許諾に同意します"; +"LicenseAccept" = "重新確認許可證。"; // Open License "OpenLicenseViewTitle" = "開放許可證"; // Notification -"DocOverrideConfirm" = "既に通知タップによる書類が表示されています。\n現在の編集内容を破棄し、新たな書類を表示しますか。"; +"DocOverrideConfirm" = "由通知點選的文件已經顯示了。 \n你想放棄當前的編輯並顯示一個新的文件嗎?"; // Refresh Token Error -"RefreshTokenUpdateErrorTitle" = "アクセストークン更新エラー"; -"RefreshTokenUpdateError" = "AgileWorksサーバへアクセスするためのトークンの更新が行えませんでした。\n再ログインする必要があります。"; +"RefreshTokenUpdateErrorTitle" = "訪問令牌更新錯誤"; +"RefreshTokenUpdateError" = "訪問AgileWorks服務器的令牌不能被更新。 \n你將需要重新登錄。"; // Network Error Message -"DisconnectNetworkLabel" = "現在オフラインです。\nオフライン中の操作はお控えください。"; -"UnknownNetworkError" = "ネットワークエラーが発生しました"; -"NotConnectNetworkError" = "インターネットにアクセスするにはモバイルデータ通信をオンにするかWi-Fiを利用してください"; -"TimedOutNetworkError" = "インターネットに接続できません\nしばらく経ってから再度おためしください"; +"DisconnectNetworkLabel" = "我們目前處於離線狀態。 \n請不要在離線時進行操作。"; +"UnknownNetworkError" = "發生了一個網絡錯誤。"; +"NotConnectNetworkError" = "要訪問互聯網,請打開移動數據傳輸或使用Wi-Fi。"; +"TimedOutNetworkError" = "我無法連接到互聯網\n請稍後再試。"; // logout "LogoutConfirm" = "你想登出嗎?"; @@ -74,13 +74,13 @@ // Alert Form "YES" = "有"; "NO" = "無"; -"OK" = "OK"; -"Cancel" = "キャンセル"; -"Close" = "閉じる"; +"OK" = "好的"; +"Cancel" = "取消"; +"Close" = "關閉"; -// Form (ログアウト通知) -"LogoutAlertTitle" = "ログアウト通知"; -"LogoutAlertMessage"= "セッションタイムアウトによりログアウトしました。書類を開き直してください。"; +// WebView sample +"LogoutAlertTitle" = "sample title"; +"LogoutAlertMessage"= "sample message"; // Color "MainColor" = "DarkMauve"; @@ -88,30 +88,30 @@ "SeparatorColor" = "PastelGray"; // TodayExtension -"NotLogedin" = "アプリからログインしてください"; -"NoData" = "データがありません"; +"NotLogedin" = "請通過應用程序登錄。"; +"NoData" = "無數據"; // ShareExtension -"CertificateTitle" = "クライアント証明書"; -"Import" = "インポート"; -"Passphrase" = "パスフレーズ"; -"CertificateImportSuccess" = "クライアント証明書をインポートしました。"; -"IncorrectPassphrase" = "パスフレーズが違います。"; -"CertificateImportError" = "証明書のインポート中にエラーが発生しました。"; +"CertificateTitle" = "客戶證書"; +"Import" = "導入"; +"Passphrase" = "通行證短語"; +"CertificateImportSuccess" = "輸入的客戶證書。"; +"IncorrectPassphrase" = "通行證短語是不同的。"; +"CertificateImportError" = "在證書導入過程中發生了一個錯誤。"; // Widget Status -"Draft" = "下書き"; -"RequestApplication" = "申請依頼"; -"RequestApproval" = "承認依頼"; -"Remand" = "差戻し"; +"Draft" = "草稿"; +"RequestApplication" = "委託申請"; +"RequestApproval" = "委託核准"; +"Remand" = "退回"; "CheckReport" = "報告確認"; -"Demand" = "催促あり"; -"Share" = "共有した"; -"Shared" = "共有された"; -"FuturePass" = "回付予定"; +"Demand" = "有催促"; +"Share" = "共通"; +"Shared" = "被共通"; +"FuturePass" = "預定移交"; //WidgetExtension -"StatusCheckWidgetName" = "状況確認ウィジェット"; -"StatusCheckWidgetDescription" = "状況確認ウィジェットの説明"; -"ApprovalWidgetName" = "承認待ちウィジェット"; -"ApprovalWidgetDescription" = "承認待ちウィジェットの説明"; +"StatusCheckWidgetName" = "AgileWorks 批准情況檢查"; +"StatusCheckWidgetDescription" = "每個等待處理的文件的編號以小部件的形式顯示。"; +"ApprovalWidgetName" = "AgileWorks 等待批准的數量"; +"ApprovalWidgetDescription" = "等待批准的文件數量以小部件的形式顯示。"; diff --git a/AgileWorks/AgileWorks/WebView/View/MenuTableViewController.swift b/AgileWorks/AgileWorks/WebView/View/MenuTableViewController.swift index a3ba9554183a679b88889f44b1b25b5044f7ec69..77850b6377c6da78d1e02a382f6469346eeaa2ed 100644 --- a/AgileWorks/AgileWorks/WebView/View/MenuTableViewController.swift +++ b/AgileWorks/AgileWorks/WebView/View/MenuTableViewController.swift @@ -20,7 +20,7 @@ class MenuTableViewController: UITableViewController { override func viewDidLoad() { super.viewDidLoad() - self.tableView.separatorColor = UIColor(named: localizadString(key: "SeparatorColor", comment: "")) + self.tableView.separatorColor = UIColor(named: getDisplayString(key: "SeparatorColor", comment: "")) self.setup() } @@ -50,10 +50,10 @@ class MenuTableViewController: UITableViewController { // 各種セットアップ private func setup() { // 各ラベル設定 - self.profileLabel.text = localizadString(key: "ProfileTitle", comment: "") - self.logoutLabel.text = localizadString(key: "LogoutTitle", comment: "") - self.licenseLabel.text = localizadString(key: "LicenseTitle", comment: "") - self.openLicenseLable.text = localizadString(key: "OpenLicenseTitle", comment: "") + self.profileLabel.text = getDisplayString(key: "ProfileTitle", comment: "") + self.logoutLabel.text = getDisplayString(key: "LogoutTitle", comment: "") + self.licenseLabel.text = getDisplayString(key: "LicenseTitle", comment: "") + self.openLicenseLable.text = getDisplayString(key: "OpenLicenseTitle", comment: "") } // プロファイルセルタップ処理 private func pushToProfile() { @@ -73,9 +73,9 @@ class MenuTableViewController: UITableViewController { // ログアウトセルタップ処理 private func logout() { // ログアウトタップ時処理 - let message = localizadString(key: "LogoutConfirm", comment: "") - let defaultAction = AppDelegate.shared.rootViewController.logoutDefaultAction(title: localizadString(key: "YES", comment: "")) - let cancelAction = UIAlertAction(title: localizadString(key: "NO", comment: ""), style: .cancel) { _ in + let message = getDisplayString(key: "LogoutConfirm", comment: "") + let defaultAction = AppDelegate.shared.rootViewController.logoutDefaultAction(title: getDisplayString(key: "YES", comment: "")) + let cancelAction = UIAlertAction(title: getDisplayString(key: "NO", comment: ""), style: .cancel) { _ in if let indexPath = self.tableView.indexPath(for: self.logoutCell) { self.tableView.deselectRow(at: indexPath, animated: true) } diff --git a/AgileWorks/AgileWorks/WebView/View/WebViewController.swift b/AgileWorks/AgileWorks/WebView/View/WebViewController.swift index ce813a487340349ba833b21226d400c45952ab39..2fcb8dd98ec858c2a881f9cde19e245d0e5b0532 100644 --- a/AgileWorks/AgileWorks/WebView/View/WebViewController.swift +++ b/AgileWorks/AgileWorks/WebView/View/WebViewController.swift @@ -42,9 +42,9 @@ class WebViewController: UIViewController { // Title を設定する URL を定義 var urlToTitle: [String: String] = [ - "Mobile#home": localizadString(key: "HomeTitle", comment: ""), - "Mobile#work": localizadString(key: "WorkTitle", comment: ""), - "Mobile#agileWorksSearch": localizadString(key: "SearchTitle", comment: "") + "Mobile#home": getDisplayString(key: "HomeTitle", comment: ""), + "Mobile#work": getDisplayString(key: "WorkTitle", comment: ""), + "Mobile#agileWorksSearch": getDisplayString(key: "SearchTitle", comment: "") ] // 書類表示時 URL let docUrl: [String] = ["Mobile#docDetail"] @@ -55,7 +55,7 @@ class WebViewController: UIViewController { // naviBarButton 設定 if self.showNotification { // 通知からの起動 - self.closeButton.title = localizadString(key: "Close", comment: "") + self.closeButton.title = getDisplayString(key: "Close", comment: "") self.closeButton.isEnabled = true // メニューボタンを消す self.menuButton.image = nil @@ -216,16 +216,16 @@ class WebViewController: UIViewController { // リフレッシュトークン更新エラーの場合 if refreshError { DispatchQueue.main.async { - let title = localizadString(key: "RefreshTokenUpdateErrorTitle", comment: "") - let message = localizadString(key: "RefreshTokenUpdateError", comment: "") - let defaultAction = AppDelegate.shared.rootViewController.logoutDefaultAction(title: localizadString(key: "OK", comment: "")) + let title = getDisplayString(key: "RefreshTokenUpdateErrorTitle", comment: "") + let message = getDisplayString(key: "RefreshTokenUpdateError", comment: "") + let defaultAction = AppDelegate.shared.rootViewController.logoutDefaultAction(title: getDisplayString(key: "OK", comment: "")) AppDelegate.shared.rootViewController.showAlertScreen(view: self, title: title, message: message, defaultAction: defaultAction, cancelAction: nil) } // その他エラーの場合 } else { DispatchQueue.main.async { - let message = localizadString(key: "UnknownNetworkError", comment: "") - let defaultAction = UIAlertAction(title: localizadString(key: "OK", comment: ""), style: .default) { _ in } + let message = getDisplayString(key: "UnknownNetworkError", comment: "") + let defaultAction = UIAlertAction(title: getDisplayString(key: "OK", comment: ""), style: .default) { _ in } AppDelegate.shared.rootViewController.showAlertScreen(view: self, title: "", message: message, defaultAction: defaultAction, cancelAction: nil) } } @@ -235,10 +235,10 @@ class WebViewController: UIViewController { // オフラインViewセットアップ func setDisconnectView() { - disconnectLabel.text = localizadString(key: "DisconnectNetworkLabel", comment: "") + disconnectLabel.text = getDisplayString(key: "DisconnectNetworkLabel", comment: "") disconnectLabel.textAlignment = .center disconnectLabel.textColor = UIColor.red - checkConnectButton.setTitle(localizadString(key: "CheckConnectButton", comment: ""), for: .normal) + checkConnectButton.setTitle(getDisplayString(key: "CheckConnectButton", comment: ""), for: .normal) } // ネットワークモニタリング開始 @@ -360,9 +360,9 @@ class WebViewController: UIViewController { //ログイン画面の固定文言表示 func setupFixedWording() { urlToTitle = [ - "Mobile#home": localizadString(key: "HomeTitle", comment: ""), - "Mobile#work": localizadString(key: "WorkTitle", comment: ""), - "Mobile#agileWorksSearch": localizadString(key: "SearchTitle", comment: "") + "Mobile#home": getDisplayString(key: "HomeTitle", comment: ""), + "Mobile#work": getDisplayString(key: "WorkTitle", comment: ""), + "Mobile#agileWorksSearch": getDisplayString(key: "SearchTitle", comment: "") ] if self.nowTitleKey != nil { for (key, value) in urlToTitle { @@ -374,18 +374,18 @@ class WebViewController: UIViewController { } } else { // タイトルの再設定 - naviTitle = localizadString(key: tabTitleKey, comment: "") + naviTitle = getDisplayString(key: tabTitleKey, comment: "") } self.navigationItem.title = naviTitle - disconnectLabel.text = localizadString(key: "DisconnectNetworkLabel", comment: "") - checkConnectButton.setTitle(localizadString(key: "CheckConnectButton", comment: ""), for: .normal) + disconnectLabel.text = getDisplayString(key: "DisconnectNetworkLabel", comment: "") + checkConnectButton.setTitle(getDisplayString(key: "CheckConnectButton", comment: ""), for: .normal) } } extension WebViewController: WKUIDelegate { func webView(_ webView: WKWebView, runJavaScriptAlertPanelWithMessage message: String, initiatedByFrame frame: WKFrameInfo, completionHandler: @escaping () -> Void) { let alertController = UIAlertController(title: "", message: message, preferredStyle: .alert) - let okAction = UIAlertAction(title: localizadString(key: "OK", comment: ""), style: .default) { _ in + let okAction = UIAlertAction(title: getDisplayString(key: "OK", comment: ""), style: .default) { _ in completionHandler() } alertController.addAction(okAction) @@ -394,10 +394,10 @@ extension WebViewController: WKUIDelegate { func webView(_ webView: WKWebView, runJavaScriptConfirmPanelWithMessage message: String, initiatedByFrame frame: WKFrameInfo, completionHandler: @escaping (Bool) -> Void) { let alertController = UIAlertController(title: "", message: message, preferredStyle: .alert) - let okAction = UIAlertAction(title: localizadString(key: "OK", comment: ""), style: .default) { _ in + let okAction = UIAlertAction(title: getDisplayString(key: "OK", comment: ""), style: .default) { _ in completionHandler(true) } - let cancelAction = UIAlertAction(title: localizadString(key: "Cancel", comment: ""), style: .cancel) { _ in + let cancelAction = UIAlertAction(title: getDisplayString(key: "Cancel", comment: ""), style: .cancel) { _ in completionHandler(false) } alertController.addAction(okAction) diff --git a/AgileWorks/AgileWorks/WebView/View/WebViewScriptMessageHandler.swift b/AgileWorks/AgileWorks/WebView/View/WebViewScriptMessageHandler.swift index 832845258d40aecfbcc5ee6c57be95ba6eb7321f..ab221d12bc0a00b009b8b26876fd2593e5f41c40 100644 --- a/AgileWorks/AgileWorks/WebView/View/WebViewScriptMessageHandler.swift +++ b/AgileWorks/AgileWorks/WebView/View/WebViewScriptMessageHandler.swift @@ -18,8 +18,8 @@ class WebViewScriptMessageHandler: NSObject { // 名前は、sample に変えて "sample": { controller, _, _ in DispatchQueue.main.async { - let alertController = UIAlertController(title: localizadString(key: "LogoutAlertTitle", comment: ""), message: localizadString(key: "LogoutAlertMessage", comment: ""), preferredStyle: .alert) - let okAction = UIAlertAction(title: localizadString(key: "OK", comment: ""), style: .default) { _ in + let alertController = UIAlertController(title: getDisplayString(key: "LogoutAlertTitle", comment: ""), message: getDisplayString(key: "LogoutAlertMessage", comment: ""), preferredStyle: .alert) + let okAction = UIAlertAction(title: getDisplayString(key: "OK", comment: ""), style: .default) { _ in controller.dismiss(animated: true, completion: nil) } alertController.addAction(okAction) diff --git a/AgileWorks/Common/Utility/StringsUtility.swift b/AgileWorks/Common/Utility/StringsUtility.swift index 3e00477beba54f7ac4435ab1aeac9d19c34d3c8c..b1154dc39e290d41d189315f55e7972886022ee6 100644 --- a/AgileWorks/Common/Utility/StringsUtility.swift +++ b/AgileWorks/Common/Utility/StringsUtility.swift @@ -44,6 +44,6 @@ func getLocalizableStrings(key: String, comment: String) -> String { } //指定した言語を取得する -func localizadString(key: String, comment: String) -> String { +func getDisplayString(key: String, comment: String) -> String { return NSLocalizedString(key, tableName: getStringsFileName(), comment: comment) } diff --git a/AgileWorks/Common/WidgetView.swift b/AgileWorks/Common/WidgetView.swift index 43eec0647f822e95842c70be4b2b30a24a863116..19fadfa7fd17a7d473d31b8964ed0de155b584cf 100644 --- a/AgileWorks/Common/WidgetView.swift +++ b/AgileWorks/Common/WidgetView.swift @@ -23,15 +23,15 @@ let futurePass = "FUTUREPASS" //ウィジェット選択のプレビュー画面などで表示させる項目 func previewItems() -> [ApprovalItem] { var items = [ApprovalItem]() - items.append(ApprovalItem(code: draft, name: localizadString(key: "Draft", comment: ""), count: 1)) - items.append(ApprovalItem(code: requestApplication, name: localizadString(key: "RequestApplication", comment: ""), count: 10)) - items.append(ApprovalItem(code: requestApproval, name: localizadString(key: "RequestApproval", comment: ""), count: 35)) - items.append(ApprovalItem(code: remand, name: localizadString(key: "Remand", comment: ""), count: 6)) - items.append(ApprovalItem(code: checkReport, name: localizadString(key: "CheckReport", comment: ""), count: 10)) - items.append(ApprovalItem(code: demand, name: localizadString(key: "Demand", comment: ""), count: 0)) - items.append(ApprovalItem(code: share, name: localizadString(key: "Share", comment: ""), count: 0)) - items.append(ApprovalItem(code: shared, name: localizadString(key: "Shared", comment: ""), count: 0)) - items.append(ApprovalItem(code: futurePass, name: localizadString(key: "FuturePass", comment: ""), count: 0)) + items.append(ApprovalItem(code: draft, name: getDisplayString(key: "Draft", comment: ""), count: 1)) + items.append(ApprovalItem(code: requestApplication, name: getDisplayString(key: "RequestApplication", comment: ""), count: 10)) + items.append(ApprovalItem(code: requestApproval, name: getDisplayString(key: "RequestApproval", comment: ""), count: 35)) + items.append(ApprovalItem(code: remand, name: getDisplayString(key: "Remand", comment: ""), count: 6)) + items.append(ApprovalItem(code: checkReport, name: getDisplayString(key: "CheckReport", comment: ""), count: 10)) + items.append(ApprovalItem(code: demand, name: getDisplayString(key: "Demand", comment: ""), count: 0)) + items.append(ApprovalItem(code: share, name: getDisplayString(key: "Share", comment: ""), count: 0)) + items.append(ApprovalItem(code: shared, name: getDisplayString(key: "Shared", comment: ""), count: 0)) + items.append(ApprovalItem(code: futurePass, name: getDisplayString(key: "FuturePass", comment: ""), count: 0)) return items } @@ -97,7 +97,7 @@ struct ApprovalWidgetView: View { //書類状況を表示するための各BOXビュー struct StatusBoxView: View { var entry: EntryData - + //書類状態の種類をカウント func rowCnt() -> Int { var row = entry.approvalItems.count / 2 @@ -179,7 +179,7 @@ struct RowView: View { LinkView(approvalItem: entry.approvalItems[itemNum + 1], message: entry.message, viewController: entry.viewController) .frame(width: boxSize.width, height: boxSize.height) } else { - HStack() { + HStack { //奇数の場合余った空間分のスペースを作成する } .frame(width: boxSize.width, height: boxSize.height) @@ -235,12 +235,13 @@ struct LinkView: View { //遷移先URLはアプリ側で設定するためURL末尾のステータスのみ設定(iOS13) func getStatusURL() -> String { //スキーム+ステータスで設定 - var urlString = "atled-aw://" + let urlString = "atled-aw://" if let status = getStatus() { return urlString + status } return urlString + "nil" } + var body: some View { if #available(iOS 14.0, *) { Link(destination: URL(string: getURL())!, label: { diff --git a/AgileWorks/ShareExtension/View/ShareViewController.swift b/AgileWorks/ShareExtension/View/ShareViewController.swift index 5b63e98cb2d1375545483367efff4fae2da5e216..14e17afc97fcbfb216b87e1abb2555532b6b41a2 100644 --- a/AgileWorks/ShareExtension/View/ShareViewController.swift +++ b/AgileWorks/ShareExtension/View/ShareViewController.swift @@ -29,15 +29,15 @@ class ShareViewController: UITableViewController { //固定文言の表示 private func shareViewTranslation() { - clientCertificateTitle.title = localizadString(key: "CertificateTitle", comment: "") - cancelButton.title = localizadString(key: "Cansell", comment: "") - importButton.title = localizadString(key: "Import", comment: "") - passphraseLabel.text = localizadString(key: "Passphrase", comment: "") + clientCertificateTitle.title = getDisplayString(key: "CertificateTitle", comment: "") + cancelButton.title = getDisplayString(key: "Cansell", comment: "") + importButton.title = getDisplayString(key: "Import", comment: "") + passphraseLabel.text = getDisplayString(key: "Passphrase", comment: "") } override func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? { - return localizadString(key: "CertificateTitle", comment: "") + return getDisplayString(key: "CertificateTitle", comment: "") } @IBAction func onCancelButtonTapped(_ sender: UIBarButtonItem) { @@ -48,17 +48,17 @@ class ShareViewController: UITableViewController { importCertificateFromContext() { identity, error in if let identity = identity { CertificateDataStore().writeClientCertificate(identity: identity) - self.alertInUiThread(message: localizadString(key: "CertificateImportSuccess", comment: "")) { + self.alertInUiThread(message: getDisplayString(key: "CertificateImportSuccess", comment: "")) { self.extensionContext?.completeRequest(returningItems: nil, completionHandler: nil) } } else { if let error = error as NSError?, (error.domain == NSOSStatusErrorDomain) && (error.code == errSecAuthFailed) { // パスフレース間違い - self.alertInUiThread(message: localizadString(key: "IncorrectPassphrase", comment: "")) {} + self.alertInUiThread(message: getDisplayString(key: "IncorrectPassphrase", comment: "")) {} } else { // その他のエラー - self.alertInUiThread(message: localizadString(key: "CertificateImportError", comment: "")) { + self.alertInUiThread(message: getDisplayString(key: "CertificateImportError", comment: "")) { self.extensionContext?.cancelRequest(withError: error ?? ShareExtensionError.genericError) } } @@ -129,7 +129,7 @@ class ShareViewController: UITableViewController { private func alertInUiThread(message: String, completion: @escaping () -> Void) { DispatchQueue.main.async { let alertController = UIAlertController(title: "AgileWorks", message: message, preferredStyle: .alert) - let okAction = UIAlertAction(title: localizadString(key: "OK", comment: ""), style: .default, handler: { _ in completion() }) + let okAction = UIAlertAction(title: getDisplayString(key: "OK", comment: ""), style: .default, handler: { _ in completion() }) alertController.addAction(okAction) self.present(alertController, animated: true, completion: nil) } diff --git a/AgileWorks/TodayExtension/View/TodayViewController.swift b/AgileWorks/TodayExtension/View/TodayViewController.swift index d9d5c6db17ca51ebac6e7e293a173594097a892d..506cb6f81112dfa63260c48c830b0829f4568f02 100644 --- a/AgileWorks/TodayExtension/View/TodayViewController.swift +++ b/AgileWorks/TodayExtension/View/TodayViewController.swift @@ -88,7 +88,7 @@ extension TodayViewController: UITableViewDelegate { extension TodayViewController { func fetch(completion: @escaping (APIResult) -> Void) { guard KeychainDataStore().readAccessToken() != nil else { - completion(.failure(localizadString(key: "NotLogedin", comment: ""))) + completion(.failure(getDisplayString(key: "NotLogedin", comment: ""))) return } @@ -100,7 +100,7 @@ extension TodayViewController { if !response.items.isEmpty { completion(.success(response)) } else { - completion(.nodate(localizadString(key: "NoData", comment: ""))) + completion(.nodate(getDisplayString(key: "NoData", comment: ""))) } case .failure(let error): var errorMessage = "-" @@ -120,9 +120,9 @@ extension TodayViewController { func errorMessageNSError(error: Error) -> String? { switch URLError.Code(rawValue: (error as NSError).code) { case .notConnectedToInternet: // -1009 - return localizadString(key: "NotConnectNetworkError", comment: "") + return getDisplayString(key: "NotConnectNetworkError", comment: "") case .timedOut: // -1001 - return localizadString(key: "TimedOutNetworkError", comment: "") + return getDisplayString(key: "TimedOutNetworkError", comment: "") default: return nil } diff --git a/AgileWorks/WidgetExtension/WidgetExtension.swift b/AgileWorks/WidgetExtension/WidgetExtension.swift index 512f30b2c9c3107d200a70af064e25861febb83b..cef85e7c841de40ff0dba573051b743810735a88 100644 --- a/AgileWorks/WidgetExtension/WidgetExtension.swift +++ b/AgileWorks/WidgetExtension/WidgetExtension.swift @@ -57,8 +57,8 @@ struct StatusCheckWidget: Widget { StatusCheckWidgetView(entry: EntryData(approvalItems: entry.approvalItems, message: entry.message, viewController: nil)) } - .configurationDisplayName(localizadString(key: "StatusCheckWidgetName", comment: "")) - .description(localizadString(key: "StatusCheckWidgetDescription", comment: "")) + .configurationDisplayName(getDisplayString(key: "StatusCheckWidgetName", comment: "")) + .description(getDisplayString(key: "StatusCheckWidgetDescription", comment: "")) .supportedFamilies([.systemLarge]) } } @@ -71,8 +71,8 @@ struct ApprovalWidget: Widget { StaticConfiguration(kind: kind, provider: Provider()) { entry in ApprovalWidgetView(entry: EntryData(approvalItems: entry.approvalItems, message: entry.message, viewController: nil)) } - .configurationDisplayName(localizadString(key: "ApprovalWidgetName", comment: "")) - .description(localizadString(key: "ApprovalWidgetDescription", comment: "")) + .configurationDisplayName(getDisplayString(key: "ApprovalWidgetName", comment: "")) + .description(getDisplayString(key: "ApprovalWidgetDescription", comment: "")) .supportedFamilies([.systemSmall]) } } @@ -102,7 +102,7 @@ enum widgetAPIResult { func fetch(completion: @escaping (widgetAPIResult) -> Void) { guard KeychainDataStore().readAccessToken() != nil else { - completion(.failure(localizadString(key: "NotLogedin", comment: ""))) + completion(.failure(getDisplayString(key: "NotLogedin", comment: ""))) return } @@ -114,7 +114,7 @@ func fetch(completion: @escaping (widgetAPIResult if !response.items.isEmpty { completion(.success(response)) } else { - completion(.nodate(localizadString(key: "NoData", comment: ""))) + completion(.nodate(getDisplayString(key: "NoData", comment: ""))) } case .failure(let error): var errorMessage = "-" @@ -134,9 +134,9 @@ func fetch(completion: @escaping (widgetAPIResult func errorMessageNSError(error: Error) -> String? { switch URLError.Code(rawValue: (error as NSError).code) { case .notConnectedToInternet: // -1009 - return localizadString(key: "NotConnectNetworkError", comment: "") + return getDisplayString(key: "NotConnectNetworkError", comment: "") case .timedOut: // -1001 - return localizadString(key: "TimedOutNetworkError", comment: "") + return getDisplayString(key: "TimedOutNetworkError", comment: "") default: return nil }