Skip to content

Commit 92d6d09

Browse files
committed
MOBILE-2915 completion: Display warning for teachers viewing own
1 parent 2659835 commit 92d6d09

File tree

5 files changed

+20
-5
lines changed

5 files changed

+20
-5
lines changed

scripts/langindex.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@
145145
"addon.coursecompletion.criteriarequiredany": "completion",
146146
"addon.coursecompletion.inprogress": "completion",
147147
"addon.coursecompletion.manualselfcompletion": "completion",
148+
"addon.coursecompletion.nottracked": "completion",
148149
"addon.coursecompletion.notyetstarted": "completion",
149150
"addon.coursecompletion.pending": "completion",
150151
"addon.coursecompletion.required": "moodle",

src/addon/coursecompletion/components/report/addon-course-completion-report.html

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<ion-refresher-content pullingText="{{ 'core.pulltorefresh' | translate }}"></ion-refresher-content>
44
</ion-refresher>
55
<core-loading [hideUntil]="completionLoaded">
6-
<ion-card *ngIf="completion">
6+
<ion-card *ngIf="completion && tracked">
77
<ion-item text-wrap>
88
<h2>{{ 'addon.coursecompletion.status' | translate }}</h2>
99
<p>{{ completion.statusText | translate }}</p>
@@ -14,7 +14,7 @@ <h2>{{ 'addon.coursecompletion.required' | translate }}</h2>
1414
<p *ngIf="completion.aggregation === 2">{{ 'addon.coursecompletion.criteriarequiredany' | translate }}</p>
1515
</ion-item>
1616
</ion-card>
17-
<ion-card *ngIf="completion">
17+
<ion-card *ngIf="completion && tracked">
1818
<ion-item-divider>{{ 'addon.coursecompletion.requiredcriteria' | translate }}</ion-item-divider>
1919
<ion-item class="hidden-tablet" text-wrap *ngFor="let criteria of completion.completions">
2020
<h2><core-format-text clean="true" [text]="criteria.details.criteria"></core-format-text></h2>
@@ -41,11 +41,16 @@ <h2><core-format-text clean="true" [text]="criteria.details.criteria"></core-for
4141
</ion-row>
4242
</ion-item>
4343
</ion-card>
44-
<ion-card *ngIf="showSelfComplete">
44+
<ion-card *ngIf="showSelfComplete && tracked">
4545
<ion-item-divider>{{ 'addon.coursecompletion.manualselfcompletion' | translate }}</ion-item-divider>
4646
<ion-item>
4747
<button ion-button block (click)="completeCourse()">{{ 'addon.coursecompletion.completecourse' | translate }}</button>
4848
</ion-item>
4949
</ion-card>
50+
51+
<div *ngIf="!tracked" class="core-warning-card" icon-start>
52+
<ion-icon name="warning"></ion-icon>
53+
{{ 'addon.coursecompletion.nottracked' | translate }}
54+
</div>
5055
</core-loading>
5156
</ion-content>

src/addon/coursecompletion/components/report/report.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ export class AddonCourseCompletionReportComponent implements OnInit {
3131
completionLoaded = false;
3232
completion: any;
3333
showSelfComplete: boolean;
34+
tracked = true; // Whether completion is tracked.
3435

3536
constructor(
3637
private sitesProvider: CoreSitesProvider,
@@ -62,8 +63,14 @@ export class AddonCourseCompletionReportComponent implements OnInit {
6263

6364
this.completion = completion;
6465
this.showSelfComplete = this.courseCompletionProvider.canMarkSelfCompleted(this.userId, completion);
65-
}).catch((message) => {
66-
this.domUtils.showErrorModalDefault(message, 'addon.coursecompletion.couldnotloadreport', true);
66+
this.tracked = true;
67+
}).catch((error) => {
68+
if (error && error.errorcode == 'notenroled') {
69+
// Not enrolled error, probably a teacher.
70+
this.tracked = false;
71+
} else {
72+
this.domUtils.showErrorModalDefault(error, 'addon.coursecompletion.couldnotloadreport', true);
73+
}
6774
});
6875
}
6976

src/addon/coursecompletion/lang/en.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
"criteriarequiredany": "Any criteria below are required",
1313
"inprogress": "In progress",
1414
"manualselfcompletion": "Manual self completion",
15+
"nottracked": "You are currently not being tracked by completion in this course",
1516
"notyetstarted": "Not yet started",
1617
"pending": "Pending",
1718
"required": "Required",

src/assets/lang/en.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@
145145
"addon.coursecompletion.criteriarequiredany": "Any criteria below are required",
146146
"addon.coursecompletion.inprogress": "In progress",
147147
"addon.coursecompletion.manualselfcompletion": "Manual self completion",
148+
"addon.coursecompletion.nottracked": "You are currently not being tracked by completion in this course",
148149
"addon.coursecompletion.notyetstarted": "Not yet started",
149150
"addon.coursecompletion.pending": "Pending",
150151
"addon.coursecompletion.required": "Required",

0 commit comments

Comments
 (0)