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 @@
-