Add module to recently visited modules on visit

This commit is contained in:
Ramon Wenger 2020-06-25 15:18:52 +02:00
parent e899bbe21b
commit f57e5fa0c1
2 changed files with 18 additions and 19 deletions

View File

@ -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>

View File

@ -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
} }
} }