diff --git a/resources/vue/components/courseware/toolbar/CoursewareBlockadderItem.vue b/resources/vue/components/courseware/toolbar/CoursewareBlockadderItem.vue
index b798d7f155a1443651f7e9a5407f7c5d7e3dfa46..feb00ecd4ee65cd42a4e53f0ab4bfb96aecc34b1 100644
--- a/resources/vue/components/courseware/toolbar/CoursewareBlockadderItem.vue
+++ b/resources/vue/components/courseware/toolbar/CoursewareBlockadderItem.vue
@@ -35,6 +35,7 @@ export default {
     data() {
         return {
             showInfo: false,
+            addInProgress: false,
         };
     },
     computed: {
@@ -77,13 +78,17 @@ export default {
             setAdderStorage: 'coursewareBlockAdder',
         }),
         async addBlock() {
-            this.setAdderStorage({ 
-                container: this.blockAdder.container, 
-                section: this.blockAdder.section, 
-                type: this.type ,
-                position: false
-            });
-            this.addNewBlock();
+            if (!this.addInProgress) {
+                this.addInProgress = true;
+                this.setAdderStorage({ 
+                    container: this.blockAdder.container, 
+                    section: this.blockAdder.section, 
+                    type: this.type ,
+                    position: false
+                });
+                await this.addNewBlock();
+                this.addInProgress = false;
+            }
         },
         toggleFavItem() {
             if (this.blockTypeIsFav) {