`;
diff --git a/src/UI/UIWindowMyWebsites.js b/src/UI/UIWindowMyWebsites.js
index 54397920..8f4dd5cc 100644
--- a/src/UI/UIWindowMyWebsites.js
+++ b/src/UI/UIWindowMyWebsites.js
@@ -68,7 +68,7 @@ async function UIWindowMyWebsites(options){
margin-bottom: 50px;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
- color: #596c7c;">Loading...`);
+ color: #596c7c;">${i18n('loading')}...`);
}, 1000);
puter.hosting.list().then(function (sites){
@@ -144,7 +144,7 @@ $(document).on('click', '.mywebsites-site-setting', function(e){
type: 'primary',
},
{
- label: 'Cancel'
+ label: i18n('cancel')
},
]
})
diff --git a/src/UI/UIWindowNewPassword.js b/src/UI/UIWindowNewPassword.js
index 204c0771..3467d294 100644
--- a/src/UI/UIWindowNewPassword.js
+++ b/src/UI/UIWindowNewPassword.js
@@ -116,7 +116,7 @@ async function UIWindowNewPassword(options){
backdrop: true,
buttons:[
{
- label: 'Proceed to Login',
+ label: i18n('proceed_to_login'),
type: 'primary',
},
],
diff --git a/src/helpers.js b/src/helpers.js
index a318fb73..8738632b 100644
--- a/src/helpers.js
+++ b/src/helpers.js
@@ -722,6 +722,7 @@ window.mutate_user_preferences = function(user_preferences_delta) {
window.update_user_preferences = function(user_preferences) {
window.user_preferences = user_preferences;
localStorage.setItem('user_preferences', JSON.stringify(user_preferences));
+ window.locale = user_preferences.language;
}
window.sendWindowWillCloseMsg = function(iframe_element) {
@@ -1030,7 +1031,7 @@ window.show_save_account_notice_if_needed = function(message){
body_icon: window.icons['reminder.svg'],
buttons:[
{
- label: 'Save session',
+ label: i18n('save_session'),
value: 'save-session',
type: 'primary',
},
@@ -1564,17 +1565,17 @@ window.copy_clipboard_items = async function(dest_path, dest_container_element){
const alert_resp = await UIAlert({
message: `
${html_encode(err.entry_name)} already exists.`,
buttons:[
- {label: 'Replace', type: 'primary'},
- ... (clipboard.length > 1) ? [{label: 'Replace all'}] : [],
- ... (clipboard.length > 1) ? [{label: 'Skip'}] : [{label: 'Cancel'}],
+ {label: i18n('replace'), type: 'primary', value: 'replace'},
+ ... (clipboard.length > 1) ? [{label: i18n('replace_all'), value: 'replace_all'}] : [],
+ ... (clipboard.length > 1) ? [{label: i18n('skip'), value: 'skip'}] : [{label: i18n('cancel'), value: 'cancel'}],
]
})
- if(alert_resp === 'Replace'){
+ if(alert_resp === 'replace'){
overwrite = true;
- }else if (alert_resp === 'Replace all'){
+ }else if (alert_resp === 'replace_all'){
overwrite = true;
overwrite_all = true;
- }else if(alert_resp === 'Skip' || alert_resp === 'Cancel'){
+ }else if(alert_resp === 'skip' || alert_resp === 'cancel'){
item_with_same_name_already_exists = false;
}
}
@@ -1661,17 +1662,17 @@ window.copy_items = function(el_items, dest_path){
const alert_resp = await UIAlert({
message: `
${html_encode(err.entry_name)} already exists.`,
buttons:[
- { label: 'Replace', type: 'primary' },
- ... (el_items.length > 1) ? [{label: 'Replace all'}] : [],
- ... (el_items.length > 1) ? [{label: 'Skip'}] : [{label: 'Cancel'}],
+ { label: i18n('replace'), type: 'primary', value: 'replace' },
+ ... (el_items.length > 1) ? [{label: i18n('replace_all'), value: 'replace_all'}] : [],
+ ... (el_items.length > 1) ? [{label: i18n('skip'), value: 'skip'}] : [{label: i18n('cancel'), value: 'cancel'}],
]
})
- if(alert_resp === 'Replace'){
+ if(alert_resp === 'replace'){
overwrite = true;
- }else if (alert_resp === 'Replace all'){
+ }else if (alert_resp === 'replace_all'){
overwrite = true;
overwrite_all = true;
- }else if(alert_resp === 'Skip' || alert_resp === 'Cancel'){
+ }else if(alert_resp === 'skip' || alert_resp === 'cancel'){
item_with_same_name_already_exists = false;
}
}
@@ -2207,15 +2208,16 @@ window.open_item = async function(options){
'Found no suitable apps to open this file with. Would you like to download it instead?',
[
{
- label: 'Download File',
+ label: i18n('download_file'),
+ value: 'download_file',
type: 'primary',
},
{
- label: 'Cancel'
+ label: i18n('cancel')
}
])
- if(alert_resp === 'Download File'){
+ if(alert_resp === 'download_file'){
trigger_download([item_path]);
}
return;
@@ -2585,17 +2587,17 @@ window.move_items = async function(el_items, dest_path, is_undo = false){
const alert_resp = await UIAlert({
message: `
${html_encode(err.entry_name)} already exists.`,
buttons:[
- { label: 'Replace', type: 'primary',},
- ... (el_items.length > 1) ? [{label: 'Replace all'}] : [],
- ... (el_items.length > 1) ? [{label: 'Skip'}] : [{label: 'Cancel'}],
+ { label: i18n('replace'), type: 'primary', value: 'replace' },
+ ... (el_items.length > 1) ? [{label: i18n('replace_all'), value: 'replace_all'}] : [],
+ ... (el_items.length > 1) ? [{label: i18n('skip'), value: 'skip'}] : [{label: i18n('cancel'), value: 'cancel'}],
]
})
- if(alert_resp === 'Replace'){
+ if(alert_resp === 'replace'){
overwrite = true;
- }else if (alert_resp === 'Replace all'){
+ }else if (alert_resp === 'replace_all'){
overwrite = true;
overwrite_all = true;
- }else if(alert_resp === 'Skip' || alert_resp === 'Cancel'){
+ }else if(alert_resp === 'skip' || alert_resp === 'cancel'){
item_with_same_name_already_exists = false;
}
}
@@ -2972,15 +2974,15 @@ window.upload_items = async function(items, dest_path){
window.empty_trash = async function(){
const alert_resp = await UIAlert({
- message: `Are you sure you want to permanently delete the items in Trash?`,
+ message: i18n('empty_trash_confirmation'),
buttons:[
{
- label: 'Yes',
+ label: i18n('yes'),
value: 'yes',
type: 'primary',
},
{
- label: 'No',
+ label: i18n('no'),
value: 'no',
},
]
diff --git a/src/i18n/i18n.js b/src/i18n/i18n.js
index c3cea967..015cfaf7 100644
--- a/src/i18n/i18n.js
+++ b/src/i18n/i18n.js
@@ -10,11 +10,8 @@ window.i18n = function (key, replacements = [], encode_html = true) {
replacements = [replacements];
}
- // if locale is not set, default to en
- if(!translations[window.locale])
- window.locale = 'en';
-
- let str = translations[window.locale].dictionary[key];
+ let language = translations[window.locale] ?? translations['en'];
+ let str = language.dictionary[key] ?? translations['en'].dictionary[key];
if (!str) {
str = key;
diff --git a/src/i18n/translations/ar.js b/src/i18n/translations/ar.js
new file mode 100644
index 00000000..41429638
--- /dev/null
+++ b/src/i18n/translations/ar.js
@@ -0,0 +1,149 @@
+const ar = {
+ name: "العربية",
+ code: "ar",
+ dictionary: {
+ access_granted_to: "دخول مسموح به",
+ add_existing_account: "إضافة حساب موجود",
+ all_fields_required: 'يجب ملء كل الفراغات',
+ apply: "تطبيق ",
+ ascending: 'تصاعدي ',
+ background: "خلفية",
+ browse: "إبحث",
+ cancel: 'إلغاء',
+ center: 'وسط',
+ change_desktop_background: 'تغيير خلفية المكتب',
+ change_language: "تغيير اللغة",
+ change_password: "تغيير كلمة السر",
+ change_username: "تغيير إسم المستخدم",
+ close_all_windows: "غلق كل النوافذ",
+ color: 'اللون',
+ confirm_account_for_free_referral_storage_c2a: 'تأكيد الحساب لتخزين الإحالة المجانية ',
+ confirm_new_password: "تأكيد كلمة السر الجديدة",
+ contact_us: "اتصل بنا",
+ contain: 'إملء',
+ continue: "أكمل",
+ copy: 'أنسخ',
+ copy_link: "أنسخ الرابط",
+ copying: "ينسخ",
+ cover: 'غطاء',
+ create_account: "إنشاء حساب",
+ create_free_account: "إنشاء حساب مجاني",
+ create_shortcut: "تم تصميم المنتج",
+ current_password: "كلمة السر الحالية",
+ cut: 'إقطع',
+ date_modified: 'تغيير الوقت',
+ delete: 'حذف',
+ delete_permanently: "حذف دائم",
+ deploy_as_app: 'نشر كتطبيق',
+ descending: 'تنازلي',
+ desktop_background_fit: "خلفية سطح المكتب مناسبة",
+ dir_published_as_website: `:تم نشر الدليل كموقع ويب`,
+ disassociate_dir: "فصل الدليل",
+ download: 'تحميل ',
+ downloading: "جارى التحميل ",
+ email: "بريد إلكتروني",
+ email_or_username: "البريد الإلكتروني أو اسم المستخدم ",
+ empty_trash: 'سلة مهملات فارغة',
+ empty_trash_confirmation:'تأكيد إفراغ سلة المهملات ',
+ emptying_trash: 'إفراغ القمامة',
+ feedback: "تعليق ",
+ feedback_c2a: "تعليق ",
+ feedback_sent_confirmation: "أرسلت ردود الفعل التكوين ",
+ forgot_pass_c2a: "هل نسيت كلمة السر؟",
+ from: "من",
+ general: "عام ",
+ get_a_copy_of_on_puter: `الحصول على نسخة على جهاز الكمبيوتر`,
+ get_copy_link: 'الحصول على رابط النسخ',
+ hide_all_windows: "إخفاء كافة النوافذ ",
+ html_document: 'وثيقة أتش تي أم أل',
+ image: 'صورة',
+ invite_link: "رابط الدعوة",
+ items_in_trash_cannot_be_renamed: `لا يمكن إعادة تسمية العناصر الموجودة في سلة المهملات `,
+ jpeg_image: 'صورة j p e g',
+ keep_in_taskbar: 'احتفظ بها في شريط المهام ',
+ log_in: "تسجيل الدخول",
+ log_out: 'تسجيل خروج',
+ move: 'يتحرك',
+ moving: "متحرك ",
+ my_websites: "مواقعي الإلكترونية ",
+ name: 'اسم',
+ name_cannot_be_empty: 'لا يمكن أن يكون الاسم فارغًا',
+ name_cannot_contain_double_period: "لا يمكن أن يحتوي الاسم على نقطة مزدوجة ",
+ name_cannot_contain_period: "لا يمكن أن يحتوي الاسم على فترة",
+ name_cannot_contain_slash: "لا يمكن أن يحتوي الاسم على شرطة مائلة",
+ name_must_be_string: "يجب أن يكون الاسم سلسلة",
+ name_too_long: `الاسم طويل جدًا`,
+ new: 'جديد',
+ new_folder: 'ملف جديد ',
+ new_password: "كلمة المرور الجديدة ",
+ new_username: "اسم مستخدم جديد ",
+ no_dir_associated_with_site: 'لا يوجد دليل مرتبط بالموقع',
+ no_websites_published: "لم يتم نشر أي مواقع",
+ ok: 'نعم',
+ open: "يفتح",
+ open_in_new_tab: "فتح في علامة تبويب جديدة",
+ open_in_new_window: "افتح في نافذة جديدة ",
+ open_with: "مفتوحة مع ",
+ password: "كلمة المرور ",
+ password_changed: "تم تغيير كلمة السر ",
+ passwords_do_not_match: 'كلمة المرور غير مطابقة',
+ paste: 'لصق',
+ paste_into_folder: "الصق داخل الملف",
+ pick_name_for_website: "اختيار اسم لموقع الويب ",
+ picture: "صورة ",
+ powered_by_puter_js: `مشغل بواسطة
Puter.js`,
+ preparing: "إعداده",
+ preparing_for_upload: "التحضير للتحميل ",
+ properties: "ملكيات ",
+ publish: "ينشر",
+ publish_as_website: 'نشر كموقع على شبكة الإنترنت ',
+ recent: "مؤخرًا",
+ recover_password: "إستعادة كلمة المرور ",
+ refer_friends_c2a: "احصل على 1 جيجابايت لكل صديق يقوم بإنشاء حساب والتحقق منه مع Puter. صديقك يحصل على 1 غيغابايت أيضًا!",
+ refer_friends_social_media_c2a: `احصل على 1 غيغابايت من مساحة التخزين المجانية على موقع Puter.com!`,
+ refresh: 'ينعش ',
+ release_address_confirmation: `تأكيد عنوان الإصدار `,
+ remove_from_taskbar:'إزالة من شريط المهام ',
+ rename: 'إعادة تسمية',
+ repeat: 'تكرار',
+ resend_confirmation_code: "إعادة إرسال رمز التأكيد",
+ restore: "استرجاع",
+ save_account_to_get_copy_link: "حفظ الحساب للحصول على نسخة الرابط",
+ save_account_to_publish: 'حفظ الحساب للنشر',
+ save_session_c2a: 'حفظ جلسة ',
+ scan_qr_c2a: 'قم بمسح الرمز أدناه لتسجيل الدخول إلى هذه الجلسة من الأجهزة الأخرى',
+ select: "إختار",
+ select_color: 'إختر لون ',
+ send: "أرسل",
+ send_password_recovery_email: "إرسال بريد إلكتروني لاستعادة كلمة المرور",
+ session_saved: "تم حفظ الجلسة ",
+ set_new_password: "تعيين كلمة مرور جديدة ",
+ share_to: " شارك إلى",
+ show_all_windows: "إظهار كافة النوافذ ",
+ show_hidden: 'أظهر المخفي ',
+ sign_in_with_puter: "سجل الدخول ب Puter",
+ sign_up: "إشترك",
+ signing_in: "تسجيل الدخول",
+ size: 'الحجم',
+ sort_by: 'ترتيب حسب',
+ start: 'إبدأ ',
+ taking_longer_than_usual: 'يستغرق وقتا أطول من المعتاد ',
+ text_document: 'وثيقة نصية',
+ tos_fineprint: `بالنقر على "إنشاء حساب مجاني"، فإنك توافق على
شروط الاستخدام و
حماية البيانات`,
+ trash: 'نفاية',
+ type: 'اكتب',
+ undo: 'الغاء التحميل',
+ unzip: "فك الضغط",
+ upload: 'رفع ',
+ upload_here: 'ارفع هنا',
+ username: "اسم المستخدم ",
+ username_changed: 'تم تغيير اسم المستخدم',
+ versions: "الإصدارات ",
+ yes_release_it: 'نعم أطلقه',
+ you_have_been_referred_to_puter_by_a_friend: "لقد تمت إحالتك إلى Puter بواسطة صديق!",
+ zip: "ملف مضغوط",
+ }
+};
+
+export default ar;
+
diff --git a/src/i18n/translations/emoji.js b/src/i18n/translations/emoji.js
new file mode 100644
index 00000000..ebe7d9a3
--- /dev/null
+++ b/src/i18n/translations/emoji.js
@@ -0,0 +1,166 @@
+const emoji = {
+ name: "🌍",
+ code: "emoji",
+ dictionary: {
+ access_granted_to: "🔓✅",
+ add_existing_account: "➕🔄👤",
+ all_fields_required: '📝🔒✅',
+ apply: "📋🔄",
+ ascending: '🔼',
+ background: "🖼️",
+ browse: "🔍",
+ cancel: '❌',
+ center: '🎯',
+ change_desktop_background: '🔄🖥️🖼️',
+ change_language: "🔄🌐",
+ change_password: "🔑🔄",
+ change_username: "👤🔄",
+ close_all_windows: "❌🔄🖼️🖼️",
+ close_all_windows_and_log_out: '❌🔄🖼️🖼️🔚',
+ color: '🎨',
+ confirm_account_for_free_referral_storage_c2a: '📧🆓👤📂📦🆓',
+ confirm_delete_multiple_items: '❓❌🗑️❓',
+ confirm_delete_single_item: '❓❌🗑️❓',
+ confirm_open_apps_log_out: '❓📦🔄🔚',
+ confirm_new_password: "🔑❓🔑",
+ contact_us: "📞📧",
+ contain: '📦🔍',
+ continue: "⏩",
+ copy: '📋',
+ copy_link: "🔗📋",
+ copying: "📋➡️",
+ cover: '📚👀',
+ create_account: "👤🆕",
+ create_free_account: "👤🆓",
+ create_shortcut: "📌🔄",
+ current_password: "🔑🔍",
+ cut: '✂️',
+ date_modified: '📅🔄',
+ delete: '🗑️',
+ delete_permanently: "🗑️🔚",
+ deploy_as_app: '🚀📱',
+ descending: '🔽',
+ desktop_background_fit: "🖥️🖼️",
+ dir_published_as_website: `📂📰🌐`,
+ disassociate_dir: "📂🔁❌",
+ download: '⬇️',
+ download_file: '⬇️📄',
+ downloading: "⬇️➡️",
+ email: "📧",
+ email_or_username: "📧👤",
+ empty_trash: '🗑️🆓',
+ empty_trash_confirmation: `❓🗑️❓`,
+ emptying_trash: '🗑️🆓...',
+ feedback: "📝💬",
+ feedback_c2a: "📝📤",
+ feedback_sent_confirmation: "📧👍",
+ forgot_pass_c2a: "🔑❓ (╯°□°)╯︵ ┻━┻",
+ from: "📩",
+ general: "⚙️",
+ get_a_copy_of_on_puter: `📩🔄📂`,
+ get_copy_link: '🔗🔄',
+ hide_all_windows: "🔚🔄🖼️🖼️",
+ html_document: '📄🌐',
+ image: '🖼️',
+ invite_link: "🔗📩",
+ item: '📂',
+ items_in_trash_cannot_be_renamed: `🗑️🆓❌`,
+ jpeg_image: '🖼️',
+ keep_in_taskbar: '📌📁',
+ loading: '🔄',
+ log_in: "👤🔓",
+ log_into_another_account_anyway: '👤🔄',
+ log_out: '🔚',
+ move: '➡️',
+ moving: "➡️...",
+ my_websites: "🌐👤",
+ name: '📛',
+ name_cannot_be_empty: '📛❌',
+ name_cannot_contain_double_period: "📛❌",
+ name_cannot_contain_period: "📛❌",
+ name_cannot_contain_slash: "📛❌",
+ name_must_be_string: "📛❌",
+ name_too_long: `📛❌`,
+ new: '🆕',
+ new_folder: '🆕📂',
+ new_password: "🆕🔑",
+ new_username: "🆕👤",
+ no: '❌',
+ no_dir_associated_with_site: '📂❌🌐',
+ no_websites_published: "🌐❌",
+ ok: '👌',
+ open: "📂🔄",
+ open_in_new_tab: "📂🔄🆕",
+ open_in_new_window: "📂🔄🖼️🆕",
+ open_with: "📂🔄🔓",
+ password: "🔑",
+ password_changed: "🔑✅",
+ passwords_do_not_match: '🔑❌🔑',
+ paste: '📋➡️',
+ paste_into_folder: "📂📋➡️",
+ pick_name_for_website: "🌐📛❓:",
+ picture: "🖼️",
+ powered_by_puter_js: `⚙️🔌🔗`,
+ preparing: "🔄🔜",
+ preparing_for_upload: "🔄🔜",
+ proceed_to_login: '👤🔍',
+ properties: "⚙️",
+ publish: "📰",
+ publish_as_website: '🌐📰',
+ plural_suffix: '🅰️',
+ recent: "🔙",
+ recover_password: "🔑🔄📧",
+ refer_friends_c2a: "👤📞📧👤",
+ refer_friends_social_media_c2a: `📲👤🆓`,
+ refresh: '🔄🔄',
+ release_address_confirmation: `❓🆓`,
+ remove_from_taskbar:'📌❌📁',
+ rename: '🔄📛',
+ repeat: '🔂',
+ replace: '🔄🔄',
+ replace_all: '🔄🔄',
+ resend_confirmation_code: "📧🔁",
+ restore: "🔄🔙",
+ save_account: '👤💾',
+ save_account_to_get_copy_link: "🆕👤📋🔗",
+ save_account_to_publish: '🆕👤📰',
+ save_session: '💾📂',
+ save_session_c2a: '🆕👤💾',
+ scan_qr_c2a: '📲🔍',
+ select: "👉",
+ selected: '✅',
+ select_color: '🎨👉',
+ send: "📤",
+ send_password_recovery_email: "📧🔑🔄",
+ session_saved: "👤💾🔄",
+ set_new_password: "🔑🆕",
+ share_to: "🔁➡️",
+ show_all_windows: "🔄🆓🖼️🖼️",
+ show_hidden: '👁️🔄',
+ sign_in_with_puter: "👤🆔",
+ sign_up: "👤🆕",
+ signing_in: "🔄👤",
+ size: '📏',
+ skip: '⏩',
+ sort_by: '🔢🔄',
+ start: '🚀',
+ taking_longer_than_usual: '⏳🔄',
+ text_document: '📄',
+ tos_fineprint: `👤📝📄`,
+ trash: '🗑️',
+ type: '🔡',
+ undo: '↩️',
+ unzip: "🔓📂",
+ upload: '⬆️',
+ upload_here: '⬆️📂',
+ username: "👤",
+ username_changed: '👤✅',
+ versions: "🔄📃",
+ yes: '✅',
+ yes_release_it: '✅🆓',
+ you_have_been_referred_to_puter_by_a_friend: "👤🔁🆓",
+ zip: "📂🔒",
+ }
+};
+
+export default emoji;
\ No newline at end of file
diff --git a/src/i18n/translations/en.js b/src/i18n/translations/en.js
index 74285690..0c02478c 100644
--- a/src/i18n/translations/en.js
+++ b/src/i18n/translations/en.js
@@ -16,8 +16,12 @@ const en = {
change_password: "Change Password",
change_username: "Change Username",
close_all_windows: "Close All Windows",
+ close_all_windows_and_log_out: 'Close Windows and Log Out',
color: 'Color',
confirm_account_for_free_referral_storage_c2a: 'Create an account and confirm your email address to receive 1 GB of free storage. Your friend will get 1 GB of free storage too.',
+ confirm_delete_multiple_items: 'Are you sure you want to permanently delete these items?',
+ confirm_delete_single_item: 'Do you want to permanently delete this item?',
+ confirm_open_apps_log_out: 'You have open apps. Are you sure you want to log out?',
confirm_new_password: "Confirm New Password",
contact_us: "Contact Us",
contain: 'Contain',
@@ -40,6 +44,7 @@ const en = {
dir_published_as_website: `%strong% has been published to:`,
disassociate_dir: "Disassociate Directory",
download: 'Download',
+ download_file: 'Download File',
downloading: "Downloading",
email: "Email",
email_or_username: "Email or Username",
@@ -58,10 +63,13 @@ const en = {
html_document: 'HTML document',
image: 'Image',
invite_link: "Invite Link",
+ item: 'item',
items_in_trash_cannot_be_renamed: `This item can't be renamed because it's in the trash. To rename this item, first drag it out of the Trash.`,
jpeg_image: 'JPEG image',
keep_in_taskbar: 'Keep in Taskbar',
+ loading: 'Loading',
log_in: "Log In",
+ log_into_another_account_anyway: 'Log into another account anyway',
log_out: 'Log Out',
move: 'Move',
moving: "Moving",
@@ -77,6 +85,7 @@ const en = {
new_folder: 'New folder',
new_password: "New Password",
new_username: "New Username",
+ no: 'No',
no_dir_associated_with_site: 'No directory associated with this address.',
no_websites_published: "You have not published any websites yet.",
ok: 'OK',
@@ -94,9 +103,11 @@ const en = {
powered_by_puter_js: `Powered by
Puter.js`,
preparing: "Preparing...",
preparing_for_upload: "Preparing for upload...",
+ proceed_to_login: 'Proceed to login',
properties: "Properties",
publish: "Publish",
publish_as_website: 'Publish as website',
+ plural_suffix: 's',
recent: "Recent",
recover_password: "Recover Password",
refer_friends_c2a: "Get 1 GB for every friend who creates and confirms an account on Puter. Your friend will get 1 GB too!",
@@ -106,13 +117,18 @@ const en = {
remove_from_taskbar:'Remove from Taskbar',
rename: 'Rename',
repeat: 'Repeat',
+ replace: 'Replace',
+ replace_all: 'Erstatt alle',
resend_confirmation_code: "Re-send Confirmation Code",
restore: "Restore",
+ save_account: 'Save account',
save_account_to_get_copy_link: "Please create an account to proceed.",
save_account_to_publish: 'Please create an account to proceed.',
+ save_session: 'Save session',
save_session_c2a: 'Create an account to save your current session and avoid losing your work.',
scan_qr_c2a: 'Scan the code below to log into this session from other devices',
select: "Select",
+ selected: 'selected',
select_color: 'Select color…',
send: "Send",
send_password_recovery_email: "Send Password Recovery Email",
@@ -125,6 +141,7 @@ const en = {
sign_up: "Sign Up",
signing_in: "Signing in…",
size: 'Size',
+ skip: 'Skip',
sort_by: 'Sort by',
start: 'Start',
taking_longer_than_usual: 'Taking a little longer than usual. Please wait...',
@@ -139,6 +156,7 @@ const en = {
username: "Username",
username_changed: 'Username updated successfully.',
versions: "Versions",
+ yes: 'Yes',
yes_release_it: 'Yes, Release It',
you_have_been_referred_to_puter_by_a_friend: "You have been referred to Puter by a friend!",
zip: "Zip",
diff --git a/src/i18n/translations/es.js b/src/i18n/translations/es.js
new file mode 100644
index 00000000..261f555f
--- /dev/null
+++ b/src/i18n/translations/es.js
@@ -0,0 +1,148 @@
+const es = {
+ name: "Español",
+ code: "es",
+ dictionary: {
+ access_granted_to: "Acceso Permitido A",
+ add_existing_account: "Añadir una cuenta existente",
+ all_fields_required: 'Todos los campos son obligatorios.',
+ apply: "Aplicar",
+ ascending: 'Ascendiente',
+ background: "Fondo",
+ browse: "Buscar",
+ cancel: 'Cancelar',
+ center: 'Centrar',
+ change_desktop_background: 'Cambiar el fondo de pantalla…',
+ change_language: "Cambiar Idioma",
+ change_password: "Cambiar Contraseña",
+ change_username: "Cambiar Nombre de Usuario",
+ close_all_windows: "Cerrar todas las ventanas",
+ color: 'Color',
+ confirm_account_for_free_referral_storage_c2a: 'Crea una cuenta y confirma tu dirección de email para recibir 1 GB de almacenamiento gratuito. Tu amigo recibirá 1 GB de almacenamiento gratuito también.',
+ confirm_new_password: "Confirma la Nueva Contraseña",
+ contact_us: "Contáctanos",
+ contain: 'Contiene',
+ continue: "Continuar",
+ copy: 'Copiar',
+ copy_link: "Copiar Enlace",
+ copying: "Copiando",
+ cover: 'Cubrir',
+ create_account: "Crear una cuenta",
+ create_free_account: "Crear una cuenta gratuita",
+ create_shortcut: "Crear un acceso directo",
+ current_password: "Contraseña actual",
+ cut: 'Cortar',
+ date_modified: 'Fecha de modificación',
+ delete: 'Borrar',
+ delete_permanently: "Borrar permanentemente",
+ deploy_as_app: 'Desplegar como una aplicación',
+ descending: 'Descendiente',
+ desktop_background_fit: "Llenar",
+ dir_published_as_website: `%strong% ha sido publicado a:`,
+ disassociate_dir: "Desvincular directorio",
+ download: 'Descargar',
+ downloading: "Descargando",
+ email: "Email",
+ email_or_username: "Email o Nombre de Usuario",
+ empty_trash: 'Vaciar la papelera',
+ empty_trash_confirmation: `¿Estás seguro de que quieres borrar permanentemente todos los elementos de la Papelera?`,
+ emptying_trash: 'Vaciando la papelera…',
+ feedback: "Feedback",
+ feedback_c2a: "Por favor, usa el formulario para enviarnos tu feedback, comentario y reportar bugs.",
+ feedback_sent_confirmation: "Gracias por ponerte en contacto con nosotros. Si tienes un email vinculado con la cuenta, nos pondremos en contacto contigo tan pronto como podamos.",
+ forgot_pass_c2a: "¿Contraseña olvidada?",
+ from: "De",
+ general: "General",
+ get_a_copy_of_on_puter: `¡Consigue una copia de '%%' en Puter.com!`,
+ get_copy_link: 'Copiar el enlace',
+ hide_all_windows: "Ocultar Todas las Ventanas",
+ html_document: 'Documento HTML',
+ image: 'Imagen',
+ invite_link: "Enlace de invitación",
+ items_in_trash_cannot_be_renamed: `Este elemento no se puede renombrar porque está en la papelera. Para cambiar el nombre de este archivo, primero extráelo fuera de la misma.`,
+ jpeg_image: 'Imagen JPEG',
+ keep_in_taskbar: 'Fijar a la barra de tareas',
+ log_in: "Iniciar sesión",
+ log_out: 'Cerrar sesión',
+ move: 'Mover',
+ moving: "Moviendo",
+ my_websites: "Mis páginas web",
+ name: 'Nombre',
+ name_cannot_be_empty: 'El nombre no puede estar vacío.',
+ name_cannot_contain_double_period: "El nombre no puede ser el carácter '..'.",
+ name_cannot_contain_period: "El nombre no puede ser el carácter '.'.",
+ name_cannot_contain_slash: "El nombre no puede contener el carácter '/'.",
+ name_must_be_string: "El nombre debe ser una cadena de texto.",
+ name_too_long: `El nombre no puede tener más de %% caracteres.`,
+ new: 'Nuevo',
+ new_folder: 'Nueva carpeta',
+ new_password: "Nueva contraseña",
+ new_username: "Nuevo nombre de usuario",
+ no_dir_associated_with_site: 'No hay un directorio vinculado con esta dirección.',
+ no_websites_published: "No has publicado ninguna página web todavía.",
+ ok: 'OK',
+ open: "Abrir",
+ open_in_new_tab: "Abrir en una Nueva Pestaña",
+ open_in_new_window: "Abrir en una Nueva Ventana",
+ open_with: "Abrir Con",
+ password: "Contraseña",
+ password_changed: "Contraseña cambiada.",
+ passwords_do_not_match: '`Nueva Contraseña` y `Confirmar Nueva Contraseña` no coincide.',
+ paste: 'Pegar',
+ paste_into_folder: "Pegar en la Carpeta",
+ pick_name_for_website: "Escoge un nombre para tu página web:",
+ picture: "Imagen",
+ powered_by_puter_js: `Creado por
Puter.js`,
+ preparing: "Preparando...",
+ preparing_for_upload: "Preparando para la subida...",
+ properties: "Propiedades",
+ publish: "Publicar",
+ publish_as_website: 'Publicar como página web',
+ recent: "Reciente",
+ recover_password: "Recuperar Contraseña",
+ refer_friends_c2a: "Consigue 1 GB por cada amigo que cree y confirme una cuenta en Puter ¡Tu amigo recibirá 1GB también!",
+ refer_friends_social_media_c2a: `¡Consigue 1 GB de almacenamiento gratuito en Puter.com!`,
+ refresh: 'Refrescar',
+ release_address_confirmation: `¿Estás seguro de liberar esta dirección?`,
+ remove_from_taskbar:'Eliminar de la barra de tareas',
+ rename: 'Renombrar',
+ repeat: 'Repetir',
+ resend_confirmation_code: "Reenviar Código de Confirmación",
+ restore: "Restaurar",
+ save_account_to_get_copy_link: "Por favor, crea una cuenta para continuar.",
+ save_account_to_publish: 'Por favor, crea una cuenta para continuar.',
+ save_session_c2a: 'Crea una cuenta para guardar tu sesión actual y evitar así perder tu trabajo.',
+ scan_qr_c2a: 'Escanea el código de debajo e inicia sesión desde otros dispositivos',
+ select: "Seleccionar",
+ select_color: 'Seleccionar color…',
+ send: "Enviar",
+ send_password_recovery_email: "Enviar la contraseña al correo de recuperación",
+ session_saved: "Gracias por crear una cuenta. La sesión ha sido guardada.",
+ set_new_password: "Establecer una nueva contraseña",
+ share_to: "Compartir con",
+ show_all_windows: "Mostrar todas las ventanas",
+ show_hidden: 'Mostrar ocultos',
+ sign_in_with_puter: "Inicia sesión con Puter",
+ sign_up: "Registrarse",
+ signing_in: "Registrándose…",
+ size: 'Tamaño',
+ sort_by: 'Ordenar Por',
+ start: 'Inicio',
+ taking_longer_than_usual: 'Tardando un poco más de lo usual. Por favor, espere...',
+ text_document: 'Documento de Texto',
+ tos_fineprint: `Pulsando sobre 'Crear una cuenta gratuita' aceptas los
términos del servicio de Puter y
la política de privacidad.`,
+ trash: 'Papelera',
+ type: 'Tipo',
+ undo: 'Deshacer',
+ unzip: "Descomprimir",
+ upload: 'Subir',
+ upload_here: 'Subir aquí',
+ username: "Nombre de usuario",
+ username_changed: 'Nombre de usuario actualizado correctamente.',
+ versions: "Versiones",
+ yes_release_it: 'Sí, liberar',
+ you_have_been_referred_to_puter_by_a_friend: "¡Has sido invitado a Puter por un amigo!",
+ zip: "Comprimir en Zip",
+ }
+};
+
+export default es;
\ No newline at end of file
diff --git a/src/i18n/translations/hy.js b/src/i18n/translations/hy.js
new file mode 100644
index 00000000..8a55a73a
--- /dev/null
+++ b/src/i18n/translations/hy.js
@@ -0,0 +1,148 @@
+const hy = {
+ name: "Հայերեն",
+ code: "hy",
+ dictionary: {
+ access_granted_to: "Մուտքը տրված է՝",
+ add_existing_account: "Ավելացնել առկա հաշիվ",
+ all_fields_required: "Բոլոր դաշտերը պահանջվում են",
+ apply: "Կիրառել",
+ ascending: "Աճման կարգով",
+ background: "Ֆոն",
+ browse: "Թերթել",
+ cancel: "Չեղարկել",
+ center: "Կենտրոն",
+ change_desktop_background: "Փոխել աշխատասեղանի ֆոնը",
+ change_language: "Փոխել լեզուն",
+ change_password: "Փոխել գաղտնաբառը",
+ change_username: "Փոխել օգտանունը",
+ close_all_windows: "Փակել բոլոր պատուհանները",
+ color: "Գույն",
+ confirm_account_for_free_referral_storage_c2a: "Ստեղծեք հաշիվ և հաստատեք ձեր էլ․ հասցեն 1 ԳԲ անվճար պահեստ ստանալու համար: Ձեր ընկերը նույնպես կստանա 1 ԳԲ անվճար պահեստ:",
+ confirm_new_password: "Հաստատել նոր գաղտնաբառը",
+ contact_us: "Հետադարձ կապ",
+ contain: "Պարունակել",
+ continue: "Շարունակել",
+ copy: "Պատճենել",
+ copy_link: "Պատճենել հղումը",
+ copying: "Պատճենվում է",
+ cover: "Ծածկել",
+ create_account: "Ստեղծել հաշիվ",
+ create_free_account: "Ստեղծել անվճար հաշիվ",
+ create_shortcut: "Ստեղծել դյուրանցում",
+ current_password: "Ներկայիս գաղտնաբառ",
+ cut: "Կտրել",
+ date_modified: "Փոփոխման ամսապիվ",
+ delete: "Ջնջել",
+ delete_permanently: "Ընդմիշտ ջնջել",
+ deploy_as_app: "Տեղադրել որպես հավելված",
+ descending: "Նվազման կարգով",
+ desktop_background_fit: "Հարմարեցնել",
+ dir_published_as_website: "%strong% հրապարակվել է",
+ disassociate_dir: "Անջատել պանակը",
+ download: "Ներբեռնել",
+ downloading: "Ներբեռնում է",
+ email: "Էլեկտրոնային հասցե",
+ email_or_username: "Էլ․ հասցե կամ օգտանուն",
+ empty_trash: "Դատարկել աղբամանը",
+ empty_trash_confirmation: "Իսկապե՞ս ուզում եք ընդմիշտ ջնջել աղբարկղում գտնվող տարրերը:",
+ emptying_trash: "Աղբամանը դատարկվում է…",
+ feedback: "Հետադարձ կապ",
+ feedback_c2a: "Խնդրում ենք օգտագործել ստորև բերված ձևը ձեր կարծիքի, մեկնաբանությունների և վրիպակների մասին զեկուցելու համար:",
+ feedback_sent_confirmation: "Շնորհակալություն մեզ հետ կապնվելու համար: Եթե ձեր հաշվի հետ կապված էլ. հասցե ունեք, հնարավորինս շուտ կպատասխանեք ձեզ:",
+ forgot_pass_c2a: "Մոռացե՞լ եք գաղտնաբառը",
+ from: "Ումից՝",
+ general: "Ընդհանուր",
+ get_a_copy_of_on_puter: "Ստանալ '%%'-ի պատճենը Puter.com-ում:",
+ get_copy_link: "Ստանալ պատճենված հղումը",
+ hide_all_windows: "Թաքցնել բոլոր պատուհանները",
+ html_document: "HTML նիշք",
+ image: "Պատկեր",
+ invite_link: "Հրավերի հղում",
+ items_in_trash_cannot_be_renamed: "Այս տարրը չի կարող վերանվանվել, քանի որ այն աղբարկղում է: Այս տարրը վերանվանելու համար նախ տեղափոխեք այն աղբարկղից:",
+ jpeg_image: "JPEG նիշք",
+ keep_in_taskbar: "Պահպանել խնդրագոտում",
+ log_in: "Մուտք գործել",
+ log_out: "Դուրս գալ",
+ move: "Տեղափոխել",
+ moving: "Տեղափոխվում է",
+ my_websites: "Իմ կայքերը",
+ name: "Անուն",
+ name_cannot_be_empty: "Անվան դաշտը չի կառող լինել դատարկ։",
+ name_cannot_contain_double_period: "Անունը չի կարող լինել '..' նիշը։",
+ name_cannot_contain_period: "Անունը չի կարող պարունակել '.' նիշը։",
+ name_cannot_contain_slash: "Անունը չի կարող պարունակել '/' նիշը։",
+ name_must_be_string: "Անունը կարող է լինել միայն տող:",
+ name_too_long: "Անունը չի կարող լինել ավելի քան %% նիշ:",
+ new: "Նոր",
+ new_folder: "Նոր պանակ",
+ new_password: "Նոր գաղտնաբառ",
+ new_username: "Նոր օգտանուն",
+ no_dir_associated_with_site: "Այս հասցեի հետ կապված պանակ չկա:",
+ no_websites_published: "Դուք դեռ ոչ մի կայք չեք հրապարակել։",
+ ok: "Լավ",
+ open: "Բացել",
+ open_in_new_tab: "Բացել նոր ներդիրով",
+ open_in_new_window: "Բացել նոր պատուհանում",
+ open_with: "Բացել հավելվածով",
+ password: "Գաղտնաբառ",
+ password_changed: "Գաղտնաբառը փոփոխված է",
+ passwords_do_not_match: "«Նոր գաղտնաբառ» և «Հաստատել նոր գաղտնաբառը» դաշտերը չեն համընկնում:",
+ paste: "Կպցնել",
+ paste_into_folder: "Տեղադրել պանակում",
+ pick_name_for_website: "Ընտրել անուն ձեր կայքի համար",
+ picture: "Նկար",
+ powered_by_puter_js: `Աջակցվում է
Puter.js-ի կողմից`,
+ preparing: "Պատրաստվում է...",
+ preparing_for_upload: "Պատրաստվում է վերբեռնել...",
+ properties: "Հատկություններ",
+ publish: "Հրապարակել",
+ publish_as_website: "Հրապարակել որպես կայք",
+ recent: "Վերջին",
+ recover_password: "Վերականգնել գաղտնաբառը",
+ refer_friends_c2a: "Ստացեք 1 ԳԲ Փութերում յուրաքանչյուր հաշիվ ստեղծող և այն հաստատող ընկերոջ համար: Ձեր ընկերը նույնպես կստանա 1 ԳԲ պահեստ:",
+ refer_friends_social_media_c2a: "Ստացեք 1 ԳԲ անվճար պահեստ Puter.com-ում:",
+ refresh: "Թարմացնել",
+ release_address_confirmation: "Իսկապե՞ս ուզում եք ջնջել այս հասցեն:",
+ remove_from_taskbar: "Հանել խնդրագոտուց",
+ rename: "Վերանվանել",
+ repeat: "Կրկնել",
+ resend_confirmation_code: "Նորից ուղարկել հաստատման կոդը",
+ restore: "Վերականգնել",
+ save_account_to_get_copy_link: "Շարունակելու համար խնդրում ենք ստեղծել հաշիվ:",
+ save_account_to_publish: "Շարունակելու համար խնդրում ենք ստեղծել հաշիվ:",
+ save_session_c2a: "Ստեղծեք հաշիվ՝ ձեր ընթացիկ աշխատաշրջանը պահպանելու և աշխատանքը չկորցնելու համար:",
+ scan_qr_c2a: "Սկանավորեք ստորև նշված կոդը՝ այլ սարքերից այս աշխատաշրջան մուտք գործելու համար",
+ select: "Ընտրել",
+ select_color: "Ընտրել գույն…",
+ send: "Ուղարկել",
+ send_password_recovery_email: "Ուղարկել գաղտնաբառի վերականգնման էլ․փոստի նամակ",
+ session_saved: "Շնորհակալություն հաշիվ ստեղծելու համար: Այս աշխատաշրջանը պահպանվել է:",
+ set_new_password: "Սահմանել նոր գաղտնաբառ",
+ share_to: "Տարածել",
+ show_all_windows: "Ցույց տալ բոլոր պատուհանները",
+ show_hidden: "Ցույց տալ թաքնված տարրերը",
+ sign_in_with_puter: "Մուտք գործել Փութերի միջոցով",
+ sign_up: "Գրանցվել",
+ signing_in: "Մուտք է գործում",
+ size: "Չափ",
+ sort_by: "Տեսակավորել ըստ՝",
+ start: "Սկսել",
+ taking_longer_than_usual: "Սովորականից մի փոքր ավելի երկար է տևում: Խնդրում ենք սպասել...",
+ text_document: "Text նիշք",
+ tos_fineprint: `Սեղմելով «Ստեղծել անվճար հաշիվ»՝ դուք համաձայնում եք Փութերի
ծառայությունների պայմաններին և
գաղտնիության քաղաքականությանը:`,
+ trash: "Աղբաման",
+ type: "Տեսակ",
+ undo: "Հետարկել",
+ unzip: "Դուրս բերել",
+ upload: "Վերբեռնել",
+ upload_here: "Վերբեռնել այստեղ",
+ username: "Օգտանուն",
+ username_changed: "Օգտանունը հաջողությամբ թարմացվել է:",
+ versions: "Տարբերակներ",
+ yes_release_it: "Այո, ջնջել",
+ you_have_been_referred_to_puter_by_a_friend: "Դուք ուղղորդվել եք Փութեր ձեր ընկերոջ կողմից:",
+ zip: "Սեղմել ZIP նիշքի",
+ },
+};
+
+export default hy;
diff --git a/src/i18n/translations/nb.js b/src/i18n/translations/nb.js
index d4e389ea..dc173ed2 100644
--- a/src/i18n/translations/nb.js
+++ b/src/i18n/translations/nb.js
@@ -16,8 +16,12 @@ const nb = {
change_password: "Endre passord",
change_username: "Endre brukernavn",
close_all_windows: "Lukk alle vinduer",
+ close_all_windows_and_log_out: 'Lukk alle vinduer og logg ut',
color: "Farge",
confirm_account_for_free_referral_storage_c2a: "Opprett en konto og bekreft e-postadressen din for å motta 1 GB gratis lagringsplass. Din venn vil også få 1 GB gratis lagringsplass.",
+ confirm_delete_multiple_items: 'Er du sikker på at du vil slette disse elementene permanent?',
+ confirm_delete_single_item: 'Er du sikker på at du vil slette dette elemente permanent?',
+ confirm_open_apps_log_out: 'Du har åpene apper, er du sikker på at du vil logge ut?',
confirm_new_password: "Bekreft nytt passord",
contact_us: "Kontakt oss",
contain: "Inneholde",
@@ -40,6 +44,7 @@ const nb = {
dir_published_as_website: "%strong% er publisert på:",
disassociate_dir: "Fjern tilknytning fra mappe",
download: "Last ned",
+ download_file: 'Last ned fil',
downloading: "Laster ned",
email: "E-post",
email_or_username: "E-post eller brukernavn",
@@ -58,10 +63,13 @@ const nb = {
html_document: "HTML-dokument",
image: "Bilde",
invite_link: "Invitasjonslenke",
+ item: 'element',
items_in_trash_cannot_be_renamed: "Dette elementet kan ikke omdøpes fordi det er i papirkurven. For å omdøpe dette elementet, dra det først ut av papirkurven.",
jpeg_image: "JPEG-bilde",
keep_in_taskbar: "Behold i oppgavelinjen",
+ loading: 'Laster',
log_in: "Logg inn",
+ log_into_another_account_anyway: 'Logg inn på en annen bruker uansett',
log_out: "Logg ut",
move: "Flytt",
moving: "Flytter",
@@ -77,6 +85,7 @@ const nb = {
new_folder: "Ny mappe",
new_password: "Nytt passord",
new_username: "Nytt brukernavn",
+ no: 'Nei',
no_dir_associated_with_site: "Ingen mappe er tilknyttet denne adressen.",
no_websites_published: "Du har ikke publisert noen nettsteder ennå.",
ok: "OK",
@@ -95,8 +104,10 @@ const nb = {
preparing: "Forbereder...",
preparing_for_upload: "Forbereder opplasting...",
properties: "Egenskaper",
+ proceed_to_login: 'Fortsett til innlogging',
publish: "Publiser",
publish_as_website: "Publiser som nettsted",
+ plural_suffix: 'er',
recent: "Nylig",
recover_password: "Gjenopprett passord",
refer_friends_c2a: "Få 1 GB for hver venn som oppretter og bekrefter en konto på Puter. Vennen din får også 1 GB.",
@@ -106,13 +117,18 @@ const nb = {
remove_from_taskbar: "Fjern fra oppgavelinjen",
rename: "Gi nytt navn",
repeat: "Gjenta",
+ replace: 'Erstatt',
+ replace_all: 'Erstatt alle',
resend_confirmation_code: "Send bekreftelseskoden på nytt",
restore: "Gjenopprett",
+ save_account: 'Lagre konto',
save_account_to_get_copy_link: "Vennligst opprett en konto for å fortsette.",
save_account_to_publish: "Vennligst opprett en konto for å fortsette.",
+ save_session: 'Lagre økt',
save_session_c2a: "Opprett en konto for å lagre gjeldende økt og unngå å miste arbeidet ditt.",
scan_qr_c2a: "Skann koden nedenfor for å logge inn på denne økten fra andre enheter",
select: "Velg",
+ selected: 'valgt',
select_color: "Velg farge…",
send: "Send",
send_password_recovery_email: "Send e-post for gjenoppretting av passord",
@@ -125,6 +141,7 @@ const nb = {
sign_up: "Registrer deg",
signing_in: "Logger inn…",
size: "Størrelse",
+ skip: 'Hopp over',
sort_by: "Sorter etter",
start: "Start",
taking_longer_than_usual: "Dette tar litt lenger tid enn vanlig. Vennligst vent...",
@@ -140,6 +157,7 @@ const nb = {
username_changed: "Brukernavn oppdatert.",
versions: "Versjoner",
yes_release_it: "Ja, frigi den",
+ yes: 'ja',
you_have_been_referred_to_puter_by_a_friend: "Du har blitt henvist til Puter av en venn!",
zip: "Zip"
}
diff --git a/src/i18n/translations/translations.js b/src/i18n/translations/translations.js
index 665e8b52..b40ec154 100644
--- a/src/i18n/translations/translations.js
+++ b/src/i18n/translations/translations.js
@@ -1,10 +1,13 @@
+import ar from './ar.js';
import bn from './bn.js'
import da from './da.js';
import de from './de.js'
import en from './en.js';
+import es from './es.js';
import fa from './fa.js';
import fi from './fi.js';
import fr from './fr.js';
+import hy from './hy.js';
import it from './it.js';
import ko from './ko.js';
import nb from './nb.js';
@@ -12,15 +15,19 @@ import nn from './nn.js';
import ro from './ro.js';
import sv from './sv.js';
import zh from './zh.js';
+import emoji from './emoji.js';
export default {
+ ar,
bn,
da,
de,
en,
+ es,
fa,
fi,
fr,
+ hy,
it,
ko,
nb,
@@ -28,4 +35,5 @@ export default {
ro,
sv,
zh,
+ emoji
};
\ No newline at end of file
diff --git a/src/initgui.js b/src/initgui.js
index b01bd6f1..b59307b7 100644
--- a/src/initgui.js
+++ b/src/initgui.js
@@ -46,9 +46,6 @@ window.initgui = async function(){
if(window.api_origin && puter.APIOrigin !== window.api_origin)
puter.setAPIOrigin(api_origin);
- // determine locale
- window.locale = window.user_preferences.language;
-
// Checks the type of device the user is on (phone, tablet, or desktop).
// Depending on the device type, it sets a class attribute on the body tag
// to style or script the page differently for each device type.
@@ -530,12 +527,12 @@ window.initgui = async function(){
message: `
${html_encode(err.entry_name)} already exists.`,
buttons:[
{
- label: 'Replace',
+ label: i18n('replace'),
value: 'replace',
type: 'primary',
},
{
- label: 'Cancel',
+ label: i18n('cancel'),
value: 'cancel',
},
],
@@ -887,12 +884,12 @@ window.initgui = async function(){
message: `
${html_encode(err.entry_name)} already exists.`,
buttons:[
{
- label: 'Replace',
+ label: i18n('replace'),
value: 'replace',
type: 'primary',
},
{
- label: 'Cancel',
+ label: i18n('cancel'),
value: 'cancel',
},
],
@@ -1328,14 +1325,14 @@ window.initgui = async function(){
let $selected_items = $(active_element).closest(`.item-container`).find(`.item-selected`);
if($selected_items.length > 0){
const alert_resp = await UIAlert({
- message: `Are you sure you want to permanently delete these items?`,
+ message: i18n('confirm_delete_multiple_items'),
buttons:[
{
- label: 'Delete',
+ label: i18n('delete'),
type: 'primary',
},
{
- label: 'Cancel'
+ label: i18n('cancel')
},
]
})
@@ -1357,14 +1354,14 @@ window.initgui = async function(){
let $selected_items = $(active_element).closest(`.item-container`).find(`.item-selected[data-path^="${trash_path + '/'}"]`);
if($selected_items.length > 0){
const alert_resp = await UIAlert({
- message: `Are you sure you want to permanently delete these items?`,
+ message: i18n('confirm_delete_multiple_items'),
buttons:[
{
- label: 'Delete',
+ label: i18n('delete'),
type: 'primary',
},
{
- label: 'Cancel'
+ label: i18n('cancel')
},
]
})
@@ -1878,26 +1875,28 @@ window.initgui = async function(){
message: `
Save account before logging out!You are using a temporary account and logging out will erase all your data.
`,
buttons:[
{
- label: 'Save Account',
+ label: i18n('save_account'),
+ value: 'save_account',
type: 'primary',
},
{
- label: 'Log Out',
+ label: i18n('log_out'),
+ value: 'log_out',
type: 'danger',
},
{
- label: 'Cancel',
+ label: i18n('cancel'),
},
]
})
- if(alert_resp === 'Save Account'){
+ if(alert_resp === 'save_account'){
let saved = await UIWindowSaveAccount({
send_confirmation_code: false,
default_username: window.user.username
});
if(saved)
logout();
- }else if (alert_resp === 'Log Out'){
+ }else if (alert_resp === 'log_out'){
logout();
}
else{