From 592a30ca6de368e419d7b4582d420b8e3d39175b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sondre=20Nj=C3=A5stad?= Date: Mon, 18 Mar 2024 21:07:29 +0100 Subject: [PATCH] Translation WIP --- src/IPC.js | 10 +++++----- src/UI/UIAlert.js | 2 +- src/UI/UIDesktop.js | 14 +++++++------- src/UI/UIItem.js | 14 +++++++------- src/UI/UIPrompt.js | 4 ++-- src/UI/UITaskbar.js | 2 +- src/UI/UIWindow.js | 8 ++++---- src/UI/UIWindowMyWebsites.js | 2 +- src/UI/UIWindowNewPassword.js | 2 +- src/helpers.js | 36 +++++++++++++++++------------------ src/i18n/translations/en.js | 14 ++++++++++++++ src/i18n/translations/nb.js | 14 ++++++++++++++ src/initgui.js | 26 ++++++++++++------------- 13 files changed, 88 insertions(+), 60 deletions(-) diff --git a/src/IPC.js b/src/IPC.js index 5520ee00..2800e36c 100644 --- a/src/IPC.js +++ b/src/IPC.js @@ -881,12 +881,12 @@ window.addEventListener('message', async (event) => { 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', }, ], @@ -1032,18 +1032,18 @@ window.addEventListener('message', async (event) => { message: `${html_encode(err.entry_name)} already exists.`, buttons:[ { - label: 'Replace', + label: i18n('replace'), type: 'primary', }, { - label: 'Cancel' + label: i18n('cancel') }, ], parent_uuid: event.data.appInstanceID, }) if(alert_resp === 'Replace'){ overwrite = true; - }else if(alert_resp === 'Cancel'){ + }else if(alert_resp === 'cancel'){ item_with_same_name_already_exists = false; } }else{ diff --git a/src/UI/UIAlert.js b/src/UI/UIAlert.js index 558f274f..83b98f36 100644 --- a/src/UI/UIAlert.js +++ b/src/UI/UIAlert.js @@ -37,7 +37,7 @@ function UIAlert(options){ // provide an 'OK' button if no buttons are provided if(!options.buttons || options.buttons.length === 0){ options.buttons = [ - {label: 'OK', value: true, type: 'primary'} + {label: i18n('ok'), value: true, type: 'primary'} ] } diff --git a/src/UI/UIDesktop.js b/src/UI/UIDesktop.js index 642f0b45..57bd2336 100644 --- a/src/UI/UIDesktop.js +++ b/src/UI/UIDesktop.js @@ -1197,18 +1197,18 @@ $(document).on('click', '.user-options-menu-btn', async function(e){ // see if there are any open windows, if yes notify user if($('.window-app').length > 0){ const alert_resp = await UIAlert({ - message: `

You have open apps. Are you sure you want to log out?

`, + message: `

`, buttons:[ { - label: 'Close Windows and Log Out', + label: i18n('close_all_Windows_and_log_out'), type: 'primary', }, { - label: 'Cancel' + label: i18n('cancel') }, ] }) - if(alert_resp === 'Close Windows and Log Out') + if(alert_resp === i18n('close_all_Windows_and_log_out')) logout(); } // no open windows @@ -1285,16 +1285,16 @@ $(document).on('click', '.user-options-login-btn', async function(e){ message: `Save session before exiting!

You are in a temporary session and logging into another account will erase all data in your current session.

`, buttons:[ { - label: 'Save session', + label: i18n('save_session'), value: 'save-session', type: 'primary', }, { - label: 'Log into another account anyway', + label: i18n('log_into_another_account_anyway'), value: 'login', }, { - label: 'Cancel' + label: i18n('cancel') }, ] }) diff --git a/src/UI/UIItem.js b/src/UI/UIItem.js index 183fbd5b..30ad524c 100644 --- a/src/UI/UIItem.js +++ b/src/UI/UIItem.js @@ -159,7 +159,7 @@ function UIItem(options){ h += ``; // name - h += `${html_encode(truncate_filename(options.name, TRUNCATE_LENGTH)).replaceAll(' ', ' ')}` + h += `${options.is_trash ? i18n('trash') : html_encode(truncate_filename(options.name, TRUNCATE_LENGTH)).replaceAll(' ', ' ')}` // name editor h += `` h += ``; @@ -827,14 +827,14 @@ function UIItem(options){ html: i18n('delete_permanently'), onClick: async function(){ 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') }, ] }) @@ -1245,14 +1245,14 @@ function UIItem(options){ html: i18n('delete_permanently'), onClick: async function(){ const alert_resp = await UIAlert({ - message: `Are you sure you want to permanently delete this item?`, + message: ` you want to permanently delete this item?`, buttons:[ { - label: 'Delete', + label: i18n('delete'), type: 'primary', }, { - label: 'Cancel' + label: i18n('cancel') }, ] }) diff --git a/src/UI/UIPrompt.js b/src/UI/UIPrompt.js index 333234ae..f30f43a8 100644 --- a/src/UI/UIPrompt.js +++ b/src/UI/UIPrompt.js @@ -37,7 +37,7 @@ function UIPrompt(options){ // provide an 'OK' button if no buttons are provided if(!options.buttons || options.buttons.length === 0){ options.buttons = [ - {label: i18n('Cancel'), value: false, type: 'default'}, + {label: i18n('cancel'), value: false, type: 'default'}, {label: i18n('OK'), value: true, type: 'primary'}, ] } @@ -52,7 +52,7 @@ function UIPrompt(options){ // buttons if(options.buttons && options.buttons.length > 0){ h += `
`; - h += ``; + h += ``; h += ``; h += `
`; } diff --git a/src/UI/UITaskbar.js b/src/UI/UITaskbar.js index 9c2a5ac6..b76cb899 100644 --- a/src/UI/UITaskbar.js +++ b/src/UI/UITaskbar.js @@ -217,7 +217,7 @@ async function UITaskbar(options){ UITaskbarItem({ icon: trash.is_empty ? window.icons['trash.svg'] : window.icons['trash-full.svg'], app: 'trash', - name: 'Trash', + name: `${i18n('trash')}`, sortable: false, keep_in_taskbar: true, lock_keep_in_taskbar: true, diff --git a/src/UI/UIWindow.js b/src/UI/UIWindow.js index f853aded..9b332bdb 100644 --- a/src/UI/UIWindow.js +++ b/src/UI/UIWindow.js @@ -2018,19 +2018,19 @@ async function UIWindow(options) { // Empty Trash // ------------------------------------------- { - html: "Empty Trash", + html: i18n('empty_trash'), disabled: false, onClick: async function(){ const alert_resp = await UIAlert({ message: i18n('empty_trash_confirmation'), buttons:[ { - label: 'Yes', + label: i18n('yes'), value: 'yes', type: 'primary', }, { - label: 'No', + label: i18n('no'), value: 'no', }, ] @@ -2517,7 +2517,7 @@ window.navbar_path = (abs_path)=>{ } let str = `${path_seperator_html}${html_encode(window.root_dirname)}`; for(let k=1; k${html_encode(dirs[k])}`; + str += `${path_seperator_html}${dirs[k] === 'Trash' ? i18n('trash') : html_encode(dirs[k])}`; } return str; } diff --git a/src/UI/UIWindowMyWebsites.js b/src/UI/UIWindowMyWebsites.js index 54397920..20d20c1a 100644 --- a/src/UI/UIWindowMyWebsites.js +++ b/src/UI/UIWindowMyWebsites.js @@ -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 03128b9e..fe45b1e8 100644 --- a/src/helpers.js +++ b/src/helpers.js @@ -1030,7 +1030,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', }, @@ -1562,9 +1562,9 @@ 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'}, + ... (clipboard.length > 1) ? [{label: i18n('replace_all')}] : [], + ... (clipboard.length > 1) ? [{label: i18n('skip')}] : [{label: i18n('cancel')}], ] }) if(alert_resp === 'Replace'){ @@ -1572,7 +1572,7 @@ window.copy_clipboard_items = async function(dest_path, dest_container_element){ }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; } } @@ -1659,9 +1659,9 @@ 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' }, + ... (el_items.length > 1) ? [{label: i18n('replace_all')}] : [], + ... (el_items.length > 1) ? [{label: i18n('skip')}] : [{label: i18n('cancel')}], ] }) if(alert_resp === 'Replace'){ @@ -1669,7 +1669,7 @@ window.copy_items = function(el_items, dest_path){ }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; } } @@ -2205,12 +2205,12 @@ 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'), type: 'primary', }, { - label: 'Cancel' + label: i18n('cancel') } ]) if(alert_resp === 'Download File'){ @@ -2583,9 +2583,9 @@ 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',}, + ... (el_items.length > 1) ? [{label: i18n('replace_all')}] : [], + ... (el_items.length > 1) ? [{label: i18n('skip')}] : [{label: i18n('cancel')}], ] }) if(alert_resp === 'Replace'){ @@ -2593,7 +2593,7 @@ window.move_items = async function(el_items, dest_path, is_undo = false){ }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; } } @@ -2970,15 +2970,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/translations/en.js b/src/i18n/translations/en.js index 74285690..343a7202 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?', + configm_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", @@ -62,6 +67,7 @@ const en = { jpeg_image: 'JPEG image', keep_in_taskbar: 'Keep in Taskbar', log_in: "Log In", + log_into_another_account_anyway: 'Log into another account anyway', log_out: 'Log Out', move: 'Move', moving: "Moving", @@ -77,6 +83,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,6 +101,7 @@ 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', @@ -106,10 +114,14 @@ 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", @@ -125,6 +137,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 +152,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/nb.js b/src/i18n/translations/nb.js index d4e389ea..8e9862db 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?', + configm_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", @@ -62,6 +67,7 @@ const nb = { jpeg_image: "JPEG-bilde", keep_in_taskbar: "Behold i oppgavelinjen", 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 +83,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,6 +102,7 @@ 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", recent: "Nylig", @@ -106,10 +114,14 @@ 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", @@ -125,6 +137,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 +153,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/initgui.js b/src/initgui.js index e66ad5b5..971cf2df 100644 --- a/src/initgui.js +++ b/src/initgui.js @@ -529,12 +529,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', }, ], @@ -885,12 +885,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', }, ], @@ -1326,14 +1326,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') }, ] }) @@ -1355,14 +1355,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') }, ] }) @@ -1876,15 +1876,15 @@ 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'), type: 'primary', }, { - label: 'Log Out', + label: i18n('log_out'), type: 'danger', }, { - label: 'Cancel', + label: i18n('cancel'), }, ] })