diff --git a/src/api/gql/entite.fragment.gql b/src/api/gql/entite.fragment.gql
index 9d49238..e3d668a 100644
--- a/src/api/gql/entite.fragment.gql
+++ b/src/api/gql/entite.fragment.gql
@@ -1,9 +1,11 @@
fragment EntiteFields on Entite {
id
- action
- menacemaintien
+ uuid
title
can_update
+ agissante
+ action
+ menacemaintien
image {
alt
url
diff --git a/src/assets/main.scss b/src/assets/main.scss
index 9017dfa..deb7d5e 100644
--- a/src/assets/main.scss
+++ b/src/assets/main.scss
@@ -1047,12 +1047,41 @@ body{
border: #eee 2px solid;
border-radius: 5px;
padding: 0.3em!important;
- margin-bottom: 1em;
+ margin: 1em 0 0;
font-size: 0.756em;
&>*{
display: inline-block!important;
padding: 0!important;
cursor: pointer;
}
-
+}
+
+div.editable-image{
+ background: #eee;
+ max-width: 100%;
+ div.btn{
+ border: #eee 2px solid;
+ border-radius: 5px;
+ margin: 1em 0 0;
+ font-size: 1em;
+ width: 100%;
+ height: 100px;
+ line-height:100px;
+ text-align: center;
+ transition: all 0.2s ease-in-out;
+ position: relative;
+ >span{
+ display: inline-block;
+ vertical-align: middle;
+ }
+ cursor: pointer;
+ box-sizing: border-box;
+ &:hover{
+ border: #01ffe2 2px solid;
+ }
+
+ }
+ input[type="file"]{
+ display: none;
+ }
}
\ No newline at end of file
diff --git a/src/components/contents/Entite.vue b/src/components/contents/Entite.vue
index 1fbba3a..7dfc9e6 100644
--- a/src/components/contents/Entite.vue
+++ b/src/components/contents/Entite.vue
@@ -1,12 +1,19 @@
-
-
+
+
-
-
-
- {{ entite.image[0].alt }}
-
-
-
+
+ }"
+ v-on:updated="reloadEntite" />
-
+
+ }"
+ v-on:updated="reloadEntite" />
diff --git a/src/components/contents/TerrainDeVie.vue b/src/components/contents/TerrainDeVie.vue
index 68357f5..6456a81 100644
--- a/src/components/contents/TerrainDeVie.vue
+++ b/src/components/contents/TerrainDeVie.vue
@@ -22,6 +22,7 @@ import { mdiChevronRight } from '@mdi/js';
import { mdiChevronDown } from '@mdi/js';
import ContentEditable from '@components/editable/ContentEditable.vue';
+import CheckboxEditable from '@components/editable/CheckboxEditable.vue';
export default {
props: ['cid', 'eid'],
@@ -221,7 +222,8 @@ export default {
Entite,
VueSlider,
SvgIcon,
- ContentEditable
+ ContentEditable,
+ CheckboxEditable
}
}
@@ -246,14 +248,25 @@ export default {
nid: this.entite.id,
field: 'title'
}" />
-
+
+
+
-
+
-
+
-
+
diff --git a/src/components/editable/CheckboxEditable.vue b/src/components/editable/CheckboxEditable.vue
index 2880a40..763ef33 100644
--- a/src/components/editable/CheckboxEditable.vue
+++ b/src/components/editable/CheckboxEditable.vue
@@ -3,15 +3,17 @@
import REST from '@api/rest-axios'
import { mapActions, mapState } from 'pinia'
+import { ConcernementsStore } from '@stores/concernements'
import { UserStore } from '@stores/user'
export default {
props: {
+ checked: Boolean,
label: String,
data: Object
},
- // emits: ['returned'],
+ emits: ['updated'],
data(){
return {
@@ -21,12 +23,13 @@ export default {
...mapState(UserStore,['csrf_token']),
},
created () {
- console.log('ContentEditable created');
+ console.log('CheckboxEditable created');
},
mounted () {
},
methods: {
+ ...mapActions(ConcernementsStore, ['reloadConcernements']),
onInput(e){
// console.log('onInput checkbox e', e);
let checked = e.target.checked;
@@ -47,6 +50,8 @@ export default {
.then(({ data }) => {
console.log('user REST post node data', data)
// TODO if success update the data in pinia
+ // this.reloadConcernements();
+ this.$emit('updated');
})
.catch(error => {
console.warn(`Issue with patch node ${this.data.bundle}`, error)
@@ -59,6 +64,6 @@ export default {
\ No newline at end of file
diff --git a/src/components/editable/ContentEditable.vue b/src/components/editable/ContentEditable.vue
index 9bb6209..57dca67 100644
--- a/src/components/editable/ContentEditable.vue
+++ b/src/components/editable/ContentEditable.vue
@@ -3,6 +3,7 @@
import REST from '@api/rest-axios'
import { mapActions, mapState } from 'pinia'
+import { ConcernementsStore } from '@stores/concernements'
import { UserStore } from '@stores/user'
@@ -20,7 +21,7 @@ export default {
},
data: Object
},
- // emits: ['returned'],
+ emits: ['updated'],
data(){
return {
@@ -36,6 +37,7 @@ export default {
},
methods: {
+ ...mapActions(ConcernementsStore, ['reloadConcernements']),
onContentEditableFocusOut(e){
console.log('onContentEditableFocusOut', e);
// console.log('onContentEditableFocusOut data', this.data);
@@ -57,6 +59,8 @@ export default {
.then(({ data }) => {
console.log('user REST post node data', data)
// TODO if success update the data in pinia
+ // this.reloadConcernements();
+ this.$emit('updated');
})
.catch(error => {
console.warn(`Issue with patch node ${this.data.bundle}`, error)
diff --git a/src/components/editable/ImageEditable.vue b/src/components/editable/ImageEditable.vue
new file mode 100644
index 0000000..3ad48ed
--- /dev/null
+++ b/src/components/editable/ImageEditable.vue
@@ -0,0 +1,136 @@
+
+
+
+
+
+
+
+
+ {{ image[0].alt }}
+
+
+
+
+
+
+
+ ajouter une image
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/stores/concernements.js b/src/stores/concernements.js
index 4392b06..91317e7 100644
--- a/src/stores/concernements.js
+++ b/src/stores/concernements.js
@@ -251,9 +251,9 @@ export const ConcernementsStore = defineStore({
reloadConcernements () {
console.log('reloadConcernements');
// reset the arrays
- this.concernements = [];
- this.concernementsByID = {};
- this.concernements_loaded = false;
+ // this.concernements = [];
+ // this.concernementsByID = {};
+ // this.concernements_loaded = false;
this.loadConcernements();
},
loadContentTypeDefinition () {