diff --git a/app/Http/Controllers/ItemsController.php b/app/Http/Controllers/ItemsController.php index 42ed43d5..fa9ea089 100644 --- a/app/Http/Controllers/ItemsController.php +++ b/app/Http/Controllers/ItemsController.php @@ -79,7 +79,7 @@ class ItemsController extends Controller foreach ($request->taxes as $tax) { $item->taxes()->updateOrCreate( ['tax_type_id' => $tax['tax_type_id']], - ['amount' => $tax['amount'], 'percent' => $tax['percent'], 'percent' => $tax['name']] + ['amount' => $tax['amount'], 'percent' => $tax['percent'], 'name' => $tax['name']] ); } } diff --git a/resources/assets/js/plugins/en.js b/resources/assets/js/plugins/en.js index 6be999aa..82479fc1 100644 --- a/resources/assets/js/plugins/en.js +++ b/resources/assets/js/plugins/en.js @@ -680,6 +680,7 @@ export default { username: 'Username', next: 'Next', continue: 'Continue', + skip: 'Skip', database: { database: 'Site URL & Database', connection: 'Database Connection', diff --git a/resources/assets/js/views/estimates/Item.vue b/resources/assets/js/views/estimates/Item.vue index 7be0d0f1..15a3ae1b 100644 --- a/resources/assets/js/views/estimates/Item.vue +++ b/resources/assets/js/views/estimates/Item.vue @@ -28,6 +28,7 @@ @select="onSelectItem" @deselect="deselectItem" @onDesriptionInput="$v.item.description.$touch()" + @onSelectItem="isSelected = true" /> @@ -193,13 +194,17 @@ export default { prefix: '$ ', precision: 2, masked: false - } + }, + isSelected: false } }, computed: { ...mapGetters('item', [ 'items' ]), + ...mapGetters('modal', [ + 'modalActive' + ]), ...mapGetters('currency', [ 'defaultCurrencyForInput' ]), @@ -284,6 +289,11 @@ export default { if (this.item.discount_type === 'percentage') { this.item.discount_val = (this.item.discount * newValue) / 100 } + }, + modalActive (val) { + if (!val) { + this.isSelected = false + } } }, validations () { @@ -313,7 +323,11 @@ export default { }, created () { window.hub.$on('checkItems', this.validateItem) - window.hub.$on('newItem', this.onSelectItem) + window.hub.$on('newItem', (val) => { + if (!this.item.item_id && this.modalActive && this.isSelected) { + this.onSelectItem(val) + } + }) }, methods: { updateTax (data) { diff --git a/resources/assets/js/views/estimates/ItemSelect.vue b/resources/assets/js/views/estimates/ItemSelect.vue index db1aa2b5..bc769c56 100644 --- a/resources/assets/js/views/estimates/ItemSelect.vue +++ b/resources/assets/js/views/estimates/ItemSelect.vue @@ -126,6 +126,7 @@ export default { this.$emit('search', val) }, openItemModal () { + this.$emit('onSelectItem') this.openModal({ 'title': 'Add Item', 'componentName': 'ItemModal' diff --git a/resources/assets/js/views/invoices/Item.vue b/resources/assets/js/views/invoices/Item.vue index 83e00997..c5dab726 100644 --- a/resources/assets/js/views/invoices/Item.vue +++ b/resources/assets/js/views/invoices/Item.vue @@ -28,6 +28,7 @@ @select="onSelectItem" @deselect="deselectItem" @onDesriptionInput="$v.item.description.$touch()" + @onSelectItem="isSelected = true" /> @@ -194,13 +195,17 @@ export default { prefix: '$ ', precision: 2, masked: false - } + }, + isSelected: false } }, computed: { ...mapGetters('item', [ 'items' ]), + ...mapGetters('modal', [ + 'modalActive' + ]), ...mapGetters('currency', [ 'defaultCurrencyForInput' ]), @@ -285,6 +290,11 @@ export default { if (this.item.discount_type === 'percentage') { this.item.discount_val = (this.item.discount * newValue) / 100 } + }, + modalActive (val) { + if (!val) { + this.isSelected = false + } } }, validations () { @@ -314,7 +324,11 @@ export default { }, created () { window.hub.$on('checkItems', this.validateItem) - window.hub.$on('newItem', this.onSelectItem) + window.hub.$on('newItem', (val) => { + if (!this.item.item_id && this.modalActive && this.isSelected) { + this.onSelectItem(val) + } + }) }, methods: { updateTax (data) { diff --git a/resources/assets/js/views/invoices/ItemSelect.vue b/resources/assets/js/views/invoices/ItemSelect.vue index 4c66b0f4..c88a6946 100644 --- a/resources/assets/js/views/invoices/ItemSelect.vue +++ b/resources/assets/js/views/invoices/ItemSelect.vue @@ -115,6 +115,7 @@ export default { this.$emit('search', val) }, openItemModal () { + this.$emit('onSelectItem') this.openModal({ 'title': 'Add Item', 'componentName': 'ItemModal' diff --git a/resources/assets/js/views/wizard/EmailConfiguration.vue b/resources/assets/js/views/wizard/EmailConfiguration.vue index ba384107..f90c6a04 100644 --- a/resources/assets/js/views/wizard/EmailConfiguration.vue +++ b/resources/assets/js/views/wizard/EmailConfiguration.vue @@ -109,15 +109,26 @@ - - {{ $t('wizard.save_cont') }} - +
+ + {{ $t('wizard.save_cont') }} + + + {{ $t('wizard.skip') }} + +
@@ -137,10 +148,10 @@ export default { mailConfigData: { mail_driver: 'smtp', mail_host: 'mailtrap.io', - mail_port: 2525, - mail_username: 'cc3c64516febd4', - mail_password: 'e6a0176301f587', - mail_encryption: 'tls' + mail_port: null, + mail_username: null, + mail_password: null, + mail_encryption: null }, loading: false, mail_drivers: []