mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
Merge branch 'issue711_confirm_referrer' into 'master'
Confirmation popup when referrer is changed for parcours See merge request Chill-Projet/chill-bundles!496
This commit is contained in:
commit
9911112e08
@ -2,6 +2,29 @@
|
|||||||
<div class="vue-component">
|
<div class="vue-component">
|
||||||
<h2><a id="section-80"></a>{{ $t('referrer.title') }}</h2>
|
<h2><a id="section-80"></a>{{ $t('referrer.title') }}</h2>
|
||||||
|
|
||||||
|
<teleport to="body">
|
||||||
|
<modal v-if="modal.showModal"
|
||||||
|
:modalDialogClass="modal.modalDialogClass"
|
||||||
|
@close="cancelChange">
|
||||||
|
<template v-slot:header>
|
||||||
|
<h3 class="modal-title">{{ $t('confirm.title') }}</h3>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template v-slot:body-head>
|
||||||
|
<div class="modal-body">
|
||||||
|
<p v-html="$t('confirm.sure_referrer', { referrer: this.value.text })"></p>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template v-slot:footer>
|
||||||
|
<button class="btn btn-save"
|
||||||
|
@click.prevent="this.confirmReferrer">
|
||||||
|
{{ $t('confirm.ok_referrer')}}
|
||||||
|
</button>
|
||||||
|
</template>
|
||||||
|
</modal>
|
||||||
|
</teleport>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<label class="col-form-label" for="selectJob">
|
<label class="col-form-label" for="selectJob">
|
||||||
@ -35,6 +58,7 @@
|
|||||||
:searchable="true"
|
:searchable="true"
|
||||||
:placeholder="$t('referrer.placeholder')"
|
:placeholder="$t('referrer.placeholder')"
|
||||||
v-model="value"
|
v-model="value"
|
||||||
|
@select="updateReferrer"
|
||||||
:options="users"
|
:options="users"
|
||||||
:select-label="$t('multiselect.select_label')"
|
:select-label="$t('multiselect.select_label')"
|
||||||
:deselect-label="$t('multiselect.deselect_label')"
|
:deselect-label="$t('multiselect.deselect_label')"
|
||||||
@ -78,16 +102,24 @@ import VueMultiselect from 'vue-multiselect';
|
|||||||
import {makeFetch} from 'ChillMainAssets/lib/api/apiMethods';
|
import {makeFetch} from 'ChillMainAssets/lib/api/apiMethods';
|
||||||
import {mapState, mapGetters} from 'vuex';
|
import {mapState, mapGetters} from 'vuex';
|
||||||
import UserRenderBoxBadge from "ChillMainAssets/vuejs/_components/Entity/UserRenderBoxBadge";
|
import UserRenderBoxBadge from "ChillMainAssets/vuejs/_components/Entity/UserRenderBoxBadge";
|
||||||
|
import Modal from 'ChillMainAssets/vuejs/_components/Modal';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "Referrer",
|
name: "Referrer",
|
||||||
components: {
|
components: {
|
||||||
UserRenderBoxBadge,
|
UserRenderBoxBadge,
|
||||||
VueMultiselect,
|
VueMultiselect,
|
||||||
|
Modal
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
jobs: []
|
jobs: [],
|
||||||
|
modal: {
|
||||||
|
showModal: false,
|
||||||
|
modalDialogClass: "modal-dialog-scrollable modal-xl"
|
||||||
|
},
|
||||||
|
value: this.$store.state.accompanyingCourse.user,
|
||||||
|
confirmed: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -118,22 +150,6 @@ export default {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
value: {
|
|
||||||
get() {
|
|
||||||
return this.$store.state.accompanyingCourse.user;
|
|
||||||
},
|
|
||||||
set(value) {
|
|
||||||
console.log('set referrer', value);
|
|
||||||
this.$store.dispatch('updateReferrer', value)
|
|
||||||
.catch(({name, violations}) => {
|
|
||||||
if (name === 'ValidationException' || name === 'AccessException') {
|
|
||||||
violations.forEach((violation) => this.$toast.open({message: violation}));
|
|
||||||
} else {
|
|
||||||
this.$toast.open({message: 'An error occurred'})
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.getJobs();
|
this.getJobs();
|
||||||
@ -141,6 +157,7 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
updateReferrer(value) {
|
updateReferrer(value) {
|
||||||
this.value = value;
|
this.value = value;
|
||||||
|
this.toggleModal();
|
||||||
},
|
},
|
||||||
getJobs() {
|
getJobs() {
|
||||||
const url = '/api/1.0/main/user-job.json';
|
const url = '/api/1.0/main/user-job.json';
|
||||||
@ -159,12 +176,27 @@ export default {
|
|||||||
const url = `/api/1.0/main/whoami.json`;
|
const url = `/api/1.0/main/whoami.json`;
|
||||||
makeFetch('GET', url)
|
makeFetch('GET', url)
|
||||||
.then(user => {
|
.then(user => {
|
||||||
this.value = user
|
// this.value = user
|
||||||
|
this.updateReferrer(user);
|
||||||
})
|
})
|
||||||
/*.catch((error) => {
|
},
|
||||||
commit('catchError', error);
|
toggleModal() {
|
||||||
this.$toast.open({message: error.body})
|
this.modal.showModal = !this.modal.showModal;
|
||||||
})*/
|
},
|
||||||
|
confirmReferrer() {
|
||||||
|
this.$store.dispatch('updateReferrer', this.value)
|
||||||
|
.catch(({name, violations}) => {
|
||||||
|
if (name === 'ValidationException' || name === 'AccessException') {
|
||||||
|
violations.forEach((violation) => this.$toast.open({message: violation}));
|
||||||
|
} else {
|
||||||
|
this.$toast.open({message: 'An error occurred'})
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.toggleModal()
|
||||||
|
},
|
||||||
|
cancelChange() {
|
||||||
|
this.value = this.$store.state.accompanyingCourse.user
|
||||||
|
this.toggleModal()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -139,8 +139,10 @@ const appMessages = {
|
|||||||
set_a_scope: "indiquez au moins un service",
|
set_a_scope: "indiquez au moins un service",
|
||||||
sure: "Êtes-vous sûr ?",
|
sure: "Êtes-vous sûr ?",
|
||||||
sure_description: "Une fois le changement confirmé, il ne sera plus possible de le remettre à l'état de brouillon !",
|
sure_description: "Une fois le changement confirmé, il ne sera plus possible de le remettre à l'état de brouillon !",
|
||||||
|
sure_referrer: "Êtes-vous sûr de vouloir assigner ce parcours à <b>{referrer}</b>",
|
||||||
ok: "Confirmer le parcours",
|
ok: "Confirmer le parcours",
|
||||||
delete: "Supprimer le parcours",
|
delete: "Supprimer le parcours",
|
||||||
|
ok_referrer: "Confirmer le référent",
|
||||||
no_suggested_referrer: "Il n'y a aucun référent qui puisse être suggéré pour ce parcours. Vérifiez la localisation du parcours, les métiers et service indiqués. Si les données sont correctes, vous pouvez confirmer ce parcours.",
|
no_suggested_referrer: "Il n'y a aucun référent qui puisse être suggéré pour ce parcours. Vérifiez la localisation du parcours, les métiers et service indiqués. Si les données sont correctes, vous pouvez confirmer ce parcours.",
|
||||||
one_suggested_referrer: "Un unique référent peut être suggéré pour ce parcours",
|
one_suggested_referrer: "Un unique référent peut être suggéré pour ce parcours",
|
||||||
choose_suggested_referrer: "Voulez-vous le désigner directement ?",
|
choose_suggested_referrer: "Voulez-vous le désigner directement ?",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user