| 
					
				 | 
			
			
				@@ -3,17 +3,20 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { mapActions, mapState } from 'pinia' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { ConcernementsStore } from '@stores/concernements' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { UserStore } from '@/stores/user' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { CommonStore } from '@/stores/common' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { print } from 'graphql/language/printer' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import gql from 'graphql-tag' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import GQL from '@api/graphql-axios' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import EntiteFields from '@api/gql/entite.fragment.gql' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   props: ['id', 'eid'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   data(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       entite: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      opened_besoin_id: null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   computed: { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -23,7 +26,8 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // ...mapState(ConcernementsStore,['opened_entity_id']), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ...mapState(ConcernementsStore,['concernements_loaded']), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ...mapState(ConcernementsStore,['ct_concernement']), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ...mapState(ConcernementsStore,['ct_entite']) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ...mapState(ConcernementsStore,['ct_entite']), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ...mapState(CommonStore,['hover_elmt']) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   created () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     console.log(`Concernement view created, id: ${this.id}, eid: ${this.eid}, opened:${this.opened}`); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -82,6 +86,13 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         .catch(error => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           console.warn('Issue with load entite', error) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    onClickBesoin(id){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("onClickBesoin", id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.opened_besoin_id = id === this.opened_besoin_id ? null : id; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    besoinClass(id){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return this.opened_besoin_id === id ? "opened" : ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   components: { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -93,7 +104,11 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   <section v-if="opened" class="concernement"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <header v-if="concernements_loaded"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <label v-if="ct_concernement && !entite">{{ ct_concernement.title.description }}</label> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <label  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        v-if="ct_concernement && !entite && map_mode !== 'puissancedagir'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          {{ ct_concernement.title.description }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </label> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <h3 v-if="entite">{{ entite.title }}</h3> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <span v-if="entite && opened.entites_byid[eid].menacemaintien > 0">menace</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <span v-if="entite && opened.entites_byid[eid].menacemaintien < 0">maintient</span> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -129,19 +144,63 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <section 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       v-if="map_mode === 'puissancedagir'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       class="content-besoins"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <ul class="besoins"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <li 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            v-for="(besoin,index) in opened.besoins" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            :key="index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            v-for="besoin in opened.besoins" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :key="besoin.id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            class="besoin" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :id="besoin.id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :class="besoinClass(besoin.id)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <p v-html="besoin.description"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <a  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              v-if="isloggedin" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              :href="'/api/node/add/reponse?besoin_id='+besoin.id"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              target="_blank"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-              rel="noopener noreferrer"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                contribuer à ce besoin 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </a> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <span  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              class="open-btn mdi" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :class="{ 'mdi-chevron-right': besoin.id !== opened_besoin_id, 'mdi-chevron-down': besoin.id === opened_besoin_id } " 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              @click="onClickBesoin(besoin.id)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <header> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <label  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                class="mdi mdi-rhombus" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                :class="{ hover: hover_elmt && hover_elmt.type === 'besoin' && (hover_elmt.id === besoin.id || hover_elmt.bid === besoin.id) }" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                @click="onClickBesoin(besoin.id)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  Besoin de l'enqueteur 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </label> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <h4 class="besoin-description" v-html="besoin.description"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <a  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                v-if="isloggedin" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                :href="'/api/node/add/reponse?besoin_id='+besoin.id"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                target="_blank"  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                rel="noopener noreferrer" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                class="contribute-link mdi mdi-pencil-plus"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  contribuer à ce besoin 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </a> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </header> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <ul class="reponses"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <li 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                v-for="reponse in besoin.reponses" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                :key="reponse.id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                class="reponse" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                :id="reponse.id" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <label class="mdi mdi-rhombus-outline">Ressource</label> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <section v-if="reponse.qui"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <label for="reponse-qui">Qui</label> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <p name="reponse-qui" v-html="reponse.qui" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </section> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <section v-if="reponse.quoi"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <label for="reponse-quoi">Quoi</label> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <p name="reponse-quoi" v-html="reponse.quoi" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </section>     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <section v-if="reponse.ou"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <label for="reponse-ou">Où</label> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <p name="reponse-ou" v-html="reponse.ou" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </section>     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <section v-if="reponse.avec"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <label for="reponse-avec">Avec</label> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <p name="reponse-avec" v-html="reponse.avec" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </section>     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </section> 
			 |