diff --git a/src/api/gql/concernement.fragment.gql b/src/api/gql/concernement.fragment.gql index 351635b..f4f1917 100644 --- a/src/api/gql/concernement.fragment.gql +++ b/src/api/gql/concernement.fragment.gql @@ -23,6 +23,7 @@ fragment ConcernementFields on Concernement { } created changed + can_update lieu { name } diff --git a/src/assets/main.scss b/src/assets/main.scss index bc47cfb..115aaa3 100644 --- a/src/assets/main.scss +++ b/src/assets/main.scss @@ -1026,3 +1026,40 @@ body{ } } + +*[contenteditable="true"] { + background: #eee; + border: #eee 2px solid; + border-radius: 5px; + $p:0.3em; + padding:$p; + margin:0 0 0 -$p; + box-sizing: border-box; + transition: all 0.2s ease-in-out; + &:focus{ + outline: none; + border: #01ffe2 2px solid; + } +} + +button.edit-btn, +button.save-btn{ + background-color: #444; + color: #fff; + border: none; + border-radius: 6px; + $size: 25px; + width: $size; height:$size; + + display: inline; + + >svg{ + width:100%; + height:100%; + } + transition: all 0.2s ease-in-out; + &:hover{ + cursor:pointer; + opacity: 0.7; + } +} diff --git a/src/components/ConcernementMapItem.vue b/src/components/ConcernementMapItem.vue index dd09065..db7c9e7 100644 --- a/src/components/ConcernementMapItem.vue +++ b/src/components/ConcernementMapItem.vue @@ -1985,7 +1985,7 @@ export default { }.bind(this); this.paper_main_object.onMouseMove = function(event){ - console.log(`onmousemove ${this.id}`, this.cartouch_is_opened); + // console.log(`onmousemove ${this.id}`, this.cartouch_is_opened); // prevent hover map item mouse event if cartouch is opened if (this.cartouch_is_opened && this.map_mode !== "superposition") return; @@ -2068,7 +2068,7 @@ export default { } let result = paper_group_tohit ? paper_group_tohit.hitTest(event.point) : null; - console.log('move result', result); + // console.log('move result', result); if (result && result.item.item_id && (result.item.name != "label_click_zone" || this.detailsZoomValue > 2)) { console.log('move has result', result); let new_hover_elmt = { diff --git a/src/components/contents/TerrainDeVie.vue b/src/components/contents/TerrainDeVie.vue index 942c92a..c566a9d 100644 --- a/src/components/contents/TerrainDeVie.vue +++ b/src/components/contents/TerrainDeVie.vue @@ -21,6 +21,8 @@ import SvgIcon from '@jamescoyle/vue-icon'; import { mdiChevronRight } from '@mdi/js'; import { mdiChevronDown } from '@mdi/js'; +import ContentEditable from '@components/misc/ContentEditable.vue'; + export default { props: ['cid', 'eid'], data(){ @@ -206,13 +208,20 @@ export default { } else { this.headerreduced = false; } + }, + onContentEditableFocusOut(e){ + console.log('onContentEditableFocusOut', e); + let new_field_content = e.target.innerText; + console.log('onContentEditableFocusOut', new_field_content); + console.log('onContentEditableFocusOut this.concernement.title', this.concernement.title); } }, components: { CartoucheLayout, Entite, VueSlider, - SvgIcon + SvgIcon, + ContentEditable } } @@ -233,13 +242,36 @@ export default { diff --git a/src/components/layout/CartoucheLayout.vue b/src/components/layout/CartoucheLayout.vue index 34e994c..ab45328 100644 --- a/src/components/layout/CartoucheLayout.vue +++ b/src/components/layout/CartoucheLayout.vue @@ -6,6 +6,8 @@ import { ConcernementsStore } from '@stores/concernements' import SvgIcon from '@jamescoyle/vue-icon'; import { mdiHeadphones } from '@mdi/js'; +import ContentEditable from '@components/misc/ContentEditable.vue'; + export default { props: ['cid'], emits: ['main_scrolled'], @@ -19,6 +21,7 @@ export default { created () { console.log('Cartouch layout created', this.cid); this.concernement = this.concernementsByID[this.cid]; + console.log('can_update', this.concernement.can_update); }, mounted () { // console.log('cartouche layout mounted', this); @@ -44,16 +47,18 @@ export default { console.log(`TerrainDeVie watch cid o:${o}, n:${n}`); if (n) { this.concernement = this.concernementsByID[n]; + console.log('can_update', this.concernement.can_update); } }, deep: true } }, methods: { - ...mapActions(ConcernementsStore,['setMapMode']) + ...mapActions(ConcernementsStore,['setMapMode']), }, components: { - SvgIcon + SvgIcon, + ContentEditable } } @@ -62,7 +67,20 @@ export default {
-

{{ concernement.title }}

+ + + +