Consider children values as wanted when validating a form
This commit is contained in:
parent
d0cd1c5b96
commit
0dce870998
|
@ -32,7 +32,7 @@
|
|||
-->
|
||||
|
||||
<template>
|
||||
<component v-if="services[service._svctype]" :is="displayFormat === 'grid' ? 'b-card' : 'b-list-group'" :class="displayFormat !== 'list' ? 'card-hover' : ''" :style="displayFormat === 'grid' ? 'width: 32%; min-width: 225px; margin-bottom: 1em; cursor: pointer;' : displayFormat === 'records' ? 'margin-bottom: .5em; cursor: pointer;' : ''" no-body>
|
||||
<component :is="displayFormat === 'grid' ? 'b-card' : 'b-list-group'" v-if="services[service._svctype]" :class="displayFormat !== 'list' ? 'card-hover' : ''" :style="displayFormat === 'grid' ? 'width: 32%; min-width: 225px; margin-bottom: 1em; cursor: pointer;' : displayFormat === 'records' ? 'margin-bottom: .5em; cursor: pointer;' : ''" no-body>
|
||||
<b-card-body v-if="displayFormat === 'grid'" @click="$emit('showServiceWindow', service)">
|
||||
<b-badge v-for="(categorie, idcat) in services[service._svctype].categories" :key="idcat" variant="gray" class="float-right ml-1">
|
||||
{{ categorie }}
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
-->
|
||||
|
||||
<template>
|
||||
<h-resource-value v-model="service.Service" :edit="edit" :edit-toolbar="editToolbar" :services="services" :type="service._svctype" @deleteService="deleteService($event)" @saveService="saveService($event)" />
|
||||
<h-resource-value ref="myChild" v-model="service.Service" :edit="edit" :edit-toolbar="editToolbar" :services="services" :type="service._svctype" @deleteService="deleteService($event)" @saveService="saveService($event)" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
@ -91,6 +91,10 @@ export default {
|
|||
})
|
||||
},
|
||||
|
||||
saveChildrenValues () {
|
||||
this.$refs.myChild.saveChildrenValues()
|
||||
},
|
||||
|
||||
saveService (cbSuccess, cbFail) {
|
||||
if (this.service.Service === undefined) {
|
||||
this.deleteService()
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
-->
|
||||
|
||||
<template>
|
||||
<component :is="itemComponent" :value="value" :edit="edit" :edit-toolbar="editToolbar" :index="index" :services="services" :specs="specs" :type="type" @input="$emit('input', $event)" @deleteService="$emit('deleteService', $event)" @saveService="$emit('saveService', $event)" />
|
||||
<component :is="itemComponent" ref="myChild" :value="value" :edit="edit" :edit-toolbar="editToolbar" :index="index" :services="services" :specs="specs" :type="type" @input="$emit('input', $event)" @deleteService="$emit('deleteService', $event)" @saveService="$emit('saveService', $event)" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
@ -111,6 +111,10 @@ export default {
|
|||
} else {
|
||||
this.itemComponent = HResourceValueInput
|
||||
}
|
||||
},
|
||||
|
||||
saveChildrenValues () {
|
||||
this.$refs.myChild.saveChildrenValues()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -86,6 +86,10 @@ export default {
|
|||
this.$emit('input', val)
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
methods: {
|
||||
saveChildrenValues () {}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -102,6 +102,10 @@ export default {
|
|||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
methods: {
|
||||
saveChildrenValues () {}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -207,6 +207,20 @@ export default {
|
|||
this.$emit('saveService')
|
||||
},
|
||||
|
||||
saveChildrenValues () {
|
||||
for (const key in this.editChildrenKeys) {
|
||||
if (this.editChildrenKeys[key]) {
|
||||
this.saveObject(key)
|
||||
}
|
||||
}
|
||||
|
||||
for (const key in this.editKeys) {
|
||||
if (this.editKeys[key]) {
|
||||
this.rename(key)
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
saveObject (key) {
|
||||
var vm = this
|
||||
this.$emit('saveService', function () {
|
||||
|
|
|
@ -46,6 +46,7 @@
|
|||
</template>
|
||||
<h-resource-value
|
||||
v-if="value[spec.id]"
|
||||
ref="fieldsTabs"
|
||||
v-model="value[spec.id]"
|
||||
:edit="editChildren"
|
||||
:edit-toolbar="editToolbar"
|
||||
|
@ -83,6 +84,7 @@
|
|||
<h-resource-value
|
||||
v-for="(spec, index) in service_specs.fields"
|
||||
:key="index"
|
||||
ref="fieldsElseCase"
|
||||
:edit="editChildren"
|
||||
:index="index"
|
||||
:services="services"
|
||||
|
@ -190,6 +192,20 @@ export default {
|
|||
)
|
||||
},
|
||||
|
||||
saveChildrenValues () {
|
||||
if (this.$refs.fieldsTabs) {
|
||||
this.$refs.fieldsTabs.forEach(function (field) {
|
||||
field.saveChildrenValues()
|
||||
})
|
||||
}
|
||||
|
||||
if (this.$refs.fieldsElseCase) {
|
||||
this.$refs.fieldsElseCase.forEach(function (field) {
|
||||
field.saveChildrenValues()
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
saveObject () {
|
||||
var vm = this
|
||||
this.$emit('saveService', function () {
|
||||
|
|
|
@ -194,6 +194,12 @@ export default {
|
|||
this.$emit('saveService')
|
||||
},
|
||||
|
||||
saveChildrenValues () {
|
||||
this.tmp_values.forEach(function (row, idx) {
|
||||
this.saveRow({ item: row })
|
||||
}, this)
|
||||
},
|
||||
|
||||
saveRow (row) {
|
||||
if (this.service_specs && this.service_specs.fields) {
|
||||
var val = {}
|
||||
|
|
|
@ -88,7 +88,7 @@
|
|||
<p>
|
||||
Fill the information for the {{ services[modal.svcSelected].name }} at <span class="text-monospace">{{ modal.dn | fqdn(domain.domain) }}</span>:
|
||||
</p>
|
||||
<h-resource-value v-model="modal.svcData" edit :services="services" :type="modal.svcSelected" @input="modal.svcData = $event" />
|
||||
<h-resource-value ref="addModalResources" v-model="modal.svcData" edit :services="services" :type="modal.svcSelected" @input="modal.svcData = $event" />
|
||||
</div>
|
||||
</form>
|
||||
</b-modal>
|
||||
|
@ -111,7 +111,7 @@
|
|||
</b-button>
|
||||
</template>
|
||||
<form v-if="modal && modal.svcData" id="updSvcForm" @submit.stop.prevent="handleUpdateSvc">
|
||||
<h-resource-value v-model="modal.svcData.Service" edit :services="services" :type="modal.svcData._svctype" @input="modal.svcData.Service = $event" @saveService="fakeSaveService" />
|
||||
<h-resource-value ref="updModalResources" v-model="modal.svcData.Service" edit :services="services" :type="modal.svcData._svctype" @input="modal.svcData.Service = $event" @saveService="fakeSaveService" />
|
||||
</form>
|
||||
</b-modal>
|
||||
|
||||
|
@ -443,8 +443,8 @@ export default {
|
|||
} else if (this.modal.step === 1 && this.modal.svcSelected !== null) {
|
||||
this.modal.step = 2
|
||||
} else if (this.modal.step === 2 && this.modal.svcSelected !== null) {
|
||||
ZoneApi
|
||||
.addZoneService(this.domain.domain, this.zoneId, this.modal.dn, { Service: this.modal.svcData, _svctype: this.modal.svcSelected })
|
||||
this.$refs.addModalResources.saveChildrenValues()
|
||||
ZoneApi.addZoneService(this.domain.domain, this.zoneId, this.modal.dn, { Service: this.modal.svcData, _svctype: this.modal.svcSelected })
|
||||
.then(
|
||||
(response) => {
|
||||
this.myServices = response.data
|
||||
|
@ -469,6 +469,8 @@ export default {
|
|||
handleUpdateSvc (bvModalEvt) {
|
||||
bvModalEvt.preventDefault()
|
||||
|
||||
this.$refs.updModalResources.saveChildrenValues()
|
||||
|
||||
this.updateServiceInProgress = true
|
||||
ZoneApi.updateZoneService(this.domain.domain, this.zoneId, this.modal.svcData)
|
||||
.then(
|
||||
|
|
Loading…
Reference in New Issue
Block a user