Skip to content

Commit

Permalink
MOBILE-4379 assign: Add CTA button if unsupported submission plugins
Browse files Browse the repository at this point in the history
  • Loading branch information
crazyserver committed Jul 19, 2023
1 parent a4edff1 commit 9b43c71
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -200,13 +200,21 @@ <h2>{{ 'addon.mod_assign.userswhoneedtosubmit' | translate: {$a: ''} }}</h2>
{{ 'addon.mod_assign.editsubmission' | translate }}
</ion-button>
</ng-container>
<ion-item class="core-danger-item ion-text-wrap" *ngIf="(unsupportedEditPlugins
&& unsupportedEditPlugins.length && !showErrorStatementEdit)|| showErrorStatementEdit">
<ion-item class="core-danger-item ion-text-wrap"
*ngIf="(unsupportedEditPlugins.length && !showErrorStatementEdit)|| showErrorStatementEdit">
<ion-label>
<ng-container
*ngIf="unsupportedEditPlugins && unsupportedEditPlugins.length && !showErrorStatementEdit">
<p>{{ 'addon.mod_assign.erroreditpluginsnotsupported' | translate }}</p>
<p *ngFor="let name of unsupportedEditPlugins">{{ name }}</p>
<ul>
<li *ngFor="let name of unsupportedEditPlugins">{{ name }}</li>
</ul>
<ion-button expand="block" *ngIf="submissionUrl" [href]="submissionUrl" core-link
[showBrowserWarning]="false">
{{ 'core.openinbrowser' | translate }}
<ion-icon name="fas-up-right-from-square" slot="end" aria-hidden="true"></ion-icon>
</ion-button>

</ng-container>
<ng-container *ngIf="showErrorStatementEdit">
<p>{{ 'addon.mod_assign.cannoteditduetostatementsubmission' | translate }}</p>
Expand Down
7 changes: 7 additions & 0 deletions src/addons/mod/assign/components/submission/submission.ts
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ export class AddonModAssignSubmissionComponent implements OnInit, OnDestroy, Can
canSaveGrades = false; // Whether the user can save the grades.
allowAddAttempt = false; // Allow adding a new attempt when grading.
gradeUrl?: string; // URL to grade in browser.
submissionUrl?: string; // URL to add/edit a submission in browser.
isPreviousAttemptEmpty = true; // Whether the previous attempt contains an empty submission.
showDates = false; // Whether to show some dates.
timeLimitFinished = false; // Whether there is a time limit and it finished, so the user will submit late.
Expand Down Expand Up @@ -788,6 +789,12 @@ export class AddonModAssignSubmissionComponent implements OnInit, OnDestroy, Can
*/
protected async loadUnsupportedPlugins(): Promise<void> {
this.unsupportedEditPlugins = await AddonModAssign.getUnsupportedEditPlugins(this.userSubmission?.plugins || []);

if (this.unsupportedEditPlugins && !this.submissionUrl) {
const mod = await CoreCourse.getModule(this.moduleId, this.courseId, undefined, true);
this.submissionUrl = `${mod.url}&action=editsubmission`;
}

}

/**
Expand Down

0 comments on commit 9b43c71

Please sign in to comment.