aboutsummaryrefslogtreecommitdiff
path: root/resources
diff options
context:
space:
mode:
Diffstat (limited to 'resources')
-rw-r--r--resources/vue/components/courseware/containers/CoursewareAccordionContainer.vue7
-rw-r--r--resources/vue/components/courseware/containers/CoursewareListContainer.vue6
-rw-r--r--resources/vue/components/courseware/containers/CoursewareTabsContainer.vue7
3 files changed, 16 insertions, 4 deletions
diff --git a/resources/vue/components/courseware/containers/CoursewareAccordionContainer.vue b/resources/vue/components/courseware/containers/CoursewareAccordionContainer.vue
index 2b1b12a..ad8d82f 100644
--- a/resources/vue/components/courseware/containers/CoursewareAccordionContainer.vue
+++ b/resources/vue/components/courseware/containers/CoursewareAccordionContainer.vue
@@ -198,7 +198,12 @@ export default {
return [];
}
- return this.container.relationships.blocks.data.map(({ id }) => this.blockById({ id })).filter((a) => a);
+ const blocks = this.container.relationships.blocks.data.map(({ id }) => this.blockById({ id })).filter((a) => a);
+
+ // Load only visible blocks in view-only content.
+ return this.canEdit
+ ? blocks
+ : blocks.filter(b => b.attributes.visible);
},
icons() {
return this.contentIcons;
diff --git a/resources/vue/components/courseware/containers/CoursewareListContainer.vue b/resources/vue/components/courseware/containers/CoursewareListContainer.vue
index a1cb3e3..cf55bef 100644
--- a/resources/vue/components/courseware/containers/CoursewareListContainer.vue
+++ b/resources/vue/components/courseware/containers/CoursewareListContainer.vue
@@ -141,8 +141,10 @@ export default {
sortedBlocks.forEach(({ id }) => unallocated.delete(id));
let unallocatedBlocks = [...unallocated].map((id) => this.blockById({ id }));
- // Load only visible blocks. That should be sufficient because the visibility already indicates permissions.
- return sortedBlocks.concat(unallocatedBlocks).filter(block => block.attributes.visible === true);
+ // Load only visible blocks in view-only content.
+ return this.canEdit
+ ? sortedBlocks.concat(unallocatedBlocks)
+ : sortedBlocks.concat(unallocatedBlocks).filter(block => block.attributes.visible);
},
empty() {
return this.blockList.length === 0;
diff --git a/resources/vue/components/courseware/containers/CoursewareTabsContainer.vue b/resources/vue/components/courseware/containers/CoursewareTabsContainer.vue
index 3577a0a..58b215e 100644
--- a/resources/vue/components/courseware/containers/CoursewareTabsContainer.vue
+++ b/resources/vue/components/courseware/containers/CoursewareTabsContainer.vue
@@ -198,7 +198,12 @@ export default {
return [];
}
- return this.container.relationships.blocks.data.map(({ id }) => this.blockById({ id })).filter((a) => a);
+ const blocks = this.container.relationships.blocks.data.map(({ id }) => this.blockById({ id })).filter((a) => a);
+
+ // Load only visible blocks in view-only content.
+ return this.canEdit
+ ? blocks
+ : blocks.filter(b => b.attributes.visible);
},
icons() {
return this.contentIcons;