Skip to content

Commit 8098acd

Browse files
committed
MOBILE-3523 essay: Fix essay text not displayed in review
1 parent 95a16d6 commit 8098acd

File tree

6 files changed

+135
-112
lines changed

6 files changed

+135
-112
lines changed

src/addon/mod/quiz/pages/player/player.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ <h2 *ngIf="!question.number" class="inline">{{ 'core.question.information' | tr
5858
</ion-note>
5959
</ion-item-divider>
6060
<!-- Body of the question. -->
61-
<core-question text-wrap [question]="question" [component]="component" [componentId]="quiz.coursemodule" [attemptId]="attempt.id" [usageId]="attempt.uniqueid" [offlineEnabled]="offline" contextLevel="module" [contextInstanceId]="quiz.coursemodule" [courseId]="courseId" (onAbort)="abortQuiz()" (buttonClicked)="behaviourButtonClicked($event)"></core-question>
61+
<core-question text-wrap [question]="question" [component]="component" [componentId]="quiz.coursemodule" [attemptId]="attempt.id" [usageId]="attempt.uniqueid" [offlineEnabled]="offline" contextLevel="module" [contextInstanceId]="quiz.coursemodule" [courseId]="courseId" [review]="false" (onAbort)="abortQuiz()" (buttonClicked)="behaviourButtonClicked($event)"></core-question>
6262
</ion-card>
6363
</div>
6464
</form>

src/addon/mod/quiz/pages/review/review.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ <h2 *ngIf="!question.number" class="inline">{{ 'core.question.information' | tr
7777
</ion-note>
7878
</ion-item-divider>
7979
<!-- Body of the question. -->
80-
<core-question text-wrap [question]="question" [component]="component" [componentId]="componentId" [attemptId]="attempt.id" [usageId]="attempt.uniqueid" [offlineEnabled]="false" contextLevel="module" [contextInstanceId]="quiz.coursemodule" [courseId]="courseId"></core-question>
80+
<core-question text-wrap [question]="question" [component]="component" [componentId]="componentId" [attemptId]="attempt.id" [usageId]="attempt.uniqueid" [offlineEnabled]="false" contextLevel="module" [contextInstanceId]="quiz.coursemodule" [courseId]="courseId" [review]="true"></core-question>
8181
</ion-card>
8282
</div>
8383

src/addon/qtype/essay/component/addon-qtype-essay.html

Lines changed: 41 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -4,49 +4,50 @@
44
<p><core-format-text [component]="component" [componentId]="componentId" [text]="question.text" [contextLevel]="contextLevel" [contextInstanceId]="contextInstanceId" [courseId]="courseId"></core-format-text></p>
55
</ion-item>
66

7-
<!-- Textarea. -->
8-
<ion-item *ngIf="question.textarea && (!question.hasDraftFiles || uploadFilesSupported)">
9-
<!-- "Format" and draftid hidden inputs -->
10-
<input item-content *ngIf="question.formatInput" type="hidden" [name]="question.formatInput.name" [value]="question.formatInput.value" >
11-
<input item-content *ngIf="question.answerDraftIdInput" type="hidden" [name]="question.answerDraftIdInput.name" [value]="question.answerDraftIdInput.value" >
12-
<!-- Plain text textarea. -->
13-
<ion-textarea *ngIf="question.isPlainText" class="core-question-textarea" [ngClass]='{"core-monospaced": question.isMonospaced}' placeholder="{{ 'core.question.answer' | translate }}" [attr.name]="question.textarea.name" aria-multiline="true" [ngModel]="question.textarea.text"></ion-textarea>
14-
<!-- Rich text editor. -->
15-
<core-rich-text-editor item-content *ngIf="!question.isPlainText" placeholder="{{ 'core.question.answer' | translate }}" [control]="formControl" [name]="question.textarea.name" [component]="component" [componentId]="componentId" [autoSave]="false"></core-rich-text-editor>
16-
</ion-item>
17-
18-
<!-- Draft files not supported. -->
19-
<ng-container *ngIf="question.textarea && question.hasDraftFiles && !uploadFilesSupported">
20-
<ion-item text-wrap class="core-danger-item">
21-
<p class="core-question-warning">{{ 'core.question.errorembeddedfilesnotsupportedinsite' | translate }}</p>
22-
</ion-item>
23-
<ion-item text-wrap>
24-
<p><core-format-text [component]="component" [componentId]="componentId" [text]="question.textarea.text" [contextLevel]="contextLevel" [contextInstanceId]="contextInstanceId" [courseId]="courseId"></core-format-text></p>
7+
<!-- Editing the question. -->
8+
<ng-container *ngIf="!review">
9+
<!-- Textarea. -->
10+
<ion-item *ngIf="question.textarea && (!question.hasDraftFiles || uploadFilesSupported)">
11+
<!-- "Format" and draftid hidden inputs -->
12+
<input item-content *ngIf="question.formatInput" type="hidden" [name]="question.formatInput.name" [value]="question.formatInput.value" >
13+
<input item-content *ngIf="question.answerDraftIdInput" type="hidden" [name]="question.answerDraftIdInput.name" [value]="question.answerDraftIdInput.value" >
14+
<!-- Plain text textarea. -->
15+
<ion-textarea *ngIf="question.isPlainText" class="core-question-textarea" [ngClass]='{"core-monospaced": question.isMonospaced}' placeholder="{{ 'core.question.answer' | translate }}" [attr.name]="question.textarea.name" aria-multiline="true" [ngModel]="question.textarea.text"></ion-textarea>
16+
<!-- Rich text editor. -->
17+
<core-rich-text-editor item-content *ngIf="!question.isPlainText" placeholder="{{ 'core.question.answer' | translate }}" [control]="formControl" [name]="question.textarea.name" [component]="component" [componentId]="componentId" [autoSave]="false"></core-rich-text-editor>
2518
</ion-item>
26-
</ng-container>
27-
28-
<!-- Attachments. -->
29-
<ng-container *ngIf="question.allowsAttachments">
30-
<core-attachments *ngIf="uploadFilesSupported && question.attachmentsDraftIdInput" [files]="attachments" [component]="component" [componentId]="componentId" [maxSize]="question.attachmentsMaxBytes" [maxSubmissions]="question.attachmentsMaxFiles" [allowOffline]="offlineEnabled" [acceptedTypes]="question.attachmentsAcceptedTypes"></core-attachments>
31-
32-
<core-files *ngIf="uploadFilesSupported && !question.attachmentsDraftIdInput" [files]="attachments" [component]="component" [componentId]="componentId"></core-files>
3319

34-
<input item-content *ngIf="question.attachmentsDraftIdInput" type="hidden" [name]="question.attachmentsDraftIdInput.name" [value]="question.attachmentsDraftIdInput.value" >
35-
36-
<!-- Attachments not supported in this site. -->
37-
<ion-item text-wrap *ngIf="!uploadFilesSupported" class="core-danger-item">
38-
<p class="core-question-warning">{{ 'core.question.errorattachmentsnotsupportedinsite' | translate }}</p>
39-
</ion-item>
20+
<!-- Draft files not supported. -->
21+
<ng-container *ngIf="question.textarea && question.hasDraftFiles && !uploadFilesSupported">
22+
<ion-item text-wrap class="core-danger-item">
23+
<p class="core-question-warning">{{ 'core.question.errorembeddedfilesnotsupportedinsite' | translate }}</p>
24+
</ion-item>
25+
<ion-item text-wrap>
26+
<p><core-format-text [component]="component" [componentId]="componentId" [text]="question.textarea.text" [contextLevel]="contextLevel" [contextInstanceId]="contextInstanceId" [courseId]="courseId"></core-format-text></p>
27+
</ion-item>
28+
</ng-container>
29+
30+
<!-- Attachments. -->
31+
<ng-container *ngIf="question.allowsAttachments">
32+
<core-attachments *ngIf="uploadFilesSupported && question.attachmentsDraftIdInput" [files]="attachments" [component]="component" [componentId]="componentId" [maxSize]="question.attachmentsMaxBytes" [maxSubmissions]="question.attachmentsMaxFiles" [allowOffline]="offlineEnabled" [acceptedTypes]="question.attachmentsAcceptedTypes"></core-attachments>
33+
34+
<input item-content *ngIf="question.attachmentsDraftIdInput" type="hidden" [name]="question.attachmentsDraftIdInput.name" [value]="question.attachmentsDraftIdInput.value" >
35+
36+
<!-- Attachments not supported in this site. -->
37+
<ion-item text-wrap *ngIf="!uploadFilesSupported" class="core-danger-item">
38+
<p class="core-question-warning">{{ 'core.question.errorattachmentsnotsupportedinsite' | translate }}</p>
39+
</ion-item>
40+
</ng-container>
4041
</ng-container>
4142

42-
<!-- Answer to the question and attachments (reviewing). -->
43-
<ion-item text-wrap *ngIf="!question.textarea && (question.answer || question.answer == '')">
44-
<p><core-format-text [ngClass]='{"core-monospaced": question.isMonospaced}' [component]="component" [componentId]="componentId" [text]="question.answer" [contextLevel]="contextLevel" [contextInstanceId]="contextInstanceId" [courseId]="courseId"></core-format-text></p>
45-
</ion-item>
43+
<!-- Reviewing the question. -->
44+
<ng-container *ngIf="review">
45+
<!-- Answer to the question and attachments (reviewing). -->
46+
<ion-item text-wrap *ngIf="question.answer || question.answer == ''">
47+
<p><core-format-text [ngClass]='{"core-monospaced": question.isMonospaced}' [component]="component" [componentId]="componentId" [text]="question.answer" [contextLevel]="contextLevel" [contextInstanceId]="contextInstanceId" [courseId]="courseId"></core-format-text></p>
48+
</ion-item>
4649

47-
<ion-item *ngIf="!question.textarea && question.attachments && question.attachments.length">
48-
<div no-lines>
49-
<core-file *ngFor="let attachment of question.attachments" [file]="attachment" [component]="component" [componentId]="componentId"></core-file>
50-
</div>
51-
</ion-item>
50+
<!-- List of attachments when reviewing. -->
51+
<core-files *ngIf="question.attachments" [files]="question.attachments" [component]="component" [componentId]="componentId"></core-files>
52+
</ng-container>
5253
</section>

src/addon/qtype/essay/component/essay.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,11 @@ export class AddonQtypeEssayComponent extends CoreQuestionBaseComponent implemen
4444
*/
4545
ngOnInit(): void {
4646
this.uploadFilesSupported = typeof this.question.responsefileareas != 'undefined';
47-
this.initEssayComponent();
47+
this.initEssayComponent(this.review);
4848

4949
this.formControl = this.fb.control(this.question.textarea && this.question.textarea.text);
5050

51-
if (this.question.allowsAttachments && this.uploadFilesSupported) {
51+
if (this.question.allowsAttachments && this.uploadFilesSupported && !this.review) {
5252
this.loadAttachments();
5353
}
5454
}

0 commit comments

Comments
 (0)