From 5183a825e627117714dc316986c44999eaf3619f Mon Sep 17 00:00:00 2001 From: Mohit Panjwani Date: Thu, 3 Mar 2022 20:39:44 +0530 Subject: [PATCH 1/6] New Crowdin updates (#815) * New translations en.json (Romanian) * New translations en.json (Slovak) * New translations en.json (Hindi) * New translations en.json (Latvian) * New translations en.json (Croatian) * New translations en.json (Persian) * New translations en.json (Indonesian) * New translations en.json (Portuguese, Brazilian) * New translations en.json (Vietnamese) * New translations en.json (Chinese Traditional) * New translations en.json (Turkish) * New translations en.json (Swedish) * New translations en.json (Slovenian) * New translations en.json (Russian) * New translations en.json (French) * New translations en.json (Portuguese) * New translations en.json (Polish) * New translations en.json (Dutch) * New translations en.json (Lithuanian) * New translations en.json (Japanese) * New translations en.json (Italian) * New translations en.json (Finnish) * New translations en.json (Greek) * New translations en.json (German) * New translations en.json (Czech) * New translations en.json (Arabic) * New translations en.json (Spanish) * New translations en.json (Serbian (Latin)) --- resources/scripts/locales/ar.json | 1 + resources/scripts/locales/cs.json | 1 + resources/scripts/locales/de.json | 1 + resources/scripts/locales/el.json | 1 + resources/scripts/locales/es.json | 1 + resources/scripts/locales/fa.json | 1 + resources/scripts/locales/fi.json | 1 + resources/scripts/locales/fr.json | 1 + resources/scripts/locales/hi.json | 1 + resources/scripts/locales/hr.json | 1 + resources/scripts/locales/id.json | 1 + resources/scripts/locales/it.json | 1 + resources/scripts/locales/ja.json | 1 + resources/scripts/locales/lt.json | 1 + resources/scripts/locales/lv.json | 1 + resources/scripts/locales/nl.json | 1 + resources/scripts/locales/pl.json | 1 + resources/scripts/locales/pt.json | 1 + resources/scripts/locales/ro.json | 1 + resources/scripts/locales/ru.json | 1 + resources/scripts/locales/sk.json | 1 + resources/scripts/locales/sl.json | 1 + resources/scripts/locales/sr.json | 1 + resources/scripts/locales/sv.json | 1 + resources/scripts/locales/tr.json | 1 + resources/scripts/locales/vi.json | 1 + resources/scripts/locales/zh.json | 1 + 27 files changed, 27 insertions(+) diff --git a/resources/scripts/locales/ar.json b/resources/scripts/locales/ar.json index a52680c9..d8eb7589 100644 --- a/resources/scripts/locales/ar.json +++ b/resources/scripts/locales/ar.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/cs.json b/resources/scripts/locales/cs.json index 40157379..9516fe64 100644 --- a/resources/scripts/locales/cs.json +++ b/resources/scripts/locales/cs.json @@ -526,6 +526,7 @@ "cloned_successfully": "Opakující se faktura úspěšně naklonována", "clone_invoice": "Naklonovat opakující se fakturu", "confirm_clone": "Tato opakující se faktura bude naklonována do nové opakující se faktury", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Název položky", "description": "Popis", diff --git a/resources/scripts/locales/de.json b/resources/scripts/locales/de.json index 15797cdd..31ba594e 100644 --- a/resources/scripts/locales/de.json +++ b/resources/scripts/locales/de.json @@ -526,6 +526,7 @@ "cloned_successfully": "Serienrechnung erfolgreich kopiert", "clone_invoice": "Serienrechnung kopieren", "confirm_clone": "Diese Serienrechnung wird in eine neue Serienrechnung kopiert", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Titel des Artikels", "description": "Beschreibung", diff --git a/resources/scripts/locales/el.json b/resources/scripts/locales/el.json index 74451ab5..9ca13e1a 100644 --- a/resources/scripts/locales/el.json +++ b/resources/scripts/locales/el.json @@ -526,6 +526,7 @@ "cloned_successfully": "Επαναλαμβανόμενο τιμολόγιο κλωνοποιήθηκε επιτυχής", "clone_invoice": "Δημιουργία Επαναλαμβανόμενου Τιμολογίου", "confirm_clone": "Αυτό το επαναλαμβανόμενο τιμολόγιο θα κλωνοποιηθεί σε ένα νέο επαναλαμβανόμενο τιμολόγιο", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Τίτλος Προϊόντος", "description": "Περιγραφή", diff --git a/resources/scripts/locales/es.json b/resources/scripts/locales/es.json index 1abab66e..591b2329 100644 --- a/resources/scripts/locales/es.json +++ b/resources/scripts/locales/es.json @@ -526,6 +526,7 @@ "cloned_successfully": "Factura recurrente clonada con éxito", "clone_invoice": "Clonar factura recurrente", "confirm_clone": "Esta factura recurrente será clonada en una nueva factura recurrente", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Título del artículo", "description": "Descripción", diff --git a/resources/scripts/locales/fa.json b/resources/scripts/locales/fa.json index 843e9adb..e87aba8a 100644 --- a/resources/scripts/locales/fa.json +++ b/resources/scripts/locales/fa.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/fi.json b/resources/scripts/locales/fi.json index 1632a936..fccc2bc6 100644 --- a/resources/scripts/locales/fi.json +++ b/resources/scripts/locales/fi.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/fr.json b/resources/scripts/locales/fr.json index d1816b7d..32f13358 100644 --- a/resources/scripts/locales/fr.json +++ b/resources/scripts/locales/fr.json @@ -526,6 +526,7 @@ "cloned_successfully": "Facture récurrente clonée", "clone_invoice": "Dupliquer", "confirm_clone": "Cette facture récurrente sera clonée dans une nouvelle facture récurrente", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Nom", "description": "Description", diff --git a/resources/scripts/locales/hi.json b/resources/scripts/locales/hi.json index 5229ea05..2ad144af 100644 --- a/resources/scripts/locales/hi.json +++ b/resources/scripts/locales/hi.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/hr.json b/resources/scripts/locales/hr.json index a4b9c49e..cc7da58b 100644 --- a/resources/scripts/locales/hr.json +++ b/resources/scripts/locales/hr.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/id.json b/resources/scripts/locales/id.json index 5520454f..6560d08d 100644 --- a/resources/scripts/locales/id.json +++ b/resources/scripts/locales/id.json @@ -526,6 +526,7 @@ "cloned_successfully": "Faktur Berulang berhasil digandakan", "clone_invoice": "Gandakan Faktur Berulang", "confirm_clone": "Faktur Berulang ini akan digandakan menjadi Faktur Berulang yang baru", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Judul item", "description": "Deskripsi", diff --git a/resources/scripts/locales/it.json b/resources/scripts/locales/it.json index 30c5411b..767abd42 100644 --- a/resources/scripts/locales/it.json +++ b/resources/scripts/locales/it.json @@ -526,6 +526,7 @@ "cloned_successfully": "Fattura copiata con successo", "clone_invoice": "Duplica Fattura Ricorrente", "confirm_clone": "Questa fattura ricorrente verrà clonata in una nuova fattura ricorrente", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Titolo Articolo", "description": "Descrizione", diff --git a/resources/scripts/locales/ja.json b/resources/scripts/locales/ja.json index 107db1a6..8b3313cf 100644 --- a/resources/scripts/locales/ja.json +++ b/resources/scripts/locales/ja.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/lt.json b/resources/scripts/locales/lt.json index 4e77664a..ad637127 100644 --- a/resources/scripts/locales/lt.json +++ b/resources/scripts/locales/lt.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/lv.json b/resources/scripts/locales/lv.json index 466deebb..ffc1ece6 100644 --- a/resources/scripts/locales/lv.json +++ b/resources/scripts/locales/lv.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/nl.json b/resources/scripts/locales/nl.json index b54eeab9..4ca4583b 100644 --- a/resources/scripts/locales/nl.json +++ b/resources/scripts/locales/nl.json @@ -526,6 +526,7 @@ "cloned_successfully": "Terugkerende factuur succesvol gekopieerd", "clone_invoice": "Kopieer periodieke factuur", "confirm_clone": "Deze periodieke factuur wordt gekopieerd naar een nieuwe periodieke factuur", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item titel", "description": "Beschrijving", diff --git a/resources/scripts/locales/pl.json b/resources/scripts/locales/pl.json index 001d9728..97cf2e7f 100644 --- a/resources/scripts/locales/pl.json +++ b/resources/scripts/locales/pl.json @@ -526,6 +526,7 @@ "cloned_successfully": "Faktura Cykliczna sklonowana pomyślnie", "clone_invoice": "Klonuj Fakturę Cykliczną", "confirm_clone": "Ta faktura cykliczna zostanie sklonowana do nowej faktury cyklicznej", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Tytuł pozycji", "description": "Opis", diff --git a/resources/scripts/locales/pt.json b/resources/scripts/locales/pt.json index 16fb4db3..5c224428 100644 --- a/resources/scripts/locales/pt.json +++ b/resources/scripts/locales/pt.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/ro.json b/resources/scripts/locales/ro.json index 5f0fddb6..8445b6b3 100644 --- a/resources/scripts/locales/ro.json +++ b/resources/scripts/locales/ro.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/ru.json b/resources/scripts/locales/ru.json index e037cf6a..b83779c6 100644 --- a/resources/scripts/locales/ru.json +++ b/resources/scripts/locales/ru.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/sk.json b/resources/scripts/locales/sk.json index f2e0f9b5..0e036b32 100644 --- a/resources/scripts/locales/sk.json +++ b/resources/scripts/locales/sk.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/sl.json b/resources/scripts/locales/sl.json index 2013b288..094feb90 100644 --- a/resources/scripts/locales/sl.json +++ b/resources/scripts/locales/sl.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/sr.json b/resources/scripts/locales/sr.json index 2e62717b..f0d198f1 100644 --- a/resources/scripts/locales/sr.json +++ b/resources/scripts/locales/sr.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/sv.json b/resources/scripts/locales/sv.json index eb54f4c8..4ecd968e 100644 --- a/resources/scripts/locales/sv.json +++ b/resources/scripts/locales/sv.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/tr.json b/resources/scripts/locales/tr.json index d0323445..65932a41 100644 --- a/resources/scripts/locales/tr.json +++ b/resources/scripts/locales/tr.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/vi.json b/resources/scripts/locales/vi.json index c40938b6..a7cb1a3a 100644 --- a/resources/scripts/locales/vi.json +++ b/resources/scripts/locales/vi.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", diff --git a/resources/scripts/locales/zh.json b/resources/scripts/locales/zh.json index c63bba96..0767a61d 100644 --- a/resources/scripts/locales/zh.json +++ b/resources/scripts/locales/zh.json @@ -526,6 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", + "add_customer_email": "Please add an email address for this customer to send invoices automatically.", "item": { "title": "Item Title", "description": "Description", From 6552c4edd6fa02bdce91abe7df144f9b65bd01bf Mon Sep 17 00:00:00 2001 From: Mohit Panjwani Date: Thu, 3 Mar 2022 23:10:11 +0530 Subject: [PATCH 2/6] New translations en.json (Finnish) (#816) --- resources/scripts/locales/fi.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/scripts/locales/fi.json b/resources/scripts/locales/fi.json index fccc2bc6..1d04524e 100644 --- a/resources/scripts/locales/fi.json +++ b/resources/scripts/locales/fi.json @@ -526,7 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", - "add_customer_email": "Please add an email address for this customer to send invoices automatically.", + "add_customer_email": "Ole hyvä ja lisää sähköpostiosoite tälle asiakkaalle voidaksesi lähettää laskut automaattisesti.", "item": { "title": "Item Title", "description": "Description", From c07e44520a97c2bed54918996f61fa7b402c426e Mon Sep 17 00:00:00 2001 From: David Wheatley Date: Fri, 4 Mar 2022 03:51:17 +0100 Subject: [PATCH 3/6] typo: somthing -> something (#820) --- resources/scripts/components/notifications/NotificationItem.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/scripts/components/notifications/NotificationItem.vue b/resources/scripts/components/notifications/NotificationItem.vue index 246b7c0b..2a61b6ef 100644 --- a/resources/scripts/components/notifications/NotificationItem.vue +++ b/resources/scripts/components/notifications/NotificationItem.vue @@ -83,7 +83,7 @@ ? notification.message : success ? 'Successful' - : 'Somthing went wrong' + : 'Something went wrong' }}

From f6771dafd321ef213c74ef2d3379cb72fc02f28c Mon Sep 17 00:00:00 2001 From: asift798 Date: Fri, 4 Mar 2022 15:00:56 +0530 Subject: [PATCH 4/6] fixed search filter is not working --- .../scripts/admin/components/modal-components/BackupModal.vue | 2 +- .../components/modal-components/ExchangeRateProviderModal.vue | 4 +++- .../scripts/admin/components/modal-components/ItemModal.vue | 4 ++-- .../admin/components/modal-components/disks/DoSpacesDisk.vue | 1 + .../admin/views/installation/Step8CompanyPreferences.vue | 4 ++-- resources/scripts/admin/views/settings/AccountSetting.vue | 2 +- resources/scripts/admin/views/settings/BackupSetting.vue | 2 +- resources/scripts/admin/views/settings/PreferencesSetting.vue | 4 ++-- resources/scripts/admin/views/users/Create.vue | 1 + resources/scripts/components/base/BaseItemSelect.vue | 2 +- 10 files changed, 15 insertions(+), 11 deletions(-) diff --git a/resources/scripts/admin/components/modal-components/BackupModal.vue b/resources/scripts/admin/components/modal-components/BackupModal.vue index c3376f69..88e6fc04 100644 --- a/resources/scripts/admin/components/modal-components/BackupModal.vue +++ b/resources/scripts/admin/components/modal-components/BackupModal.vue @@ -51,7 +51,7 @@ label="name" value-prop="id" :placeholder="$t('settings.disk.select_disk')" - track-by="id" + track-by="name" object /> diff --git a/resources/scripts/admin/components/modal-components/ExchangeRateProviderModal.vue b/resources/scripts/admin/components/modal-components/ExchangeRateProviderModal.vue index 01b21ca5..b466ca64 100644 --- a/resources/scripts/admin/components/modal-components/ExchangeRateProviderModal.vue +++ b/resources/scripts/admin/components/modal-components/ExchangeRateProviderModal.vue @@ -38,6 +38,7 @@ label="key" :searchable="true" :invalid="v$.currentExchangeRate.driver.$error" + track-by="key" @update:modelValue="resetCurrency" @input="v$.currentExchangeRate.driver.$touch()" /> @@ -60,6 +61,7 @@ :options="serverOptions" :invalid="v$.currencyConverter.type.$error" label="value" + track-by="value" @update:modelValue="resetCurrency" /> @@ -104,8 +106,8 @@ :invalid="v$.currentExchangeRate.currencies.$error" label="code" track-by="code" + open-direction="top" @input="v$.currentExchangeRate.currencies.$touch()" - openDirection="top" /> diff --git a/resources/scripts/admin/components/modal-components/ItemModal.vue b/resources/scripts/admin/components/modal-components/ItemModal.vue index 5270394a..3bd55096 100644 --- a/resources/scripts/admin/components/modal-components/ItemModal.vue +++ b/resources/scripts/admin/components/modal-components/ItemModal.vue @@ -50,7 +50,7 @@ :can-clear="false" :placeholder="$t('items.select_a_unit')" searchable - track-by="id" + track-by="name" /> @@ -67,7 +67,7 @@ :can-deselect="false" :can-clear="false" searchable - track-by="id" + track-by="name" object /> diff --git a/resources/scripts/admin/components/modal-components/disks/DoSpacesDisk.vue b/resources/scripts/admin/components/modal-components/disks/DoSpacesDisk.vue index c6bdb80b..0dd83e4c 100644 --- a/resources/scripts/admin/components/modal-components/disks/DoSpacesDisk.vue +++ b/resources/scripts/admin/components/modal-components/disks/DoSpacesDisk.vue @@ -35,6 +35,7 @@ searchable label="name" :can-deselect="false" + track-by="name" @update:modelValue="onChangeDriver(data)" /> diff --git a/resources/scripts/admin/views/installation/Step8CompanyPreferences.vue b/resources/scripts/admin/views/installation/Step8CompanyPreferences.vue index b0e03781..ad40e60e 100644 --- a/resources/scripts/admin/views/installation/Step8CompanyPreferences.vue +++ b/resources/scripts/admin/views/installation/Step8CompanyPreferences.vue @@ -48,7 +48,7 @@ value-prop="code" :placeholder="$tc('settings.preferences.select_language')" class="w-full" - track-by="code" + track-by="name" :searchable="true" :invalid="v$.currentPreferences.language.$error" /> @@ -95,7 +95,7 @@ label="key" value-prop="value" :placeholder="$tc('settings.preferences.select_time_zone')" - track-by="value" + track-by="key" :searchable="true" :invalid="v$.currentPreferences.time_zone.$error" /> diff --git a/resources/scripts/admin/views/settings/AccountSetting.vue b/resources/scripts/admin/views/settings/AccountSetting.vue index b7fdeede..3b7b8262 100644 --- a/resources/scripts/admin/views/settings/AccountSetting.vue +++ b/resources/scripts/admin/views/settings/AccountSetting.vue @@ -75,7 +75,7 @@ :options="globalStore.config.languages" label="name" value-prop="code" - track-by="code" + track-by="name" open-direction="top" /> diff --git a/resources/scripts/admin/views/settings/BackupSetting.vue b/resources/scripts/admin/views/settings/BackupSetting.vue index a7ad76ef..f62e348b 100644 --- a/resources/scripts/admin/views/settings/BackupSetting.vue +++ b/resources/scripts/admin/views/settings/BackupSetting.vue @@ -23,7 +23,7 @@ v-model="filters.selected_disk" :content-loading="isFetchingInitialData" :options="getDisksOptions" - track-by="id" + track-by="name" :placeholder="$t('settings.disk.select_disk')" label="name" :searchable="true" diff --git a/resources/scripts/admin/views/settings/PreferencesSetting.vue b/resources/scripts/admin/views/settings/PreferencesSetting.vue index 71914be7..6c46f645 100644 --- a/resources/scripts/admin/views/settings/PreferencesSetting.vue +++ b/resources/scripts/admin/views/settings/PreferencesSetting.vue @@ -40,7 +40,7 @@ label="name" value-prop="code" class="w-full" - track-by="code" + track-by="name" :searchable="true" :invalid="v$.language.$error" /> @@ -79,7 +79,7 @@ :options="globalStore.dateFormats" label="display_date" value-prop="carbon_format_value" - track-by="carbon_format_value" + track-by="display_date" searchable :invalid="v$.carbon_date_format.$error" class="w-full" diff --git a/resources/scripts/admin/views/users/Create.vue b/resources/scripts/admin/views/users/Create.vue index 41d91650..e909601f 100644 --- a/resources/scripts/admin/views/users/Create.vue +++ b/resources/scripts/admin/views/users/Create.vue @@ -70,6 +70,7 @@ searchable :can-deselect="false" class="w-full" + track-by="name" /> diff --git a/resources/scripts/components/base/BaseItemSelect.vue b/resources/scripts/components/base/BaseItemSelect.vue index 21ec5726..e5955a54 100644 --- a/resources/scripts/components/base/BaseItemSelect.vue +++ b/resources/scripts/components/base/BaseItemSelect.vue @@ -30,7 +30,7 @@ v-model="itemSelect" :content-loading="contentLoading" value-prop="id" - track-by="id" + track-by="name" :invalid="invalid" preserve-search :initial-search="itemData.name" From 2cadcad48565961eb42b0d3bc4d871cafecb1ef8 Mon Sep 17 00:00:00 2001 From: Thomas Calemark Date: Sun, 6 Mar 2022 05:23:31 +0100 Subject: [PATCH 5/6] Fix currency settings error (#821) * Fixed issue with currency error on change after transactions * organized imports --- .../UpdateCompanySettingsController.php | 8 ++- tests/Feature/Admin/CompanySettingTest.php | 61 +++++++++++++++++++ 2 files changed, 67 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/V1/Admin/Settings/UpdateCompanySettingsController.php b/app/Http/Controllers/V1/Admin/Settings/UpdateCompanySettingsController.php index 128be75e..2589e4f8 100644 --- a/app/Http/Controllers/V1/Admin/Settings/UpdateCompanySettingsController.php +++ b/app/Http/Controllers/V1/Admin/Settings/UpdateCompanySettingsController.php @@ -6,6 +6,7 @@ use Crater\Http\Controllers\Controller; use Crater\Http\Requests\UpdateSettingsRequest; use Crater\Models\Company; use Crater\Models\CompanySetting; +use Illuminate\Support\Arr; class UpdateCompanySettingsController extends Controller { @@ -20,10 +21,13 @@ class UpdateCompanySettingsController extends Controller $company = Company::find($request->header('company')); $this->authorize('manage company', $company); - $companyCurrency = CompanySetting::getSetting('currency', $request->header('company')); $data = $request->settings; - if ($companyCurrency !== $data['currency'] && $company->hasTransactions()) { + if ( + Arr::exists($data, 'currency') && + (CompanySetting::getSetting('currency', $company->id) !== $data['currency']) && + $company->hasTransactions() + ) { return response()->json([ 'success' => false, 'message' => 'Cannot update company currency after transactions are created.' diff --git a/tests/Feature/Admin/CompanySettingTest.php b/tests/Feature/Admin/CompanySettingTest.php index 04b22550..613dd6bd 100644 --- a/tests/Feature/Admin/CompanySettingTest.php +++ b/tests/Feature/Admin/CompanySettingTest.php @@ -3,6 +3,9 @@ use Crater\Http\Controllers\V1\Admin\Settings\CompanyController; use Crater\Http\Requests\CompanyRequest; use Crater\Http\Requests\ProfileRequest; +use Crater\Models\Invoice; +use Crater\Models\InvoiceItem; +use Crater\Models\Tax; use Crater\Models\User; use Illuminate\Support\Facades\Artisan; use Laravel\Sanctum\Sanctum; @@ -120,6 +123,64 @@ test('update settings', function () { } }); +test('update settings without currency setting', function () { + + $settings = [ + 'notification_email' => 'noreply@crater.in', + ]; + + $response = postJson('/api/v1/company/settings', ['settings' => $settings]); + + $response->assertOk() + ->assertJson([ + 'success' => true, + ]); + + foreach ($settings as $key => $value) { + $this->assertDatabaseHas('company_settings', [ + 'option' => $key, + 'value' => $value, + ]); + } +}); + +test('update currency settings after company has currency and transactions is not allowed', function () { + $settings = [ + 'currency' => 1, + ]; + + $response = postJson('/api/v1/company/settings', ['settings' => $settings]); + + $response->assertOk() + ->assertJson([ + 'success' => true, + ]); + + Invoice::factory() + ->raw([ + 'taxes' => [Tax::factory()->raw()], + 'items' => [InvoiceItem::factory()->raw()], + ]); + + $settings = [ + 'currency' => 2, + ]; + + $response = postJson('/api/v1/company/settings', ['settings' => $settings]); + + $response->assertOK() + ->assertJson([ + 'success' => false, + 'message' => 'Cannot update company currency after transactions are created.' + ]); + + + $this->assertDatabaseHas('company_settings', [ + 'option' => 'currency', + 'value' => 1, + ]); +}); + test('get notification email settings', function () { $data['settings'] = [ 'currency', From f6c59b74239396c2f77445f8438c06182be2a489 Mon Sep 17 00:00:00 2001 From: Mohit Panjwani Date: Sun, 6 Mar 2022 10:05:31 +0530 Subject: [PATCH 6/6] New Crowdin updates (#817) * New translations en.json (Finnish) * New translations en.json (Italian) * New translations en.json (Vietnamese) --- resources/scripts/locales/fi.json | 228 +++++++++++++++--------------- resources/scripts/locales/it.json | 2 +- resources/scripts/locales/vi.json | 2 +- 3 files changed, 116 insertions(+), 116 deletions(-) diff --git a/resources/scripts/locales/fi.json b/resources/scripts/locales/fi.json index 1d04524e..d2f40766 100644 --- a/resources/scripts/locales/fi.json +++ b/resources/scripts/locales/fi.json @@ -4,7 +4,7 @@ "customers": "Asiakkaat", "items": "Tuotteet", "invoices": "Laskut", - "recurring-invoices": "Recurring Invoices", + "recurring-invoices": "Toistuvat laskut", "expenses": "Kulut", "estimates": "Tarjoukset", "payments": "Maksut", @@ -12,7 +12,7 @@ "settings": "Asetukset", "logout": "Kirjaudu ulos", "users": "Käyttäjät", - "modules": "Modules" + "modules": "Moduulit" }, "general": { "add_company": "Lisää Yritys", @@ -29,9 +29,9 @@ "to_date": "Päivään", "from": "Lähettäjä", "to": "Vastaanottaja", - "ok": "Ok", - "yes": "Yes", - "no": "No", + "ok": "OK", + "yes": "Kyllä", + "no": "Ei", "sort_by": "Järjestä", "ascending": "Nouseva", "descending": "Laskeva", @@ -39,7 +39,7 @@ "body": "Sisältö", "message": "Viesti", "send": "Lähetä", - "preview": "Preview", + "preview": "Esikatselu", "go_back": "Palaa takaisin", "back_to_login": "Takaisin sisäänkirjautumiseen?", "home": "Koti", @@ -65,7 +65,7 @@ "sent": "Lähetetty", "all": "Kaikki", "select_all": "Valitse kaikki", - "select_template": "Select Template", + "select_template": "Valitse Malli", "choose_file": "Klikkaa tästä valitaksesi tiedoston", "choose_template": "Valitse pohja", "choose": "Valitse", @@ -76,7 +76,7 @@ "are_you_sure": "Oletko varma?", "list_is_empty": "Lista on tyhjä.", "no_tax_found": "Verokantoja ei löytynyt!", - "four_zero_four": "404", + "four_zero_four": "404 - Sivua ei löydy", "you_got_lost": "Oho! Taisit eksyä!", "go_home": "Palaa kotisivulle", "test_mail_conf": "Testi sähköposti asetukset", @@ -92,12 +92,12 @@ "choose_note": "Valitse viesti", "no_note_found": "Viestejä ei löytynyt", "insert_note": "Lisää viesti", - "copied_pdf_url_clipboard": "Copied PDF url to clipboard!", - "copied_url_clipboard": "Copied url to clipboard!", - "docs": "Docs", - "do_you_wish_to_continue": "Do you wish to continue?", - "note": "Note", - "pay_invoice": "Pay Invoice", + "copied_pdf_url_clipboard": "Kopioitu PDF url leikepöydälle!", + "copied_url_clipboard": "URL-osoite kopioitu leikepöydälle!", + "docs": "Asiakirjat", + "do_you_wish_to_continue": "Haluatko jatkaa?", + "note": "Viesti", + "pay_invoice": "Maksa Lasku", "login_successfully": "Logged in successfully!", "logged_out_successfully": "Logged out successfully", "mark_as_default": "Mark as default" @@ -421,7 +421,7 @@ "select_invoice": "Valitse lasku", "no_matching_invoices": "Vastaavia laskuja ei ole!", "mark_as_sent_successfully": "Lasku merkitty lähetetyksi onnistuneesti", - "invoice_sent_successfully": "Invoice sent successfully", + "invoice_sent_successfully": "Lasku lähetettiin onnistuneesti", "cloned_successfully": "Lasku kopioitu onnistuneesti", "clone_invoice": "Kopioi lasku", "confirm_clone": "Tämä lasku kopioidaan uudeksi laskuksi", @@ -447,57 +447,57 @@ "marked_as_sent_message": "Lasku merkittiin lähetetyksi onnistuneesti", "something_went_wrong": "jotain meni vikaan", "invalid_due_amount_message": "Laskun summa ei voi olla pienempi kuin maksettu summa laskusta. Päivitä lasku tai poista linkitetty maksusuoritus jatkaaksesi.", - "mark_as_default_invoice_template_description": "If enabled, the selected template will be automatically selected for new invoices." + "mark_as_default_invoice_template_description": "Jos käytössä, valittu malli valitaan automaattisesti uusille laskuille." }, "recurring_invoices": { - "title": "Recurring Invoices", - "invoices_list": "Recurring Invoices List", - "days": "{days} Days", - "months": "{months} Month", - "years": "{years} Year", - "all": "All", - "paid": "Paid", - "unpaid": "Unpaid", - "viewed": "Viewed", - "overdue": "Overdue", - "active": "Active", - "completed": "Completed", - "customer": "CUSTOMER", - "paid_status": "PAID STATUS", - "ref_no": "REF NO.", - "number": "NUMBER", - "amount_due": "AMOUNT DUE", - "partially_paid": "Partially Paid", - "total": "Total", - "discount": "Discount", - "sub_total": "Sub Total", - "invoice": "Recurring Invoice | Recurring Invoices", - "invoice_number": "Recurring Invoice Number", - "next_invoice_date": "Next Invoice Date", - "ref_number": "Ref Number", - "contact": "Contact", - "add_item": "Add an Item", - "date": "Date", - "limit_by": "Limit by", - "limit_date": "Limit Date", - "limit_count": "Limit Count", - "count": "Count", - "status": "Status", - "select_a_status": "Select a status", - "working": "Working", - "on_hold": "On Hold", - "complete": "Completed", - "add_tax": "Add Tax", - "amount": "Amount", - "action": "Action", - "notes": "Notes", - "view": "View", - "basic_info": "Basic Info", - "send_invoice": "Send Recurring Invoice", - "auto_send": "Auto Send", - "resend_invoice": "Resend Recurring Invoice", - "invoice_template": "Recurring Invoice Template", - "conversion_message": "Recurring Invoice cloned successful", + "title": "Toistuvat laskut", + "invoices_list": "Toistuvien laskujen luettelo", + "days": "{days} Päivät", + "months": "{months} Kuukaudet", + "years": "{years} Vuodet", + "all": "Kaikki", + "paid": "Maksettu", + "unpaid": "Maksamattomat", + "viewed": "Katsottu", + "overdue": "Erääntyneet", + "active": "Aktiivinen", + "completed": "Valmis", + "customer": "Asiakas", + "paid_status": "MAKSUN TILA", + "ref_no": "Viitteemme", + "number": "NUMERO", + "amount_due": "AVOIN SAATAVA", + "partially_paid": "Osittain maksettu", + "total": "Yhteensä", + "discount": "Alennus", + "sub_total": "Välisumma", + "invoice": "Toistuva Lasku - Toistuvat Laskut", + "invoice_number": "Toistuva Laskun Numero", + "next_invoice_date": "Seuraava Laskun Päivämäärä", + "ref_number": "Asiakkaan viite", + "contact": "Yhteyshenkilö", + "add_item": "Lisää tuote", + "date": "Päiväys", + "limit_by": "Rajoita", + "limit_date": "Rajoita Päivämäärä", + "limit_count": "Rajoita määrää", + "count": "Määrä", + "status": "Tila", + "select_a_status": "Valitse tila", + "working": "Käynnissä", + "on_hold": "Pidossa", + "complete": "Valmis", + "add_tax": "Lisää Verokanta", + "amount": "Määrä", + "action": "Toiminta", + "notes": "Viesti", + "view": "Katsele", + "basic_info": "Perustiedot", + "send_invoice": "Lähetä Toistuva Lasku", + "auto_send": "Automaattinen Lähetys", + "resend_invoice": "Lähetä Uudelleen Toistuva Lasku", + "invoice_template": "Toistuva Laskun Malli", + "conversion_message": "Toistuva lasku kopioitu onnistuneesti", "template": "Template", "mark_as_sent": "Mark as sent", "confirm_send_invoice": "This recurring invoice will be sent via email to the customer", @@ -553,11 +553,11 @@ "confirm_delete": "You will not be able to recover this Invoice | You will not be able to recover these Invoices", "created_message": "Recurring Invoice created successfully", "updated_message": "Recurring Invoice updated successfully", - "deleted_message": "Recurring Invoice deleted successfully | Recurring Invoices deleted successfully", - "marked_as_sent_message": "Recurring Invoice marked as sent successfully", - "user_email_does_not_exist": "User email does not exist", - "something_went_wrong": "something went wrong", - "invalid_due_amount_message": "Total Recurring Invoice amount cannot be less than total paid amount for this Recurring Invoice. Please update the invoice or delete the associated payments to continue." + "deleted_message": "Toistuva lasku poistettiin onnistuneesti. Toistuvien laskujen poistaminen onnistui", + "marked_as_sent_message": "Toistuva lasku merkitty lähetetyksi onnistuneesti", + "user_email_does_not_exist": "Käyttäjän sähköposti ei ole määritetty", + "something_went_wrong": "jotain meni vikaan", + "invalid_due_amount_message": "Toistuvan laskun kokonaissumma ei voi olla pienempi kuin tälle toistuvalle laskulle maksettu summa. Päivitä lasku tai poista niihin liittyvät maksut jatkaaksesi." }, "payments": { "title": "Maksut", @@ -582,8 +582,8 @@ "update_payment": "Päivitä maksu", "payment": "Maksu | Maksut", "no_payments": "Ei tallennettuja maksuja!", - "not_selected": "Not selected", - "no_invoice": "No invoice", + "not_selected": "Ei valittu", + "no_invoice": "Ei laskua", "no_matching_payments": "Vastaavia maksuja ei ole!", "list_of_payments": "Tämä osio sisältää luettelon maksuista.", "select_payment_mode": "Valitse maksutapa", @@ -603,7 +603,7 @@ "select_a_customer": "Valitse asiakas", "expense_title": "Otsikko", "customer": "Asiakas", - "currency": "Currency", + "currency": "Valuutta", "contact": "Yhteyshenkilö", "category": "Luokka", "from_date": "Päivästä", @@ -613,7 +613,7 @@ "receipt": "Kuitti", "amount": "Summa", "action": "Toiminta", - "not_selected": "Not selected", + "not_selected": "Ei valittu", "note": "viesti", "category_id": "Luokan tunnus", "date": "Päivämäärä", @@ -658,48 +658,48 @@ "retype_password": "Kirjoita salasana uudelleen" }, "modules": { - "buy_now": "Buy Now", - "install": "Install", - "price": "Price", - "download_zip_file": "Download ZIP file", - "unzipping_package": "Unzipping Package", - "copying_files": "Copying Files", - "deleting_files": "Deleting Unused files", - "completing_installation": "Completing Installation", - "update_failed": "Update Failed", - "install_success": "Module has been installed successfully!", - "customer_reviews": "Reviews", - "license": "License", - "faq": "FAQ", - "monthly": "Monthly", - "yearly": "Yearly", - "updated": "Updated", - "version": "Version", - "disable": "Disable", - "module_disabled": "Module Disabled", - "enable": "Enable", - "module_enabled": "Module Enabled", - "update_to": "Update To", - "module_updated": "Module Updated Successfully!", - "title": "Modules", - "module": "Module | Modules", - "api_token": "API token", - "invalid_api_token": "Invalid API Token.", - "other_modules": "Other Modules", - "view_all": "View All", - "no_reviews_found": "There are no reviews for this module yet!", - "module_not_purchased": "Module Not Purchased", - "module_not_found": "Module Not Found", + "buy_now": "Osta Nyt", + "install": "Asenna", + "price": "Hinta", + "download_zip_file": "Lataa ZIP tiedosto", + "unzipping_package": "Puretaan pakettia", + "copying_files": "Kopioidaan tiedostoja", + "deleting_files": "Käyttämättömiä tiedostoja poistetaan", + "completing_installation": "Viimeistellään Asennusta", + "update_failed": "Päivitys epäonnistui", + "install_success": "Moduuli on asennettu onnistuneesti!", + "customer_reviews": "Arvostelut", + "license": "Lisenssi", + "faq": "UKK", + "monthly": "Kuukausittain", + "yearly": "Vuosittain", + "updated": "Päivitetty", + "version": "Versio", + "disable": "Poista käytöstä", + "module_disabled": "Moduuli poistettu käytöstä", + "enable": "Ota käyttöön", + "module_enabled": "Moduuli on käytössä", + "update_to": "Päivitä ohjelma", + "module_updated": "Moduulin päivitys onnistui!", + "title": "Moduulit", + "module": "Moduuli · Moduulit", + "api_token": "API tunnus", + "invalid_api_token": "Virheellinen API-tunnus.", + "other_modules": "Muut Moduulit", + "view_all": "Näytä kaikki", + "no_reviews_found": "Tällä modulilla ei ole vielä arvosteluita!", + "module_not_purchased": "Moduulia ei ostettu", + "module_not_found": "Moduulia ei löydy", "version_not_supported": "This module version doesn't support the current version of Crater", - "last_updated": "Last Updated On", - "connect_installation": "Connect your installation", - "api_token_description": "Login to {url} and connect this installation by entering the API Token. Your purchased modules will show up here after the connection is established.", - "view_module": "View Module", - "update_available": "Update Available", - "purchased": "Purchased", - "installed": "Installed", - "no_modules_installed": "No Modules Installed Yet!", - "disable_warning": "All the settings for this particular will be reverted.", + "last_updated": "Viimeksi päivitetty", + "connect_installation": "Yhdistä asennuksesi", + "api_token_description": "Kirjaudu sisään {url} ja yhdistä tämä asennus syöttämällä API tunnus. Ostetut moduulit näkyvät täällä kun yhteys on luotu.", + "view_module": "Näytä Moduuli", + "update_available": "Päivitys saatavilla", + "purchased": "Ostetut", + "installed": "Asennetut", + "no_modules_installed": "Ei Asennettuja Moduuleja!", + "disable_warning": "Kaikki tämän nimenomaisen asetuksen tiedot peruutetaan.", "what_you_get": "What you get" }, "users": { diff --git a/resources/scripts/locales/it.json b/resources/scripts/locales/it.json index 767abd42..30ae05d4 100644 --- a/resources/scripts/locales/it.json +++ b/resources/scripts/locales/it.json @@ -526,7 +526,7 @@ "cloned_successfully": "Fattura copiata con successo", "clone_invoice": "Duplica Fattura Ricorrente", "confirm_clone": "Questa fattura ricorrente verrà clonata in una nuova fattura ricorrente", - "add_customer_email": "Please add an email address for this customer to send invoices automatically.", + "add_customer_email": "Inserisci una E-Mail per inviare automaticamente fatture al cliente.", "item": { "title": "Titolo Articolo", "description": "Descrizione", diff --git a/resources/scripts/locales/vi.json b/resources/scripts/locales/vi.json index a7cb1a3a..3cf5054a 100644 --- a/resources/scripts/locales/vi.json +++ b/resources/scripts/locales/vi.json @@ -526,7 +526,7 @@ "cloned_successfully": "Recurring Invoice cloned successfully", "clone_invoice": "Clone Recurring Invoice", "confirm_clone": "This recurring invoice will be cloned into a new Recurring Invoice", - "add_customer_email": "Please add an email address for this customer to send invoices automatically.", + "add_customer_email": "Thêm một địa chỉ email cho khách hàng này để gửi hóa đơn tự động.", "item": { "title": "Item Title", "description": "Description",