Merge pull request #1937 from crazyserver/MOBILE-3038
MOBILE-3038 competency: Adapt information to new fields show on web
This commit is contained in:
		
						commit
						b13e707fb1
					
				| @ -111,9 +111,11 @@ | ||||
|   "addon.competency.myplans": "tool_lp", | ||||
|   "addon.competency.noactivities": "tool_lp", | ||||
|   "addon.competency.nocompetencies": "local_moodlemobileapp", | ||||
|   "addon.competency.nocompetenciesincourse": "tool_lp", | ||||
|   "addon.competency.nocrossreferencedcompetencies": "tool_lp", | ||||
|   "addon.competency.noevidence": "tool_lp", | ||||
|   "addon.competency.noplanswerecreated": "tool_lp", | ||||
|   "addon.competency.nouserplanswithcompetency": "competency", | ||||
|   "addon.competency.path": "tool_lp", | ||||
|   "addon.competency.planstatusactive": "competency", | ||||
|   "addon.competency.planstatuscomplete": "competency", | ||||
| @ -126,6 +128,7 @@ | ||||
|   "addon.competency.reviewstatus": "tool_lp", | ||||
|   "addon.competency.status": "tool_lp", | ||||
|   "addon.competency.template": "tool_lp", | ||||
|   "addon.competency.uponcoursecompletion": "tool_lp", | ||||
|   "addon.competency.usercompetencystatus_idle": "competency", | ||||
|   "addon.competency.usercompetencystatus_inreview": "competency", | ||||
|   "addon.competency.usercompetencystatus_waitingforreview": "competency", | ||||
| @ -1695,6 +1698,7 @@ | ||||
|   "core.settings.enablerichtexteditor": "local_moodlemobileapp", | ||||
|   "core.settings.enablerichtexteditordescription": "local_moodlemobileapp", | ||||
|   "core.settings.enablesyncwifi": "local_moodlemobileapp", | ||||
|   "core.settings.entriesincache": "local_moodlemobileapp", | ||||
|   "core.settings.errordeletesitefiles": "local_moodlemobileapp", | ||||
|   "core.settings.errorsyncsite": "local_moodlemobileapp", | ||||
|   "core.settings.estimatedfreespace": "local_moodlemobileapp", | ||||
| @ -1713,7 +1717,6 @@ | ||||
|   "core.settings.privacypolicy": "local_moodlemobileapp", | ||||
|   "core.settings.pushid": "local_moodlemobileapp", | ||||
|   "core.settings.reportinbackground": "local_moodlemobileapp", | ||||
|   "core.settings.entriesincache": "local_moodlemobileapp", | ||||
|   "core.settings.settings": "moodle", | ||||
|   "core.settings.showdownloadoptions": "local_moodlemobileapp", | ||||
|   "core.settings.sites": "moodle", | ||||
|  | ||||
| @ -4,18 +4,19 @@ | ||||
|     </ion-refresher> | ||||
|     <core-loading [hideUntil]="competenciesLoaded"> | ||||
|         <ion-card *ngIf="!user && competencies && competencies.statistics.competencycount > 0"> | ||||
|             <ion-item text-wrap *ngIf="competencies.settings.pushratingstouserplans"> | ||||
|                 {{ 'addon.competency.coursecompetencyratingsarepushedtouserplans' | translate }} | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap *ngIf="!competencies.settings.pushratingstouserplans"> | ||||
|                 {{ 'addon.competency.coursecompetencyratingsarenotpushedtouserplans' | translate }} | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap> | ||||
|                 <strong>{{ 'addon.competency.progress' | translate }}</strong>: | ||||
|                 {{ 'addon.competency.xcompetenciesproficientoutofyincourse' | translate:{$a: {x: competencies.statistics.proficientcompetencycount, y: competencies.statistics.competencycount} } }} ({{ competencies.statistics.proficientcompetencypercentageformatted }}%) | ||||
|             <ng-container *ngIf="competencies.cangradecompetencies"> | ||||
|                 <ion-item text-wrap *ngIf="competencies.settings.pushratingstouserplans"> | ||||
|                     {{ 'addon.competency.coursecompetencyratingsarepushedtouserplans' | translate }} | ||||
|                 </ion-item> | ||||
|                 <ion-item text-wrap *ngIf="!competencies.settings.pushratingstouserplans" color="danger"> | ||||
|                     {{ 'addon.competency.coursecompetencyratingsarenotpushedtouserplans' | translate }} | ||||
|                 </ion-item> | ||||
|             </ng-container> | ||||
|             <ion-item text-wrap *ngIf="competencies.statistics.canbegradedincourse"> | ||||
|                 {{ 'addon.competency.xcompetenciesproficientoutofyincourse' | translate:{$a: {x: competencies.statistics.proficientcompetencycount, y: competencies.statistics.competencycount} } }} | ||||
|                 <core-progress-bar [progress]="competencies.statistics.proficientcompetencypercentage"></core-progress-bar> | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap *ngIf="competencies.statistics.leastproficientcount > 0"> | ||||
|             <ion-item text-wrap *ngIf="competencies.statistics.canmanagecoursecompetencies && competencies.statistics.leastproficientcount > 0"> | ||||
|                 <strong>{{ 'addon.competency.competenciesmostoftennotproficientincourse' | translate }}</strong>: | ||||
|                 <p *ngFor="let comp of competencies.statistics.leastproficient"> | ||||
|                     <a (click)="openCompetencySummary(comp.id)"> | ||||
| @ -25,42 +26,63 @@ | ||||
|             </ion-item> | ||||
|         </ion-card> | ||||
| 
 | ||||
