-
-
-
+ {{ option.text }}
diff --git a/src/addon/qtype/ddimageortext/component/addon-qtype-ddimageortext.html b/src/addon/qtype/ddimageortext/component/addon-qtype-ddimageortext.html
index 218b25b24..e1e79fdc3 100644
--- a/src/addon/qtype/ddimageortext/component/addon-qtype-ddimageortext.html
+++ b/src/addon/qtype/ddimageortext/component/addon-qtype-ddimageortext.html
@@ -7,7 +7,7 @@
{{ 'core.question.howtodraganddrop' | translate }}
-
-
+
+
diff --git a/src/addon/qtype/ddmarker/component/addon-qtype-ddmarker.html b/src/addon/qtype/ddmarker/component/addon-qtype-ddmarker.html
index 199abc85d..58763a33e 100644
--- a/src/addon/qtype/ddmarker/component/addon-qtype-ddmarker.html
+++ b/src/addon/qtype/ddmarker/component/addon-qtype-ddmarker.html
@@ -7,7 +7,7 @@
{{ 'core.question.howtodraganddrop' | translate }}
-
-
+
+
diff --git a/src/addon/qtype/ddwtos/component/addon-qtype-ddwtos.html b/src/addon/qtype/ddwtos/component/addon-qtype-ddwtos.html
index 67c15fdfd..ae2f63831 100644
--- a/src/addon/qtype/ddwtos/component/addon-qtype-ddwtos.html
+++ b/src/addon/qtype/ddwtos/component/addon-qtype-ddwtos.html
@@ -7,8 +7,8 @@
{{ 'core.question.howtodraganddrop' | translate }}
-
-
+
+
diff --git a/src/addon/qtype/ddwtos/component/ddwtos.ts b/src/addon/qtype/ddwtos/component/ddwtos.ts
index b144a4013..83190e29e 100644
--- a/src/addon/qtype/ddwtos/component/ddwtos.ts
+++ b/src/addon/qtype/ddwtos/component/ddwtos.ts
@@ -95,7 +95,8 @@ export class AddonQtypeDdwtosComponent extends CoreQuestionBaseComponent impleme
this.questionInstance = new AddonQtypeDdwtosQuestion(this.loggerProvider, this.domUtils, this.element,
this.question, this.question.readOnly, this.inputIds, this.textUtils);
- this.questionHelper.treatCorrectnessIconsClicks(this.element, this.component, this.componentId);
+ this.questionHelper.treatCorrectnessIconsClicks(this.element, this.component, this.componentId, this.contextLevel,
+ this.contextInstanceId);
this.question.loaded = true;
});
diff --git a/src/addon/qtype/description/component/addon-qtype-description.html b/src/addon/qtype/description/component/addon-qtype-description.html
index 74d4f190d..3b54888e9 100644
--- a/src/addon/qtype/description/component/addon-qtype-description.html
+++ b/src/addon/qtype/description/component/addon-qtype-description.html
@@ -2,6 +2,6 @@
-
+
diff --git a/src/addon/qtype/essay/component/addon-qtype-essay.html b/src/addon/qtype/essay/component/addon-qtype-essay.html
index ec4293251..b8df1320e 100644
--- a/src/addon/qtype/essay/component/addon-qtype-essay.html
+++ b/src/addon/qtype/essay/component/addon-qtype-essay.html
@@ -1,7 +1,7 @@
-
+
@@ -20,7 +20,7 @@
{{ 'core.question.errorinlinefilesnotsupported' | translate }}
-
+
@@ -31,7 +31,7 @@
-
+
diff --git a/src/addon/qtype/gapselect/component/addon-qtype-gapselect.html b/src/addon/qtype/gapselect/component/addon-qtype-gapselect.html
index 70efb95b7..099c6d926 100644
--- a/src/addon/qtype/gapselect/component/addon-qtype-gapselect.html
+++ b/src/addon/qtype/gapselect/component/addon-qtype-gapselect.html
@@ -1,5 +1,5 @@
diff --git a/src/addon/qtype/gapselect/component/gapselect.ts b/src/addon/qtype/gapselect/component/gapselect.ts
index 34de237db..2faa3ada4 100644
--- a/src/addon/qtype/gapselect/component/gapselect.ts
+++ b/src/addon/qtype/gapselect/component/gapselect.ts
@@ -44,6 +44,7 @@ export class AddonQtypeGapSelectComponent extends CoreQuestionBaseComponent impl
* The question has been rendered.
*/
questionRendered(): void {
- this.questionHelper.treatCorrectnessIconsClicks(this.element, this.component, this.componentId);
+ this.questionHelper.treatCorrectnessIconsClicks(this.element, this.component, this.componentId, this.contextLevel,
+ this.contextInstanceId);
}
}
diff --git a/src/addon/qtype/match/component/addon-qtype-match.html b/src/addon/qtype/match/component/addon-qtype-match.html
index 95bed5ddc..2f48f297d 100644
--- a/src/addon/qtype/match/component/addon-qtype-match.html
+++ b/src/addon/qtype/match/component/addon-qtype-match.html
@@ -1,12 +1,12 @@
-
+
-
+
diff --git a/src/addon/qtype/multianswer/component/addon-qtype-multianswer.html b/src/addon/qtype/multianswer/component/addon-qtype-multianswer.html
index 74bc91da4..68b989b11 100644
--- a/src/addon/qtype/multianswer/component/addon-qtype-multianswer.html
+++ b/src/addon/qtype/multianswer/component/addon-qtype-multianswer.html
@@ -1,5 +1,5 @@
diff --git a/src/addon/qtype/multianswer/component/multianswer.ts b/src/addon/qtype/multianswer/component/multianswer.ts
index 5fa7ce6ca..d19750434 100644
--- a/src/addon/qtype/multianswer/component/multianswer.ts
+++ b/src/addon/qtype/multianswer/component/multianswer.ts
@@ -44,6 +44,7 @@ export class AddonQtypeMultiAnswerComponent extends CoreQuestionBaseComponent im
* The question has been rendered.
*/
questionRendered(): void {
- this.questionHelper.treatCorrectnessIconsClicks(this.element, this.component, this.componentId);
+ this.questionHelper.treatCorrectnessIconsClicks(this.element, this.component, this.componentId, this.contextLevel,
+ this.contextInstanceId);
}
}
diff --git a/src/addon/qtype/multichoice/component/addon-qtype-multichoice.html b/src/addon/qtype/multichoice/component/addon-qtype-multichoice.html
index 56ac05cc3..2914b227a 100644
--- a/src/addon/qtype/multichoice/component/addon-qtype-multichoice.html
+++ b/src/addon/qtype/multichoice/component/addon-qtype-multichoice.html
@@ -1,16 +1,16 @@
-
-
+
+ {{ question.prompt }}
-
-
+
+
@@ -25,8 +25,8 @@
-
-
+
+
diff --git a/src/addon/qtype/shortanswer/component/addon-qtype-shortanswer.html b/src/addon/qtype/shortanswer/component/addon-qtype-shortanswer.html
index 42febebf0..ee269de08 100644
--- a/src/addon/qtype/shortanswer/component/addon-qtype-shortanswer.html
+++ b/src/addon/qtype/shortanswer/component/addon-qtype-shortanswer.html
@@ -1,6 +1,6 @@
-
+
{{ 'addon.mod_quiz.answercolon' | translate }}
diff --git a/src/addon/userprofilefield/checkbox/component/checkbox.ts b/src/addon/userprofilefield/checkbox/component/checkbox.ts
index 0212563d4..80a8143ab 100644
--- a/src/addon/userprofilefield/checkbox/component/checkbox.ts
+++ b/src/addon/userprofilefield/checkbox/component/checkbox.ts
@@ -28,6 +28,8 @@ export class AddonUserProfileFieldCheckboxComponent implements OnInit {
@Input() edit = false; // True if editing the field. Defaults to false.
@Input() disabled = false; // True if disabled. Defaults to false.
@Input() form: FormGroup; // Form where to add the form control.
+ @Input() contextLevel?: string; // The context level.
+ @Input() contextInstanceId?: number; // The instance ID related to the context.
constructor(private fb: FormBuilder, protected utils: CoreUtilsProvider) { }
diff --git a/src/addon/userprofilefield/datetime/component/datetime.ts b/src/addon/userprofilefield/datetime/component/datetime.ts
index e1b287627..a9b66bf1f 100644
--- a/src/addon/userprofilefield/datetime/component/datetime.ts
+++ b/src/addon/userprofilefield/datetime/component/datetime.ts
@@ -30,6 +30,8 @@ export class AddonUserProfileFieldDatetimeComponent implements OnInit {
@Input() edit = false; // True if editing the field. Defaults to false.
@Input() disabled = false; // True if disabled. Defaults to false.
@Input() form?: FormGroup; // Form where to add the form control.
+ @Input() contextLevel?: string; // The context level.
+ @Input() contextInstanceId?: number; // The instance ID related to the context.
constructor(private fb: FormBuilder, private timeUtils: CoreTimeUtilsProvider, protected utils: CoreUtilsProvider,
private translate: TranslateService) { }
diff --git a/src/addon/userprofilefield/menu/component/addon-user-profile-field-menu.html b/src/addon/userprofilefield/menu/component/addon-user-profile-field-menu.html
index dcde5daa8..d46a4dbd6 100644
--- a/src/addon/userprofilefield/menu/component/addon-user-profile-field-menu.html
+++ b/src/addon/userprofilefield/menu/component/addon-user-profile-field-menu.html
@@ -1,7 +1,7 @@
{{ field.name }}
-
+
diff --git a/src/addon/userprofilefield/menu/component/menu.ts b/src/addon/userprofilefield/menu/component/menu.ts
index 59642861a..89f82faa0 100644
--- a/src/addon/userprofilefield/menu/component/menu.ts
+++ b/src/addon/userprofilefield/menu/component/menu.ts
@@ -27,6 +27,8 @@ export class AddonUserProfileFieldMenuComponent implements OnInit {
@Input() edit = false; // True if editing the field. Defaults to false.
@Input() disabled = false; // True if disabled. Defaults to false.
@Input() form?: FormGroup; // Form where to add the form control.
+ @Input() contextLevel?: string; // The context level.
+ @Input() contextInstanceId?: number; // The instance ID related to the context.
constructor(private fb: FormBuilder) { }
diff --git a/src/addon/userprofilefield/text/component/addon-user-profile-field-text.html b/src/addon/userprofilefield/text/component/addon-user-profile-field-text.html
index 1ca1a727d..5c9a460eb 100644
--- a/src/addon/userprofilefield/text/component/addon-user-profile-field-text.html
+++ b/src/addon/userprofilefield/text/component/addon-user-profile-field-text.html
@@ -1,7 +1,7 @@
{{ field.name }}
-
+
diff --git a/src/addon/userprofilefield/text/component/text.ts b/src/addon/userprofilefield/text/component/text.ts
index 089a58bb0..c25ff38d9 100644
--- a/src/addon/userprofilefield/text/component/text.ts
+++ b/src/addon/userprofilefield/text/component/text.ts
@@ -28,6 +28,8 @@ export class AddonUserProfileFieldTextComponent implements OnInit {
@Input() edit = false; // True if editing the field. Defaults to false.
@Input() disabled = false; // True if disabled. Defaults to false.
@Input() form?: FormGroup; // Form where to add the form control.
+ @Input() contextLevel?: string; // The context level.
+ @Input() contextInstanceId?: number; // The instance ID related to the context.
constructor(private fb: FormBuilder, protected utils: CoreUtilsProvider) { }
diff --git a/src/addon/userprofilefield/textarea/component/addon-user-profile-field-textarea.html b/src/addon/userprofilefield/textarea/component/addon-user-profile-field-textarea.html
index 4a993015b..a9e60d41d 100644
--- a/src/addon/userprofilefield/textarea/component/addon-user-profile-field-textarea.html
+++ b/src/addon/userprofilefield/textarea/component/addon-user-profile-field-textarea.html
@@ -1,7 +1,7 @@
{{ field.name }}
-
+
diff --git a/src/addon/userprofilefield/textarea/component/textarea.ts b/src/addon/userprofilefield/textarea/component/textarea.ts
index 79919bd35..475e1e717 100644
--- a/src/addon/userprofilefield/textarea/component/textarea.ts
+++ b/src/addon/userprofilefield/textarea/component/textarea.ts
@@ -27,6 +27,8 @@ export class AddonUserProfileFieldTextareaComponent implements OnInit {
@Input() edit = false; // True if editing the field. Defaults to false.
@Input() disabled = false; // True if disabled. Defaults to false.
@Input() form?: FormGroup; // Form where to add the form control.
+ @Input() contextLevel?: string; // The context level.
+ @Input() contextInstanceId?: number; // The instance ID related to the context.
control: FormControl;
diff --git a/src/components/context-menu/core-context-menu-popover.html b/src/components/context-menu/core-context-menu-popover.html
index 69ffdadf7..76a6b96d1 100644
--- a/src/components/context-menu/core-context-menu-popover.html
+++ b/src/components/context-menu/core-context-menu-popover.html
@@ -2,7 +2,7 @@
{{title}}
-
+
{{item.badge}}
diff --git a/src/components/course-picker-menu/core-course-picker-menu-popover.html b/src/components/course-picker-menu/core-course-picker-menu-popover.html
index 6eea11d5e..ebfa0f52a 100644
--- a/src/components/course-picker-menu/core-course-picker-menu-popover.html
+++ b/src/components/course-picker-menu/core-course-picker-menu-popover.html
@@ -1,6 +1,6 @@
-
+
\ No newline at end of file
diff --git a/src/components/navigation-bar/navigation-bar.ts b/src/components/navigation-bar/navigation-bar.ts
index b5c2b0b42..5a38d49a0 100644
--- a/src/components/navigation-bar/navigation-bar.ts
+++ b/src/components/navigation-bar/navigation-bar.ts
@@ -35,6 +35,8 @@ export class CoreNavigationBarComponent {
@Input() title?: string; // Title to show when seeing the info (new page).
@Input() component?: string; // Component the bar belongs to.
@Input() componentId?: number; // Component ID.
+ @Input() contextLevel?: string; // The context level.
+ @Input() contextInstanceId?: number; // The instance ID related to the context.
@Output() action?: EventEmitter; // Function to call when an arrow is clicked. Will receive as a param the item to load.
constructor(private textUtils: CoreTextUtilsProvider) {
@@ -42,6 +44,7 @@ export class CoreNavigationBarComponent {
}
showInfo(): void {
- this.textUtils.expandText(this.title, this.info, this.component, this.componentId);
+ this.textUtils.expandText(this.title, this.info, this.component, this.componentId, [], true, this.contextLevel,
+ this.contextInstanceId);
}
}
diff --git a/src/components/site-picker/site-picker.ts b/src/components/site-picker/site-picker.ts
index e58dfda86..c0ca1d6e1 100644
--- a/src/components/site-picker/site-picker.ts
+++ b/src/components/site-picker/site-picker.ts
@@ -15,7 +15,7 @@
import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
import { CoreSitesProvider } from '@providers/sites';
-import { CoreTextUtilsProvider } from '@providers/utils/text';
+import { CoreFilterProvider } from '@core/filter/providers/filter';
/**
* Component to display a site selector. It will display a select with the list of sites. If the selected site changes,
@@ -36,7 +36,7 @@ export class CoreSitePickerComponent implements OnInit {
sites: any[];
constructor(private translate: TranslateService, private sitesProvider: CoreSitesProvider,
- private textUtils: CoreTextUtilsProvider) {
+ private filterProvider: CoreFilterProvider) {
this.siteSelected = new EventEmitter();
}
@@ -49,7 +49,8 @@ export class CoreSitePickerComponent implements OnInit {
sites.forEach((site: any) => {
// Format the site name.
- promises.push(this.textUtils.formatText(site.siteName, true, true).catch(() => {
+ promises.push(this.filterProvider.getFiltersAndFormatText(site.siteName, 'system', site.siteHomeId,
+ {clean: true, singleLine: true}, site.getId()).catch(() => {
return site.siteName;
}).then((formatted) => {
site.fullNameAndSiteName = this.translate.instant('core.fullnameandsitename',
diff --git a/src/core/block/components/only-title-block/core-block-only-title.html b/src/core/block/components/only-title-block/core-block-only-title.html
index 358fbde44..287592371 100644
--- a/src/core/block/components/only-title-block/core-block-only-title.html
+++ b/src/core/block/components/only-title-block/core-block-only-title.html
@@ -1,3 +1,3 @@
-
+ {{ title | translate }}
\ No newline at end of file
diff --git a/src/core/block/components/pre-rendered-block/core-block-pre-rendered.html b/src/core/block/components/pre-rendered-block/core-block-pre-rendered.html
index 84cf2ac52..4b3f46315 100644
--- a/src/core/block/components/pre-rendered-block/core-block-pre-rendered.html
+++ b/src/core/block/components/pre-rendered-block/core-block-pre-rendered.html
@@ -1,11 +1,11 @@
-
+
-
+
diff --git a/src/core/comments/pages/viewer/viewer.html b/src/core/comments/pages/viewer/viewer.html
index 2a023a419..dc24b1acc 100644
--- a/src/core/comments/pages/viewer/viewer.html
+++ b/src/core/comments/pages/viewer/viewer.html
@@ -1,6 +1,6 @@
-
+
-
+
@@ -56,7 +56,7 @@
-
+
diff --git a/src/core/contentlinks/pages/choose-site/choose-site.html b/src/core/contentlinks/pages/choose-site/choose-site.html
index c6a401175..198304584 100644
--- a/src/core/contentlinks/pages/choose-site/choose-site.html
+++ b/src/core/contentlinks/pages/choose-site/choose-site.html
@@ -15,7 +15,7 @@
{{site.fullName}}
-
+
{{site.siteUrl}}
diff --git a/src/core/course/classes/main-resource-component.ts b/src/core/course/classes/main-resource-component.ts
index 3ffae46fe..2233f893a 100644
--- a/src/core/course/classes/main-resource-component.ts
+++ b/src/core/course/classes/main-resource-component.ts
@@ -236,7 +236,8 @@ export class CoreCourseModuleMainResourceComponent implements OnInit, OnDestroy,
* Expand the description.
*/
expandDescription(): void {
- this.textUtils.expandText(this.translate.instant('core.description'), this.description, this.component, this.module.id);
+ this.textUtils.expandText(this.translate.instant('core.description'), this.description, this.component, this.module.id,
+ [], true, 'module', this.module.id);
}
/**
diff --git a/src/core/course/components/format/core-course-format.html b/src/core/course/components/format/core-course-format.html
index 7013b69f5..07b21f6db 100644
--- a/src/core/course/components/format/core-course-format.html
+++ b/src/core/course/components/format/core-course-format.html
@@ -58,10 +58,10 @@
@@ -74,13 +74,13 @@
-
+
-
+
diff --git a/src/core/course/components/module-completion/module-completion.ts b/src/core/course/components/module-completion/module-completion.ts
index df4f4ceb2..ff3f265d1 100644
--- a/src/core/course/components/module-completion/module-completion.ts
+++ b/src/core/course/components/module-completion/module-completion.ts
@@ -15,9 +15,9 @@
import { Component, Input, Output, EventEmitter, OnChanges, SimpleChange } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
import { CoreDomUtilsProvider } from '@providers/utils/dom';
-import { CoreTextUtilsProvider } from '@providers/utils/text';
import { CoreUserProvider } from '@core/user/providers/user';
import { CoreCourseProvider } from '../../providers/course';
+import { CoreFilterProvider } from '@core/filter/providers/filter';
/**
* Component to handle activity completion. It shows a checkbox with the current status, and allows manually changing
@@ -34,13 +34,14 @@ import { CoreCourseProvider } from '../../providers/course';
})
export class CoreCourseModuleCompletionComponent implements OnChanges {
@Input() completion: any; // The completion status.
+ @Input() moduleId?: number; // The name of the module this completion affects.
@Input() moduleName?: string; // The name of the module this completion affects.
@Output() completionChanged?: EventEmitter; // Will emit an event when the completion changes.
completionImage: string;
completionDescription: string;
- constructor(private textUtils: CoreTextUtilsProvider, private domUtils: CoreDomUtilsProvider,
+ constructor(private filterProvider: CoreFilterProvider, private domUtils: CoreDomUtilsProvider,
private translate: TranslateService, private courseProvider: CoreCourseProvider,
private userProvider: CoreUserProvider) {
this.completionChanged = new EventEmitter();
@@ -137,7 +138,9 @@ export class CoreCourseModuleCompletionComponent implements OnChanges {
}
if (moduleName) {
- this.textUtils.formatText(moduleName, true, true, 50).then((modNameFormatted) => {
+ this.filterProvider.getFiltersAndFormatText(moduleName, 'module', this.moduleId,
+ {clean: true, singleLine: true, shortenLength: 50}).then((modName) => {
+
let promise;
if (this.completion.overrideby > 0) {
@@ -147,11 +150,11 @@ export class CoreCourseModuleCompletionComponent implements OnChanges {
(profile) => {
return {
overrideuser: profile.fullname,
- modname: modNameFormatted
+ modname: modName
};
});
} else {
- promise = Promise.resolve(modNameFormatted);
+ promise = Promise.resolve(modName);
}
return promise.then((translateParams) => {
diff --git a/src/core/course/components/module-description/core-course-module-description.html b/src/core/course/components/module-description/core-course-module-description.html
index 412d5bf3b..af4e525b3 100644
--- a/src/core/course/components/module-description/core-course-module-description.html
+++ b/src/core/course/components/module-description/core-course-module-description.html
@@ -1,6 +1,6 @@
-
+
{{ note }}
diff --git a/src/core/course/components/module-description/module-description.ts b/src/core/course/components/module-description/module-description.ts
index 0e19d86b1..eaa08a1b0 100644
--- a/src/core/course/components/module-description/module-description.ts
+++ b/src/core/course/components/module-description/module-description.ts
@@ -40,6 +40,8 @@ export class CoreCourseModuleDescriptionComponent {
@Input() component?: string; // Component for format text directive.
@Input() componentId?: string | number; // Component ID to use in conjunction with the component.
@Input() showFull?: string | boolean; // Whether to always display the full description.
+ @Input() contextLevel?: string; // The context level.
+ @Input() contextInstanceId?: number; // The instance ID related to the context.
constructor() {
// Nothing to do.
diff --git a/src/core/course/components/module/core-course-module.html b/src/core/course/components/module/core-course-module.html
index 0b0239685..4d9a4021d 100644
--- a/src/core/course/components/module/core-course-module.html
+++ b/src/core/course/components/module/core-course-module.html
@@ -2,12 +2,12 @@