From e4104a52eff052b42223dd9d6e11b813481a5bfd Mon Sep 17 00:00:00 2001 From: bach Date: Wed, 27 Mar 2024 17:10:02 +0100 Subject: [PATCH] refactoring; saving first paragraph contentEditable --- src/api/gql/entite.fragment.gql | 1 + src/components/contents/Entite.vue | 4 ++-- src/components/contents/Source.vue | 14 +++++++++++++- src/components/contents/TerrainDeVie.vue | 6 +++--- src/components/editable/ContentEditable.vue | 11 +++++++++-- src/components/layout/CartoucheLayout.vue | 2 +- 6 files changed, 29 insertions(+), 9 deletions(-) diff --git a/src/api/gql/entite.fragment.gql b/src/api/gql/entite.fragment.gql index 4805c15..73bec60 100644 --- a/src/api/gql/entite.fragment.gql +++ b/src/api/gql/entite.fragment.gql @@ -13,6 +13,7 @@ fragment EntiteFields on Entite { id } sources { + id description images { alt diff --git a/src/components/contents/Entite.vue b/src/components/contents/Entite.vue index c04978b..079dc96 100644 --- a/src/components/contents/Entite.vue +++ b/src/components/contents/Entite.vue @@ -73,7 +73,7 @@ export default { :data="{ entitytype: 'node', bundle: 'entite', - nid: this.entite.id, + id: this.entite.id, field: {field_name: 'field_action', value:'value'} }" v-on:updated="reloadEntite" /> @@ -89,7 +89,7 @@ export default { :data="{ entitytype: 'node', bundle: 'entite', - nid: this.entite.id, + id: this.entite.id, field: {field_name: 'field_menace_maintien', value:'value'} }" v-on:updated="reloadEntite" /> diff --git a/src/components/contents/Source.vue b/src/components/contents/Source.vue index 56cc007..b84eca4 100644 --- a/src/components/contents/Source.vue +++ b/src/components/contents/Source.vue @@ -46,7 +46,19 @@ export default {
-
+ +
@@ -296,7 +296,7 @@ export default { :data="{ entitytype: 'node', bundle: 'concernement', - nid: this.concernement.id, + id: this.concernement.id, field: {field_name: 'field_description', value:'value'} }" /> @@ -312,7 +312,7 @@ export default { :data="{ entitytype: 'node', bundle: 'concernement', - nid: this.concernement.id, + id: this.concernement.id, field: {field_name: 'field_caillou', value:'value'} }" /> diff --git a/src/components/editable/ContentEditable.vue b/src/components/editable/ContentEditable.vue index c116ecc..3128466 100644 --- a/src/components/editable/ContentEditable.vue +++ b/src/components/editable/ContentEditable.vue @@ -49,9 +49,13 @@ export default { // console.log('save csrf_token', this.csrf_token); const params = { type: this.data.bundle, - nid: [{"value":this.data.nid}], [this.data.field.field_name]: [{[this.data.field.value]: content}] }; + if (this.data.entitytype === 'node') { + params.nid = [{"value":this.data.id}]; + } else { + params.id = [{"value":this.data.id}]; + } // we need additional values for image alt for example // console.log('additional_values', this.data.field.additional_values); if (this.data.field.additional_values) { @@ -61,10 +65,13 @@ export default { } } } + const configs = { headers: {'X-CSRF-Token': this.csrf_token} }; - REST.patch(`/${this.data.entitytype}/${this.data.nid}?_format=json`, params, configs) + + let url_base = `/${this.data.entitytype === 'node' ? '' : 'entity/'}${this.data.entitytype}`; + REST.patch(`${url_base}/${this.data.id}?_format=json`, params, configs) .then(({ data }) => { console.log('user REST post node data', data) // TODO if success update the data in pinia diff --git a/src/components/layout/CartoucheLayout.vue b/src/components/layout/CartoucheLayout.vue index d4d6e57..c373a93 100644 --- a/src/components/layout/CartoucheLayout.vue +++ b/src/components/layout/CartoucheLayout.vue @@ -76,7 +76,7 @@ export default { :data="{ entitytype: 'node', bundle: 'concernement', - nid: this.concernement.id, + id: this.concernement.id, field: {field_name: 'title', value:'value'} }" />