66 q-btn.q-mx-xs ( v-if ="props.identity?._id" @click ="sync" color ="orange-8" : disabled= "props.identity.state != IdentityState.TO_VALIDATE" icon ="mdi-sync" )
77 q-tooltip.text-body2 ( slot ="trigger" v-if ="props.identity.state == IdentityState.TO_VALIDATE" ) Synchroniser l'identité
88 q-tooltip.text-body2 ( slot ="trigger" v-else ) L'état de l'identité ne permet pas de la synchroniser
9- q-btn.q-mx-xs ( v-if ="props.identity?._id" @click = "logs" color ="grey-8" icon ="mdi-file-document" : href= "'/jobs?filters[:concernedTo.id]=' + props.identity?._id" )
9+ q-btn.q-mx-xs ( v-if ="props.identity?._id" color ="grey-8" icon ="mdi-file-document" : href= "'/jobs?filters[:concernedTo.id]=' + props.identity?._id" target = "_blank ")
1010 q-tooltip.text-body2 ( slot ="trigger" ) Voir les logs de l'identité
1111</template >
1212
@@ -20,10 +20,9 @@ import { useFetch } from 'nuxt/app'
2020import { useIdentityStates } from ' ~/composables'
2121import { useErrorHandling } from ' #imports'
2222
23-
2423type IdentityResponse = operations [' IdentitiesController_search' ][' responses' ][' 200' ][' content' ][' application/json' ]
2524type Identity = components [' schemas' ][' IdentitiesDto' ]
26- const activation= ref (true )
25+ const activation = ref (true )
2726const props = defineProps ({
2827 identity: {
2928 type: Object as PropType <Identity >,
@@ -54,37 +53,35 @@ async function create() {
5453 // console.log('submit from actions')
5554 emits (' create' )
5655}
57- function setActivateColor(){
58- if (props .identity .lastBackendSync != " " ) {
59- return " green"
60- }else {
61- return " grey"
56+ function setActivateColor() {
57+ if (props .identity .lastBackendSync != ' ' ) {
58+ return ' green'
59+ } else {
60+ return ' grey'
6261 }
6362}
64- function showActivate(){
65- if (props .identity .lastBackendSync != " " ) {
63+ function showActivate() {
64+ if (props .identity .lastBackendSync != ' ' ) {
6665 return true
67- }else {
66+ } else {
6867 return false
6968 }
7069}
71- async function activate(){
72-
73-
74- let message= " "
75- let bouton = " "
76- let initialStatus= 0
77- if (props .identity .dataStatus === 0 ){
78- message = " Voulez vous vraiment désactiver l'identité"
79- bouton = " Désactiver"
80- initialStatus = 1
81- }else {
82- message = " Voulez vous vraiment activer l'identité"
83- bouton = " Activer"
84- initialStatus = 0
70+ async function activate() {
71+ let message = ' '
72+ let bouton = ' '
73+ let initialStatus = 0
74+ if (props .identity .dataStatus === 0 ) {
75+ message = " Voulez vous vraiment désactiver l'identité"
76+ bouton = ' Désactiver'
77+ initialStatus = 1
78+ } else {
79+ message = " Voulez vous vraiment activer l'identité"
80+ bouton = ' Activer'
81+ initialStatus = 0
8582 }
8683 debugger
87- if (showActivate () === false ){
84+ if (showActivate () === false ) {
8885 props .identity .dataStatus = initialStatus
8986 return
9087 }
@@ -103,34 +100,32 @@ async function activate(){
103100 color: ' negative' ,
104101 label: ' Annuler' ,
105102 },
106- }).onOk (async () => {
107- const requestOptions= {method: ' POST' ,
108- body:JSON .stringify ({id:props .identity ._id ,status:props .identity .dataStatus === 1 ? true : false })}
109- try {
110- const data= await $http .post (' /management/identities/activation' , requestOptions )
111- $q .notify ({
112- message: ' Le statut a été mis à jour : ' ,
113- color: ' positive' ,
114- position: ' top-right' ,
115- icon: ' mdi-check-circle-outline' ,
116- })
117- }catch (error ){
118- props .identity .dataStatus = initialStatus
119- $q .notify ({
120- message: ' Impossible de modifier le statut : ' + error .response ._data .message ,
121- color: ' negative' ,
122- position: ' top-right' ,
123- icon: ' mdi-alert-circle-outline' ,
124- })
125- }
126-
127- }).onCancel (() => {
128- props .identity .dataStatus = initialStatus
129103 })
130-
104+ .onOk (async () => {
105+ const requestOptions = { method: ' POST' , body: JSON .stringify ({ id: props .identity ._id , status: props .identity .dataStatus === 1 ? true : false }) }
106+ try {
107+ const data = await $http .post (' /management/identities/activation' , requestOptions )
108+ $q .notify ({
109+ message: ' Le statut a été mis à jour : ' ,
110+ color: ' positive' ,
111+ position: ' top-right' ,
112+ icon: ' mdi-check-circle-outline' ,
113+ })
114+ } catch (error ) {
115+ props .identity .dataStatus = initialStatus
116+ $q .notify ({
117+ message: ' Impossible de modifier le statut : ' + error .response ._data .message ,
118+ color: ' negative' ,
119+ position: ' top-right' ,
120+ icon: ' mdi-alert-circle-outline' ,
121+ })
122+ }
123+ })
124+ .onCancel (() => {
125+ props .identity .dataStatus = initialStatus
126+ })
131127}
132128
133-
134129async function deleteIdentity() {
135130 $q .dialog ({
136131 title: ' Confirmation' ,
@@ -165,17 +160,22 @@ async function sync() {
165160 emits (' sync' )
166161}
167162
168- async function sendInit(){
163+ async function sendInit() {
169164 // envoi le mail
170165
171- const { data : result, pending, error, refresh } = await useHttp (` /management/passwd/init ` , {
166+ const {
167+ data : result,
168+ pending,
169+ error,
170+ refresh,
171+ } = await useHttp (` /management/passwd/init ` , {
172172 method: ' POST' ,
173- body: { uid: props .identity .inetOrgPerson .uid },
174- });
173+ body: { uid: props .identity .inetOrgPerson .uid },
174+ })
175175 if (error .value ) {
176176 handleError ({
177177 error: error .value ,
178- message: ' Erreur lors de l\ ' envoi du mail'
178+ message: " Erreur lors de l'envoi du mail" ,
179179 })
180180 } else {
181181 $q .notify ({
@@ -187,10 +187,6 @@ async function sendInit(){
187187 }
188188}
189189
190- function logs() {
191- router .push (` /jobs?filters[:concernedTo.id]=${(props .identity as any )._id } ` )
192- }
193-
194190function back() {
195191 router .push (' /identities' )
196192}
0 commit comments