mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
prepare AccompanyingCourse Location sub-component to use Address
This commit is contained in:
parent
ca4d542604
commit
fae196d3eb
@ -9,7 +9,7 @@
|
||||
<origin-demand></origin-demand>
|
||||
<requestor></requestor>
|
||||
<social-issue></social-issue>
|
||||
<!--course-location></course-location-->
|
||||
<course-location></course-location>
|
||||
<referrer></referrer>
|
||||
<resources></resources>
|
||||
<comment v-if="accompanyingCourse.step === 'DRAFT'"></comment>
|
||||
@ -25,7 +25,7 @@ import OriginDemand from './components/OriginDemand.vue';
|
||||
import PersonsAssociated from './components/PersonsAssociated.vue';
|
||||
import Requestor from './components/Requestor.vue';
|
||||
import SocialIssue from './components/SocialIssue.vue';
|
||||
//import CourseLocation from './components/CourseLocation.vue';
|
||||
import CourseLocation from './components/CourseLocation.vue';
|
||||
import Referrer from './components/Referrer.vue';
|
||||
import Resources from './components/Resources.vue';
|
||||
import Comment from './components/Comment.vue';
|
||||
@ -40,7 +40,7 @@ export default {
|
||||
PersonsAssociated,
|
||||
Requestor,
|
||||
SocialIssue,
|
||||
//CourseLocation,
|
||||
CourseLocation,
|
||||
Referrer,
|
||||
Resources,
|
||||
Comment,
|
||||
|
@ -6,17 +6,32 @@
|
||||
<div class="my-4">
|
||||
|
||||
<!-- {# include vue_address component #} -->
|
||||
<show-address
|
||||
v-if="address"
|
||||
v-bind:address="address">
|
||||
</show-address>
|
||||
<div v-for="error in displayErrors" class="alert alert-danger my-2">
|
||||
{{ error }}
|
||||
</div>
|
||||
|
||||
<div v-if="addAddress.options.displayResult && addAddress.result !== null"
|
||||
class="chill-entity entity-address">
|
||||
<div class="address multiline">
|
||||
<p class="street">{{ addAddress.result.street }}
|
||||
<span class="streetnumber">{{ addAddress.result.streetNumber }}</span>
|
||||
</p>
|
||||
<p class="postcode">
|
||||
<span class="code">{{ addAddress.result.postcode.code }}</span>
|
||||
<span class="name">{{ addAddress.result.postcode.name }}</span>
|
||||
</p>
|
||||
<p class="country">{{ addAddress.result.country.name.fr }}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="record_actions">
|
||||
<li>
|
||||
<add-address
|
||||
modalAddTitle="courselocation.add_temp_address"
|
||||
modalEditTitle="courselocation.edit_temp_address"
|
||||
@addNewAddress="addTemporaryAddress">
|
||||
v-bind:key="addAddress.type"
|
||||
v-bind:context="context"
|
||||
v-bind:options="addAddress.options"
|
||||
v-bind:result="addAddress.result"
|
||||
ref="addAddress">
|
||||
</add-address>
|
||||
</li>
|
||||
</ul>
|
||||
@ -27,76 +42,50 @@
|
||||
|
||||
<script>
|
||||
import AddAddress from 'ChillMainAssets/vuejs/Address/components/AddAddress.vue';
|
||||
import ShowAddress from 'ChillMainAssets/vuejs/Address/components/ShowAddress.vue';
|
||||
|
||||
export default {
|
||||
name: "CourseLocation",
|
||||
components: {
|
||||
AddAddress,
|
||||
ShowAddress
|
||||
AddAddress
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
/*
|
||||
address: {},
|
||||
errors: {},
|
||||
loading: false,
|
||||
success: false
|
||||
*/
|
||||
context: {
|
||||
edit: true, //dynamic //window.mode === 'edit',
|
||||
personId: null, //window.personId,
|
||||
addressId: null, //window.addressId,
|
||||
backUrl: null //window.backUrl,
|
||||
},
|
||||
addAddress: {
|
||||
options: {
|
||||
|
||||
/// Options override default.
|
||||
/// null value take default component value
|
||||
button: {
|
||||
text: { create: null, edit: null },
|
||||
type: null,
|
||||
size: null,
|
||||
//display: false
|
||||
},
|
||||
/// Modal title text if create or edit address (trans chain, see i18n)
|
||||
title: { create: null, edit: null },
|
||||
/// Display each step in page or Modal
|
||||
bindModal: {
|
||||
//step1: false, step2: false
|
||||
},
|
||||
// Options only for root parent component
|
||||
displayResult: true,
|
||||
redirectToBackUrl: false
|
||||
},
|
||||
type: 'courseLocation',
|
||||
result: null // <== returned from addAddress component
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
addTemporaryAddress({ address, modal }) {
|
||||
console.log('@@@ CLICK button addTemporaryAdress', address);
|
||||
|
||||
/*
|
||||
let newAddress = {
|
||||
'isNoAddress': address.isNoAddress,
|
||||
'street': address.isNoAddress ? '' : address.street,
|
||||
'streetNumber': address.isNoAddress ? '' : address.streetNumber,
|
||||
'postcode': {'id': address.selected.city.id},
|
||||
'floor': address.floor,
|
||||
'corridor': address.corridor,
|
||||
'steps': address.steps,
|
||||
'flat': address.flat,
|
||||
'buildingName': address.buildingName,
|
||||
'distribution': address.distribution,
|
||||
'extra': address.extra
|
||||
};
|
||||
|
||||
if (address.selected.address.point !== undefined){
|
||||
newAddress = Object.assign(newAddress, {
|
||||
'point': address.selected.address.point.coordinates
|
||||
});
|
||||
}
|
||||
|
||||
if (address.writeNewPostalCode){
|
||||
let newPostalCode = address.newPostalCode;
|
||||
newPostalCode = Object.assign(newPostalCode, {
|
||||
'country': {'id': address.selected.country.id },
|
||||
});
|
||||
newAddress = Object.assign(newAddress, {
|
||||
'newPostalCode': newPostalCode
|
||||
});
|
||||
}
|
||||
|
||||
console.log('===> ', this.addressId, newAddress);
|
||||
|
||||
if (this.edit){
|
||||
this.$store.dispatch('updateAddress', {
|
||||
addressId: this.addressId,
|
||||
newAddress: newAddress
|
||||
});
|
||||
} else {
|
||||
this.$store.dispatch('addAddress', newAddress);
|
||||
}
|
||||
*/
|
||||
|
||||
modal.showModal = false;
|
||||
displayErrors() {
|
||||
return this.$refs.addAddress.errorMsg;
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
</style>
|
||||
|
Loading…
x
Reference in New Issue
Block a user