|         <h3 margin-horizontal *ngIf="competencies && competencies.statistics.competencycount > 0">{{ 'addon.competency.competencies' | translate }}</h3> | ||||
|         <h3 margin-horizontal *ngIf="competencies && competencies.statistics.competencycount > 0">{{ 'addon.competency.coursecompetencies' | translate }}</h3> | ||||
|         <ion-card *ngIf="user"> | ||||
|              <ion-item text-wrap> | ||||
|                 <ion-avatar core-user-avatar [user]="user" item-start></ion-avatar> | ||||
|                 <h2><core-format-text [text]="user.fullname"></core-format-text></h2> | ||||
|             </ion-item> | ||||
|         </ion-card> | ||||
|         <core-empty-box *ngIf="competencies && competencies.statistics.competencycount == 0" icon="ribbon" message="{{ 'addon.competency.nocompetencies' | translate }}"></core-empty-box> | ||||
|         <core-empty-box *ngIf="competencies && competencies.statistics.competencycount == 0" icon="ribbon" message="{{ 'addon.competency.nocompetenciesincourse' | translate }}"></core-empty-box> | ||||
| 
 | ||||
|         <div *ngIf="competencies"> | ||||
|             <ion-card *ngFor="let competency of competencies.competencies"> | ||||
|                 <a ion-item text-wrap (click)="openCompetency(competency.competency.id)" [title]="competency.competency.shortname"> | ||||
|                     {{competency.competency.shortname}} <small>{{competency.competency.idnumber}}</small> | ||||
|                 <ion-item text-wrap (click)="openCompetency(competency.competency.id)" [title]="competency.competency.shortname" detail-push> | ||||
|                     <h2><strong>{{competency.competency.shortname}} <em>{{competency.competency.idnumber}}</em></strong></h2> | ||||
|                     <ion-badge item-end *ngIf="competency.usercompetencycourse && competency.usercompetencycourse.gradename" [color]="competency.usercompetencycourse.proficiency ? 'success' : 'danger'">{{ competency.usercompetencycourse.gradename }}</ion-badge> | ||||
|                 </a> | ||||
|                 </ion-item> | ||||
|                 <ion-item text-wrap> | ||||
|                     <div *ngIf="competency.competency.description"> | ||||
|                     <p *ngIf="competency.competency.description"> | ||||
|                         <core-format-text [text]=" competency.competency.description "></core-format-text> | ||||
|                     </div> | ||||
|                     </p> | ||||
|                     <div> | ||||
|                         <strong>{{ 'addon.competency.path' | translate }}</strong> | ||||
|                         {{ competency.comppath.framework.name }} | ||||
|                         <a *ngIf="competency.comppath.showlinks" [href]="competency.comppath.pluginbaseurl + '/competencies.php?competencyframeworkid=' + competency.comppath.framework.id + '&pagecontextid=' + competency.comppath.pagecontextid" core-link [title]="competency.comppath.framework.name">{{ competency.comppath.framework.name }}</a> | ||||
|                         <ng-container *ngIf="!competency.comppath.showlinks">{{ competency.comppath.framework.name }}</ng-container> | ||||
|                          /  | ||||
|                         <span *ngFor="let ancestor of competency.comppath.ancestors"> | ||||
|                              / <a (click)="openCompetencySummary(ancestor.id)">{{ ancestor.name }}</a> | ||||
|                             <a *ngIf="competency.comppath.showlinks" (click)="openCompetencySummary(ancestor.id)">{{ ancestor.name }}</a> | ||||
|                             <ng-container *ngIf="!competency.comppath.showlinks">{{ ancestor.name }}</ng-container> | ||||
|                             <ng-container *ngIf="!ancestor.last"> / </ng-container> | ||||
|                         </span> | ||||
|                     </div> | ||||
|                     <div *ngIf="competencies.statistics.canmanagecoursecompetencies"> | ||||
|                         <strong>{{ 'addon.competency.uponcoursecompletion' | translate }}</strong> | ||||
|                          <ng-container *ngFor="let ruleoutcome of competency.ruleoutcomeoptions"> | ||||
|                             <span *ngIf="ruleoutcome.selected"> | ||||
|                                 <core-format-text [text]="ruleoutcome.text"></core-format-text> | ||||
|                             </span> | ||||
|                         </ng-container> | ||||
|                     </div> | ||||
|                     <div> | ||||
|                         <strong>{{ 'addon.competency.activities' | translate }}</strong>: | ||||
|                         <span *ngIf="competency.coursemodules.length == 0"> | ||||
|                         <strong>{{ 'addon.competency.activities' | translate }}</strong> | ||||
|                         <p *ngIf="competency.coursemodules.length == 0"> | ||||
|                             {{ 'addon.competency.noactivities' | translate }} | ||||
|                         </span> | ||||
|                         <a ion-item text-wrap *ngFor="let activity of competency.coursemodules" [href]="activity.url" [title]="activity.name" core-link capture="true"> | ||||
|                         </p> | ||||
|                         <a ion-item text-wrap *ngFor="let activity of competency.coursemodules" [href]="activity.url" [title]="activity.name" core-link capture="true" class="core-course-module-handler item-media"> | ||||
|                             <img item-start [src]="activity.iconurl" core-external-content alt="" role="presentation" *ngIf="activity.iconurl" class="core-module-icon"> | ||||
|                             <core-format-text [text]="activity.name"></core-format-text> | ||||
|                         </a> | ||||
|                     </div> | ||||
|                     <div *ngIf="competency.plans"> | ||||
|                         <strong>{{ 'addon.competency.userplans' | translate }}</strong> | ||||
|                         <p *ngIf="competency.plans.length == 0"> | ||||
|                             {{ 'addon.competency.nouserplanswithcompetency' | translate }} | ||||
|                         </p> | ||||
|                         <a ion-item text-wrap *ngFor="let plan of competency.plans" [href]="plan.url" [title]="plan.name" core-link capture="true"> | ||||
|                             <core-format-text [text]="plan.name"></core-format-text> | ||||
|                         </a> | ||||
|                     </div> | ||||
|                 </ion-item> | ||||
|             </ion-card> | ||||
|         </div> | ||||
|  | ||||
| @ -23,9 +23,11 @@ | ||||
|     "myplans": "My learning plans", | ||||
|     "noactivities": "No activities", | ||||
|     "nocompetencies": "No competencies", | ||||
|     "nocompetenciesincourse": "No competencies have been linked to this course.", | ||||
|     "nocrossreferencedcompetencies": "No other competencies have been cross-referenced to this competency.", | ||||
|     "noevidence": "No evidence", | ||||
|     "noplanswerecreated": "No learning plans were created.", | ||||
|     "nouserplanswithcompetency": "No learning plans contain this competency.", | ||||
|     "path": "Path:", | ||||
|     "planstatusactive": "Active", | ||||
|     "planstatuscomplete": "Complete", | ||||
| @ -38,6 +40,7 @@ | ||||
|     "reviewstatus": "Review status", | ||||
|     "status": "Status", | ||||
|     "template": "Learning plan template", | ||||
|     "uponcoursecompletion": "Upon course completion:", | ||||
|     "usercompetencystatus_idle": "Idle", | ||||
|     "usercompetencystatus_inreview": "In review", | ||||
|     "usercompetencystatus_waitingforreview": "Waiting for review", | ||||
|  | ||||
| @ -11,7 +11,7 @@ | ||||
|         <core-loading [hideUntil]="competenciesLoaded"> | ||||
|             <ion-list> | ||||
|                 <a ion-item text-wrap *ngFor="let competency of competencies" [title]="competency.competency.shortname" (click)="openCompetency(competency.competency.id)" [class.core-split-item-selected]="competency.competency.id == competencyId"> | ||||
|                     {{ competency.competency.shortname }} <small>{{competency.competency.idnumber}}</small> | ||||
|                     <h2>{{ competency.competency.shortname }} <em>{{competency.competency.idnumber}}</em></h2> | ||||
|                     <ion-badge item-end *ngIf="competency.usercompetency" [color]="competency.usercompetency.proficiency ? 'success' : 'danger'">{{ competency.usercompetency.gradename }}</ion-badge> | ||||
|                     <ion-badge item-end *ngIf="competency.usercompetencycourse" [color]="competency.usercompetencycourse.proficiency ? 'success' : 'danger'">{{ competency.usercompetencycourse.gradename }}</ion-badge> | ||||
|                 </a> | ||||
|  | ||||
| @ -21,9 +21,13 @@ | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap> | ||||
|                 <strong>{{ 'addon.competency.path' | translate }}</strong> | ||||
|                 {{ competency.competency.comppath.framework.name }} | ||||
|                 <a *ngIf="competency.competency.comppath.showlinks" [href]="competency.competency.comppath.pluginbaseurl + '/competencies.php?competencyframeworkid=' + competency.competency.comppath.framework.id + '&pagecontextid=' + competency.competency.comppath.pagecontextid" core-link [title]="competency.competency.comppath.framework.name">{{ competency.competency.comppath.framework.name }}</a> | ||||
|                 <ng-container *ngIf="!competency.competency.comppath.showlinks">{{ competency.competency.comppath.framework.name }}</ng-container> | ||||
|                  /  | ||||
|                 <span *ngFor="let ancestor of competency.competency.comppath.ancestors"> | ||||
|                      / <a (click)="openCompetencySummary(ancestor.id)">{{ ancestor.name }}</a> | ||||
|                     <a *ngIf="competency.competency.comppath.showlinks" (click)="openCompetencySummary(ancestor.id)">{{ ancestor.name }}</a> | ||||
|                     <ng-container *ngIf="!competency.competency.comppath.showlinks">{{ ancestor.name }}</ng-container> | ||||
|                     <ng-container *ngIf="!ancestor.last"> / </ng-container> | ||||
|                 </span> | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap> | ||||
| @ -38,21 +42,21 @@ | ||||
|                 </div> | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap *ngIf="coursemodules"> | ||||
|                 <strong>{{ 'addon.competency.activities' | translate }}</strong>: | ||||
|                 <span *ngIf="coursemodules.length == 0"> | ||||
|                 <strong>{{ 'addon.competency.activities' | translate }}</strong> | ||||
|                 <p *ngIf="coursemodules.length == 0"> | ||||
|                     {{ 'addon.competency.noactivities' | translate }} | ||||
|                 </span> | ||||
|                 </p> | ||||
|                 <a ion-item text-wrap *ngFor="let activity of coursemodules" [href]="activity.url" [title]="activity.name" core-link capture="true"> | ||||
|                     <img item-start core-external-content [src]="activity.iconurl" alt="" role="presentation" *ngIf="activity.iconurl" class="core-module-icon"> | ||||
|                     <core-format-text [text]="activity.name"></core-format-text> | ||||
|                 </a> | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap *ngIf="competency.usercompetency.status"> | ||||
|                 <strong>{{ 'addon.competency.reviewstatus' | translate }}</strong>: | ||||
|                 <strong>{{ 'addon.competency.reviewstatus' | translate }}</strong> | ||||
|                 {{ competency.usercompetency.statusname }} | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap> | ||||
|                 <strong>{{ 'addon.competency.proficient' | translate }}</strong>: | ||||
|                 <strong>{{ 'addon.competency.proficient' | translate }}</strong> | ||||
|                 <ion-badge color="success" *ngIf="competency.usercompetency.proficiency"> | ||||
|                     {{ 'core.yes' | translate }} | ||||
|                 </ion-badge> | ||||
| @ -61,7 +65,7 @@ | ||||
|                 </ion-badge> | ||||
|             </ion-item> | ||||
|             <ion-item text-wrap> | ||||
|                 <strong>{{ 'addon.competency.rating' | translate }}</strong>: | ||||
|                 <strong>{{ 'addon.competency.rating' | translate }}</strong> | ||||
|                 <ion-badge color="dark">{{ competency.usercompetency.gradename }}</ion-badge> | ||||
|             </ion-item> | ||||
|         </ion-card> | ||||
|  | ||||
| @ -16,6 +16,9 @@ | ||||
|        </ion-card> | ||||
|         <ion-card *ngIf="plan"> | ||||
|             <ion-list> | ||||
|                 <ion-item text-wrap *ngIf="plan.plan.description"> | ||||
|                     <core-format-text [text]="plan.plan.description"></core-format-text> | ||||
|                 </ion-item> | ||||
|                 <ion-item text-wrap> | ||||
|                     <strong>{{ 'addon.competency.status' | translate }}</strong>: | ||||
|                     {{ plan.plan.statusname }} | ||||
| @ -36,13 +39,13 @@ | ||||
|             </ion-list> | ||||
|         </ion-card> | ||||
|         <ion-card *ngIf="plan"> | ||||
|             <ion-card-header text-wrap>{{ 'addon.competency.learningplancompetencies' | translate }}</ion-card-header> | ||||
|             <ion-card-header text-wrap><h2>{{ 'addon.competency.learningplancompetencies' | translate }}</h2></ion-card-header> | ||||
|             <ion-list> | ||||
|                 <ion-item text-wrap *ngIf="plan.competencycount == 0"> | ||||
|                     {{ 'addon.competency.nocompetencies' | translate }} | ||||
|                 </ion-item> | ||||
|                 <a ion-item text-wrap *ngFor="let competency of plan.competencies" (click)="openCompetency(competency.competency.id)" [title]="competency.competency.shortname"> | ||||
|                     {{competency.competency.shortname}} <small>{{competency.competency.idnumber}}</small> | ||||
|                     <h2>{{competency.competency.shortname}} <em>{{competency.competency.idnumber}}</em></h2> | ||||
|                     <ion-badge item-end [color]="competency.usercompetency.proficiency ? 'success' : 'danger'">{{ competency.usercompetency.gradename }}</ion-badge> | ||||
|                 </a> | ||||
|             </ion-list> | ||||
|  | ||||
| @ -15,7 +15,7 @@ | ||||
|                 <a ion-item text-wrap *ngFor="let plan of plans" [title]="plan.name" (click)="openPlan(plan.id)" [class.core-split-item-selected]="plan.id == planId"> | ||||
|                     <h2>{{ plan.name }}</h2> | ||||
|                     <p *ngIf="plan.duedate > 0">{{ 'addon.competency.duedate' | translate }}: {{ plan.duedate * 1000 | coreFormatDate :'strftimedatetimeshort' }}</p> | ||||
|                     <ion-badge text-wrap [color]="plan.statuscolor">{{ plan.statusname }}</ion-badge> | ||||
|                     <ion-badge item-end text-wrap [color]="plan.statuscolor">{{ plan.statusname }}</ion-badge> | ||||
|                 </a> | ||||
|             </ion-list> | ||||
|         </core-loading> | ||||
|  | ||||
| @ -111,9 +111,11 @@ | ||||
|     "addon.competency.myplans": "My learning plans", | ||||
|     "addon.competency.noactivities": "No activities", | ||||
|     "addon.competency.nocompetencies": "No competencies", | ||||
|     "addon.competency.nocompetenciesincourse": "No competencies have been linked to this course.", | ||||
|     "addon.competency.nocrossreferencedcompetencies": "No other competencies have been cross-referenced to this competency.", | ||||
|     "addon.competency.noevidence": "No evidence", | ||||
|     "addon.competency.noplanswerecreated": "No learning plans were created.", | ||||
|     "addon.competency.nouserplanswithcompetency": "No learning plans contain this competency.", | ||||
|     "addon.competency.path": "Path:", | ||||
|     "addon.competency.planstatusactive": "Active", | ||||
|     "addon.competency.planstatuscomplete": "Complete", | ||||
| @ -126,6 +128,7 @@ | ||||
|     "addon.competency.reviewstatus": "Review status", | ||||
|     "addon.competency.status": "Status", | ||||
|     "addon.competency.template": "Learning plan template", | ||||
|     "addon.competency.uponcoursecompletion": "Upon course completion:", | ||||
|     "addon.competency.usercompetencystatus_idle": "Idle", | ||||
|     "addon.competency.usercompetencystatus_inreview": "In review", | ||||
|     "addon.competency.usercompetencystatus_waitingforreview": "Waiting for review", | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user