mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
address form: add the possibility to create a new address
This commit is contained in:
parent
935006eae3
commit
8011293b28
@ -33,20 +33,25 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
addNewAddress({ address, modal }) {
|
addNewAddress({ address, modal }) {
|
||||||
console.log('@@@ CLICK button addNewAdress', address);
|
console.log('@@@ CLICK button addNewAdress', address);
|
||||||
const newAddress = {
|
|
||||||
|
let newAddress = {
|
||||||
'isNoAddress': address.isNoAddress,
|
'isNoAddress': address.isNoAddress,
|
||||||
'street': address.selected.address.street,
|
'street': address.selected.address.street,
|
||||||
'streetNumber': address.selected.address.streetNumber,
|
'streetNumber': address.selected.address.streetNumber,
|
||||||
'postcode': {'id': address.selected.address.postcode.id},
|
'postcode': {'id': address.selected.city.id },
|
||||||
'floor': address.floor,
|
'floor': address.floor,
|
||||||
'corridor': address.corridor,
|
'corridor': address.corridor,
|
||||||
'steps': address.steps,
|
'steps': address.steps,
|
||||||
'flat': address.flat,
|
'flat': address.flat,
|
||||||
'buildingName': address.buildingName,
|
'buildingName': address.buildingName,
|
||||||
'distribution': address.distribution,
|
'distribution': address.distribution,
|
||||||
'extra': address.extra,
|
'extra': address.extra
|
||||||
'point': address.selected.address.point.coordinates
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (address.selected.address.point !== undefined){
|
||||||
|
newAddress = Object.assign(newAddress, {'point': address.selected.address.point.coordinates});
|
||||||
|
}
|
||||||
|
|
||||||
this.$store.dispatch('addAddress', newAddress);
|
this.$store.dispatch('addAddress', newAddress);
|
||||||
modal.showModal = false;
|
modal.showModal = false;
|
||||||
}
|
}
|
||||||
|
@ -6,6 +6,7 @@ const addressMessages = {
|
|||||||
select_country: 'Choisir le pays',
|
select_country: 'Choisir le pays',
|
||||||
select_city: 'Choisir une localité',
|
select_city: 'Choisir une localité',
|
||||||
select_address: 'Choisir une adresse',
|
select_address: 'Choisir une adresse',
|
||||||
|
create_address: 'Appuyer sur "Enter" pour créer une nouvelle adresse',
|
||||||
isNoAddress: 'Pas d\'adresse complète',
|
isNoAddress: 'Pas d\'adresse complète',
|
||||||
floor: 'Étage',
|
floor: 'Étage',
|
||||||
corridor: 'Couloir',
|
corridor: 'Couloir',
|
||||||
|
@ -7,7 +7,11 @@
|
|||||||
track-by="id"
|
track-by="id"
|
||||||
label="value"
|
label="value"
|
||||||
:custom-label="transName"
|
:custom-label="transName"
|
||||||
|
:taggable="true"
|
||||||
|
:multiple="false"
|
||||||
|
@tag="addAddress"
|
||||||
:placeholder="$t('select_address')"
|
:placeholder="$t('select_address')"
|
||||||
|
:tagPlaceholder="$t('create_address')"
|
||||||
:options="addresses">
|
:options="addresses">
|
||||||
</VueMultiselect>
|
</VueMultiselect>
|
||||||
</div>
|
</div>
|
||||||
@ -25,18 +29,25 @@ export default {
|
|||||||
value: null
|
value: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
addresses() {
|
||||||
|
return this.address.loaded.addresses;
|
||||||
|
}
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
transName(value) {
|
transName(value) {
|
||||||
return `${value.street}, ${value.streetNumber}`
|
return value.streetNumber === undefined ? value.street : `${value.street}, ${value.streetNumber}`
|
||||||
},
|
},
|
||||||
selectAddress(value) {
|
selectAddress(value) {
|
||||||
this.address.selected.address = value;
|
this.address.selected.address = value;
|
||||||
this.updateMapCenter(value.point);
|
this.updateMapCenter(value.point);
|
||||||
},
|
},
|
||||||
},
|
addAddress (newAddress) {
|
||||||
computed: {
|
const address = {
|
||||||
addresses() {
|
street: newAddress
|
||||||
return this.address.loaded.addresses;
|
};
|
||||||
|
this.value = address;
|
||||||
|
this.address.selected.address = address;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user