diff --git a/.tx/config b/.tx/config index 600be44023..092375ef0f 100644 --- a/.tx/config +++ b/.tx/config @@ -30,6 +30,7 @@ trans.sk = public/language/sk/category.json trans.sv = public/language/sv/category.json trans.th = public/language/th/category.json trans.tr = public/language/tr/category.json +trans.vi = public/language/vi/category.json trans.zh_CN = public/language/zh_CN/category.json trans.zh_TW = public/language/zh_TW/category.json type = KEYVALUEJSON @@ -63,6 +64,7 @@ trans.sk = public/language/sk/login.json trans.sv = public/language/sv/login.json trans.th = public/language/th/login.json trans.tr = public/language/tr/login.json +trans.vi = public/language/vi/login.json trans.zh_CN = public/language/zh_CN/login.json trans.zh_TW = public/language/zh_TW/login.json type = KEYVALUEJSON @@ -95,6 +97,7 @@ trans.sk = public/language/sk/recent.json trans.sv = public/language/sv/recent.json trans.th = public/language/th/recent.json trans.tr = public/language/tr/recent.json +trans.vi = public/language/vi/recent.json trans.zh_CN = public/language/zh_CN/recent.json trans.zh_TW = public/language/zh_TW/recent.json type = KEYVALUEJSON @@ -127,6 +130,7 @@ trans.sk = public/language/sk/unread.json trans.sv = public/language/sv/unread.json trans.th = public/language/th/unread.json trans.tr = public/language/tr/unread.json +trans.vi = public/language/vi/unread.json trans.zh_CN = public/language/zh_CN/unread.json trans.zh_TW = public/language/zh_TW/unread.json type = KEYVALUEJSON @@ -159,6 +163,7 @@ trans.sk = public/language/sk/modules.json trans.sv = public/language/sv/modules.json trans.th = public/language/th/modules.json trans.tr = public/language/tr/modules.json +trans.vi = public/language/vi/modules.json trans.zh_CN = public/language/zh_CN/modules.json trans.zh_TW = public/language/zh_TW/modules.json type = KEYVALUEJSON @@ -191,6 +196,7 @@ trans.sk = public/language/sk/register.json trans.sv = public/language/sv/register.json trans.th = public/language/th/register.json trans.tr = public/language/tr/register.json +trans.vi = public/language/vi/register.json trans.zh_CN = public/language/zh_CN/register.json trans.zh_TW = public/language/zh_TW/register.json type = KEYVALUEJSON @@ -223,6 +229,7 @@ trans.sk = public/language/sk/user.json trans.sv = public/language/sv/user.json trans.th = public/language/th/user.json trans.tr = public/language/tr/user.json +trans.vi = public/language/vi/user.json trans.zh_CN = public/language/zh_CN/user.json trans.zh_TW = public/language/zh_TW/user.json type = KEYVALUEJSON @@ -255,6 +262,7 @@ trans.sk = public/language/sk/global.json trans.sv = public/language/sv/global.json trans.th = public/language/th/global.json trans.tr = public/language/tr/global.json +trans.vi = public/language/vi/global.json trans.zh_CN = public/language/zh_CN/global.json trans.zh_TW = public/language/zh_TW/global.json type = KEYVALUEJSON @@ -287,6 +295,7 @@ trans.sk = public/language/sk/notifications.json trans.sv = public/language/sv/notifications.json trans.th = public/language/th/notifications.json trans.tr = public/language/tr/notifications.json +trans.vi = public/language/vi/notifications.json trans.zh_CN = public/language/zh_CN/notifications.json trans.zh_TW = public/language/zh_TW/notifications.json type = KEYVALUEJSON @@ -319,6 +328,7 @@ trans.sk = public/language/sk/reset_password.json trans.sv = public/language/sv/reset_password.json trans.th = public/language/th/reset_password.json trans.tr = public/language/tr/reset_password.json +trans.vi = public/language/vi/reset_password.json trans.zh_CN = public/language/zh_CN/reset_password.json trans.zh_TW = public/language/zh_TW/reset_password.json type = KEYVALUEJSON @@ -351,6 +361,7 @@ trans.sk = public/language/sk/users.json trans.sv = public/language/sv/users.json trans.th = public/language/th/users.json trans.tr = public/language/tr/users.json +trans.vi = public/language/vi/users.json trans.zh_CN = public/language/zh_CN/users.json trans.zh_TW = public/language/zh_TW/users.json type = KEYVALUEJSON @@ -383,6 +394,7 @@ trans.sk = public/language/sk/language.json trans.sv = public/language/sv/language.json trans.th = public/language/th/language.json trans.tr = public/language/tr/language.json +trans.vi = public/language/vi/language.json trans.zh_CN = public/language/zh_CN/language.json trans.zh_TW = public/language/zh_TW/language.json type = KEYVALUEJSON @@ -415,6 +427,7 @@ trans.sk = public/language/sk/pages.json trans.sv = public/language/sv/pages.json trans.th = public/language/th/pages.json trans.tr = public/language/tr/pages.json +trans.vi = public/language/vi/pages.json trans.zh_CN = public/language/zh_CN/pages.json trans.zh_TW = public/language/zh_TW/pages.json type = KEYVALUEJSON @@ -447,6 +460,7 @@ trans.sk = public/language/sk/topic.json trans.sv = public/language/sv/topic.json trans.th = public/language/th/topic.json trans.tr = public/language/tr/topic.json +trans.vi = public/language/vi/topic.json trans.zh_CN = public/language/zh_CN/topic.json trans.zh_TW = public/language/zh_TW/topic.json type = KEYVALUEJSON @@ -479,6 +493,7 @@ trans.sk = public/language/sk/success.json trans.sv = public/language/sv/success.json trans.th = public/language/th/success.json trans.tr = public/language/tr/success.json +trans.vi = public/language/vi/success.json trans.zh_CN = public/language/zh_CN/success.json trans.zh_TW = public/language/zh_TW/success.json type = KEYVALUEJSON @@ -511,6 +526,7 @@ trans.sk = public/language/sk/error.json trans.sv = public/language/sv/error.json trans.th = public/language/th/error.json trans.tr = public/language/tr/error.json +trans.vi = public/language/vi/error.json trans.zh_CN = public/language/zh_CN/error.json trans.zh_TW = public/language/zh_TW/error.json type = KEYVALUEJSON \ No newline at end of file diff --git a/public/language/vi/category.json b/public/language/vi/category.json new file mode 100644 index 0000000000..972df0d4f3 --- /dev/null +++ b/public/language/vi/category.json @@ -0,0 +1,7 @@ +{ + "new_topic_button": "Chủ đề mới", + "no_topics": "Không có bài viết trong danh mục.
Hãy đăng một bài viết mới?", + "browsing": "đang duyệt", + "no_replies": "Chưa có ai bình luận", + "share_this_category": "Chia sẻ phần mục này" +} \ No newline at end of file diff --git a/public/language/vi/error.json b/public/language/vi/error.json new file mode 100644 index 0000000000..3612b00e3d --- /dev/null +++ b/public/language/vi/error.json @@ -0,0 +1,49 @@ +{ + "invalid-data": "Dữ liệu không hợp lệ", + "not-logged-in": "Bạn không được đăng nhập.", + "invalid-cid": "Danh mục ID không hợp lệ", + "invalid-tid": "ID chủ đề không hợp lệ", + "invalid-pid": "ID bài viết không hợp lệ", + "invalid-uid": "ID tài khoản không hợp lệ", + "invalid-username": "Tên đăng nhập không hợp lệ", + "invalid-email": "Email không hợp lệ", + "invalid-title": "Tiêu đề không hợp lệ", + "invalid-user-data": "Dữ liệu tài khoản không hợp lệ", + "invalid-password": "Mật khẩu không hợp lệ", + "invalid-pagination-value": "Số trang không hợp lệ", + "username-taken": "Tên đăng nhập đã tồn tại", + "email-taken": "Email đã tồn tại", + "user-banned": "Tài khoản bị ban", + "no-category": "Phần mục không tồn tại", + "no-topic": "Chủ đề không tồn tại", + "no-post": "Bài viết không tồn tại", + "no-group": "Nhóm không tồn tại", + "no-user": "Tài khoản không tồn tại", + "no-teaser": "Teaser không tồn tại", + "no-privileges": "Bạn không đủ quyền cho hành động này", + "category-disabled": "Danh mục bị disabled", + "topic-locked": "Chủ đề bị khóa", + "still-uploading": "Vui lòng chờ upload", + "content-too-short": "Vui lòng nhập dài hơn. Ít nhất %1 ký tự", + "title-too-short": "Yêu cầu nhập tiêu đề dài hơn. Ít nhất %1 ký tự", + "title-too-long": "Yêu cầu tiêu đề ngắn hơn. Không dài quá %1 ký tự", + "too-many-posts": "Bạn chỉ có thể gửi bài viết %1 giây nữa", + "file-too-big": "Kích thước file tối đa %1kb", + "cant-vote-self-post": "Bạn không thể vote cho chính bài viết của bạn", + "already-favourited": "Bạn đã bấm yêu thích cho bài viết này", + "already-unfavourited": "Bạn đã từ bỏ yêu thích cho bài viết này", + "cant-ban-other-admins": "Bạn không thể ban được các admin khác", + "invalid-image-type": "Kiểu hình ảnh không hợp lệ", + "group-name-too-short": "Tên nhóm quá ngắn", + "group-already-exists": "Nhóm đã tồn tại", + "group-name-change-not-allowed": "Không cho phép đổi tên nhóm", + "post-already-deleted": "Bài viết đã được xóa rồi", + "post-already-restored": "Bài viết đã được phục hồi rồi", + "topic-already-deleted": "Chủ đề đã bị xóa rồi", + "topic-already-restored": "Chủ đề đã được phục hồi rồi", + "topic-thumbnails-are-disabled": "Thumbnails cho chủ đề đã bị tắt", + "invalid-file": "File không hợp lệ", + "uploads-are-disabled": "Đã khóa lựa chọn tải lên", + "signature-too-long": "Chứ ký không được dài quá %1 ký tự", + "cant-chat-with-yourself": "Bạn không thể chat với chính bạn!" +} \ No newline at end of file diff --git a/public/language/vi/global.json b/public/language/vi/global.json new file mode 100644 index 0000000000..433101d4cd --- /dev/null +++ b/public/language/vi/global.json @@ -0,0 +1,70 @@ +{ + "home": "Trang chủ", + "search": "Tìm kiếm", + "buttons.close": "Đóng lại", + "403.title": "Từ chối truy cập", + "403.message": "Có vẻ như bạn đang cố vào một trang mà bạn không có quyền truy cập. Bạn nên thử đăng nhập để truy cập ", + "404.title": "Không tìm thấy", + "404.message": "Có vẻ bạn đang cố vào một trang không tồn tại. Hãy trở lại trang chủ", + "500.title": "Lỗi nội bộ", + "500.message": "Úi chà! Có vẻ như có trục trặc rồi!", + "register": "Đăng ký", + "login": "Đăng nhập", + "please_log_in": "Xin hãy đăng nhập", + "logout": "Đăng xuất", + "posting_restriction_info": "Hiện giờ chỉ có các thành viên mới được quyền gửi bài viết, hãy nhấn vào đây để đăng nhập", + "welcome_back": "Chào mừng bạn quay lại", + "you_have_successfully_logged_in": "Bạn đã đăng nhập thành công", + "save_changes": "Lưu thay đổi", + "close": "Đóng lại", + "pagination": "Số trang", + "header.admin": "Quản trị viên", + "header.recent": "Gần đây", + "header.unread": "Chưa đọc", + "header.popular": "Nổi bật", + "header.users": "Số người dùng", + "header.chats": "Phần Chat", + "header.notifications": "Thông báo", + "header.search": "Tìm kiếm", + "header.profile": "Hồ sơ", + "notifications.loading": "Đang tải Thông báo", + "chats.loading": "Đang tải phần Chat", + "motd.welcome": "Chào mừng bạn tới NodeBB, Platform của tương lai", + "previouspage": "Trang trước", + "nextpage": "Trang kế tiếp", + "alert.success": "Thành công", + "alert.error": "Lỗi", + "alert.banned": "Bị ban", + "alert.banned.message": "Bạn đã bị ban, giờ bạn sẽ đăng xuất", + "alert.unfollow": "Bạn đã không còn theo dõi %1!", + "alert.follow": "Bạn giờ đang theo dõi %1!", + "online": "Đang online", + "users": "Số người dùng", + "topics": "Số Chủ đề", + "posts": "Số bài viết", + "views": "Số lượt view", + "reputation": "Độ uy tín", + "read_more": "Đọc thêm", + "posted_ago_by_guest": "Đã viết %1 bởi Khách", + "posted_ago_by": "Đã viết %1 bởi %2", + "posted_ago": "Đã viết %1", + "posted_in_ago_by_guest": "Đã viết trong %1 %2 bởi Khách", + "posted_in_ago_by": "Đã viết trong %1 %2 bởi %3", + "posted_in_ago": "Đã viết trong %1", + "replied_ago": "Đã trả lời %1", + "user_posted_ago": "%1 đã viết %2", + "guest_posted_ago": "Khách đã viết %1", + "last_edited_by_ago": "Được chỉnh sửa lần cuối bởi %1 %2", + "norecentposts": "Không có bài viết nào gần đây", + "norecenttopics": "Không có chủ đề gần đây", + "recentposts": "Số bài viết gần đây", + "recentips": "Các IP vừa mới đăng nhập", + "away": "Đang away", + "dnd": "Không được quấy rầy", + "invisible": "Ẩn", + "offline": "Đang offline", + "email": "Email", + "language": "Ngôn ngữ", + "guest": "Khách", + "guests": "Số khách" +} \ No newline at end of file diff --git a/public/language/vi/language.json b/public/language/vi/language.json new file mode 100644 index 0000000000..f0787f748a --- /dev/null +++ b/public/language/vi/language.json @@ -0,0 +1,5 @@ +{ + "name": "Tiếng Việt", + "code": "vi", + "dir": "ltr" +} \ No newline at end of file diff --git a/public/language/vi/login.json b/public/language/vi/login.json new file mode 100644 index 0000000000..713509be4e --- /dev/null +++ b/public/language/vi/login.json @@ -0,0 +1,8 @@ +{ + "username": "Tên người dùng / Email", + "remember_me": "Ghi nhớ tôi?", + "forgot_password": "Quên mật khẩu?", + "alternative_logins": "Đăng nhập bằng tên khác", + "failed_login_attempt": "Đăng nhập thất bại, xin hãy thử lại", + "login_successful": "Bạn đã đăng nhập thành công!" +} \ No newline at end of file diff --git a/public/language/vi/modules.json b/public/language/vi/modules.json new file mode 100644 index 0000000000..0f80e4414d --- /dev/null +++ b/public/language/vi/modules.json @@ -0,0 +1,7 @@ +{ + "chat.chatting_with": "Chat với ", + "chat.placeholder": "đánh đoạn tin nhắn chat ở đây, nhấn phím enter để gửi đi", + "chat.send": "Gửi đi", + "chat.no_active": "Bạn hiện giờ không có cuộc chat nào", + "chat.user_typing": "%1b đang gõ" +} \ No newline at end of file diff --git a/public/language/vi/notifications.json b/public/language/vi/notifications.json new file mode 100644 index 0000000000..5a83eafd01 --- /dev/null +++ b/public/language/vi/notifications.json @@ -0,0 +1,18 @@ +{ + "title": "Thông báo", + "no_notifs": "Bạn không có thông báo nào mới", + "see_all": "Xem tất cả thông báo", + "back_to_home": "Quay lại NodeBB", + "outgoing_link": "Liên kết ngoài", + "outgoing_link_message": "Bạn giờ đang thoát", + "continue_to": "Tiếp tục đến", + "return_to": "Trở về", + "new_notification": "Thông báo mới", + "you_have_unread_notifications": "Bạn có thông báo chưa đọc", + "user_made_post": "%1 đã viết bài mới", + "new_message_from": "Tin nhắn mới từ %1", + "upvoted_your_post": "%1 đã hủy vote cho bài viết của bạn", + "favourited_your_post": "%1 thích bài viết của bạn", + "user_flagged_post": "%1 đã flag một bài viết", + "user_posted_to": "%1 đã trả lời %2" +} \ No newline at end of file diff --git a/public/language/vi/pages.json b/public/language/vi/pages.json new file mode 100644 index 0000000000..36cb72eb47 --- /dev/null +++ b/public/language/vi/pages.json @@ -0,0 +1,15 @@ +{ + "home": "Trang chủ", + "unread": "Chủ đề chưa đọc", + "popular": "Các chủ đề nổi bật", + "recent": "Chủ đề gần đây", + "users": "Số người dùng đã đăng ký", + "notifications": "Thông báo", + "user.edit": "Chỉnh sửa \"%1\"", + "user.following": "Người mà %1 theo dõi", + "user.followers": "Người đang theo dõi %1", + "user.posts": "Các bài được %1 viết", + "user.topics": "Các chủ đề được %1 tạo", + "user.favourites": "Các bài gửi yêu thích của %1", + "user.settings": "Thiết lập cho người dùng" +} \ No newline at end of file diff --git a/public/language/vi/recent.json b/public/language/vi/recent.json new file mode 100644 index 0000000000..571084e721 --- /dev/null +++ b/public/language/vi/recent.json @@ -0,0 +1,7 @@ +{ + "title": "Mới nhất", + "day": "Ngày", + "week": "Tuần", + "month": "Tháng", + "no_recent_topics": "Không có chủ đề nào gần đây" +} \ No newline at end of file diff --git a/public/language/vi/register.json b/public/language/vi/register.json new file mode 100644 index 0000000000..848cfdafa5 --- /dev/null +++ b/public/language/vi/register.json @@ -0,0 +1,18 @@ +{ + "register": "Đăng ký", + "help.email": "Theo mặc định, Email của bạn sẽ ở dạng ẩn và public sẽ không thấy được", + "help.username_restrictions": "Một tên truy cập duy nhất có từ %1 đến %2 ký tự. Những người khác có thể nhắc đến bạn bằng @tên truy cập.", + "help.minimum_password_length": "Mật khẩu của bạn phải có ít nhất %1 ký tự", + "email_address": "Địa chỉ Email", + "email_address_placeholder": "Nhập địa chỉ Email", + "username": "Tên truy cập", + "username_placeholder": "Nhập tên truy cập", + "password": "Mật khẩu", + "password_placeholder": "Nhập mật khẩu", + "confirm_password": "Xác nhận mật khẩu", + "confirm_password_placeholder": "Xác nhận mật khẩu", + "register_now_button": "Đăng ký ngay", + "alternative_registration": "Đăng ký tài khoản khác", + "terms_of_use": "Điều khoản sử dụng", + "agree_to_terms_of_use": "Tôi đồng ý với các điều khoản sử dụng" +} \ No newline at end of file diff --git a/public/language/vi/reset_password.json b/public/language/vi/reset_password.json new file mode 100644 index 0000000000..edc196ba6c --- /dev/null +++ b/public/language/vi/reset_password.json @@ -0,0 +1,14 @@ +{ + "reset_password": "Thiết lập lại mật khẩu", + "update_password": "Cập nhật mật khẩu", + "password_changed.title": "Mật khẩu đã được thay đổi", + "password_changed.message": "

Mật khẩu đã được thiết lập lại thành công, xin hãy đăng nhập lại.", + "wrong_reset_code.title": "Mã thiết lập lại không đúng", + "wrong_reset_code.message": "Mã thiết lập lại không đúng. Xin hãy thử lại, hoặc yêu cầu một mã thiết lập lại khác.", + "new_password": "Mật khẩu mới", + "repeat_password": "Xác nhận lại mật khẩu", + "enter_email": "Xin hãy nhập địa chỉ email của bạn và chúng tôi sẽ gửi một email hướng dẫn cách thiết lập lại tài khoản cho bạn", + "enter_email_address": "Nhập địa chỉ Email", + "password_reset_sent": "Đã gửi mật khẩu được thiết lập lại", + "invalid_email": "Email không đúng / Email không tồn tại!" +} \ No newline at end of file diff --git a/public/language/vi/success.json b/public/language/vi/success.json new file mode 100644 index 0000000000..f88527f3ad --- /dev/null +++ b/public/language/vi/success.json @@ -0,0 +1,6 @@ +{ + "success": "Thành công", + "topic-post": "Bạn đã gửi bài thành công", + "authentication-successful": "Xác thực thành công", + "settings-saved": "Đã lưu thiết lập" +} \ No newline at end of file diff --git a/public/language/vi/topic.json b/public/language/vi/topic.json new file mode 100644 index 0000000000..3cae01a414 --- /dev/null +++ b/public/language/vi/topic.json @@ -0,0 +1,93 @@ +{ + "topic": "Chủ đề", + "topic_id": "ID của chủ đề", + "topic_id_placeholder": "Nhập ID của chủ đề", + "no_topics_found": "Không tìm thấy chủ đề nào!", + "no_posts_found": "Không tìm thấy bài gửi nào", + "post_is_deleted": "Bài gửi này đã bị xóa!", + "profile": "Hồ sơ", + "posted_by": "Được viết bởi %1", + "chat": "Chat", + "notify_me": "Được thông báo khi có trả lời mới trong chủ đề này", + "quote": "Trích dẫn", + "reply": "Trả lời", + "edit": "Chỉnh sửa", + "delete": "Xóa", + "restore": "Phục hồi", + "move": "Chuyển đi", + "fork": "Fork", + "banned": "bị ban", + "link": "đường dẫn", + "share": "Chia sẻ", + "tools": "Công cụ", + "flag": "Flag", + "bookmark_instructions": "Bấm vào đây để quay về hoặc đóng lại để hủy", + "flag_title": "Flag bài viết này để chỉnh sửa", + "flag_confirm": "Bạn có chắc là muốn flag bài viết này không?", + "flag_success": "Chủ đề này đã được flag để chỉnh sửa", + "deleted_message": "Thread này đã bị xóa. Chỉ người dùng có quyền quản lý thread mới xem được.", + "following_topic.message": "Từ giờ bạn sẽ nhận được thông báo khi có ai đó gửi bài viết trong chủ đề này", + "not_following_topic.message": "Bạn sẽ không còn nhận được thông báo từ chủ đề này", + "login_to_subscribe": "Xin hãy đăng ký hoặc đăng nhập để theo dõi topic này", + "markAsUnreadForAll.success": "Chủ đề đã được đánh dấu là chưa đọc toàn bộ", + "watch": "Xem", + "watch.title": "Được thông báo khi có trả lời mới trong chủ đề này", + "share_this_post": "Chia sẻ bài viết này", + "thread_tools.title": "Công cụ cho Thread", + "thread_tools.markAsUnreadForAll": "Đánh dấu chưa đọc", + "thread_tools.pin": "Pin chủ đề", + "thread_tools.unpin": "Bỏ pin chủ đề", + "thread_tools.lock": "Khóa chủ đề", + "thread_tools.unlock": "Mở khóa chủ đề", + "thread_tools.move": "Chuyển chủ đề", + "thread_tools.move_all": "Chuyển tất cả", + "thread_tools.fork": "Fork chủ đề", + "thread_tools.delete": "Xóa chủ đề", + "thread_tools.delete_confirm": "Bạn có chắc là muốn hủy thread này không?", + "thread_tools.restore": "Phục hồi chủ đề", + "thread_tools.restore_confirm": "Bạn có chắc là muốn phục hồi thread này không", + "topic_lock_success": "Đã khóa thành công chủ đề.", + "topic_unlock_success": "Đã mở khóa thành công chủ đề.", + "topic_pin_success": "Đã pin chủ đề thành công", + "topic_unpin_success": "Đã bỏ pin chủ đề thành công", + "topic_move_success": "Đã chuyển thành công chủ đề này sang %1", + "post_delete_confirm": "Bạn có chắc là muốn xóa bài gửi này không?", + "post_restore_confirm": "Bạn có chắc là muốn phục hồi bài gửi này không?", + "post_delete_error": "Không thể xóa bài gửi này!", + "post_restore_error": "Không thể phục hồi bài gửi này!", + "load_categories": "Đang tải các phần mục", + "disabled_categories_note": "Các phần mục bị khóa đã được đánh xám", + "confirm_move": "Chuyển", + "confirm_fork": "Fork", + "favourite": "Yêu thích", + "favourites": "Đang yêu thích", + "favourites.has_no_favourites": "Bạn đang không có yêu thích nào. Hãy yêu thích một vài bài viết để thấy được chúng tại đây!", + "loading_more_posts": "Tải thêm các bài gửi khác", + "move_topic": "Chuyển chủ đề", + "move_post": "Chuyển bài gửi", + "post_moved": "Đã chuyển bài gửi!", + "fork_topic": "Fork chủ đề", + "topic_will_be_moved_to": "Chủ đề này sẽ được chuyển tới phần mục", + "fork_topic_instruction": "Nhấp vào bài gửi mà bạn muốn fork", + "fork_no_pids": "Chưa chọn bài gửi nào!", + "fork_success": "Đã fork chủ đề thành công!", + "composer.title_placeholder": "Nhập tiêu đề cho chủ đề của bạn tại đây...", + "composer.write": "Viết", + "composer.preview": "Xem trước", + "composer.help": "Trợ giúp", + "composer.discard": "Loại bỏ", + "composer.submit": "Gửi", + "composer.replying_to": "Đang trả lời %1", + "composer.new_topic": "Chủ đề mới", + "composer.uploading": "đang tải lên...", + "composer.thumb_url_label": "Dán một thumbnail URL cho chủ đề", + "composer.thumb_title": "Thêm một thumbnail cho chủ đề này", + "composer.thumb_url_placeholder": "http://example.com/thumb.png", + "composer.thumb_file_label": "Hoặc tải lên một tệp", + "composer.thumb_remove": "Xóa toàn bộ", + "composer.drag_and_drop_images": "Kéo và thả hình ảnh tại đây", + "composer.upload_instructions": "Tải lên hình ảnh bằng cách kéo và thả", + "more_users_and_guests": "%1 người dùng và %2 khách nữa", + "more_users": "%1 người dùng nữa", + "more_guests": "%1 khách nữa" +} \ No newline at end of file diff --git a/public/language/vi/unread.json b/public/language/vi/unread.json new file mode 100644 index 0000000000..634efe34d4 --- /dev/null +++ b/public/language/vi/unread.json @@ -0,0 +1,9 @@ +{ + "title": "Chưa đọc", + "no_unread_topics": "Không có chủ đề chưa được đọc", + "load_more": "Tải thêm", + "mark_as_read": "Đánh dấu đã đọc", + "selected": "Đã chọn", + "all": "Tất cả", + "topics_marked_as_read.success": "Chủ đề được đánh dấu đã đọc" +} \ No newline at end of file diff --git a/public/language/vi/user.json b/public/language/vi/user.json new file mode 100644 index 0000000000..fa9fc38c60 --- /dev/null +++ b/public/language/vi/user.json @@ -0,0 +1,62 @@ +{ + "banned": "Bị ban", + "offline": "Offline", + "username": "Tên truy cập", + "email": "Email", + "fullname": "Tên đầy đủ", + "website": "Website", + "location": "Địa điểm", + "age": "Tuổi", + "joined": "Đã gia nhập", + "lastonline": "Online lần cuối vào", + "profile": "Hồ sơ", + "profile_views": "Khung hiển thị hồ sơ", + "reputation": "Mức uy tín", + "favourites": "Yêu thích", + "followers": "Số người theo dõi", + "following": "Đang theo dõi", + "signature": "Chữ ký", + "gravatar": "Gavatar", + "birthday": "Ngày sinh ", + "chat": "Chat", + "follow": "Theo dõi", + "unfollow": "Hủy theo dõi", + "profile_update_success": "Hồ sơ đã được cập nhật thành công", + "change_picture": "Thay đổi hình ảnh", + "edit": "Chỉnh sửa", + "uploaded_picture": "Ảnh đã tải lên", + "upload_new_picture": "Tải lên ảnh mới", + "current_password": "Mật khẩu hiện tại", + "change_password": "Thay đổi mật khẩu", + "change_password_error": "Mật khẩu không đúng!", + "change_password_error_wrong_current": "Mật khẩu hiện tại của bạn không đúng", + "change_password_error_length": "Mật khẩu quá ngắn!", + "change_password_error_match": "Mật khẩu phải khớp!", + "change_password_error_privileges": "Bạn không có quyền thay đổi mật khẩu này", + "change_password_success": "Mật khẩu của bạn đã được cập nhật", + "confirm_password": "Xác nhận mật khẩu", + "password": "Mật khẩu", + "username_taken_workaround": "Tên truy cập này đã tồn tại, vì vậy chúng tôi đã sửa đổi nó một chút. Tên truy cập của bạn giờ là %1", + "upload_picture": "Tải lên hình ảnh", + "upload_a_picture": "Tải lên một hình ảnh", + "image_spec": "Bạn chỉ có thể tải lên được các file PNG, JPG hoặc GIF", + "max": "tối đa", + "settings": "Thiết lập", + "show_email": "Hiện Email của tôi", + "digest_label": "Đăng ký để digest", + "digest_description": "Đăng ký để được forum gửi cập nhật tới email (thông báo và chủ đề mới) trong một khoảng thời gian lặp lại nhất định ", + "digest_off": "Off", + "digest_daily": "Hàng ngày", + "digest_weekly": "Hàng tuần", + "digest_monthly": "Hàng tháng", + "has_no_follower": "Người dùng này hiện chưa có ai theo dõi :(", + "follows_no_one": "Người dùng này hiện chưa theo dõi ai :(", + "has_no_posts": "Người dùng này chưa viết bài nào", + "has_no_topics": "Người dùng này chưa tạo một chủ đề nào", + "email_hidden": "Ẩn Email", + "hidden": "Đã ẩn", + "paginate_description": "Phân trang cho chủ đề và bài viết thay vì cuộn liên tục", + "topics_per_page": "Số chủ đề trong một trang", + "posts_per_page": "Số bài viết trong một trang", + "notification_sounds": "Xuất hiện âm thanh khi bạn nhận được một thông báo" +} \ No newline at end of file diff --git a/public/language/vi/users.json b/public/language/vi/users.json new file mode 100644 index 0000000000..e09f3c94ea --- /dev/null +++ b/public/language/vi/users.json @@ -0,0 +1,8 @@ +{ + "latest_users": "Những người dùng mới nhất", + "top_posters": "Những người viết bài nhiều nhất", + "most_reputation": "Uy tín nhất", + "search": "Tìm kiếm", + "enter_username": "Gõ tên người dùng để tìm kiếm", + "load_more": "Tải thêm" +} \ No newline at end of file