Administrator approval is now required for registering new accounts. If you are registering a new account, and are external to the University, please ask the repository owner to contact ServiceLine to request your account be approved. Repository owners must include the newly registered email address, and specific repository in the request for approval.

Commit 1226d3b2 authored by Adam Procter's avatar Adam Procter
Browse files

added other nodes live sync now working

parent fbb6a6dc
<template>
<div v-for="(nodes, index) in otherArray" :key="index">
<p
class="readmode"
:id="nodes.node_id"
:inner-html.prop="nodes.node_text"
></p>
<div v-for="(nodes, index) in otherNodes.otherNodes" :key="index">
<p class="readmode" :id="nodes.id">
{{ nodes.text }}
</p>
</div>
</template>
......@@ -17,45 +15,20 @@ import { mapState } from 'vuex'
export default {
name: 'OtherNodes',
data() {
return {
otherArray: [],
}
},
computed: {
...mapState({
otherNodes: (state) => state.otherNodes,
}),
},
// watch: {
// added: function () {
// this.loadData()
// },
// },
mounted() {
//console.log('mounted')
this.$store.dispatch('getOthernodes')
setTimeout(this.loadData, 500)
// if (localStorage.nogg_microcosm) {
// // var devicename = localStorage.nogg_name
// var microcosm = localStorage.nogg_microcosm
// this.$store.dispatch('setMicrocosm', { microcosm })
// } else {
// console.log('no')
// // go home
// }
},
methods: {
loadData() {
var othersFiltered = this.otherNodes.otherNodes.filter(
(nodes) => nodes.node_deleted == false
)
this.$store.dispatch('getOthernodes')
this.otherArray = othersFiltered
this.$store.dispatch('setOthernodes')
},
},
}
......
var pouchdb
// PRETTY SURE this is wrong
import * as store from '@/store/store.js'
var deviceName
export const state = {
allNodes: [],
......@@ -17,8 +15,7 @@ export const mutations = {
})
.then(function (doc) {
state.allNodes = doc.rows
// TODO: THIS IS NOT working
store.commit('SET_OTHER_NODES')
console.log('get all nodes')
})
.catch(function (err) {
console.log(err)
......@@ -26,19 +23,22 @@ export const mutations = {
},
SET_OTHER_NODES(state) {
console.log('setting')
state.otherNodes = []
var i
var j
for (i = 0; i < Object.keys(state.allNodes).length; i++) {
for (j = 0; j < Object.keys(state.allNodes[i].doc.nodes).length; j++) {
const newNode = {
id: state.allNodes[i].doc.nodes[j].node_id,
text: state.allNodes[i].doc.nodes[j].node_text,
deleted: state.allNodes[i].doc.nodes[j].node_deleted,
color: state.allNodes[i].doc.nodes[j].node_color,
if (state.allNodes[i].id != deviceName) {
for (j = 0; j < Object.keys(state.allNodes[i].doc.nodes).length; j++) {
const newNode = {
id: state.allNodes[i].doc.nodes[j].node_id,
text: state.allNodes[i].doc.nodes[j].node_text,
deleted: state.allNodes[i].doc.nodes[j].node_deleted,
color: state.allNodes[i].doc.nodes[j].node_color,
}
state.otherNodes.push(newNode)
}
state.otherNodes.push(newNode)
}
}
},
......@@ -47,9 +47,15 @@ export const mutations = {
export const actions = {
getOthernodes: ({ commit }) => {
commit('GET_ALL_NODES')
commit('SET_OTHER_NODES')
},
setOthernodes: ({ commit }) => {
commit('SET_OTHER_NODES')
},
getMicrocosm(vuexContext) {
deviceName = vuexContext.rootState.setup.deviceName
pouchdb = vuexContext.rootState.setup.pouchdb
},
}
......
......@@ -79,8 +79,7 @@ export const actions = {
retry: true,
})
.on('change', function () {
// console.log('change happened')
// vuexContext.dispatch('getNodes', null, { root: true })
vuexContext.dispatch('getOthernodes', null, { root: true })
})
.on('paused', function () {})
.on('active', function () {
......
<template>
<ToolBar @added-node="addedNode" />
<MyNodes :added="added" />
<OtherNodes />
<MyNodes :added="added" />
</template>
<script>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment