diff --git a/src/components/input/pharma-input-fields/PhExtServiceTreeview.vue b/src/components/input/pharma-input-fields/PhExtServiceTreeview.vue index 4fec854dfb56c0ba3914c3e7885f809e2c33a46c..67f781814600f38848457c6bc210f5bcffd4d48b 100644 --- a/src/components/input/pharma-input-fields/PhExtServiceTreeview.vue +++ b/src/components/input/pharma-input-fields/PhExtServiceTreeview.vue @@ -15,7 +15,9 @@ <v-layout row wrap fill-height> <v-flex xs6> <v-btn @click="alert($refs.treeview.items)">view</v-btn> - <v-btn @click="myget($refs.treeview.items)">find</v-btn> + <v-btn + @click="unselectNode($refs.treeview.items,'http://purl.obolibrary.org/obo/NCIT_C28398')" + >find</v-btn> <v-btn @click="$refs.treeview.updateAll(true)">Open next level</v-btn> <v-btn @click="$refs.treeview.updateAll(false)">Close all</v-btn> </v-flex> @@ -65,9 +67,9 @@ :key="i" label close - @input="selectedItems.splice(i,1);deselect(data, $refs.treeview)" + @input="selectedItems.splice(i,1);unselectNode($refs.treeview.items,data.id)" > - <span>{{ data.text }}{{data.selected}}</span> + <span>{{ data.text }}</span> </v-chip> </v-card-text> </v-flex> @@ -185,10 +187,28 @@ export default { } }, methods: { - myget: function(tree) { - console.log("in myget", tree); - var lol = _.findIndex(tree, ["text", "Modeling"]); - console.log("in myget", lol); + unselectNode: function(tree, id) { + var n_ar = tree; + + for (var nodes in n_ar) { + if (n_ar[nodes].id === id) { + // console.log( + // "matching node", + // n_ar[nodes], + // n_ar[nodes].text, + // n_ar[nodes].selected + // ); + n_ar[nodes].selected = false; + } + if ( + n_ar[nodes].children !== null && + n_ar[nodes].children.length > 0 && + typeof n_ar[nodes].children === "object" + ) { + //for each chil call again this fction + this.unselectNode(n_ar[nodes].children, id); + } + } }, alert: function(a) {