diff --git a/README.md b/README.md
index 08742f5d89b5..a982be2c6bba 100644
--- a/README.md
+++ b/README.md
@@ -193,7 +193,7 @@ Refer to [Using JHipster in production](http://www.jhipster.tech/production) for
The following command can automate the deployment to a server. The example shows the deployment to the main Artemis test server (which runs a virtual machine):
```shell
-./artemis-server-cli deploy username@artemistest.ase.in.tum.de -w build/libs/Artemis-7.6.0.war
+./artemis-server-cli deploy username@artemistest.ase.in.tum.de -w build/libs/Artemis-7.6.1.war
```
## Architecture
diff --git a/build.gradle b/build.gradle
index 163b2517748f..3706479625f3 100644
--- a/build.gradle
+++ b/build.gradle
@@ -25,7 +25,7 @@ plugins {
}
group = "de.tum.cit.aet.artemis"
-version = "7.6.0"
+version = "7.6.1"
description = "Interactive Learning with Individual Feedback"
java {
diff --git a/package-lock.json b/package-lock.json
index 91ee03d72aaf..4737065d0233 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "artemis",
- "version": "7.6.0",
+ "version": "7.6.1",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "artemis",
- "version": "7.6.0",
+ "version": "7.6.1",
"hasInstallScript": true,
"license": "MIT",
"dependencies": {
diff --git a/package.json b/package.json
index 755adfae3d3e..77b79ed4f3d8 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "artemis",
- "version": "7.6.0",
+ "version": "7.6.1",
"description": "Interactive Learning with Individual Feedback",
"private": true,
"license": "MIT",
diff --git a/src/main/webapp/app/exercises/shared/result/result.component.html b/src/main/webapp/app/exercises/shared/result/result.component.html
index 911320c183df..65c4be9ca9de 100644
--- a/src/main/webapp/app/exercises/shared/result/result.component.html
+++ b/src/main/webapp/app/exercises/shared/result/result.component.html
@@ -61,7 +61,7 @@
}
@if (!isInSidebarCard) {
- ({{ result!.completionDate | artemisTimeAgo }} )
+ ({{ result!.completionDate | artemisTimeAgo }})
}
@if (hasBuildArtifact() && participation.type === ParticipationType.PROGRAMMING) {
diff --git a/src/main/webapp/app/overview/course-conversations/course-conversations.component.ts b/src/main/webapp/app/overview/course-conversations/course-conversations.component.ts
index 159818511aa8..2d56484f8a46 100644
--- a/src/main/webapp/app/overview/course-conversations/course-conversations.component.ts
+++ b/src/main/webapp/app/overview/course-conversations/course-conversations.component.ts
@@ -156,11 +156,11 @@ export class CourseConversationsComponent implements OnInit, OnDestroy {
this.subscribeToIsCodeOfConductAccepted();
this.subscribeToIsCodeOfConductPresented();
this.subscribeToConversationsOfUser();
- this.subscribeToLoading();
this.updateQueryParameters();
this.prepareSidebarData();
this.metisConversationService.checkIsCodeOfConductAccepted(this.course!);
this.isServiceSetUp = true;
+ this.isLoading = false;
}
});
@@ -224,12 +224,6 @@ export class CourseConversationsComponent implements OnInit, OnDestroy {
});
}
- private subscribeToLoading() {
- this.metisConversationService.isLoading$.pipe(takeUntil(this.ngUnsubscribe)).subscribe((isLoading: boolean) => {
- this.isLoading = isLoading;
- });
- }
-
acceptCodeOfConduct() {
if (this.course) {
this.metisConversationService.acceptCodeOfConduct(this.course);
diff --git a/src/main/webapp/app/overview/course-conversations/layout/conversation-messages/conversation-messages.component.html b/src/main/webapp/app/overview/course-conversations/layout/conversation-messages/conversation-messages.component.html
index 373d7b8d9694..f2931fa40d90 100644
--- a/src/main/webapp/app/overview/course-conversations/layout/conversation-messages/conversation-messages.component.html
+++ b/src/main/webapp/app/overview/course-conversations/layout/conversation-messages/conversation-messages.component.html
@@ -67,8 +67,9 @@
diff --git a/src/main/webapp/app/overview/course-conversations/layout/conversation-messages/conversation-messages.component.scss b/src/main/webapp/app/overview/course-conversations/layout/conversation-messages/conversation-messages.component.scss
index 01f09f46008e..d1beda749f53 100644
--- a/src/main/webapp/app/overview/course-conversations/layout/conversation-messages/conversation-messages.component.scss
+++ b/src/main/webapp/app/overview/course-conversations/layout/conversation-messages/conversation-messages.component.scss
@@ -59,4 +59,8 @@
padding-top: 100px;
padding-bottom: 100px;
}
+
+ .conversation-messages-message-list.is-fetching-posts {
+ display: none;
+ }
}
diff --git a/src/main/webapp/app/overview/course-faq/course-faq.component.html b/src/main/webapp/app/overview/course-faq/course-faq.component.html
index 115efb80cc1c..57e8599419e6 100644
--- a/src/main/webapp/app/overview/course-faq/course-faq.component.html
+++ b/src/main/webapp/app/overview/course-faq/course-faq.component.html
@@ -27,9 +27,15 @@
+ @if (faqs.length === 0) {
+
+ }
@for (faq of this.filteredFaqs; track faq) {
}
+ @if (filteredFaqs.length === 0 && faqs.length > 0) {
+
+ }
diff --git a/src/main/webapp/app/overview/course-faq/course-faq.component.ts b/src/main/webapp/app/overview/course-faq/course-faq.component.ts
index 03fd207fda21..db5a91e2c3d7 100644
--- a/src/main/webapp/app/overview/course-faq/course-faq.component.ts
+++ b/src/main/webapp/app/overview/course-faq/course-faq.component.ts
@@ -16,6 +16,7 @@ import { loadCourseFaqCategories } from 'app/faq/faq.utils';
import { CustomExerciseCategoryBadgeComponent } from 'app/shared/exercise-categories/custom-exercise-category-badge/custom-exercise-category-badge.component';
import { onError } from 'app/shared/util/global.utils';
import { SearchFilterComponent } from 'app/shared/search-filter/search-filter.component';
+import { ArtemisMarkdownModule } from 'app/shared/markdown.module';
@Component({
selector: 'jhi-course-faq',
@@ -23,7 +24,7 @@ import { SearchFilterComponent } from 'app/shared/search-filter/search-filter.co
styleUrls: ['../course-overview.scss', 'course-faq.component.scss'],
encapsulation: ViewEncapsulation.None,
standalone: true,
- imports: [ArtemisSharedComponentModule, ArtemisSharedModule, CourseFaqAccordionComponent, CustomExerciseCategoryBadgeComponent, SearchFilterComponent],
+ imports: [ArtemisSharedComponentModule, ArtemisSharedModule, CourseFaqAccordionComponent, CustomExerciseCategoryBadgeComponent, SearchFilterComponent, ArtemisMarkdownModule],
})
export class CourseFaqComponent implements OnInit, OnDestroy {
private ngUnsubscribe = new Subject();
diff --git a/src/main/webapp/app/overview/exercise-details/request-feedback-button/request-feedback-button.component.html b/src/main/webapp/app/overview/exercise-details/request-feedback-button/request-feedback-button.component.html
index 6d6addcc2b84..69310708cac3 100644
--- a/src/main/webapp/app/overview/exercise-details/request-feedback-button/request-feedback-button.component.html
+++ b/src/main/webapp/app/overview/exercise-details/request-feedback-button/request-feedback-button.component.html
@@ -1,4 +1,4 @@
-@if (!isExamExercise) {
+@if (!isExamExercise && requestFeedbackEnabled) {
@if (athenaEnabled) {
@if (exercise().type === ExerciseType.TEXT) {