diff --git a/src/IPC.js b/src/IPC.js index 5520ee00..d1b5cb82 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,19 @@ 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'), + value: '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 8de879c9..ccb2121e 100644 --- a/src/UI/UIDesktop.js +++ b/src/UI/UIDesktop.js @@ -1223,18 +1223,19 @@ $(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: `

${i18n('confirm_open_apps_log_out')}

`, buttons:[ { - label: 'Close Windows and Log Out', + label: i18n('close_all_Windows_and_log_out'), + value: 'close_and_log_out', type: 'primary', }, { - label: 'Cancel' + label: i18n('cancel') }, ] }) - if(alert_resp === 'Close Windows and Log Out') + if(alert_resp === 'close_and_log_out') logout(); } // no open windows @@ -1311,16 +1312,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 102a0205..00b10e77 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 += ``; @@ -854,14 +854,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') }, ] }) @@ -1272,14 +1272,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: i18n('confirm_delete_single_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 e1d80a17..07b0d8e4 100644 --- a/src/UI/UIWindow.js +++ b/src/UI/UIWindow.js @@ -314,7 +314,7 @@ async function UIWindow(options) { // Loading spinner h += `
`; h +=`circle anim`; - h += `

Loading...

`; + h += `

${i18n('loading')}...

`; h += `
`; } @@ -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; } @@ -2920,7 +2920,7 @@ window.scale_window = (el_window)=>{ window.update_explorer_footer_item_count = function(el_window){ //update dir count in explorer footer let item_count = $(el_window).find('.item').length; - $(el_window).find('.explorer-footer .explorer-footer-item-count').html(item_count + ' item' + (item_count == 0 || item_count > 1 ? 's' : '')); + $(el_window).find('.explorer-footer .explorer-footer-item-count').html(item_count + ` ${i18n('item')}` + (item_count == 0 || item_count > 1 ? `${i18n('plural_suffix')}` : '')); } window.update_explorer_footer_selected_items_count = function(el_window){ @@ -2928,7 +2928,7 @@ window.update_explorer_footer_selected_items_count = function(el_window){ let item_count = $(el_window).find('.item-selected').length; if(item_count > 0){ $(el_window).find('.explorer-footer-seperator, .explorer-footer-selected-items-count').show(); - $(el_window).find('.explorer-footer .explorer-footer-selected-items-count').html(item_count + ' item' + (item_count == 0 || item_count > 1 ? 's' : '') + ' selected'); + $(el_window).find('.explorer-footer .explorer-footer-selected-items-count').html(item_count + ` ${i18n('item')}` + (item_count == 0 || item_count > 1 ? `${i18n('plural_suffix')}` : '') + ` ${i18n('selected')}`); }else{ $(el_window).find('.explorer-footer-seperator, .explorer-footer-selected-items-count').hide(); } diff --git a/src/UI/UIWindowDownloadProgress.js b/src/UI/UIWindowDownloadProgress.js index 5503a5bf..a9f3159a 100644 --- a/src/UI/UIWindowDownloadProgress.js +++ b/src/UI/UIWindowDownloadProgress.js @@ -29,7 +29,7 @@ async function UIWindowDownloadProgress(options){ // Progress report h +=`
`; // msg - h += `${i18n('downloading')} ${options.item_name ?? ''}`; + h += `${i18n('downloading')}...${options.item_name ?? ''}`; h += `
`; // Progress h += `
`; 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 f275342d..8738632b 100644 --- a/src/helpers.js +++ b/src/helpers.js @@ -1031,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', }, @@ -1565,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; } } @@ -1662,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; } } @@ -2208,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; @@ -2586,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; } } @@ -2973,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/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/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/initgui.js b/src/initgui.js index 5b0171b6..b59307b7 100644 --- a/src/initgui.js +++ b/src/initgui.js @@ -527,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', }, ], @@ -884,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', }, ], @@ -1325,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') }, ] }) @@ -1354,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') }, ] }) @@ -1875,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{