Add module to recently visited modules on visit
This commit is contained in:
parent
e899bbe21b
commit
f57e5fa0c1
|
|
@ -52,6 +52,7 @@
|
||||||
|
|
||||||
import {withoutOwnerFirst} from '@/helpers/sorting';
|
import {withoutOwnerFirst} from '@/helpers/sorting';
|
||||||
import BookmarkActions from '@/components/notes/BookmarkActions';
|
import BookmarkActions from '@/components/notes/BookmarkActions';
|
||||||
|
import meMixin from '@/mixins/me';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|
||||||
|
|
@ -65,20 +66,15 @@
|
||||||
default: false
|
default: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
mixins: [meMixin],
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
BookmarkActions,
|
BookmarkActions,
|
||||||
ObjectiveGroups,
|
ObjectiveGroups,
|
||||||
Chapter
|
Chapter
|
||||||
},
|
},
|
||||||
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
me: {
|
|
||||||
permissions: []
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
languageCommunicationObjectiveGroups() {
|
languageCommunicationObjectiveGroups() {
|
||||||
return this.module.objectiveGroups ? this.module.objectiveGroups
|
return this.module.objectiveGroups ? this.module.objectiveGroups
|
||||||
|
|
@ -114,11 +110,21 @@
|
||||||
id: moduleId
|
id: moduleId
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
update(store, {data: {updateLastModule: {module}}}) {
|
update(store, {data: {updateLastModule: {lastModule}}}) {
|
||||||
if (module) {
|
if (lastModule) {
|
||||||
const data = store.readQuery({query: ME_QUERY});
|
const data = store.readQuery({query: ME_QUERY});
|
||||||
if (data) {
|
if (data) {
|
||||||
data.me.lastModule = module;
|
data.me.lastModule = lastModule;
|
||||||
|
let recentModules = data.me.recentModules.edges;
|
||||||
|
let index = recentModules.findIndex(element => element.node.id === lastModule.id);
|
||||||
|
if (index > -1) {
|
||||||
|
recentModules = [...recentModules.slice(0, index), ...recentModules.slice(index + 1)]
|
||||||
|
}
|
||||||
|
recentModules.unshift({
|
||||||
|
__typename: 'ModuleNodeEdge',
|
||||||
|
node: lastModule
|
||||||
|
});
|
||||||
|
data.me.recentModules.edges = recentModules;
|
||||||
store.writeQuery({query: ME_QUERY, data});
|
store.writeQuery({query: ME_QUERY, data});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -199,12 +205,6 @@
|
||||||
this.$store.dispatch('editNote', this.module.bookmark.note);
|
this.$store.dispatch('editNote', this.module.bookmark.note);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
apollo: {
|
|
||||||
me: {
|
|
||||||
query: ME_QUERY,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
#import "../fragments/moduleParts.gql"
|
#import "../fragments/moduleParts.gql"
|
||||||
mutation UpdateLastModule($input: UpdateLastModuleInput!) {
|
mutation UpdateLastModule($input: UpdateLastModuleInput!) {
|
||||||
updateLastModule(input: $input) {
|
updateLastModule(input: $input) {
|
||||||
module {
|
lastModule {
|
||||||
...ModuleParts
|
...ModuleParts
|
||||||
}
|
}
|
||||||
errors
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue