|
@@ -1,299 +1,299 @@
|
|
{
|
|
{
|
|
"server-messages": {
|
|
"server-messages": {
|
|
"errors": {
|
|
"errors": {
|
|
- "invalid-credentials": "Invalid credentials",
|
|
|
|
- "admin-already-exists": "There is already an admin user. Please login to create a new user from the admin panel.",
|
|
|
|
- "missing-email-or-password": "Missing email or password",
|
|
|
|
- "invalid-username": "Invalid username",
|
|
|
|
- "user-already-exists": "User already exists",
|
|
|
|
- "error-creating-user": "Error creating user",
|
|
|
|
- "no-change-password-request": "No change password request found",
|
|
|
|
|
|
+ "invalid-credentials": "Thông tin đăng nhập không hợp lệ",
|
|
|
|
+ "admin-already-exists": "Người dùng với quyền quản trị đã tồn tại. Vui lòng đăng nhập để tạo người dùng mới từ Trang quản trị.",
|
|
|
|
+ "missing-email-or-password": "Thiếu email hoặc mật khẩu",
|
|
|
|
+ "invalid-username": "Tên người dùng không hợp lệ",
|
|
|
|
+ "user-already-exists": "Người dùng đã tồn tại",
|
|
|
|
+ "error-creating-user": "Đã có lỗi khi tạo người dùng",
|
|
|
|
+ "no-change-password-request": "Không có yêu cầu thay đổi mật khẩu nào được tìm thấy",
|
|
"operator-not-found": "Operator user not found",
|
|
"operator-not-found": "Operator user not found",
|
|
- "user-not-found": "User not found",
|
|
|
|
- "not-allowed-in-demo": "Not allowed in demo mode",
|
|
|
|
- "not-allowed-in-dev": "Not allowed in dev mode",
|
|
|
|
- "invalid-password": "Invalid password",
|
|
|
|
- "invalid-password-length": "Password must be at least 8 characters long",
|
|
|
|
- "invalid-locale": "Invalid locale",
|
|
|
|
- "totp-session-not-found": "2FA session not found",
|
|
|
|
- "totp-not-enabled": "2FA is not enabled for this user",
|
|
|
|
- "totp-invalid-code": "Invalid 2FA code",
|
|
|
|
- "totp-already-enabled": "2FA is already enabled for this user",
|
|
|
|
- "app-not-found": "App {id} not found",
|
|
|
|
- "app-failed-to-start": "Failed to start app {id}, see logs for more details",
|
|
|
|
- "app-failed-to-install": "Failed to install app {id}, see logs for more details",
|
|
|
|
- "app-failed-to-stop": "Failed to stop app {id}, see logs for more details",
|
|
|
|
- "app-failed-to-uninstall": "Failed to uninstall app {id}, see logs for more details",
|
|
|
|
- "app-failed-to-update": "Failed to update app {id}, see logs for more details",
|
|
|
|
- "domain-required-if-expose-app": "Domain is required if app is exposed",
|
|
|
|
- "domain-not-valid": "Domain {domain} is not a valid domain",
|
|
|
|
- "invalid-config": "App {id} has an invalid config.json file",
|
|
|
|
- "app-not-exposable": "App {id} is not exposable",
|
|
|
|
- "app-force-exposed": "App {id} works only with exposed domain",
|
|
|
|
- "domain-already-in-use": "Domain {domain} is already in use by app {id}",
|
|
|
|
- "could-not-get-latest-version": "Could not get latest version",
|
|
|
|
- "current-version-is-latest": "Current version is already up to date",
|
|
|
|
- "major-version-update": "The major version has changed. Please update manually (instructions on GitHub)"
|
|
|
|
|
|
+ "user-not-found": "Người dùng không tồn tại",
|
|
|
|
+ "not-allowed-in-demo": "Không được phép trong chế độ DEMO",
|
|
|
|
+ "not-allowed-in-dev": "Không được phép trong chế độ DEV",
|
|
|
|
+ "invalid-password": "Sai mật khẩu",
|
|
|
|
+ "invalid-password-length": "Mật khẩu phải dài ít nhất 8 ký tự",
|
|
|
|
+ "invalid-locale": "Địa phương không hợp lệ",
|
|
|
|
+ "totp-session-not-found": "Không tìm thấy session 2FA",
|
|
|
|
+ "totp-not-enabled": "2FA không kích hoạt cho người dùng này",
|
|
|
|
+ "totp-invalid-code": "Mã 2FA không hợp lệ",
|
|
|
|
+ "totp-already-enabled": "2FA đã được kích hoạt cho người dùng này",
|
|
|
|
+ "app-not-found": "Không tìm thấy ứng dụng {id}",
|
|
|
|
+ "app-failed-to-start": "Khởi động ứng dụng {id} thất bại, vui lòng xem log để biết chi tiết",
|
|
|
|
+ "app-failed-to-install": "Cài đặt ứng dụng {id} thất bại, vui lòng xem log để biết chi tiết",
|
|
|
|
+ "app-failed-to-stop": "Dừng ứng dụng {id} thất bại, vui lòng xem log để biết chi tiết",
|
|
|
|
+ "app-failed-to-uninstall": "Gỡ cài đặt ứng dụng {id} thất bại, vui lòng xem log để biết chi tiết",
|
|
|
|
+ "app-failed-to-update": "Cập nhật ứng dụng {id} thất bại, vui lòng xem log để biết chi tiết",
|
|
|
|
+ "domain-required-if-expose-app": "Tên miền là bắt buộc nếu ứng dụng được mở công khai",
|
|
|
|
+ "domain-not-valid": "Tên miên {domain} không hợp lệ",
|
|
|
|
+ "invalid-config": "File config.json của ứng dụng {id} không hợp lệ",
|
|
|
|
+ "app-not-exposable": "Ứng dụng {id} không được mở công khai",
|
|
|
|
+ "app-force-exposed": "Ứng dụng {id} chỉ hoạt động với tên miền công khai",
|
|
|
|
+ "domain-already-in-use": "Tên miền {domain} đã được sử dụng bởi ứng dụng {id}",
|
|
|
|
+ "could-not-get-latest-version": "Không thể kiểm tra phiên bản mới nhất",
|
|
|
|
+ "current-version-is-latest": "Phiên bản hiện tại đã được cập nhật",
|
|
|
|
+ "major-version-update": "Ứng dụng được cập nhật phiên bản lớn. Vui lòng cập nhật thủ công (hướng dẫn được tim thấy ở GitHub)"
|
|
},
|
|
},
|
|
"success": {}
|
|
"success": {}
|
|
},
|
|
},
|
|
"auth": {
|
|
"auth": {
|
|
"login": {
|
|
"login": {
|
|
- "title": "Login to your account",
|
|
|
|
- "submit": "Login"
|
|
|
|
|
|
+ "title": "Đăng nhập vào tài khoản của bạn",
|
|
|
|
+ "submit": "Đăng nhập"
|
|
},
|
|
},
|
|
"totp": {
|
|
"totp": {
|
|
- "title": "Two-factor authentication",
|
|
|
|
- "instructions": "Enter the code from your authenticator app",
|
|
|
|
- "submit": "Confirm"
|
|
|
|
|
|
+ "title": "Xác thực 2 bước",
|
|
|
|
+ "instructions": "Nhập mã từ ứng dụng xác thực của bạn",
|
|
|
|
+ "submit": "Xác nhận"
|
|
},
|
|
},
|
|
"register": {
|
|
"register": {
|
|
- "title": "Register your account",
|
|
|
|
- "submit": "Register"
|
|
|
|
|
|
+ "title": "Đăng kí tài khoản của bạn",
|
|
|
|
+ "submit": "Đăng ký"
|
|
},
|
|
},
|
|
"reset-password": {
|
|
"reset-password": {
|
|
- "title": "Reset your password",
|
|
|
|
- "submit": "Reset password",
|
|
|
|
- "cancel": "Cancel password change request",
|
|
|
|
- "instructions": "Run this command on your server and then refresh this page",
|
|
|
|
- "success-title": "Password reset",
|
|
|
|
- "success": "Your password has been reset. You can now login with your new password. And your email {email}",
|
|
|
|
- "back-to-login": "Back to login"
|
|
|
|
|
|
+ "title": "Đặt lại mật khẩu của bạn",
|
|
|
|
+ "submit": "Đặt lại mật khẩu",
|
|
|
|
+ "cancel": "Hủy yêu cầu thay đổi mật khẩu",
|
|
|
|
+ "instructions": "Chạy lệnh này trên máy chủ của bạn và tải lại trang này",
|
|
|
|
+ "success-title": "Khôi phục mật khẩu",
|
|
|
|
+ "success": "Mật khẩu của bạn đã được khôi phục. Bạn có thể đăng nhập với mật khẩu mới và email {email}",
|
|
|
|
+ "back-to-login": "Trở lại trang đăng nhập"
|
|
},
|
|
},
|
|
"form": {
|
|
"form": {
|
|
- "email": "Email address",
|
|
|
|
- "email-placeholder": "you@example.com",
|
|
|
|
- "password": "Password",
|
|
|
|
- "password-placeholder": "Enter your password",
|
|
|
|
- "password-confirmation": "Confirm password",
|
|
|
|
- "password-confirmation-placeholder": "Confirm your password",
|
|
|
|
- "forgot": "Forgot password?",
|
|
|
|
- "new-password-placeholder": "Your new password",
|
|
|
|
- "new-password-confirmation-placeholder": "Confirm your new password",
|
|
|
|
|
|
+ "email": "Địa chỉ email",
|
|
|
|
+ "email-placeholder": "tenban@tenmien.com",
|
|
|
|
+ "password": "Mật khẩu",
|
|
|
|
+ "password-placeholder": "Nhập mật khẩu của bạn",
|
|
|
|
+ "password-confirmation": "Xác nhận mật khẩu",
|
|
|
|
+ "password-confirmation-placeholder": "Xác nhận mật khẩu của bạn",
|
|
|
|
+ "forgot": "Quên mật khẩu?",
|
|
|
|
+ "new-password-placeholder": "Mật khẩu mới của bạn",
|
|
|
|
+ "new-password-confirmation-placeholder": "Xác nhận mật khẩu mới của bạn",
|
|
"errors": {
|
|
"errors": {
|
|
"email": {
|
|
"email": {
|
|
- "required": "Email address is required",
|
|
|
|
- "email": "Email address is invalid",
|
|
|
|
- "invalid": "Email address is invalid"
|
|
|
|
|
|
+ "required": "Địa chỉ email là bắt buộc",
|
|
|
|
+ "email": "Địa chỉ email không hợp lệ",
|
|
|
|
+ "invalid": "Địa chỉ email không hợp lệ"
|
|
},
|
|
},
|
|
"password": {
|
|
"password": {
|
|
- "required": "Password is required",
|
|
|
|
- "minlength": "Password must be at least 8 characters"
|
|
|
|
|
|
+ "required": "Mật khẩu là bắt buộc",
|
|
|
|
+ "minlength": "Mật khẩu phải có ít nhất 8 ký tự"
|
|
},
|
|
},
|
|
"password-confirmation": {
|
|
"password-confirmation": {
|
|
- "required": "Password confirmation is required",
|
|
|
|
- "minlength": "Password confirmation must be at least 8 characters",
|
|
|
|
- "match": "Passwords do not match"
|
|
|
|
|
|
+ "required": "Xác nhận lại mật khẩu là bắt buộc",
|
|
|
|
+ "minlength": "Mật khẩu phải có ít nhất 8 ký tự",
|
|
|
|
+ "match": "Mật khẩu không khớp"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
},
|
|
"dashboard": {
|
|
"dashboard": {
|
|
- "title": "Dashboard",
|
|
|
|
|
|
+ "title": "Bảng điều khiển",
|
|
"cards": {
|
|
"cards": {
|
|
"disk": {
|
|
"disk": {
|
|
- "title": "Disk Space",
|
|
|
|
- "subtitle": "Used out of {total} GB"
|
|
|
|
|
|
+ "title": "Dung lượng đĩa",
|
|
|
|
+ "subtitle": "Đã dùng trên tổng số {total} GB"
|
|
},
|
|
},
|
|
"memory": {
|
|
"memory": {
|
|
- "title": "Memory Used"
|
|
|
|
|
|
+ "title": "Bộ nhớ đã sử dụng"
|
|
},
|
|
},
|
|
"cpu": {
|
|
"cpu": {
|
|
- "title": "CPU Load",
|
|
|
|
- "subtitle": "Uninstall apps to reduce load"
|
|
|
|
|
|
+ "title": "Mức sử dụng CPU",
|
|
|
|
+ "subtitle": "Gỡ cài đặt ứng dụng để giảm thiểu việc quá tải"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
},
|
|
"apps": {
|
|
"apps": {
|
|
- "status-running": "Running",
|
|
|
|
- "status-stopped": "Stopped",
|
|
|
|
- "status-starting": "Starting",
|
|
|
|
- "status-stopping": "Stopping",
|
|
|
|
- "status-updating": "Updating",
|
|
|
|
- "status-missing": "Missing",
|
|
|
|
- "status-installing": "Installing",
|
|
|
|
- "status-uninstalling": "Uninstalling",
|
|
|
|
- "update-available": "Update available",
|
|
|
|
|
|
+ "status-running": "Đang hoạt động",
|
|
|
|
+ "status-stopped": "Đã dừng",
|
|
|
|
+ "status-starting": "Đang khởi động",
|
|
|
|
+ "status-stopping": "Đang dừng",
|
|
|
|
+ "status-updating": "Đang cập nhật",
|
|
|
|
+ "status-missing": "Thiếu",
|
|
|
|
+ "status-installing": "Đang cài đặt",
|
|
|
|
+ "status-uninstalling": "Đang gỡ cài đặt",
|
|
|
|
+ "update-available": "Đã có bản cập nhật",
|
|
"my-apps": {
|
|
"my-apps": {
|
|
- "title": "My Apps",
|
|
|
|
- "empty-title": "No app installed",
|
|
|
|
- "empty-subtitle": "Install an app from the app store to get started",
|
|
|
|
- "empty-action": "Go to app store"
|
|
|
|
|
|
+ "title": "Ứng dụng của tôi",
|
|
|
|
+ "empty-title": "Không có ứng dụng nào được cài đặt",
|
|
|
|
+ "empty-subtitle": "Cài đặt một ứng dụng từ Cửa hàng Ứng dụng để bắt đầu",
|
|
|
|
+ "empty-action": "Đi đến Cửa hàng Ứng dụng"
|
|
},
|
|
},
|
|
"app-store": {
|
|
"app-store": {
|
|
- "title": "App Store",
|
|
|
|
- "search-placeholder": "Search apps",
|
|
|
|
- "category-placeholder": "Select a category",
|
|
|
|
- "no-results": "No app found",
|
|
|
|
- "no-results-subtitle": "Try to refine your search"
|
|
|
|
|
|
+ "title": "Cửa hàng ứng dụng",
|
|
|
|
+ "search-placeholder": "Tìm kiếm ứng dụng",
|
|
|
|
+ "category-placeholder": "Chọn một danh mục",
|
|
|
|
+ "no-results": "Không tìm thấy ứng dụng",
|
|
|
|
+ "no-results-subtitle": "Hãy thử tìm kiếm lại"
|
|
},
|
|
},
|
|
"app-details": {
|
|
"app-details": {
|
|
- "install-success": "App installed successfully",
|
|
|
|
- "uninstall-success": "App uninstalled successfully",
|
|
|
|
- "stop-success": "App stopped successfully",
|
|
|
|
- "update-success": "App updated successfully",
|
|
|
|
- "start-success": "App started successfully",
|
|
|
|
- "update-config-success": "App config updated successfully. Restart the app to apply the changes",
|
|
|
|
- "version": "Version",
|
|
|
|
- "description": "Description",
|
|
|
|
- "base-info": "Base info",
|
|
|
|
- "source-code": "Source code",
|
|
|
|
- "author": "Author",
|
|
|
|
- "port": "Port",
|
|
|
|
- "categories-title": "Categories",
|
|
|
|
- "link": "Link",
|
|
|
|
- "website": "Website",
|
|
|
|
|
|
+ "install-success": "Ứng dụng đã được cài đặt thành công",
|
|
|
|
+ "uninstall-success": "Ứng dụng đã được gỡ cài đặt",
|
|
|
|
+ "stop-success": "Ứng dụng đã được dừng",
|
|
|
|
+ "update-success": "Ứng dụng đã được cập nhật",
|
|
|
|
+ "start-success": "Ứng dụng đã được khởi động",
|
|
|
|
+ "update-config-success": "Cài đặt của ứng dụng đã được cập nhật. Khởi động lại ứng dụng để áp dụng thay đổi",
|
|
|
|
+ "version": "Phiên bản",
|
|
|
|
+ "description": "Mô tả",
|
|
|
|
+ "base-info": "Thông tin cơ bản",
|
|
|
|
+ "source-code": "Mã nguồn",
|
|
|
|
+ "author": "Tác giả",
|
|
|
|
+ "port": "Cổng",
|
|
|
|
+ "categories-title": "Danh mục",
|
|
|
|
+ "link": "Liên kết",
|
|
|
|
+ "website": "Trang web",
|
|
"supported-arch": "Supported architectures",
|
|
"supported-arch": "Supported architectures",
|
|
- "choose-open-method": "Choose open method",
|
|
|
|
|
|
+ "choose-open-method": "Lựa chọn phương thức mở",
|
|
"categories": {
|
|
"categories": {
|
|
- "data": "Data",
|
|
|
|
- "network": "Network",
|
|
|
|
- "media": "Media",
|
|
|
|
- "development": "Development",
|
|
|
|
- "automation": "Automation",
|
|
|
|
- "social": "Social",
|
|
|
|
- "utilities": "Utilities",
|
|
|
|
- "security": "Security",
|
|
|
|
- "photography": "Photography",
|
|
|
|
- "featured": "Featured",
|
|
|
|
- "books": "Books",
|
|
|
|
- "music": "Music",
|
|
|
|
- "finance": "Finance",
|
|
|
|
- "gaming": "Gaming",
|
|
|
|
- "ai": "AI"
|
|
|
|
|
|
+ "data": "Dữ liệu",
|
|
|
|
+ "network": "Mạng",
|
|
|
|
+ "media": "Phương tiện truyền thông",
|
|
|
|
+ "development": "Phát triển",
|
|
|
|
+ "automation": "Tự động hóa",
|
|
|
|
+ "social": "Mạng xã hội",
|
|
|
|
+ "utilities": "Tiện ích",
|
|
|
|
+ "security": "Bảo mật",
|
|
|
|
+ "photography": "Nhiếp ảnh",
|
|
|
|
+ "featured": "Nổi bật",
|
|
|
|
+ "books": "Sách",
|
|
|
|
+ "music": "Âm nhạc",
|
|
|
|
+ "finance": "Tài chính",
|
|
|
|
+ "gaming": "Game",
|
|
|
|
+ "ai": "Trí tuệ nhân tạo"
|
|
},
|
|
},
|
|
"actions": {
|
|
"actions": {
|
|
- "start": "Start",
|
|
|
|
- "remove": "Remove",
|
|
|
|
- "settings": "Settings",
|
|
|
|
- "stop": "Stop",
|
|
|
|
- "open": "Open",
|
|
|
|
- "loading": "Loading",
|
|
|
|
- "cancel": "Cancel",
|
|
|
|
- "install": "Install",
|
|
|
|
- "update": "Update"
|
|
|
|
|
|
+ "start": "Bắt đầu",
|
|
|
|
+ "remove": "Xóa",
|
|
|
|
+ "settings": "Cài đặt",
|
|
|
|
+ "stop": "Dừng",
|
|
|
|
+ "open": "Mở",
|
|
|
|
+ "loading": "Đang tải",
|
|
|
|
+ "cancel": "Hủy",
|
|
|
|
+ "install": "Cài đặt",
|
|
|
|
+ "update": "Cập nhật"
|
|
},
|
|
},
|
|
"install-form": {
|
|
"install-form": {
|
|
- "title": "Install {name}",
|
|
|
|
|
|
+ "title": "Cài đặt {name}",
|
|
"expose-app": "Expose app",
|
|
"expose-app": "Expose app",
|
|
- "domain-name": "Domain name",
|
|
|
|
- "domain-name-hint": "Make sure this exact domain contains an A record pointing to your IP.",
|
|
|
|
- "choose-option": "Choose an option...",
|
|
|
|
- "sumbit-install": "Install",
|
|
|
|
- "submit-update": "Update",
|
|
|
|
|
|
+ "domain-name": "Tên miền",
|
|
|
|
+ "domain-name-hint": "Hãy chắc chắn rằng tên miền này có chứa bản ghi A trỏ đến địa chỉ IP của bạn.",
|
|
|
|
+ "choose-option": "Chọn một tùy chọn...",
|
|
|
|
+ "sumbit-install": "Cài đặt",
|
|
|
|
+ "submit-update": "Cập nhật",
|
|
"errors": {
|
|
"errors": {
|
|
- "required": "{label} is required",
|
|
|
|
- "regex": "{label} must match the pattern {pattern}",
|
|
|
|
- "max-length": "{label} must be less than {max} characters",
|
|
|
|
- "min-length": "{label} must be at least {min} characters",
|
|
|
|
- "between-length": "{label} must be between {min} and {max} characters",
|
|
|
|
- "invalid-email": "{label} must be a valid email address",
|
|
|
|
- "number": "{label} must be a number",
|
|
|
|
- "fqdn": "{label} must be a valid domain",
|
|
|
|
- "ip": "{label} must be a valid IP address",
|
|
|
|
- "fqdnip": "{label} must be a valid domain or IP address",
|
|
|
|
- "url": "{label} must be a valid URL"
|
|
|
|
|
|
+ "required": "{label} là bắt buộc",
|
|
|
|
+ "regex": "{label} phải theo mẫu {pattern}",
|
|
|
|
+ "max-length": "{label} phải ít hơn {max} ký tự",
|
|
|
|
+ "min-length": "{label} phải nhiều hơn {min} ký tự",
|
|
|
|
+ "between-length": "{label} phải nằm giữa {min} và {max} ký tự",
|
|
|
|
+ "invalid-email": "{label} phải là một địa chỉ email hợp lệ",
|
|
|
|
+ "number": "{label} phải là số",
|
|
|
|
+ "fqdn": "{label} phải là một tên miền hợp lệ",
|
|
|
|
+ "ip": "{label} phải là một địa chỉ IP hợp lệ",
|
|
|
|
+ "fqdnip": "{label} phải là một tên miền hoặc địa chỉ IP hợp lệ",
|
|
|
|
+ "url": "{label} phải là một đường dẫn"
|
|
}
|
|
}
|
|
},
|
|
},
|
|
"stop-form": {
|
|
"stop-form": {
|
|
- "title": "Stop {name} ?",
|
|
|
|
- "subtitle": "All data will be retained",
|
|
|
|
- "submit": "Stop"
|
|
|
|
|
|
+ "title": "Dừng {name}?",
|
|
|
|
+ "subtitle": "Tất cả dữ liệu sẽ được giữ lại",
|
|
|
|
+ "submit": "Dừng"
|
|
},
|
|
},
|
|
"uninstall-form": {
|
|
"uninstall-form": {
|
|
- "title": "Uninstall {name} ?",
|
|
|
|
- "subtitle": "All data for this app will be lost.",
|
|
|
|
- "warning": "Are you sure? This action cannot be undone.",
|
|
|
|
- "submit": "Uninstall"
|
|
|
|
|
|
+ "title": "Gỡ cài đặt {name}?",
|
|
|
|
+ "subtitle": "Tất cả dữ liệu của ứng dụng này sẽ bị mất.",
|
|
|
|
+ "warning": "Bạn chắc chứ? Hành động này không thể hoàn tác.",
|
|
|
|
+ "submit": "Gỡ cài đặt"
|
|
},
|
|
},
|
|
"update-form": {
|
|
"update-form": {
|
|
- "title": "Update {name} ?",
|
|
|
|
- "subtitle1": "Update app to latest verion :",
|
|
|
|
- "subtitle2": "This will reset your custom configuration (e.g. changes in docker-compose.yml)",
|
|
|
|
- "submit": "Update"
|
|
|
|
|
|
+ "title": "Cập nhật {name}?",
|
|
|
|
+ "subtitle1": "Cập nhật ứng dụng lên phiên bản mới nhất:",
|
|
|
|
+ "subtitle2": "Việc này sẽ thay đổi cấu hình tùy chọn của bạn (ví dụ: các thay đổi trong file docker-compose.yml)",
|
|
|
|
+ "submit": "Cập nhật"
|
|
},
|
|
},
|
|
"update-settings-form": {
|
|
"update-settings-form": {
|
|
- "title": "Update {name} config"
|
|
|
|
|
|
+ "title": "Cập nhật cấu hình {name}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
},
|
|
"settings": {
|
|
"settings": {
|
|
- "title": "Settings",
|
|
|
|
|
|
+ "title": "Cài đặt",
|
|
"actions": {
|
|
"actions": {
|
|
- "tab-title": "Actions",
|
|
|
|
- "title": "Actions",
|
|
|
|
- "current-version": "Current version: {version}",
|
|
|
|
- "stay-up-to-date": "Stay up to date with the latest version of Tipi",
|
|
|
|
- "new-version": "A new version ({version}) of Tipi is available",
|
|
|
|
- "maintenance-title": "Maintenance",
|
|
|
|
- "maintenance-subtitle": "Common actions to perform on your instance",
|
|
|
|
- "restart": "Restart",
|
|
|
|
- "update": "Update to {version}",
|
|
|
|
- "already-latest": "Already up to date"
|
|
|
|
|
|
+ "tab-title": "Thao tác",
|
|
|
|
+ "title": "Thao tác",
|
|
|
|
+ "current-version": "Phiên bản hiện tại: {version}",
|
|
|
|
+ "stay-up-to-date": "Luôn được cập nhật phiên bản mới nhất của Tipi",
|
|
|
|
+ "new-version": "Phiên bản mới của Tipi đã có sẵn. Phiên bản {version}",
|
|
|
|
+ "maintenance-title": "Bảo trì",
|
|
|
|
+ "maintenance-subtitle": "Những thao tác thường sử dụng trên máy chủ của bạn",
|
|
|
|
+ "restart": "Khởi động lại",
|
|
|
|
+ "update": "Cập nhật lên phiên bản {version}",
|
|
|
|
+ "already-latest": "Đã cập nhật"
|
|
},
|
|
},
|
|
"settings": {
|
|
"settings": {
|
|
- "tab-title": "Settings",
|
|
|
|
- "title": "General settings",
|
|
|
|
- "subtitle": "This will update your settings.json file. Make sure you know what you are doing before updating these values.",
|
|
|
|
- "settings-updated": "Settings updated. Restart your instance to apply new settings.",
|
|
|
|
- "invalid-ip": "Invalid IP address",
|
|
|
|
- "invalid-url": "Invalid URL",
|
|
|
|
- "invalid-domain": "Invalid domain",
|
|
|
|
- "domain-name": "Domain name",
|
|
|
|
- "domain-name-hint": "Make sure this exact domain contains an A record pointing to your IP.",
|
|
|
|
- "dns-ip": "DNS IP",
|
|
|
|
- "internal-ip": "Internal IP",
|
|
|
|
- "internal-ip-hint": "IP address your server is listening on.",
|
|
|
|
- "apps-repo": "Apps repo URL",
|
|
|
|
- "apps-repo-hint": "URL to the apps repository.",
|
|
|
|
- "storage-path": "Storage path",
|
|
|
|
- "storage-path-hint": "Path to the storage directory. Keep empty for default (runtipi/app-data). Make sure it is an absolute path and that it exists",
|
|
|
|
- "local-domain": "Local domain",
|
|
|
|
- "local-domain-hint": "Domain name used for accessing apps in your local network. Your apps will be accessible at app-name.local-domain.",
|
|
|
|
- "submit": "Save",
|
|
|
|
- "user-settings-title": "User settings",
|
|
|
|
- "language": "Language",
|
|
|
|
- "help-translate": "Help translate Tipi",
|
|
|
|
- "download-certificate": "Download certificate"
|
|
|
|
|
|
+ "tab-title": "Cài đặt",
|
|
|
|
+ "title": "Cài đặt chung",
|
|
|
|
+ "subtitle": "Điều này sẽ thay đổi file setting.json của bạn. Hãy chắc chắn rằng bạn hiểu rõ mình đang làm gì trước khi thay đổi các giá trị này.",
|
|
|
|
+ "settings-updated": "Cài đặt đã được cập nhật. Khởi động lại máy chủ của bạn để áp dụng cài đặt mới.",
|
|
|
|
+ "invalid-ip": "Địa chỉ IP không hợp lệ",
|
|
|
|
+ "invalid-url": "Đường dẫn không hợp lệ",
|
|
|
|
+ "invalid-domain": "Tên miền không hợp lệ",
|
|
|
|
+ "domain-name": "Tên miền",
|
|
|
|
+ "domain-name-hint": "Hãy chắc chắn rằng tên miền này có chứa bản ghi A trỏ đến địa chỉ IP của bạn.",
|
|
|
|
+ "dns-ip": "Địa chỉ IP DNS",
|
|
|
|
+ "internal-ip": "Địa chỉ IP nội bộ",
|
|
|
|
+ "internal-ip-hint": "Địa chỉ IP máy chủ của bạn sẽ nhận gói tin.",
|
|
|
|
+ "apps-repo": "Đường dẫn kho ứng dụng",
|
|
|
|
+ "apps-repo-hint": "Đường dẫn đến kho ứng dụng.",
|
|
|
|
+ "storage-path": "Đường dẫn lưu trữ dữ liệu",
|
|
|
|
+ "storage-path-hint": "Đường dẫn đến thư mục lưu trữ dữ liệu. Để trống để sử dụng đường dẫn mặc định (runtipi/app-data). Hãy chắc rằng thư mục đã tồn tại trên hệ thống và sử dụng đường dẫn tuyệt đối",
|
|
|
|
+ "local-domain": "Tên miền sử dụng nội bộ",
|
|
|
|
+ "local-domain-hint": "Tên miền để truy cập ứng dụng từ mạng nội bộ của bạn. Ứng dụng có thể được truy cập tại app-name.local-domain.",
|
|
|
|
+ "submit": "Lưu",
|
|
|
|
+ "user-settings-title": "Thiết lập của người dùng",
|
|
|
|
+ "language": "Ngôn ngữ",
|
|
|
|
+ "help-translate": "Hỗ trợ dịch Tipi",
|
|
|
|
+ "download-certificate": "Tải chứng chỉ"
|
|
},
|
|
},
|
|
"security": {
|
|
"security": {
|
|
- "tab-title": "Security",
|
|
|
|
- "change-password-title": "Change password",
|
|
|
|
- "change-password-subtitle": "Changing your password will log you out of all devices.",
|
|
|
|
- "password-change-success": "Password changed successfully",
|
|
|
|
- "2fa-title": "Two-factor authentication",
|
|
|
|
- "2fa-subtitle": "Two-factor authentication (2FA) adds an additional layer of security to your account.",
|
|
|
|
- "2fa-subtitle-2": "When enabled, you will be prompted to enter a code from your authenticator app when you log in.",
|
|
|
|
- "2fa-enable-success": "Two-factor authentication enabled",
|
|
|
|
- "2fa-disable-success": "Two-factor authentication disabled",
|
|
|
|
- "scan-qr-code": "Scan this QR code with your authenticator app.",
|
|
|
|
- "enter-key-manually": "Or enter this key manually.",
|
|
|
|
- "enter-2fa-code": "Enter the 6-digit code from your authenticator app",
|
|
|
|
- "enable-2fa": "Enable two-factor authentication",
|
|
|
|
- "disable-2fa": "Disable two-factor authentication",
|
|
|
|
- "password-needed": "Password needed",
|
|
|
|
- "password-needed-hint": "Your password is required to change two-factor authentication settings.",
|
|
|
|
|
|
+ "tab-title": "Bảo mật",
|
|
|
|
+ "change-password-title": "Thay đổi mật khẩu",
|
|
|
|
+ "change-password-subtitle": "Thay đổi mật khẩu sẽ đăng xuất tất cả các thiết bị của bạn.",
|
|
|
|
+ "password-change-success": "Thay đổi mật khẩu thành công",
|
|
|
|
+ "2fa-title": "Xác thực 2 bước",
|
|
|
|
+ "2fa-subtitle": "Xác thực 2 bước sẽ thêm một lớp bảo mật cho tài khoản của bạn.",
|
|
|
|
+ "2fa-subtitle-2": "Khi được bật lên, bạn sẽ được hỏi để nhập mật mã từ ứng dụng xác thực của bạn mỗi khi đăng nhập.",
|
|
|
|
+ "2fa-enable-success": "Đã bật xác thực 2 bước",
|
|
|
|
+ "2fa-disable-success": "Đã tắt xác thực 2 bước",
|
|
|
|
+ "scan-qr-code": "Quét mã QR này bằng ứng dụng xác thực của bạn.",
|
|
|
|
+ "enter-key-manually": "Hoặc nhập mã này thủ công.",
|
|
|
|
+ "enter-2fa-code": "Nhập mã gồm 6 chữ số từ ứng dụng xác thực của bạn",
|
|
|
|
+ "enable-2fa": "Bật xác thực 2 bước",
|
|
|
|
+ "disable-2fa": "Tắt xác thực 2 bước",
|
|
|
|
+ "password-needed": "Mật khẩu là cần thiết",
|
|
|
|
+ "password-needed-hint": "Mật khẩu của bạn được yêu cầu khi muốn thay đổi cấu hình Xác thực 2 bước.",
|
|
"form": {
|
|
"form": {
|
|
- "password-length": "Password must be at least 8 characters",
|
|
|
|
- "password-match": "Passwords do not match",
|
|
|
|
- "current-password": "Current password",
|
|
|
|
- "new-password": "New password",
|
|
|
|
- "confirm-password": "Confirm new password",
|
|
|
|
- "change-password": "Change password",
|
|
|
|
- "password": "Password"
|
|
|
|
|
|
+ "password-length": "Mật khẩu phải có ít nhất 8 ký tự",
|
|
|
|
+ "password-match": "Mật khẩu không khớp",
|
|
|
|
+ "current-password": "Mật khẩu hiện tại",
|
|
|
|
+ "new-password": "Mật khẩu mới",
|
|
|
|
+ "confirm-password": "Xác nhận mật khẩu mới",
|
|
|
|
+ "change-password": "Thay đổi mật khẩu",
|
|
|
|
+ "password": "Mật khẩu"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
},
|
|
"header": {
|
|
"header": {
|
|
- "dashboard": "Dashboard",
|
|
|
|
- "my-apps": "My Apps",
|
|
|
|
- "app-store": "App Store",
|
|
|
|
- "settings": "Settings",
|
|
|
|
- "logout": "Logout",
|
|
|
|
- "dark-mode": "Dark Mode",
|
|
|
|
- "light-mode": "Light Mode",
|
|
|
|
- "sponsor": "Sponsor",
|
|
|
|
- "source-code": "Source code",
|
|
|
|
- "update-available": "Update available"
|
|
|
|
|
|
+ "dashboard": "Bảng điều khiển",
|
|
|
|
+ "my-apps": "Ứng dụng của tôi",
|
|
|
|
+ "app-store": "Cửa hàng ứng dụng",
|
|
|
|
+ "settings": "Cài đặt",
|
|
|
|
+ "logout": "Đăng xuất",
|
|
|
|
+ "dark-mode": "Chế độ Ban đêm",
|
|
|
|
+ "light-mode": "Chế độ ban ngày",
|
|
|
|
+ "sponsor": "Nhà tài trợ",
|
|
|
|
+ "source-code": "Mã nguồn",
|
|
|
|
+ "update-available": "Đã có bản cập nhật"
|
|
}
|
|
}
|
|
}
|
|
}
|