| 
					
				 | 
			
			
				@@ -0,0 +1,115 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  <div class=""> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <h1>Debug</h1> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <p v-if="!data">Loading...</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <div v-if="prodNoParent.length"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <h2>Textes produit sans parent</h2> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <p>Si jamais c'est pas volontaire, ceux-ci risquent de n'être jamais accessibles</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <li v-for="node in prodNoParent" :key="node.id"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          TextProd n°{{ node.id }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <b-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            variant="kit" class="btn-edit" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :href="node.link" target="_blank" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Éditer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </b-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <div v-if="noTitles.length"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <h2>Textes de référence sans titre ou sans auteur⋅ices</h2> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <li v-for="node in noTitles" :key="node.id"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          TextRef n°{{ node.id }} (manque: {{ node.miss }}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <b-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            variant="kit" class="btn-edit" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :href="node.link" target="_blank" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Éditer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </b-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <div v-if="dupps.length"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <h2>Textes de référence avec enfants en doublons</h2> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <p>Ceux-ci sembleraient venir du fait qu'un texte de référence ai été renseigné dans le champs Texte Produits, et automagiquement duppliqué dans le champs Création</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <p>Il est actuellement nécessaire de supprimer les 2 références du texte (dans Textes Produits et dans Créations) car un texte de référence ne peut être défini comme un texte produit</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <li v-for="dupp in dupps" :key="dupp.id"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          Textref n°{{ dupp.id }} contient les doublons suivants: {{ dupp.nodes }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <b-button 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            variant="kit" class="btn-edit" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            :href="dupp.link" target="_blank" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Éditer 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </b-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import DebugQuery from '@/api/queries/debug.gql' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import api from '@/api' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  name: 'Page', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  data () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      data: undefined, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      dupps: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      noTitles: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      prodNoParent: [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  async created () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const data = (await api.query(DebugQuery)).allmapitems 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    data.forEach((node) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const link = `/api/node/${node.id}/edit?destination=/api/node/${node.id}` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (node.type === 'Textref') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (node.field_creations) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          const children = [...node.field_creations, ...(node.text_produits || [])] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          const dupps = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          const uniqueChildren = new Set() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          children.forEach(({ id }) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (uniqueChildren.has(id)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              dupps.push(id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            uniqueChildren.add(id) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (dupps.length) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.dupps.push({ id: node.id, nodes: dupps, link }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const miss = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          titre: !node.field_titre_regular && !node.field_titre_italique, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          'auteur⋅ices': !node.auteurs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if ((!node.field_titre_regular && !node.field_titre_italique) || !node.auteurs) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.noTitles.push({ ...node, link, miss: Object.keys(miss).filter(key => miss[key]) }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (node.type === 'Textprod') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!node.text_de_depart || node.text_de_depart.length < 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.prodNoParent.push({ ...node, link }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.data = data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style lang="scss" scoped> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</style> 
			 |